ÍNDICE


01. VISÃO GERAL

Esta rotina executa o processamento de dados cadastrais e contas a pagar de fornecedores autônomos, enviando as informações para um Web Service REST disponibilizado pelo HCM Datasul (Folha de Pagamento).

Os dados serão recepcionados pela Datasul para serem enviados ao E-Social (Eventos S-1200 e S-1210).


02. CONFIGURAÇÃO DA COMUNICAÇÃO COM O WEB SERVICE


Para realizar a comunicação com a API da Datasul através da rotina FINA406, é necessário a configuração dos parâmetros (SX6) a seguir:


MV_WSHCMUR - URL do WebService Datasul (com a porta de comunicação).

MV_WSHCMUS - Usuário de autenticação do Web Service Datasul.

MV_WSHCMSE - Senha de autenticação do Web Service Datasul.


Caso a configuração acima não seja realizada, a rotina FINA406 exibe um alerta e bloqueia o processamento.

03. EXEMPLO DE CONFIGURAÇÃO MILE

Supondo a seguinte configuração de layout do MILE:

1) Informações sobre a rotina:

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 MILE, antes de chamar a MsExecAuto do FINA100.

3) Defina o tipo de MsExecAuto. Neste caso podemos utilizar o Modelo 1, por se tratar somente de 1 tabela. Como a rotina não está em MVC, não necessita da configuração dos Adapters em MVC.

4) Defina o canal A como Master para receber os dados do movimento bancário para a tabela SE5.

5) Defina a ordem dos campos que estarão dentro do arquivo de importação.

04. USER FUNCTION PARA MANIPULAÇÃO DOS PARÂMETROS

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, aSaidas, aVetores)

Local aNewVet := array(3)

aNewVet[1] := {3}//nPosRotina
aNewVet[2] := aClone(aVetores[1]) //aRotAuto
aNewVet[3] := {3} // nOpcAuto onde 3 = Pagar, 4 = Receber, inclusive a opção pode ser conforme a posição de aVetores

Return aClone(aNewVet)

05. EXEMPLO DE ARQUIVO DE IMPORTAÇÃO

02/01/2019;M1;3370,09;NAT1;237;1020;102030;BAIXA AUTOMATICA FUNDOS;BRADESCO;P;BA;02/01/2019
02/01/2019;M1;11736,10;NAT1;237;1020;102030;RESGATE INVEST FACIL;BRADESCO;P;BA;02/01/2019



06. TABELAS UTILIZADAS

<!-- 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>