Adpater responsável pelo cadastro de Cliente x Fornecedor com o BackOffice RM, assim viabilizando o CRUD do cadastro por recebimento / envio de mensagem de integração.
Regras para código Externo
O código externo foi criado para armazenamos o código do cliente / fornecedor do sistema integrado.
Exemplo:
Código no RM | Código Externo no RM | Código no Protheus |
---|---|---|
000014 | 000035 | 000035 |
Dessa forma é possível realizar uma pesquisa no RM pelo código externo que representa o código do sistema integrado.
Modulo: Gestão Financeira
Solution: RM.Fin.TotvsMessage.Adapter
Identificador | Versão | Forma de Envio | Tipo do Adapter |
---|---|---|---|
CUSTOMERVENDOR | 2.000 | Síncrona | Envia |
2.002 | Síncrona | Envia | |
2.003 | Síncrona | Envia |
Escopo:
Pacote | Entidade | Versão | Envia | Recebe |
---|---|---|---|---|
TOTVS Folha pagto RM x Backoffice Protheus | Fornecedor | 2.003 | Não | Sim |
Cliente | - | Não | Não | |
Manutenção de Ativos (SIGAMNT) x BackOffice RM | Cliente/Fornecedor | 2.002 | Sim | Não |
Tabela: FCFO
Mensagem Padrão | Descrição | Campo | Valor | Tipo Campo | Tamanho |
---|---|---|---|---|---|
CompanyId | Código da empresa | CODCOLIGADA | DCODCOLIGADA | 2 | |
CompanyIntern alId | InternalId da empresa | CODCOLIGADA | |||
Code | Código do fornecedor | CODCFO | varchar | 25 | |
StoreId | Loja | ||||
InternalId | InternalId do fornecedor | CODCOLIGADA | CODCFO | ||
ShortName | Nome reduzido | NOMEFANTASIA | varchar | 100 | |
Type | Tipo | PAGREC | [Se Type = 'Customer'] PagRec=1 Senão se Type = 'Vendor' PagRec=2 Senão PagRec = 3 | smallint | 2 |
EntityType | Tipo do registro | PESSOAFISOUJUR | [Se EntityType = 'Person'] PessoaFisOuJur= F Senão PessoalFisOuJus= J | varchar | 1 |
RegisterSituatio n | Situação | ATIVO | Se RegisterSituation = 'Active'] Ativo=1 Senão Ativo=0 | smallint | 2 |
GovernmentalI nformation. Id Name[CNPJ] | CNPJ/CPF | CGCCFO | Se Id[Name]= CPF'] ou Id[Name]= CNPJ'] CGCCFO=1 Senão Ativo=0 | varchar | 20 |
Address.Addre ss | Nome da rua | RUA | varchar | 100 | |
Address.Numb er | Número | NUMERO | varchar | 8 | |
Address.Compl ement | Complemento | COMPLEMENTO | DCOMPLEMENTO | 60 | |
Address.City.Ci tyInternalId | Código do município | CODMUNICIPIO | varchar | 20 | |
Address.City.Ci tyDescription | Nome cidade | CIDADE | DCIDADE | 32 | |
Address.District | Bairro | BAIRRO | DBAIRRO | 80 | |
Address.State. StateInternalId | Código do Estado | CODETD | varchar | 2 | |
Address.State.StateCode | Código do Estado | CODETD | Se País diferente de Brasil preenche com EX | varchar | 2 |
Address.State. StateDescription | Descrição do estado | DESCETD | Se País diferente de Brasil preenche com ESTRANGEIRO | ||
Address.Countr y.CountryIntern alId | Codigo do país | IDPAIS | smallint | 2 | |
Address.Countr y.CountryDescr iption | Nome do país | PAIS | varchar | 20 | |
Address.ZIPCo de | Cep | CEP | DCEP | 9 | |
Address.POBo x | Caixa postal | CAIXAPOSTAL | varchar | 10 | |
ListOfCommuni cationInformati on.Communicat ionInformation. PhoneNumber | Telefone | TELEFONE | CommunicationInfor mation | varchar | 15 |
ListOfCommuni cationInformati on.Communicat ionInformation. FaxNumber | Fax | FAX | CommunicationInfor mation[1] | varchar | 15 |
ListOfCommuni cationInformati on.Communicat ionInformation. | CommunicationInfor mation[1] [Primeira posição na lista de e-mail da mensagem] | varchar | 60 |
Parâmetros:
CODCLASSIFICPAIS: Este parâmetro tem a responsabilidade de ser o código da tabela de classificação de país. Como o código do País no Protheus é baseado na tabela de classificação do IBGE, deve-se
cadastrar esta tabela no RM (BackOffice / Gestão Fiscal / Mais... / Endereços / Classificação de País.) e definir nos parâmetros de integração qual será o código desta tabela.
No cadastro de Classificação de País incluir uma tabela de classificação.
No cadastro de País abrir o anexo Codificação de País e incluir a tabela de classificação informando o Código País.
Nos Parâmetros de Integração informar no parâmetro "CODCLASSIFICPAIS" o código da tabela de classificação utilizada e associado ao país.
Envio
Recebimento
Testes Realizados:
Envio RM >> Protheus
1-Acessado Nova MDI >> BackOffice >> Cadastro>> Cliente / Fornecedor
1.1 Cadastrando Cliente / fornecedor
1.1.1 Erro: " Um ou mais campos obrigatórios não foram preenchidos. xxxxxxxxxxxxxxxxxx -> xxxxxxxxxx Pasta Código."
( Houve inconsistências com valor padrão / Inicializador de código no Protheus para o código de cliente / Fornecedor). Foi necessário remover o inicializador padrão de A1_COD no Protheus.
1.1.2 Parâmetros utilizados neste teste.
Com essas opções, como o código de cliente / fornecedor é gerado? Porque o campo o código de cliente / fornecedor esta sempre bloqueado na tela, quando EAI2.0 Ativo.?
O código de cliente fornecedor "CODCFO" é gerado a partir das informações dos novos campos: CODEXTERNO, CODLOJA E CODFILIALINTEGRACAO.
O CODCFO é concatenado com :
1.1.3 Quando a inclusão do cliente / fornecedor é gerado por terceiros, "PVI, através de dataserver" o Código será gerado com base no ultimo cliente / fornecedor gerado +1;
1.2 Mensagem enviada ao Protheus com sucesso. Registro Incluído Corretamente.
1.3 Alterado registro no RM >> cliente / Fornecedor refletido no Protheus.
1.3 Excluído registro no RM >> cliente / Fornecedor refletido no Protheus.
2.0 - Testado a tela de cadastro de cliente / fornecedor conforme os novos campos: Código Externo, Código de loja e Código de filial de integração.
3.0 - Caso o Protheus esteja configurado com o campo código com default, o código externo enviado do RM é desconsiderado pelo Protheus, colocando o seu código sequencial de sua tabela.