Visão Geral do Programa

Implementação do adapter de integração via Mensagem Única TOTVS do cadastro de Produto com o PDV, viabilizando assim o CRUD completo do cadastro por envio de mensagem de integração.

Principais Campos e Parâmetros

As inclusões, alterações e exclusões de Produto/Serviço são feitos através da Linha RM, que identifica o evento em sua entidade e envia uma mensagem ao PDV Protheus. Os dados de produto que serão sincronizados pela mensagem única são :

  • Pasta Identificação: Código do Produto, Data Cadastramento, Inativo, Nome fantasia, Tipo
  • Pasta Detalhes / Descrição: Descrição
  • Pasta Detalhes / Características: Peso Bruto, Peso Líquido
  • Pasta Detalhe / Outros Dados: Ref.
  • Pasta Preço: Preço à Prazo / Preço, Preço à Vista / Data-Base, Preço à vista / Preço
  • Pasta Controle de Estoque: Controlado por lote, Unidade de Controle, Usa número de série
  • Pasta Custos: Custo Médio / Valor, Custo unitário / Valor
  • Pasta Informações por Filial / Editar o registro da respectiva Filial: Consignado
  • Anexos / Informações do Estoque: Lote Econômico de Compras

Para integrar o cadastro de Produto os seguinte itens abaixo devem ser considerados:

  • A configuração de compartilhamento de cadastros entre Empresas e Filiais para a entidade Item deve ser: Exclusivo por Empresa e Compartilhado por Filial;
  • Serão enviados para o PROTHEUS somente os Produtos/Serviços de Último Nível;
  • Caso a integração esteja ativa, não será permitido o cadastramento de produtos controlados por lote e série, devendo ser selecionada somente uma das opções;
  • Produtos globais no BackOffice RM não serão considerados globais no sistema de destino, sendo enviada uma mensagem de inclusão para cada empresa a qual o produto faz parte;
  • Caso haja ao menos uma mensagem enviada com sucesso ao PDV(SigaLoja) , mesmo havendo erro nas mensagens referentes ao produto para as outras coligadas, não será apresentada mensagem de erro e a alteração/inclusão não será desfeita;
  • Não serão enviadas informações de Cliente/Fornecedor do Produto;
  • O campo B1_CODITE no cadastro de Produtos do PROTHEUS deve ser alterado, via apsdu, para não obrigatório e também deve-se retirar sua validação;
  • O campo “Código do Produto” no PROTHEUS deve ser alterado para tamanho 30 caracteres para manter compatibilidade com o RM.

Fórmula Visual

Para sincronizar o cadastro será necessário importar a fórmula visual que encontra-se disponível na pasta “Sugeridos”, interna à pasta “_ImpExp” no ambiente instalado do sistema (“../CorporeRM/_ImpExp/Sugeridos”). Ao importar a fórmula visual deverá ser marcado para cada fórmula o parâmetro “Importar Gatilho” na rotina de Importação de Fórmula Visual.Visando facilitar a sincronização das bases de dados RM e PDV foi desenvolvida uma atividade de fórmula visual que se responsabiliza por, a partir de alguns parâmetros, obter os dados necessários e solicitar o envio da Mensagem Única TOTVS Item_2.000.Basicamente é necessário informar a esta atividade somente a lista de chaves dos registros que se deseja integrar, qual a Mensagem Única a enviar e qual o objeto de negócio (DataServer) responsável por retornar as informações do registro. A partir destas informações a atividade se responsabiliza pela leitura, transformação e envio dos dados ao sistema de destino, oferecendo como retorno o Log de integração.Todas as mensagens trafegadas também constarão no monitor da fila de integração, para posterior conferência.

Listagem de Fórmula Visual:


RotinaOperaçãoFórmula Visual

Cadastro

Produto
Inclusão / Alteração / Exclusão
02_PDV_Produto.TotvsWF
Produto
Carga inicial

02.Sincronização de Produto.TotvsWF

Tabelas Utilizadas

TPRODUTO - Produtos Globais
TPRODUTODEF - Dados dos Produtos Globais por Coligada
TPRDLOCINFO - Informações do Estoque
TPRDFIL - Filiais de Um Produto


Mapeamento dos Campos

Mensagem Item 2.000

Mensagem Padrão

Descrição

RM

Tabela

Campo

Observação

CompanyId

Código da coligada

TPRODUTO

CODCOLIGADA

Código da Coligada é obtido a partir do De-Para de Filial.

BranchId

Código da filial

-

-

CompanyInternalId

InternalId da filial



Code

Código do Item

TPRODUTO

CODIGOPRD

Valor texto tamanho 30

InternalId

Chave primária do registro

TPRODUTO

CODCOLIGADA|IDPRD


Name

Nome do Produto

TPRODUTO

DESCRICAO


ShorName

Nome curto

TPRODUTO

NOMEFANTASIA


Active

Item Ativo? 

TPRODUTO

INATIVO

Fixo “0”: Ativo

Fixo “1”: Inativo

StockGroupCode

Código Grupo Estoque



Não utilizado pela linha RM

StockGroupInternalId

InternalId da chave completa de Grupo de Estoque do produto



Não utilizado pela linha RM

StockGroupDescription

Descrição Grupo Estoque 



Não utilizado pela linha RM

UnitOfMeasureCode

Código Unidade Medida

TPRODUTODEF

CODUNDCONTROLE 

Valor texto tamanho 6

UnitOfMeasureInternalId

InternalId da chave completa de Unidade Medida do produto

TPRODUTODEF

CODUNDCONTROLE 


ObtainingType

Forma de Obtenção



Não utilizado pela linha RM

ComercialFamilyCode

Código Família Comercial



Não utilizado pela linha RM

ComercialFamilyInternalId

InternalId da chave completa de Família Comercial do produto



Não utilizado pela linha RM

ComercialFamilyDescription

Descrição Família Comercial



Não utilizado pela linha RM

DeployDate

Data Implantação 

TPRODUTO

DTCADASTRAMENTO

Este será enviado somente na alteração do cadastro do produto, pois este campo é atualizado no Dataserver EstPrdData somente após a inclusão do registro na base (afterupdate).

ReleaseDate 

Data Liberação



Não utilizado pela linha RM

StandardWarehouseCode

Código Depósito Padrão



Não utilizado pela linha RM

StandardWarehouseInternalId

InternalId da chave completa de Depósito Padrão do produto



Não utilizado pela linha RM

StandardWarehouseDescription

Descrição Depósito Padrão



Não utilizado pela linha RM

MultipleLot

Lote Múltiplo



Não utilizado pela linha RM

EconomicLot

Lote Econômico 

TPRDLOCINFO 

LOTEECONCOMPRAS

Estas informações serão enviadas somente na alteração do cadastro de Produto, pois trata-se de outro DataServer (anexo Informações do Estoque).

MinimumLot

Lote Mínimo



Não utilizado pela linha RM

QualityControl 

Controla Qualidade



Não utilizado pela linha RM

ControlType

Tipo Controle

TPRDFIL

CONSIGNADO

Será considerada somente a informação da primeira filial, uma vez que ao incluir um produto são criados registros para todas as filiais ativas. São utilizados os campos em negrito.

 Fixo 1 – Físico

Fixo 2 – Total

Fixo 3 – Consignado

Fixo 4 – Débito Direto

Fixo 5 – Não Definido

StockControlType

Tipo Controle Estoque

TPRODUTODEF

USANUMSERIE

CONTROLADOPORLOTE 

No cadastro de Produto \ Pasta Controle de Estoque é permitido selecionar as duas informações simultaneamente, Número de Série e Lote. Como a mensagem não comporta esta situação não será permitido selecionar as duas opções. Caso o usuário marque as duas opções será emitida uma mensagem de exceção e o registro não será salvo.

Fixo 1 – Serial

Fixo 2 – Número Série

Fixo 3 – Lote

Fixo 4 – Referência

FractionalQuantity

Quantidade Fracionada



Não utilizado pela linha RM

NetWeight 

Peso Líquido 

TPRODUTO

PESOLIQUIDO


GrossWeight 

Peso Bruto

TPRODUTO

PESOBRUTO


FamilyCode

Código Família 



Não utilizado pela linha RM

FamilyInternalId

InternalId da chave completa de Família do produto 



Não utilizado pela linha RM

FamilyDescription

Descrição Família



Não utilizado pela linha RM

FormulaType

Tipo Fórmula



Não utilizado pela linha RM

PerMillion

Valor Per PPM



Não utilizado pela linha RM

IsScrapStockControl 

Controla Estoque Refugo



Não utilizado pela linha RM

IsScrapFiscalPrice

Refugo ao Preço Fiscal



Não utilizado pela linha RM

ScrapItemCode

Código Item Refugo



Não utilizado pela linha RM

ScrapItemInternalId

InternalId da chave completa de Item Refugo do produto 



Não utilizado pela linha RM

ScrapItemQuantity

Quantidade Item Refugo



Não utilizado pela linha RM

Origin

Origem da mercadoria

TPRODUTO

REFERENCIACP

Fixo 0 – Nacional

Fixo 1 - Estrangeira - Importação direta

Fixo 2 - Estrangeira - Adquirida no mercado externo

CostCenterCode

Código do Centro de Custo



Não utilizado pela linha RM

CostCenterInternalId

InternalId do CostCenterCode



Não utilizado pela linha RM

GroupCode




Não utilizado pela linha RM

GroupInternalId

InternalId do GroupCode



Não utilizado pela linha RM

GroupName




Não utilizado pela linha RM

SecondUnitOfMeasureCode

Segunda Unidade de Medida Utilizada para converter a quantidade para uma segunda unidade



Não utilizado pela linha RM

SecondUnitOfMeasureInternalId

InternalId do SecondUnitOfMeasureCode 



Não utilizado pela linha RM

MultiplicationFactorValue

Fator multiplicador da conversão para a segunda unidade de medida



Não utilizado pela linha RM

ProductType

Tipo de produto

TPRODUTO

TIPO

Fixo 01 – Ativo Imobilizado

Fixo 02 – Beneficiamento

Fixo 03 – Embalagem

Fixo 04 – Gastos Gerais

Fixo 05 – Material de Consumo

Fixo 06 – Mercadoria: enviado quando Tipo Produto = Produto

Fixo 07 – Mão-De-Obra: enviado quando Tipo Produto = Serviço

Fixo 08 – Matéria-Prima

Fixo 09 – Outros Insumos

Fixo 10 – Produto Acabado

Fixo 11 – Produto Intermediario

Fixo 12 – Produto em Processo

Fixo 13 – Produto Veiculo

Fixo 14 – Selo de Controle

Fixo 15 – SubProduto

FiscalInformation

Este campos não estão sendo enviados pelo RM pelos seguintes motivos:

    • BranchId - Filial: na inclusão de um novo Produto no RM é gerado na tabela TPRDFIL um registro para cada Filial ativa. Desta forma seria necessário a utilização de uma outra mensagem.

    • FiscalInformation: no RM temos Dados Fiscais do Produto e Dados Fiscais por UF. Nestes dois cadastros não temos o campo Descrição.

FiscalClassificationCode

Código Classificação Fiscal 



Não enviado pelo RM

FiscalClassificationInternalId

InternalId do FiscalClassificationCode



Não enviado pelo RM

FiscalClassificationDescription

Descrição Classificação Fiscal



Não enviado pelo RM

ListOfCustomerItemInformation \ CustomerItemInformation

Estas informações não serão enviadas, pois o adapter do PROTHEUS está implementado para receber a mensagem 

CustomerCode

Código do cliente




CustomerInternalId

InternalId do CustomerCode 




CustomerItemCode

Código do Item X Cliente




CustomerItemInternalId

InternalId do CustomerItemCode




Values \ ValuesType

CostPrice

Preço de Custo

TPRODUTODEF

PRECO1


SalesPrice

Preço de Venda

TPRODUTODEF

PRECO2


AverageCostPrice

Preço Médio de Custo

TPRODUTODEF

CUSTOMEDIO


StandardCostPrice

Preço Padrão 

TPRODUTODEF

CUSTOUNITARIO


BaseDate

Data Base do Calculo dos preços

TPRODUTODEF

DATABASEPRECO1

No cadastro de Produto RM existem 5 tipos de preços e para cada preço existe uma data base de cálculo. Será considerada na mensagem somente a primeira data base do cálculo de preço.