Integração com o módulo Financeiro
Procedimentos para Integração dos Módulos de Materiais e Financeiro
Durante a implantação dos módulos de Materiais, deve-se ter definido o modelo de trabalho do Módulo Financeiro. Os principais pontos que devem ser observados são:
· Método de acesso às tabelas (compartilhado ou exclusivo);
· Natureza financeira;
· Prefixo dos títulos;
· Parcelas dos títulos.
A definição destes pontos é de suma importância para o sucesso da implantação dos Módulos de Materiais integrados com o Módulo Financeiro.
Para uma melhor compreensão destes pontos, é importante observar como são realizadas as integrações entre os Módulos de Materiais e o Módulo Financeiro. Assim, utilizaremos como base os documentos de entrada e saída.
Estes documentos integram-se ao Módulo Financeiro através da geração dos títulos a receber e pagar. Para a geração destes títulos, são utilizados os seguintes parâmetros:
· MV_1DUPPREF - prefixo do título para o documento de saída;
· MV_2DUPPREF - prefixo do título para o documento de entrada;
· MV_1DUPNAT - natureza do título para o documento de saída;
· MV_2DUPNAT - natureza do título para o documento de entrada;
· MV_1DUP - número da primeira parcela do título financeiro.
CONTAS A PAGAR
A chave primária ou primary key do título de contas a pagar é composta por:
PREFIXO+NÚMERO+PARCELA+TIPO+FORNECEDOR+LOJA
Observe, então, como são preenchidos estes campos da chave primária da tabela:
· Prefixo ? conforme definido pelo parâmetro ?MV_2DUPPREF?;
· Número ? é determinado pelo número do documento de entrada;
· Parcela - é definida pelo parâmetro MV_1DUP para as compras a prazo e, para as compras à vista, a parcela não é preenchida;
· Tipo - é determinado pela tabela de Tipos de Títulos (SES), sendo que na configuração inicial do sistema está definido como 'NF'. Vale ressaltar que apenas um tipo de título é permitido para geração destes documentos e, uma vez definido, não poderá ser alterado pela rotina de manutenção de Tipos de Títulos, nem ser utilizado para inclusões manuais de títulos no Módulo Financeiro, ou seja, este tipo de título somente deve ser utilizado para integração;
· Fornecedor/Loja - são preenchidos com o fornecedor/loja do documento de entrada.
Observe que a natureza financeira não faz parte da chave primária do título de contas a pagar, mas por ser uma informação obrigatória, deve-se assegurar que está sempre preenchida.
CONTAS A RECEBER
A chave primária ou primary key do título de contas a receber é composta por:
PREFIXO + NÚMERO + PARCELA + TIPO
Observe, então, como são preenchidos estes campos da chave primária da tabela:
§ Número - é determinado pelo número do documento de saída;
§ Tipo ? é determinado pela tabela de Tipos de Títulos (SES), sendo que na configuração inicial do sistema está definido como 'NF'. Vale ressaltar que apenas um tipo de título é permitido para geração destes documentos e, uma vez definido, não poderá ser alterado pela rotina de manutenção ?Tipos de Títulos?, e também não deve ser utilizado para inclusões manuais de títulos no Módulo Financeiro, ou seja, este tipo de título somente deve ser utilizado para integração.
Observe que a natureza financeira também não faz parte da chave primária do título de contas a receber, mas por ser uma informação obrigatória, deve-se assegurar de que está sempre preenchida.
Desta forma, já é possível compreender a importância da definição do parâmetro ?MV_1DUP? para o perfeito preenchido dos títulos a prazo e, dos parâmetros ?MV_1DUPNAT? e ?MV_2DUPNAT?, para o preenchimento e utilização das naturezas financeiras.
Vamos, agora, abordar a importância dos parâmetros ?MV_1DUPPREF? e ?MV_2DUPPREF? que são de suma importância para a integridade do Módulo Financeiro, uma vez que ele possibilita a alteração da chave primária dos títulos financeiros após a gravação.
Para exemplificar, suponha que as tabelas do Financeiro estão compartilhadas e a de Materiais estejam exclusivas, como o prefixo pode ser alterado após a gravação da tabela, não existe um método de garantir a não duplicação dos títulos financeiros, caso estes parâmetros não sejam alterados, quando for definido o método de acesso às tabelas do módulo Financeiro.
Em resumo, caso seja alterado o método de compartilhamento do módulo Financeiro, deve-se assegurar, através dos parâmetros MV_1DUPPREF/MV_2DUPPREF, de que não existe duplicação da chave primária de suas tabelas, conforme o exemplo a seguir:
O parâmetro MV_1DUPPREF foi preenchido como: ExecBlock('1DUPPREF',.F.,.F.)
Foi criada a seguinte User Function:
User Function 1DupPref()
Local aArea := GetArea()
Local aAreaSE1:= SE1->(GetArea())
Local cPrefixo := SubStr(AllTrim(xFilial('SF2')+SE1->E1_SERIE),1,3)
dbSelectArea('SE1')
dbSetOrder(1)
While MsSeek(xFilial('SE1')+cPrefixo+SE1->E1_NUM+SE1->E1_PARCELA+SE1->E1_TIPO) .And. aAreaSE1[3] <> SE1->(RecNo())
cPrefixo := Soma1(cPrefixo)
EndDo
RestArea(aAreaSE1)
RestArea(aArea)
Return(cPrefixo)
Observação: Caso seja utilizado o método de acesso definido pela Microsiga, não existe a necessidade de alteração dos parâmetros MV_1DUPPREF e MV_2DUPPREF
§ Parcela ? é definida pelo parâmetro MV_1DUP para as vendas a prazo e, para as vendas à vista, a parcela não é preenchida;