01. DATOS GENERALES

Producto:

Línea de producto:

Segmento:

Módulo:

Función:
RutinaNombre TécnicoFecha
MATA447BGeneración de Documentos Pedimentos09/09/2024
País:México
Ticket:No aplica
Requisito/Story/Issue (informe el requisito vinculado):DMINA-24204


02. DESCRIPCIÓN

Punto de Entrada en la rutina de Generación de Documentos Pedimentos (MATA447B), con el objetivo de que si se agregan campos específicos en las tablas de Encabezado de factura (RSE) y/o Ítems de factura (RSF), estos sean pasados a los campos correspondientes en las tablas de Facturas de Entrada (SF1/SD1).


03. INFORMACIÓN ADICIONAL

En la rutina de Generación de Documentos Pedimentos (MATA447B), dentro de la función encargada de Generar facturas de entrada por medio de la Rutina Automática (GenFacEnt()) se agrega la ejecución del punto de entrada M447BFGA().

El Punto de Entrada se ejecuta 2 veces, la primera para el Encabezado (RSE) y la segunda para los Ítems (RSF), determinando por medio del segundo parámetro a qué tabla se adicionan los campos.

En la función de usuario se debe construir un arreglo con los nuevos campo y los respectivos valores que el usuario determine, respetando si es para Encabezado (de RSE para SF1) o para Ítems (de RSF para SD1).

La función debe retornar dicho arreglo.


Ejemplos del Punto de Entrada para (1) Encabezado/Ítems, solo (2) Encabezado y solo (3) Ítems:

// 1) Encabezado e Ítems
User Function M447BFGA()

	Local aAddFlds := {}		  // Arreglo a retornar
	Local cAlias   := ParamIxb[1] // Contiene el alias de la tabla cuyo contenido es la información de encabezado e ítems.
	Local cTable   := ParamIxb[2] // Contiene la tabla a la que se agregarán los campos de usuario.
	
	If cTable == "RSE" //Encabezado
		aAdd( aAddFlds, {"F1_TEXTO1", (cAlias)->RSE_TEXTO1, Nil} )
		aAdd( aAddFlds, {"F1_TEXTO2", (cAlias)->RSE_TEXTO2, Nil} )
	ElseIf cTable == "RSF" //Ítems
		aAdd( aAddFlds, {"D1_TEXTO1", (cAlias)->RSF_TEXTO1, Nil} )
		aAdd( aAddFlds, {"D1_TEXTO2", (cAlias)->RSF_TEXTO2, Nil} )
	EndIf
	
Return (aAddFlds)


// 2) Solo encabezado
User Function M447BFGA()

	Local aAddFlds := {}		  // Arreglo a retornar
  	Local cAlias   := ParamIxb[1] // Contiene el alias de la tabla cuyo contenido es la información de encabezado e ítems.
	Local cTable   := ParamIxb[2] // Contiene la tabla a la que se agregarán los campos de usuario.

    If cTable == "RSE" //Encabezado
		aAdd( aAddFlds, {"F1_TEXTO1", (cAlias)->RSE_TEXTO1, Nil} )
		aAdd( aAddFlds, {"F1_TEXTO2", (cAlias)->RSE_TEXTO2, Nil} )
	EndIf
	
Return (aAddFlds)


// 3) Solo ítems
User Function M447BFGA()

	Local aAddFlds := {}		  // Arreglo a retornar
  	Local cAlias   := ParamIxb[1] // Contiene el alias de la tabla cuyo contenido es la información de encabezado e ítems.
	Local cTable   := ParamIxb[2] // Contiene la tabla a la que se agregarán los campos de usuario.
	
	If cTable == "RSF" //Ítems
		aAdd( aAddFlds, {"D1_TEXTO1", (cAlias)->RSF_TEXTO1, Nil} )
		aAdd( aAddFlds, {"D1_TEXTO2", (cAlias)->RSF_TEXTO2, Nil} )
	EndIf
	
Return (aAddFlds)




04. ASUNTOS RELACIONADOS