Índice minLevel 2 exclude ÍNDICE
...
Como importar os movimentos bancários para a rotina FINA100 - Movimentos Bancários utilizando o Cómo importar los movimientos bancarios para la rutina FINA100 - Movimientos Bancarios utilizando el Mile.
...
Para realizar
...
la importación de los datos en la rutina FINA100 - Movimientos Bancarios utilizando el MILE, son necesarias algunas configuraciones adicionales según veremos a continuación, porque el orden de los parámetros recibidos por la rutina FINA100 es diferente de la llamada por la estructura del MILE, y no permite realizar la importación utilizando simplemente la configuración de canales.
Básicamente, el MILE funciona de la siguiente manera: para cada canal creado, se enviará en secuencia a la rutina en cuestión un array como parámetro, seguido del nOpc de 3 de inclusión.
Al realizar la llamada de la MsExecAuto de la rutina FINA100, se enviará de la siguiente manera:
Si tenemos
Basicamente, o MILE funciona da seguinte forma: para cada canal criado, será enviado sequencialmente para a rotina em questão um array como parâmetro, seguido do nOpc de 3 de inclusão.
Ao realizar a chamada da MsExecAuto da rotina FINA100, será enviado da seguinte forma:
...
1 canal (1 Master):
...
Función100(
...
vector[1], 3)
...
Si tenemos 2
...
canales:
...
Función100(
...
vector[1],
...
vector[2], 3)
...
Y así por
...
delante.
...
Por lo tanto, tenemos una incompatibilidad de uso,
...
porque para incluir el movimiento bancario, en la rutina FINA100, los parámetros recibidos están en estas posiciones:
FINA100(nPosArotina,aRotAuto,nOpcAuto)
...
donde:
nPosArotina - Numérico-
...
Opción deseada del menú sin ejecución de la mBrowse
aRotAuto - Array -
...
Contiene los datos de los campos y sus contenidos para incluir por rutina automática.
nOpcAuto - Numérico -
...
Opción deseada del menú por medio de la rutina automática, donde 3 = Pagar, 4 =
...
Cobrar, 5 =
...
Borrar, 6 =
...
Anular, 7 =
...
Transferencia y 8 =
...
Reversión Transferencia
En este
...
caso,
...
necesitamos enviar el vector del canal Master como segundo
...
parámetro (aRotAuto)
...
y la opción del menú como tercer parámetro (nOpcAuto).
Vamos
...
a necesitar manejar el array de canales creado por el MILE a través del user function.
...
...
...
Suponiendo la siguiente configuración del layout del MILE:
1) Informações Informaciones sobre a rotinala rutina:
2) Defina a formatação do arquivo. Atente-se para o campo Pré-Execução, onde iremos utilizar uma função para mudar o vetor criado pelo el formateo del archivo. Esté atento al campo Ejecución previa, donde utilizaremos una función para cambiar el vector creado por el MILE, antes de chamar llamar a MsExecAuto do del FINA100.
3) Defina o el tipo de MsExecAuto. Neste En este caso podemos utilizar o Modelo el modelo 1, por porque se tratar somente de 1 tabela. Como a rotina não está em MVC, não necessita da configuração dos Adapters em MVC.trata solo de una tabla Como la rutina no está en MVC, no es necesario configurar los Adapters en MVC.
4) Defina o el canal A como Master para receber os dados do movimento bancário para a tabela recibir los datos del movimiento bancario para la tabla SE5.
5) Defina a ordem dos la orden de los campos que estarão estarán dentro do arquivo del archivo de importaçãoimportación.
...
Utilizaremos una User Function en la ejecución previa del Mile. La función debe devolver un nuevo vector con el orden correcto de los parámetros que se enviarán a la rutina FINA100.
En el siguiente ejemplo, estamos creando el array aRotAuto en la segunda posición y el nOpcAuto en la tercera posición.
User function UFINA100(lInterfaz
...
Iremos utilizar uma user function na pré-execução do Mile. A função deverá retornar um novo vetor com a ordem correta dos parâmetros a serem enviados para a rotina FINA100.
No exemplo abaixo, estamos criando o array aRotAuto na segunda posição e o nOpcAuto na terceira posição.
User function UFINA100(lInterface, aInfos, aLayOut, aSaidasaSalidas, aVetoresaVectores)
Local aNewVet := array(3)
aNewVet[1] := {3}//nPosRotina
aNewVet[2] := aClone(aVetores[1]) //aRotAuto
aNewVet[3] := {3} // nOpcAuto onde donde 3 = Pagar, 4 = Receber, inclusive a opção pode ser conforme a posição de aVetoresCobrar, incluso la opción puede ser según la posición de aVectores
Return aClone(aNewVet)
...
...
...
02/01/2019;M1;3370,09;NAT1;237;1020;102030;
...
BAJA AUTOMÁTICA FONDOS;BRADESCO;P;BA;02/01/2019
02/01/2019;M1;11736,10;NAT1;237;1020;102030;
...
RESCATE INVERSFACIL;BRADESCO;P;BA;02/01/2019
Card documentos | ||||
---|---|---|---|---|
|
...
HTML |
---|
<!-- esconder o menu --> <style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } </style> |