Para realizar a importação la importación de Regras Reglas de Negócio negocio utilizando o el MILE, será necessário algumas configurações adicionais, pois a estrutura do MILE não permite realizar a importação utilizando simplesmente a configuração de canais.son necesarias algunas configuraciones adicionales, pues la estructura del MILE no permite realizar la importación utilizando simplemente la configuración de canales. La rutina Reglas de negocio (FATA100) recibe los siguientes parámetros vía rutina A rotina de Regras de Negócio (FATA100) recebe os seguintes parâmetros via rotina automática:
FATA100( uAutoCab, uItensACT, uItensACX, uItensACN, nOpcAuto ) OndeDonde:
uAutoCab - Array - Dados do cabeçalho da Regra de Negócio Datos del encabezado de la Regla de negocio (ACS) uItensACT - Array - Dados dos itens da Negociação Datos de los ítems de la negociación (ACT) uItensACX - Array - Dados dos itens da Comercialização Datos de los ítems de la comercialización (ACX) uItensACN - Array - Dados dos itens de Descontos Datos de los ítems de descuentos (ACN) nOpcAuto - Numérico - Opção da rotina a ser executadaOpción de la rutina que se ejecutará En este caso necesitamos crear los canales Neste caso, precisamos criar os canais MASTER (ACS) e os y los DETAIL (ACT, ACX e y ACN) para podermos enviá-los para a rotina automática do poder enviarlos a la rutina automática del FATA100.
No En el importador MILE quando cuando utilizamos o el tipo de adapter "1- MSExecAuto", ele envia os dados para a rotina automática da seguinte maneiraeste envía los datos a la rutina automática de la siguiente manera: FUNCAOXXX( uAutoCab, uAutoItens, nOpcAuto ) Para que o el layout criado funcione corretamente na rotina automática do FATA100, precisaremos manipular o array dos canais através de uma UserFunction que deverá ser informada no campo Pré Execução do layout.creado funcione correctamente en la rutina automática del FATA100, necesitaremos manejar el array de los canales por medio de una UserFunction que debe informarse en el campo Ejecución previa del layout.
El MILE puede adaptarse y personalizarse de acuerdo con las necesidades de los clientes. Para más detalles vea la documentaciónO MILE pode ser adaptado e customizado conforme as necessidades dos clientes. Para maiores detalhes, veja a documentação: MILE - Model Integrator Layout Engine
Exemplo da função de Pré ExecuçãoEjemplo de la función Ejecución previa: Bloco de código |
---|
language | js |
---|
linenumbers | true |
---|
| #INCLUDE "PROTHEUS.CH"
User Function FT100TST(lInterface,aInfos,aLayOut,aSaidas)
/*
lInterface - Lógico - .T. si se está sendoejecutando executadocon com interfaceinterfaz / .F. Si se está sendoejecutando executadosin sem interfaceinterfaz
aInfos - Array - VetorVector comcon informaçõesinformación adicionaisadicional como linhalínea inicial ey final lidaleída, nomenombre dodel arquivoarchivo, etc.
aLayOut - Array - Información Informaçõesde daslas definiçõesdefiniciones dodel layout.
aSaidas - Array - EstruturaEstructura dodel vetorvector sobre dadosdatos de saídasalida
*/
Local aNewVet := Array(4) //CriaCrea umun array para separar los osdatos dadosde doslos canaiscanales.
Local nX := 0
Local aACT := {}
Local aACX := {}
Local aACN := {}
//Separa los osdatos dadosde doslos canaiscanales (DETAIL) para seremenviarse enviadosa parala a execauto dodel FATA100
For nX := 1 To Len(aSaidas[2][4][1])
If "ACT_" $ aSaidas[2][4][1][nX][1]
aAdd(aACT,{ aSaidas[2][4][1][nX][1], aSaidas[2][4][1][nX][2], aSaidas[2][4][1][nX][3] })
ElseIf "ACX_" $ aSaidas[2][4][1][nX][1]
aAdd(aACX,{ aSaidas[2][4][1][nX][1], aSaidas[2][4][1][nX][2], aSaidas[2][4][1][nX][3] })
ElseIf "ACN_" $ aSaidas[2][4][1][nX][1]
aAdd(aACN,{ aSaidas[2][4][1][nX][1], aSaidas[2][4][1][nX][2], aSaidas[2][4][1][nX][3] })
EndIf
Next nX
//CarregamosCargamos oslos arrays dos dados nas posições corretas dade los datos en las posiciones correctas de la execauto
aNewVet[1] := aSaidas[1][4][1] //uAutoCab (MASTER)
aNewVet[2] := {aACT} //uItensACT
aNewVet[3] := {aACX} //uItensACX
aNewVet[4] := {aACN} //uItensACN
//OEl parâmetroparámetro nOpcAuto será enviado de forma automática pelopor el importador MILE
Return aNewVet |
A função acima deverá ser compilada no repositório antes da configuração do layout. La función anterior debe compilarse en el repositorio antes de la configuración del layout.
Configuración del ayoutConfiguração do Layout: 1) Informações gerais;Informaciones generales
2) Formatação do arquivo;Formateo del archivo
3) Tratamentos e Validações; Atente-se para o campo Pré Execução, onde deverá ser informado o nome da função U_FT100TST que irá mudar a posição dos parâmetros, antes da chamada da rotina automática do Tratamientos y validaciones Observe e campo Ejecución previa, donde debe informarse el nombre de la función U_FT100TST que cambiará la posición de los parámetros, antes de la activación de la rutina automática del FATA100.
4) Adapters de Rotina Automática; Neste caso iremos utilizar o Rutina automática En este caso utilizaremos el Modelo 3. Como a rotina não está em la rutina no está en MVC, não será necessário a configuração dos Adapters em no será necesario configurar los Adapters en MVC.
5) Definição dos Canais; Criar o Definición de los canales Crear el canal A (MASTER) para receber os dados principais da Regra de Negócio recibir los datos principales de la Regla de negocio (ACS).
Criar o Crear el canal B (DETAIL) para receber os itens da Negociação recibir los ítems de la negociación (ACT).
Criar o Crear el canal C (DETAIL) para receber os itens da Comercialização recibir los ítems de la comercialización (ACX).
Criar o Crear el canal D (DETAIL) para receber os itens de Descontos recibir los ítems de descuentos (ACN).
Exemplo do Arquivo de Importação: Ejemplo del archivo de importación: En este ejemplo importaremos una Regla de negociación, de acuerdo con la personalización del rdmake de ejemplo. Recordando que de acuerdo con la configuración del layout, la primera posición de cada registro se refiere al Neste exemplo iremos importar uma Regra de Negociação, conforme a customização do rdmake de exemplo. Lembrando que conforme a configuração do layout, a primeira posição de cada registro se refere ao canal. |A|TST MILE IMPORT| |B|001| |C|01| |D|01|5| Download do exemplo do del ejemplo del layout (XML) e do arquivo de importaçãoy del archivo de importación:
View file |
---|
name | Layout_Mile_FATA100.zip |
---|
height | 150 |
---|
|
|