Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

Informações Gerais

Especificação

Produto

Protheus

Módulo

SIGATMS

Segmento Executor

Distribuição e Logística

Projeto1

LOGTMS01-608

IRM1

 

Requisito1

 

Subtarefa1

 

Chamado2

 

País

( X ) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Outros

 

   Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos). 

Objetivo

 Integrar as informações dos cadastros de PRODUTOS, FORNECEDORES, CLIENTES, TRANSPORTADORAS e LOCAIS DE ENTREGAS, gerados pelo módulo SIGATMS (Transportation Management System) da linha Microsiga Protheus  com o Datasul.

O Protheus usará como ferramenta de Integração o EAI (Enterprise Application Integrator), o EAI por sua vez, terá a responsabilidade de trafegar mensagens de XML entre o Protheus e o Datasul, além de fazer o controle de filas das mensagens a serem integradas.

Definição da Regra de Negócio

Para que se cumpra o objetivo deste requisito, deverão ser criadas verificações para os processos de inclusão, alteração e exclusão dos itens relacionados, mantendo assim, tanto o SIGATMS quanto o DATASUL com informações idênticas, sempre assegurando a integridade dos dados. 

O parâmetro MV_TMSERP deve deverá estar setado como "1", onde significa que o sistema integrará com outra marca, neste caso, o DatasulDATASUL, solicitando a inclusão, alteração e exclusão de registros e solicitando retorno em forma síncrona.

O Adapter EAI deve estar cadastrado, indicando o(s) cadastro(s) que integrará com a outra marca.

O sistema deverá tratar os cadastros com uma numeração única para os registros integrados, onde terá um código informado pelo DATASUL para ser atualizado também no registro de origem, permitindo assim, que pelo mesmo código possa ser consultado o registro tanto na origem como no destino.

 

Exemplo:

  • Ao incluir, alterar ou excluir um registro, o sistema deverá verificar os parâmetros o parâmetro MV_TMSERP , caso esteja com valor diferente de 0, significa que deve fazer integração com outra marca e se existe o Adapter EAI cadastrado para o determinado cadastro, verificando as seguintes situações:
  1. INCLUIR: Verificar se o registro já existe no destino, caso SIM, atualizar as informações de acordo com a origem, caso NÃO, incluir no destino e atualizar a origem com o código de numeração única disponibilizado pelo destino..
  2. ALTERAR: Verificar se registro já existe no destino, caso SIM, atualizar as informações de acordo com a origem, caso NÃO, incluir no destino e atualizar a origem com o código de numeração única disponibilizado pelo destino.
  3. EXCLUIR: Verificar se existe algum processo e/ou cadastro em que o registro esteja atrelado, tanto na origem, como no destino, caso SIM, notificar através de mensagem e não permitir a exclusão, caso NÃO, excluir na origem e no destino.

 

 Abaixo fluxo básico do processo de atualização da numeração única.

Image Added

.Image Removed

Seguem as rotinas que devem ser alteradas

FONTETIPO OPERAÇÃOTIPOACESSO MENUDESCRIÇÃO
MATA010AlteraçãoCadastroAtualizações / Cadastros / ProdutosCadastro de Produtos / Itens
MATI010AlteraçãoIntegração EAI Responsável por montar a mensagem de EAI
MATA020AlteraçãoCadastroAtualizações / Cadastros / FornecedoresCadastro de Fornecedores
MATI020AlteraçãoIntegração EAI Responsável por montar a mensagem de EAI
MATA030AlteraçãoCadastroAtualizações / Cadastros / ClientesCadastro de Clientes
MATI030AlteraçãoIntegração EAI Responsável por montar a mensagem de EAI
MATA050AlteraçãoCadastroAtualizações / Cadastros / TransportadorasCadastro de transportadoras
MATI050AlteraçãoIntegração EAI Responsável por montar a mensagem de EAI
TMSA450InclusãoCadastroAtualizações / S.A.C. / End.solic./clienteCadastro de locais de entregas
TMSI450InclusãoIntegração EAI Responsável por montar a mensagem de EAI

 

Tabelas Utilizadas

  • SB1 – Cadastro de Produtos
  • SA7 – Cadastro de Produtos X Clientes
  • SA1 - Cadastro de Clientes
  • SA2 - Cadastro de Fornecedores
  • DUY - Cadastro de Regiões
  • SYA - Cadastro de Países
  • SA4 - Cadastro de Transportadoras
  • CC2 - Cadastro de Municípios
  • SX5 - Cadastro de Estados - Tabela 12
  • CCH - Cadastro de País
  • DUL - Cadastro de Endereço de Solicitantes e Clientes
  • DUE - Cadastro de Solicitantes

 

STRs que devem ser incluídos na biblioteca do INCLUDE:

  • STR0114 = Não foi possível realizar a integração. Falha na integração.

Cadastro de Produtos

 

Campos obrigatórios:

 

Campo obrigatório para integração do cadastro de produtos:

TÍTULOTAG / CAMPO TABELADESCRIÇÃO
Código da famíliaFamilyCode → B1_FPCODECódigo da família do produto


Fluxo das operações INCLUSÃO, ALTERAÇÃO e EXCLUSÃO.

                                                                

 

Modelo do XML de envio

 

<?xml version="1.0" encoding="UTF-8" ?>
<TOTVSMessage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="">
        <MessageInformation version="3.001">
                <UUID>f611dee5-7f78-77be-e611-b0bc9038e092</UUID>
                <Type>Response</Type>
                <Transaction>item</Transaction>
                <StandardVersion>1.0</StandardVersion>
                <SourceApplication>dts11buzios8480</SourceApplication>
                <CompanyId>001</CompanyId>
                <Product name="Datasul" version="11.5.X" />
                <GeneratedOn>2016-12-07T17:08:44.593-02:00</GeneratedOn>
                <DeliveryType>Sync</DeliveryType>
        </MessageInformation>
        <ResponseMessage>
                <ReceivedMessage>
                        <SentBy>MP12</SentBy>
                        <UUID>5dc8dde5-6b5c-55bf-423e-46a01f80e96d</UUID>
                </ReceivedMessage>
                <ProcessingInformation>
                        <ProcessedOn>2016-12-07T17:08:44.593-02:00</ProcessedOn>
                        <Status>OK</Status>
                </ProcessingInformation>
                <ReturnContent>
                        <ListOfInternalId>
                                <InternalId>
                                        <Name>ItemInternalId</Name>
                                        <Origin>01||GENERICODATASUL</Origin>
                                        <Destination>GENERICODATASUL</Destination>
                                </InternalId>
                        </ListOfInternalId>
                </ReturnContent>
        </ResponseMessage>
</TOTVSMessage>

Informações de Campos e TAGs 

Cadastro de PRODUTOS 

CAMPO DATASULCAMPO PROTHEUSTIPO
EntityItemVariável
EventcEventVariável
keyB1_CODCampo Base
CompanyIdEmpAntVariável
BranchIdB1_FILIALCampo Base
CompanyInternalIdEmpAnt + | + FilAntVariável
CodeB1_CODCampo Base
InternalIdEmpAnt + B1_CODVariável + Campo Base
NameB1_DESCCampo Base
ShortNameB1_DESCCampo Base
ActiveProdActivVariável
StockGroupCodeB1_GRUPOCampo Base
StockGroupInternalIdB1_GRUPOCampo Base
StockGroupDescriptionB1_GRUPOCampo Base
UnitOfMeasureCodeB1_UMCampo Base
UnitOfMeasureInternalIdEmpAnt + | + B1_UMVariável + Campo Base
StandardWarehouseCodeB1_LOCPADCampo Base
StandardWarehouseInternalIdB1_LOCPADCampo Base
StandardWarehouseDescriptionB1_LOCPADCampo Base
EconomicLotB1_LECampo Base
MinimumLotB1_LMCampo Base
NetWeightB1_PESOCampo Base
GrossWeightB1_PESBRUCampo Base
OriginB1_ORIGEMCampo Base
FamilyCodeB1_FPCODCampo Base
FamilyInternalIdEmpAnt + | + SYC + | + B1_FPCODVariável + Campo Base
FamilyDescriptionB1_FPCODCampo Base
ProductTypeB1_TIPOCampo Base
TrailB1_RASTROCampo Base
SecondUnitOfMeasureCodeB1_SEGUMCampo Base
SecondUnitOfMeasureInternalIdB1_SEGUMCampo Base
MultiplicationFactorValueB1_CONVCampo Base
CostPricePrecoCustoVariável
SalesPriceB1_PRV1Campo Base
AverageCostPriceB2_CM1Campo Base
StandardCostPriceBZ_CUSTDCampo Base
CustomerCodeA7_CLIENTECampo Base
CustomerInternalIdA7_CLIENTE + A1_LOJACampo Base
GovernmentalInformation (INSCRICAO ESTADUAL)A1_INSCRCampo Base
GovernmentalInformation (INSCRICAO MUNICIPAL)A1_INSCRMCampo Base
GovernmentalInformation (CPF ou CNPJ)A1_CGCCampo Base
GovernmentalInformation (SUFRAMA)A1_SUFRAMACampo Base
CustomerItemCodeA7_CODCLICampo Base
CustomerItemInternalIdA7_CODCLICampo Base

 

Cadastro de TRANSPORTADORAS

CAMPO DATASULCAMPO PROTHEUSTIPO
EntityCarrierVariável
EventcEventVariável
keyA4_CODCampo Base
CompanyIdEmpAntVariável
CodeA4_CODCampo Base
ShortNameA4_NREDUZCampo Base
NameA4_NOMECampo Base
InternalIdA4_CODCampo Base
GovernmentalInformation (INSCRICAO ESTADUAL)A4_INSESTCampo Base
GovernmentalInformation (SUFRAMA)A4_SUFRAMACampo Base
GovernmentalInformation (CPF ou CNPJ)A4_CGCCampo Base
AddressA4_END (L)Campo Base
NumberA4_END (N)Campo Base
ComplementA4_COMPLEMCampo Base
Code (City)A4_COD_MUNCampo Base
DescriptionA4_ESTCampo Base
DistrictA4_BAIRROCampo Base
Code (State)A4_ESTCampo Base
Code (Country)cCountryCodeVariável
DescriptioncCountryDscVariável
ZIPCodeA4_CEPCampo Base
PhoneNumbercTelVariável
HomePageA4_HPAGECampo Base
EmailA4_EMAILCampo Base

 

Cadastro de FORNECEDORES

CAMPO DATASULCAMPO PROTHEUSTIPO
EntityCustomerVendorVariável
EventcEventVariável
keyA2_COD + A2_LOJACampo Base
CompanyIdEmpAntVariável
BranchIdxFilialVariável
BranchInternalIdcEmpAnt + | + cFilAntVariável
CompanyInternalIdcEmpAnt + | + cFilAntVariável
CodeA2_CODCampo Base
StoreIdA2_LOJACampo Base
InternalIdA2_COD + A2_LOJACampo Base
ShortNameA2_NREDUZCampo Base
NameA2_NOMECampo Base
TypeVendorFixo
EntityTypePerson (CPF) ou Company (CNPJ)Campo Base
RegisterSituationInactive ou ActiveCampo Base
GovernmentalInformation (INSCRICAO ESTADUAL)A2_INSCRCampo Base
GovernmentalInformation (INSCRICAO MUNICIPAL)A2_INSCRMCampo Base
GovernmentalInformation (CPF ou CNPJ)A2_CGCCampo Base
Address A2_END (L)Campo Base
NumberA2_END (N)Campo Base
ComplementA2_COMPLEMCampo Base
DistrictA2_BAIRROCampo Base
CityCodeA2_COD_MUNCampo Base
CityDescriptionA2_MUNCampo Base
StateCodeA2_ESTCampo Base
StateInternalIdA2_ESTCampo Base
StateDescriptionX5DESCRIVariável
CountryCodeA2_PAISCampo Base
CountryInternalIdA2_PAISCampo Base
ZIPCodeA2_CEPCampo Base
POBoxA2_CX_POSTCampo Base
EmailA2_EMAILCampo Base
PhoneNumberA2_TELCampo Base
FaxNumberA2_FAXCampo Base
HomePageA2_HPAGECampo Base
Contact (Name)A2_CONTATOCampo Base
BankCodeA2_BANCOCampo Base
BankInternalIdA2_BANCO + A2_AGENCIA + A2_NUMCONCampo Base
BankNamecBcoNameVariável
BranchCodeA2_AGENCIACampo Base
BranchKeyA2_DVAGECampo Base
CheckingAccountNumberA2_NUMCON ou A2_DVCTACampo Base
CheckingAccountTypeA2_TIPCTACampo Base
MainAccount1Fixo
CurrencyAccount01Fixo

 

Cadastro de CLIENTES

CAMPO DATASULCAMPO PROTHEUSTIPO
EntityCustomerVendorVariável
EventcEventVariável
keyA1_COD + A1_LOJACampo Base
CompanyIdEmpAntVariável
BranchIdxFilialVariável
BranchInternalIdcEmpAnt + | + cFilAntVariável
CompanyInternalIdcEmpAnt + | + cFilAntVariável
CodeA1_CODCampo Base
StoreIdA1_LOJACampo Base
InternalIdA1_COD + A1_LOJACampo Base
ShortNameA1_NREDUZCampo Base
NameA1_NOMECampo Base
TypeCustomerFixo
EntityTypePerson (CPF) ou Company (CNPJ)Campo Base
RegisterDateA1_DTNASCCampo Base
RegisterSituationInactive ou ActiveCampo Base
GovernmentalInformation (INSCRICAO ESTADUAL)A1_INSCRCampo Base
GovernmentalInformation (INSCRICAO MUNICIPAL)A1_INSCRMCampo Base
GovernmentalInformation (CPF ou CNPJ)A1_CGCCampo Base
Address A1_END (L)Campo Base
NumberA1_END (N)Campo Base
ComplementA1_COMPLEMCampo Base
DistrictA1_BAIRROCampo Base
CityCodeA1_COD_MUNCampo Base
CityDescriptionA1_MUNCampo Base
StateCodeA1_ESTCampo Base
StateInternalIdA1_ESTCampo Base
StateDescriptionX5DESCRIVariável
CountryCodeA1_PAISCampo Base
CountryInternalIdA1_PAISCampo Base
ZIPCodeA1_CEPCampo Base
POBoxA1_CX_POSTCampo Base
ShippingAddress (Address)A1_ENDENT (L)Campo Base
ShippingAddress (Number)A1_ENDENT (N)Campo Base
ShippingAddress (Complement)A1_ENDENT (C)Campo Base
ShippingAddress (CityCode)cCodMunEVariável
ShippingAddress (CityDescription)A1_MUNECampo Base
ShippingAddress (District)A1_BAIRROECampo Base
ShippingAddress (StateCode)A1_ESTECampo Base
ShippingAddress (ZipCode)A1_CEPECampo Base
PhoneNumberA1_TELCampo Base
FaxNumberA1_FAXCampo Base
HomePageA1_HPAGECampo Base
EmailA1_EMAILCampo Base
ContactInformationNameA1_CONTATOCampo Base
BillingInformation (Address)A1_ENDCOB (L)Campo Base
BillingInformation (Number)A1_ENDCOB (N)Campo Base
BillingInformation (Complement)A1_ENDCOB (C)Campo Base
BillingInformation (CityDescription)A1_MUNCCampo Base
BillingInformation (District)A1_BAIRROCCampo Base
BillingInformation (StateCode)A1_ESTCCampo Base
BillingInformation (ZipCode)A1_CEPCCampo Base
VendorInformation (Code)A1_VENDCampo Base
CreditLimitA1_LCCampo Base


Cadastro de LOCAIS DE ENTREGAS

CAMPO DATASULCAMPO PROTHEUSTIPO
EntityCUSTOMERSHIPPINGADDRESSCampo Base
EventcEventVariável + Campo Base
key (InternalId)xFilial + | + DUL_SEQENDVariável + Campo Base
CompanyIdcEmpAntVariável
BranchIdcFilAntVariável
CompanyInternalIdcEmpAntVariável
BranchInternalIdcEmpAnt + | + cFilAntVariável
CustomerCodeDUL_CODCLICampo Base
InternalIdcInternalIdVariável
GovernmentalInformation (INSCRICAO ESTADUAL)DUL_INSCRCampo Base
GovernmentalInformation (INSCRICAO MUNICIPAL)""Branco
GovernmentalInformation (CPF ou CNPJ)DUL_CGCCampo Base
CodeDUL_SEQENDCampo Base
ExternalId""Branco
ShippingAddress (Address)DUL_END (L)Campo Base
ShippingAddress (Number)DUL_END (N)Campo Base
ShippingAddress (Complement)""Branco
ShippingAddress (District)DUL_BAIRROCampo Base
ShippingAddress (ZipCode)DUL_CEPCampo Base
ShippingAddress (Region)DUY_DESCRICampo Base
ShippingAddress (POBox)""Branco
ShippingAddress (CityCode)DUL_CODMUNCampo Base
ShippingAddress (CityInternalID)cFilAnt + DUL_CODMUNVariável + Campo Base
ShippingAddress (CityDescription)DUL_MUNCampo Base
ShippingAddress (StateCode)DUL_CODMUNCampo Base
ShippingAddress (StateInternalID)cFilAnt + DUL_ESTVariável + Campo Base
ShippingAddress (StateDescription)X5_DESCRICampo Base
ShippingAddress (CountryCode)A1_PAISCampo Base
ShippingAddress (CountryInternalID)cFilAnt + A1_PAISVariável + Campo Base
ShippingAddress (CountryDescription)YA_DESCRCampo Base


 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.