Restricciones de expresión

Completado

Las restricciones controlan los valores de atributo que se puede seleccionar al configurar productos para un pedido de ventas, un presupuesto de ventas, un pedido de compra o un pedido de producción. Puede utilizar restricciones de expresión o de tabla, según cómo prefiera crear las restricciones.

Restricciones de expresión

Utilizar un modelo de configuración del producto basado en restricciones implica que existen algunas restricciones cuando el usuario selecciona valores para los diversos atributos. Puede implementar dichas limitaciones como restricciones de expresión mediante el uso del lenguaje de modelado de optimización (OML).

Las restricciones de expresión se caracterizan por una expresión que utiliza operadores y funciones aritméticos y booleanos. Escribiría una restricción de expresión para un componente específico en un modelo de configuración del producto. Otro componente no puede reutilizarla y no puede compartirla con otro componente. Sin embargo, las restricciones de expresión para un componente pueden hacer referencia a los atributos de los subcomponentes del componente.

Otra alternativa es que puede implementar una restricción en forma de una restricción de tabla.

Configuración de la restricción de expresión

(Color == "Black" & (size == "30" | size == "50")) | (color == "Red" & size =="20")

Puede escribir una restricción de expresión mediante los operadores de prefijo disponibles o una notación de infijo. Para los operadores Min, Max y Abs, no se puede utilizar la notación de infijo. Estos operadores se incluyen como operadores estándar en la mayoría de los lenguajes de programación.

Restricciones de tabla

Puede incluir una restricción de tabla en un modelo de configuración del producto haciendo referencia a la definición de restricción de tabla y asignando los atributos correspondientes en el modelo a las columnas de la restricción de tabla.

Las restricciones de tabla pueden ser definidas por el usuario o por el sistema:

  • Definida por el usuario: con este tipo, el usuario crea una restricción de tabla. El usuario selecciona una combinación de tipos de atributos para representar las columnas de la tabla y luego introduce valores de los dominios de los tipos de atributos seleccionados para formar las filas en la restricción de tabla.

    Una restricción de tabla definida por el usuario es estática y consta de columnas que representan tipos de atributos. Cada fila es una combinación legal de valores de atributo el sistema toma de los tipos de atributo.

  • Definido por el sistema: puede definir este tipo de restricción de tabla seleccionando qué tabla de Supply Chain Management utilizar como referencia y seleccionando a continuación campos de esta tabla para formar las columnas en la restricción. Las filas de la restricción de tabla son las filas de la tabla de Supply Chain Management que están presentes en el momento de la configuración.

En las restricciones de tabla se enumeran las combinaciones de valores permitidos para los atributos al configurar un producto. Puede usar definiciones de restricciones de tabla genéricamente. Cuando cree una restricción de tabla para un componente en un modelo de configuración de producto, seleccione una definición de restricción de tabla. Para crear las combinaciones permitidas, puede agregar atributos de tipos específicos a los componentes. Cada tipo de atributo tiene un valor específico.

El ejemplo siguiente muestra cómo limitar la configuración de un altavoz con partes delanteras y acabados específicos. La primera tabla muestra los acabados y las partes delanteras que suelen estar disponibles para la configuración. Los valores están predefinidos para los tipos de atributo Acabado y Rejilla frontal.

Tipo de atributo Valores
Acabado Negro, roble, palisandro, blanco
Rejilla frontal Negro, metal, blanco

En la tabla siguiente se muestran las combinaciones que la restricción de tabla Color y acabado define. Al usar esta restricción de tabla, puede configurar un altavoz que tenga un acabado de roble y una rejilla negra, un acabado de palisandro y una rejilla blanca, y así sucesivamente.

Finalizar Rejilla
Roble Negro
Palisandro Blanco
Blanco Negro
Blanco Blanco
Negro Negro
Negro Metal

Sintaxis

Al escribir restricciones, debe utilizar la sintaxis del lenguaje de modelado de optimización (OML). El sistema utiliza Microsoft Solver Foundation (MSF) para resolver las restricciones.

Usar restricciones de tabla y de expresión

Puede utilizar restricciones de expresión o de tabla, según cómo prefiera crear las restricciones. Una restricción de tabla se construye como una matriz, mientras que una restricción de expresión es una instrucción individual. Cuando se configura un producto, no importa qué tipo de restricción utiliza. El siguiente ejemplo muestra cómo difieren los dos métodos.

Cuando se configura un producto utilizando las configuraciones de restricción siguientes, se permiten estas combinaciones:

  • Un producto de color negro y tamaño 30 o 50

  • Un producto de color rojo y tamaño 20

Restricciones de tabla definidas por el usuario o definidas por el sistema

Los dos tipos de restricciones de tabla para componentes en un modelo de configuración de producto son definidas por el usuario y definidas por el sistema.

Las restricciones de tabla representan matrices de las combinaciones de atributos permitidos en las que cada fila define un conjunto de posibles valores de atributos.

Las restricciones de tabla representan matrices de las combinaciones de atributos permitidas para los componentes en un modelo de configuración de producto. Cada fila de la tabla define un conjunto de posibles valores de atributo. Puede declarar dos tipos de restricciones en un modelo de configuración de producto:

  • Restricción de expresión: cree una expresión que defina las relaciones entre los atributos para garantizar que los usuarios solo puedan seleccionar valores compatibles durante la configuración del producto.

  • Restricción de tabla: cree una tabla que defina todas las combinaciones permitidas para un conjunto específico de atributos. Hay dos tipos de restricciones de tabla disponibles: definidas por el usuario y definidas por el sistema.

Restricciones de tabla definidas por el usuario

Una restricción de tabla definida por el usuario es un tipo de matriz que puede utilizar para describir las combinaciones de valores de atributo que los tipos de atributo definen. Por ejemplo, si produce altavoces, puede incluir columnas para el acabado y la rejilla delantera en la restricción de tabla definida por el usuario.

El tipo de atributo del acabado tiene cuatro valores y el tipo de atributo de la rejilla frontal tiene tres valores. Por lo tanto, si no usa restricciones, hay 4 × 3 = 12 combinaciones posibles. Sin embargo, en este ejemplo solo se permiten seis combinaciones, como se muestra en la tabla siguiente.

Gestión de información de productos>Productos>Modelos de configuración de productos>Restricciones

Captura de pantalla de la página Restricciones en la que se destaca la opción Editar restricción de tabla

En la pestaña Combinaciones permitidas, puede ver información relativa a las combinaciones yendo a la página Editar restricción de tabla en Gestión de información de productos > Productos > Modelos de configuración de productos > (seleccione un modelo) > Restricciones > Editar restricción de tabla.

Captura de pantalla de la página Editar restricción de tabla en la que se muestran campos de Tabla y Combinaciones permitidas

Restricciones de tabla definidas por el sistema

Una restricción de tabla definida por el sistema crea una asignación dinámica entre un tipo de atributo y un campo de una tabla. Cuando incluye una restricción de tabla definida por el sistema en un modelo de configuración del producto, la asignación garantiza que se muestren los datos de la tabla en lugar de los valores del tipo de atributo. El resultado es una restricción dinámica porque otros módulos pueden modificar el contenido de la tabla, por ejemplo.

Al crear una restricción de tabla definida por el sistema, puede seleccionar una tabla, definir opcionalmente la consulta que se utilizará y luego asociar tipos de atributos a los campos de la tabla seleccionada. Los tipos de campos deben coincidir con los tipos de atributos.

Para que una restricción de tabla pueda tener efecto en un modelo de configuración del producto, debe incluir la restricción de tabla en una restricción en uno de los componentes del modelo. El procedimiento consiste en crear una nueva restricción, seleccionar el tipo de restricción de la tabla y luego seleccionar la definición de restricción de la tabla que se vaya a utilizar. Por último, debe asignar todos los campos de la restricción de tabla a atributos en el modelo de configuración del producto.

Sin embargo, no es necesario que coincida con valores como los valores de enumeración y los intervalos de enteros. El sistema reemplaza los valores del tipo de atributo por los valores del campo de la tabla seleccionada. Después de crear una restricción de tabla definida por el sistema, puede agregar la restricción a un componente y luego asignar el atributo a los nombres de columna en la restricción de tabla.