Modificación del Contenido Importado

Características del requisito

Línea de producto:

Microsiga Protheus

Segmento:

Servicios

Módulo:

SIGACTB

Rutina:

Rutina

Nombre técnico

CTBA100

Prorrateos On-Line

CTBA120

Prorrateos externos

CTBA270

Prorrateos off-line

Rutina(s) involucrada(s)

Nombre técnico

CTBA100

Prorrateos On-Line

 CTBA120

Prorrateos externos

CTBA270

Prorrateos off-line

Punto de entrada:

CTARQRAT

Requisito (ISSUE):

PCREQ-4007 

País(es):

Todos

Base(s) de datos:

Todas

Tablas utilizadas:

CT9, CTQ, CTJ

Sistema(s) operativo(s):

Todos

Versiones/Release:

12.1.7

Descripción

Punto de entrada desarrollado en la función CTBArqRat con el objetivo de modificar el contenido del archivo que se está importando, se activa línea a línea en la lectura del archivo importado.


Punto de entrada

Descripción:

Punto de entrada para manejar los datos del archivo importado pasando línea a línea en la lectura del archivo

Ubicación:

CTBArqRat 

Eventos:

Actualizaciones / Prorrateos / Prorrateo On-Line

Actualizaciones / Prorrateos / Prorrateo externo

Actualizaciones / Prorrateos / Prorrateo Off-Line

Programa fuente:

CTBA100

Función:

CTBArqRat 

Devolución:

aRet - array con el contenido de la línea del archivo.

 

Ejemplo:

#Include 'Protheus.ch'

//Punto de entrada para manejar los datos del archivo importado pasando línea a línea en la lectura del archivo
user function CTARQRAT()
Local cRotina := PARAMIXB[1] //Rutina que fue activada
Local aHeader := PARAMIXB[2] //Encabezado del archivo
Local aCols := PARAMIXB[3] //Ítems del archivo
Local nPosFil := 0

/*
PARAMIXB[1] - Rutina que fue activada

"CTBA100" - Prorrateo On Line
"CTBA120" - Prorrateo Externo
"CTBA270" - Prorrateo Off Line

PARAMIXB[2] - array con los campos de encabezado del archivo

aHeader[1] - "CT9_FILIAL"
aHeader[2] - "CT9_SEQUEN"
aHeader[3] - "CT9_DESC"
aHeader[4] - "CT9_PERBAS"

PARAMIXB[3] - array con contenido leído en la línea del archivo

aCols[1] - "01"
aCols[2] - "00001"
aCols[3] - "PRORRATEO ON LINE"
aCols[4] - "100.00"

*/

//Modifica el valor de la sucursal
If cRotina == "CTBA100" //Prorrateo On Line

nPosFil := ASCAN(aHeader, "CT9_FILIAL" ) //toma la posición de la sucursal en el encabezado

If aCols[nPosFil] == "01"
aCols[nPosFil] := FwxFilial("CT9")
EndIf

ElseIf cRotina == "CTBA120" //Prorrateo Externo

nPosFil := ASCAN(aHeader, "CTJ_FILIAL" ) //toma la posición de la sucursal en el encabezado

If aCols[nPosFil] == "01"
aCols[nPosFil] := FwxFilial("CTJ")
EndIf

Else //"CTBA270" Prorrateo Off Line

nPosFil := ASCAN(aHeader, "CTQ_FILIAL" ) //toma la posición de la sucursal en el encabezado

If aCols[nPosFil] == "01"
aCols[nPosFil] := FwxFilial("CTQ")
EndIf

EndIF

Return aCols