Navigation:  Opciones del programa > Fichas > 3.- Fichero de Artículos > Compuestos >

Fórmulas de Compuestos

Previous pageReturn to chapter overviewNext page

 

Definición de las fórmulas para los Compuestos de Artículos

 

Definición de Campos:

#L???#        Corresponde a la variable largo del campo ???        

#A???#        Corresponde a la variable Ancho del campo ???        

#E???#        Corresponde a la variable Espesor del campo ???        

#C???#        Corresponde a la variable Cantidad del campo ???        

#R???#        Corresponde a la variable Recalado del campo ???

 

Definición de Campos de artículos que no se incluyen en el compuesto del artículo, estos campos se incluirán en el documento de venta. Este tipo de variables son útiles para indicar valores de artículos superiores al compuesto que se define.

 

%LARGO,cod% Corresponde al variable Largo del código de artículo cod que no se encuentra en el documento

%ANCHO,cod% Corresponde al variable Ancho del código de artículo cod que no se encuentra en el documento

%ESPESOR,cod% Corresponde al variable Espesor del código de artículo cod que no se encuentra en el documento

%CANTIDAD,cod% Corresponde al variable Largo del código de artículo cod que no se encuentra en el documento

%RECALADO,cod% Corresponde al variable Largo del código de artículo cod que no se encuentra en el documento

 

Definición de Operadores:

.Y.        utilizado para condiciones 'y además.'        

.O. utilizado para condiciones 'o también.'        

 

Definición de valores lógicos:

.Verdadero. se utiliza para indicar que una condición es verdadera.

.Falso. se utiliza para indicar que una condición es falsa.

Ejemplos:

[#C1#=1,10] [#C1#=2,15] [.Verdadero.,20]   En esta definición, si la Cantidad del registro 1 es 1 devolverá 10, si es 2 devolverá 15, pero si no se cumple ninguna de las dos condiciones, devolverá 20, ya que verdadero siempre es una condición correcta.

 

Definición de Condiciones:

Si(condición,verdadero,falso)        

condición es la condición que se evaluará para poder indicar si devuelve el valor verdadero o falso:

Ejemplos:

Si(#C1#<20,1,3) -> Si la cantidad del registro 1 es menor que 20, devuelve 1, de lo contrario devuelve 3
Si(#C1#<20,#C2#,#C3#) -> Si la cantidad del registro 1 es menor que 20, devuelve la cantidad del segundo registro de lo contrario devuelve la cantidad del tercer registro
Si(#C1#<20,Si(#C2#>10,1,2),3) -> Si la cantidad del registro 1 es menor que 20, devuelve el resultado de la segunda Condición Si(#C2#>10,1,2) de lo contrario devuelve 3
Si(#C1#>=20 .Y. #C1#<=24,1,2) -> Si la cantidad del registro 1 esta entre 20 y 24 devuelve 1, de lo contrario devuelve 2
Si(#C1#=1 .O. #C1#=3,1,2) -> Si la cantidad del registro 1 es 1 o 3, devuelve 1, de lo contrario devuelve 2
Si(#C1#=1,#C2#+(#C3#/2),4) -> Si la cantidad del registro 1 es 1, devuelve la división de la cantidad del tercer registro por mas la cantidad del segundo registro, de lo contrario devuelve 4
Si(#C1#+3=5,10,20) -> Si la cantidad del registro 1 + 3 es igual a 5, devuelve 10, de lo contrario devuelve 20
Si((#C1#+#C2#)/2=5,1,2) -> Si la suma de las cantidades de los registros 1 y 2 divididas por 2 es igual a 5, devuelve 1, de lo contrario devuelve 2
Si(#C1#+Si(#C2#>5,1,2)=10,1,2 -> Si la cantidad del registro 1 + la condición Si(Campo2>5,1,2) es igual a 10, devuelve 1, de lo contrario devuelve 2
Si(#C1#>=10 .Y. #C1#<=20,Mensaje("Dentro de Rango"),Aviso("Fuera de Rango"))        

[condicion,verdadero]        

Este tipo de condición (Case) se utiliza cuando hay que anidar una gran cantidad de condiciones que según sus resultados, tienen que devolver varios valores.

Ejemplos:

[#C1#=1,10] [#C1#=2,15] [#C1#=3,20] [#C1#=4,23] [#C1#=5,34] [#C1#>5,50] Si el campo 1 es igual a 1, devuelve 10, si es igual a 2, devuelve 15, si es 3 devuelve 20, si es 4 devuelve 23, si es 5 devuelve 34 y si es superior de 5 devuelve 50 en este último caso también se puede jugar con las fórmulas y las condiciones SI dentro de la condición y del resultado, posibles Combinaciones [#C1#+1=10,20] [#C1#+#C2#=1,30] [#C1#=10,#C2#*2]  
También se puede utilizar la función Existe(): [Existe("D1"),1] [Existe("F1"),2].  Si existe el literal "D1" dentro del campo CONTROL devolverá el valor 1, y si existe el literal "F1" dentro del campo CONTROL devolverá 2

 

Mensaje("mensaje")        

Muestra una ventana con la información introducida entre las comillas.

Ejemplo: Si(C1>100,Mensaje("Recuerda que los paquetes son de 100 unidades")        

 

Aviso("aviso")        

Muestra una venta de Advertencia con la información introducida entre las comillas

Ejemplo: Si(C1>10000,Aviso("Cantidad fuera de rango")

 

Existe("Cadena")

Busca dentro del campo CONTROL (Campo existente en el cuerpo de los pedidos de cliente en Producción D) la cadena "Cadena", si le encuentra devuelve verdadero, de lo contrario devuelve falso.

Ejemplo:

Si(Existe("Blanco"),#C1#,#C2#) Si existe el literal "Blanco" dentro del campo CONTROL, devuelve la cantidad del primer registro, de lo contrario devuelve la cantidad del segundo registro.

Modulo1()

Indica si el número del módulo introducido en la línea del documento corresponde a la primera numeración de los módulos de la cabecera de los Pedidos Cliente

Ejemplo:

Si(Modulo1(),#C1#,#C2#) Si el módulo introducido es de la primera numeración de los módulos de la cabecera de los Pedido Cliente, devolverá la Cantidad del primer registro, de lo contrario devolverá la cantidad del segundo registro

 

Modulo2()

Indica si el número del módulo introducido en la línea del documento corresponde a la segunda numeración de los módulos de la cabecera de los Pedidos Cliente

Ejemplo:

Si(Modulo2(),#C1#,#C2#) Si el módulo introducido es de la segunda numeración de los módulos de la cabecera de los Pedido Cliente, devolverá la Cantidad del primer registro, de lo contrario devolverá la cantidad del segundo registro

 

       Cuando se definen fórmulas en los compuestos, es aconsejable introducir como primer compuesto el mismo artículo que se está definiendo, ya que entonces se creará un campo de referencia para poder aplicar los valores en las fórmulas de los compuestos. Este primer  compuesto ha  de contener  cantidad para que sea procesado, de lo  contrario mostrará error. También  es aconsejable que los campos Ficha-Formula estén seleccionados como ficha,  de lo contrario no aplicará los valores a las  variables  relacionadas con él.   Ejemplo: Si estamos definiendo el artículo A, y tiene 3 compuestos: A1, A2 y A3, en la definición de compuestos primero introduciremos el código A (que sera el campo 1) y luego los 3 compuestos, de este modo cuando se introduzca el artículo en un documento de venta, tendrá la misma estructura: A,A1,A2 y A3.

 

Nota Importante: El sistema interno de calculo de fórmulas, tienen un control de errores, pero es aconsejable revisar los campos introducidos y las fórmulas antes de aceptar la introducción, ya que una formula mal introducida, puede ocasionar futuros errores en la gestión de la información. Hay que tener en cuenta que los errores no serán nunca de calculo, ya que el sistema de calculo, realizará las operaciones tal y como las ha descrito el usuario. Los únicos errores que aparecerán serán de interrupción del programa, con la consecuente perdida de los últimos datos que se estaban introduciendo. Cuando una fórmula tenga errores siempre fallará, de este modo nos será más fácil poder solucionar el origen del problema.