Versiones:

Microsiga Protheus 11

Compatible Países:

Todos

Sistemas operativos:

Todos

Compatible a las bases de datos:

Todos

Idiomas:

Portugués, Español, Inglés


 

Descripción: modifica la forma estándar de carga de campos de los ítems del pedido de compra, cuando se incluye el código del producto.
Relación entre los campos de las tablas SC7 (Ítems del Pedido de Compra) y SB1 (Registro de productos):

C7_CC => B1_CC
C7_CONTA
=> B1_CONTA
C7_ITEMCTA => B1_ITEMCC
C7_CLVL => B1_CLVL

La cumplimentación estándar de los campos en el pedido de compra sigue las siguientes reglas:
1) Si el campo estuviera vacío, este se completa con el contenido del campo del registro de producto.
2) Si ya estuviera informado, al modificar el producto del ítem del pedido, el contenido de los campos descritos se mantiene según lo que ya estaba informado, excepto para el campo C7_CONTA (Cta Contable). En el caso del campo C7_CONTA (Cta Contable), el estándar de cumplimentación siempre es sobrescribir el contenido del campo con aquel que corresponde al registro de productos.
De esta manera, si el punto de entrada MT120CPO está compilado y alguna posición del vector de respuesta tiene algún campo de la factura, dentro de lo descrito, el contenido se completará según el registro de producto, pero, en caso específico del campo C7_CONTA (Cta Contable), si este se informa en el vector de respuesta, no se cargará el contenido del registro de producto.

Ubicación: función A120Produto - responsable por la carga de datos del ítem del pedido de compra a partir del código del producto seleccionado.

Eventos: antes de ejecutar el disparador de carga de los campos del aCols del ítem del Pedido de Compra, después de informar el código del producto.

Programa fuente: MATA120.PRX

Sintaxis: MT120CPO - disparador del código de producto para datos contables ( [ PARAMIXB[1] ] ) --> aCpo

Parámetros: 

NOMBRE

TIPO

DESCRIPCIÓN

OBLIGATORIO


PARAMIXB[1]


Array of records

Vector que contiene el campo estándar que siempre

se carga en el ítem de la factura a partir del

registro de producto C7_CONTA (Cta Contable)


X

 

Devolución: aCpo - vector que contiene en cada elemento el nombre del campos que debe modificar la manera de cargar en el ítem del Pedido de Compra.

Observaciones: este punto de entrada permite modificar el comportamiento original de cumplimentación de la cuenta contable en el ítem del Pedido (sustituya siempre según el registro). Si en la respuesta del vector existe el nombre del campo C7_CONTA (Cta Contable), el disparador preservará la información completada en el campo.
Ya para los campos C7_CC (Centro Costo), C7_ITEMCTA (Ítem Cuenta) y C7_CLVL (Clase Valor) el comportamiento estándar de cumplimentación es mantener el contenido que existe en los respectivos campos. De esta manera, si es necesario modificar el comportamiento estándar, informe siempre según el registro de productos, el vector de respuesta debe tener en alguna posición el nombre de los campos deseados.

Ejemplo
#Include 'Protheus.ch'

User Function MT120CPO()

//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
//³ Modifica la manera estándar de carga de los campos de los ítems del Pedido de Compra.³
//³ cuando se incluye el código del producto. La siguiente correspondencia:              ³
//³ C7_CONTA 	-> B1_CONTA                                                       		 ³
//³ C7_CC 		-> B1_CC                                                       		     ³
//³ C7_ITEMCTA 	-> B1_ITEMCC                                         		             ³
//³ C7_CLVL 	-> B1_CLVL                                                		         ³
//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

Local aCpo:= PARAMIXB[1] //Estándar = C7_CONTA

AADD(aCpo,   "D1_CONTA"   ) // Permite que se mantenga el contenido que existe previamente en el campo
AADD(aCpo,   "D1_CC"      ) // Permite que se cargue el valor del registro de producto 
AADD(aCpo,	 "D1_ITEMCTA" ) // Permite que se cargue el valor del registro de producto 
AADD(aCpo,	 "D1_CLVL"    ) // Permite que se cargue el valor del registro de producto

Return aCpo