Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

El plazo de entrega representa el número de horas, días, semanas o meses del tiempo de fabricación o entrega de un producto, a partir de la recepción de su pedido o de la apertura de su orden de producción.

Esta información es útil para que el sistema calcule cuando el material estará disponible en el stock.

Para productos cuyo plazo de entrega depende de otras grandezas o características, considerando que no es un período fijo, se puede utilizar una fórmula.

En este caso, complete el campo Fórmula Plazo, porque el campo Entrega se debe utilizar para plazos fijos.

Si estos dos campos estuvieran informados, se considerará de preferencia el contenido informado en el campo Fórmula Plazo. Si no existe una fórmula registrada, el plazo de entrega será el contenido del campo Entrega.

La fórmula se puede crear a partir de una expresión matemática común o utilizando una expresión ADVPL (Advanced Protheus Language), o incluso, si prefiere, en Archivo de fórmulas, UserFunction (función del usuario). Para esto, se pueden utilizar variables de memoria puestos a disposición por el sistema.

Al crear una fórmula de plazo, utilizando UserFunction, queda disponible la variable CANTIDAD, que contiene la cantidad de la necesidad del ítem informada en la apertura de la OP (orden de producción), en el cálculo del MRP (Material Requirement Planning) o en la solicitud de compra, permitiendo obtener el tiempo real en el que se pretende evaluar el plazo de entrega del material. Pero, esta variable solamente existirá en el momento de ejecutar la UserFunction vinculada a esta fórmula.

De esta manera, el primer paso es crear la UserFunction (ej.: FORMPRZ() que se vinculará a la fórmula del plazo de entrega. Si esta función utiliza variables de memoria, estas solo estarán disponibles durante su ejecución, así, se debe crear una UserFunction vacía, vincularla al archivo de fórmulas y después modificarla incluyendo las líneas de programa para ejecutarla.

Aplicación Práctica

Verifique la siguiente aplicación práctica para utilizar el campo Fórmula Plazo con UserFunction, observando la orden.

  1. Elabore una UserFunction (función de usuario) para calcular el plazo de entrega.

Ejemplo:

     UserFunction FORMPRZ()

     Return

  1. En Archivo de fórmulas, vincule la UserFunction a una fórmula para calcular el plazo de entrega, observe:


Código

001

Descripción

Fórmula plazo de entrega

Fórmula

EXECBLOCK (FORMPRZ,.F.,.F.)

En este momento, la UserFunction se ejecuta para hacer la prueba (validación). Si existe alguna inconsistencia, el sistema no permite grabar la fórmula.

  1. Después de registrar la fórmula, modifique la UserFunction definiendo la forma del cálculo del plazo de entrega.

Observe el ejemplo:

User Function FORMPRZ()

 // El plazo de entrega mínimo válido para cada 100 piezas, será e período informado en el

// campo Entrega (B1_PE)

Return Max((CANTIDAD/100)*SB1->B1_PE,SB1→B1_PE)

  1. Informe en el campo Plazo Entrega (B1_FORPRZ), el código de la fórmula registrada, en este caso 001.

Recuerde que la variable CANTIDAD utilizada en el ejemplo de la userfunction FORMPRZ(), solamente existirá cuando se ejecuta la función creada y vinculada a la fórmula del plazo.

Observe otro ejemplo para utilizar la variable Cantidad:

Ejemplo:

Suponiendo que un producto cuyo plazo de entrega sea de 10 lotes económicos por día.

La fórmula para expresar el plazo de entrega de este producto en el campo Fórmula Plazo será:

Round((CANTIDAD/(10*B1_LE)),0)

Esta fórmula devuelve el plazo en DÍAS necesarios para la producción de una determinada cantidad planificada, a través del MRP o el tiempo total que se gastará para producir una orden de producción, y demás rutinas que tratan el plazo de entrega.

El retorno de la fórmula es en días y en variable numérica.

La fórmula se utiliza en cualquier rutina donde se calcula el plazo de entrega del producto, como por ejemplo, MRP, Orden de Producción, etc.