CONTEÚDO


01. VISÃO GERAL

O objetivo deste documento é explicar a integração do Protheus com o software Quírons através da troca de mensagens no formato JSON utilizando o padrão EAI (mensagem única)  do Protheus.


02. O QUE É O QUÍRONS ?

O Quírons é uma solução SaaS voltada para  SST (Saúde e Segurança do Trabalho) desenvolvida pela NG Informática, para maiores informações consulte a documentação no link https://quirons.com.br/.


03. MENSAGENS ENVOLVIDAS

A integração com o Quírons utilizará as seguintes mensagens :


MensagemRotinaEnvia para Quírons

Envia para Protheus

ITEMMATA010 SimNão
UNITOFMEASUREQIEA030SimNão
WAREHOUSEAGRA045SimNão
STOCKTURNOVERMATA241SimSim
STOCKLEVELMATA225Sim

Não

REQUESTMATA105NãoSim

A mensagem ITEM irá realizar o envio das informações do cadastro de produtos (MATA010) para o Quírons que irá consumir as seguintes tag's contidas na mensagem:


TagConteúdo

CompanyId

Empresa

BranchId

Filial
InternalIdCódigo do Produto

ItemDescription

Descrição do Produto

StandardCostPrice

Custo unitário
ActiveStatus do Produto Ativo/Inativo



{
   "Header":{
      "BusinessUnit":"MG ",
      "ProductName":"PROTHEUS",
      "Transaction":"ITEM",
      "Version":"4.005",
      "UUID":"989bd96b-e333-0b74-f6da-2ac8d4c7f625",
      "Event":"upsert",
      "CompanyId":"T1",
      "GeneratedOn":"2022-04-20T13:49:25Z",
      "BranchId":"D MG 01 ",
      "DeliveryType":"Async",
      "Type":"BusinessMessage",
      "CompanySharingMode":"E",
      "BusinessUnitySharingMode":"E",
      "StandardVersion":"1.000",
      "BranchSharingMode":"E",
      "SubType":"event",
      "Enterprise":"D ",
      "SourceApplication":"QUIRONS",
      "ProductVersion":"12"
   },
   "Content":{
      "ItemStatus":"2",
      "StandardWarehouseInternalId":"T1|D MG|33",
      "ItemTitle":"                                                                                                    ",
      "ItemWidth":"0",
      "CompanyId":"T1",
      "UnitOfMeasureCode":"Q5",
      "Code":"PRODQUIRONS01",
      "FiscalInformation":{
         "CsllAliquot":"0",
         "IrrfIncidence":"false",
         "IssServiceCode":"         ",
         "PisRetaining":"false",
         "CsllRetaining":"false",
         "PisAliquot":"0",
         "CofinsAliquot":"0",
         "TaxSubstitutionCode":"         ",
         "CofinsRetaining":"false",
         "IssAliquot":"0",
         "MunicipalTaxCod":"                    "
      },
      "ItemLenght":"0",
      "EconomicLot":"0",
      "Name":"PRODUTO PADRAO",
      "MinimumLot":"0",
      "ManufacturerCode":"                    ",
      "ItemHeight":"0",
      "NetWeight":"0",
      "Values":{
         "CostPrice":"0",
         "SalesPrice":"0",
         "AverageCostPrice":"0",
         "StandardCostPrice":"0"
      },
      "Brand":"",
      "ShortName":"PRODUTO PADRAO",
      "Active":"1",
      "MultiplicationFactorValue":"0",
      "CompanyinternalId":"T1|D MG 01 ",
      "InternalId":"T1|D MG 01|PRODQUIRONS01",
      "ProductType":"10",
      "GrossWeight":"0",
      "ItemFeaturesTechnical":"",
      "ItemDescription":"",
      "ItemDimensions":"0",
      "BranchId":"D MG 01 ",
      "UnitOfMeasureInternalId":"T1|D MG|Q5",
      "StandardWarehouseDescription":"QUIRONS",
      "TypeUMConversion":[
         {
            "type":"M",
            "Description":"Multiplicador"
         }
      ],
      "StandardWarehouseCode":"33",
      "Trail":"N",
      "BinControl":"False",
      "Origin":""
   }
}





A mensagem UNITOFMEASURE irá enviar as informações do cadastro de unidade de medidas do Protheus para o Quírons que irá consumir as seguintes tag's:


TagConteúdo

CompanyId

Empresa

BranchId

Filial
InternalIdCódigo do Produto

Description

Descrição da unidade de medida
ShortNameSigla



{
   "Header":{
      "ProductVersion":"12",
      "BranchId":"D MG 01 ",
      "Type":"BusinessMessage",
      "ProductName":"PROTHEUS",
      "BusinessUnit":"MG ",
      "DeliveryType":"Async",
      "Transaction":"UNITOFMEASURE",
      "StandardVersion":"1.000",
      "Version":"2.002",
      "UUID":"99b01fde-72a2-4c27-afbc-fe64e6afe94e",
      "SubType":"event",
      "Enterprise":"D ",
      "Event":"upsert",
      "CompanyId":"T1",
      "GeneratedOn":"2022-04-20T13:27:56Z",
      "SourceApplication":"QUIRONS"
   },
   "Content":{
      "Code":"Q5",
      "ShortName":"UNIDADE M",
      "InternalId":"T1|D MG|Q5",
      "Description":"UNIDADE QUIRONS"
   }
}


 A mensagem WAREHOUSE irá enviar as informações do cadastro de armazéns para o Quírons que irá consumir as seguintes tag's:


TagConteúdo

CompanyId

Empresa

BranchId

Filial
InternalIdCódigo do Produto

Description

Descrição do armazém
ActiveStatus do armazém



{
   "Header":{
      "ProductVersion":"12",
      "BranchId":"D MG 01 ",
      "Type":"BusinessMessage",
      "ProductName":"PROTHEUS",
      "BusinessUnit":"MG ",
      "DeliveryType":"Async",
      "Transaction":"WAREHOUSE",
      "StandardVersion":"1.000",
      "Version":"1.000",
      "UUID":"4848af38-5962-d1c1-faeb-cfad85908058",
      "SubType":"event",
      "Enterprise":"D ",
      "Event":"upsert",
      "CompanyId":"T1",
      "GeneratedOn":"2022-04-20T13:44:20Z",
      "SourceApplication":"QUIRONS"
   },
   "Content":{
      "BranchId":"D MG 01 ",
      "Code":"33",
      "Active":"true",
      "Type":"1",
      "Purpose":1,
      "WarehouseClassification":"3",
      "Event":"upsert",
      "InternalId":"T1|D MG|33",
      "WorkCenterCode":"      ",
      "CompanyId":"T1",
      "StandardWarehouse":2,
      "Entity":"WAREHOUSE",
      "CompanyinternalId":"T1|D MG 01 ",
      "Description":"QUIRONS"
   }
}


A mensagem REQUEST contém as informações das solicitações de estoque enviadas pelo Quírons.


TagConteúdo
CompanyIdEmpresa
BranchIdFilial
InternalIdCódigo interno da requisição
TypeTipo da requisição 
RegisterDateTimeData da Solicitação
DeliveryDateTimeData da Entrega
ItemInternalIdCódigo interno do produto

UnitOfMeasureInternalId

Código interno da unidade de medida

WarehouseInternalId

Código interno do armazem

Quantity

Quantidade da solicitação



O conteúdo da tag Type será sempre fixo com o valor '001'

{
   "Header":{
      "BranchId":"D MG 01 ",
      "CompanyId":"T1",
      "DeliveryType":"Sync",
      "Event":"upsert",
      "GeneratedOn":"2022-04-20T11:37:53Z",
      "ProductName":"PROTHEUS",
      "ProductVersion":"1.0.0",
      "SourceApplication":"QUIRONS",
      "StandardVersion":"1.000",
      "Type":"BusinessMessage",
      "SubType":"event",
      "UUID":"4d5f50b0-b423-11ec-9191-33b31221ae01",
      "BranchSharingMode":null,
      "BusinessUnitySharingMode":null,
      "CompanySharingMode":null,
      "Version":"1.011",
      "Transaction":"REQUEST"
   },
   "Content":{
      "Code":"",
      "InternalId":"4d4cda20-b423-11ec-9191-33b17223ae01",
      "CompanyId":"T1",
      "BranchId":"D MG 01 ",
      "Number":"",
      "RegisterDateTime":"2022-04-20T11:37:53Z",
      "CompanyInternalId":"T1|D MG 01 ",
      "DeliveryDateTime":"2022-04-20T11:37:53Z",
      "UserRequesterCode":"protheus.estoque@totvs.com.br",
      "UserRequesterInternalId":"Usuário Estoque",
      "Observation":"Lorem ipsum dolor sit amet",
      "Type":"001",
      "ListOfRequestItem":[
         {
            "Event":"upsert",
            "CostCenterCode":"000000901",
            "Code":"01",
            "InternalId":"4d1ace18-b423-11ec-b337-d3c1947b8001",
            "DeliveryDateTime":"2022-04-20T11:37:53Z",
            "ItemInternalid":"T1|D MG 01|PRODQUIRONS01",
            "Quantity":"1",
            "TotalPrice":"1",
            "UnitPrice":"1",
            "UnitOfMeasureInternalId":"T1|D MG|Q5",
            "WarehouseInternalId":"T1|D MG|33"
         },
         {
            "Event":"upsert",
            "CostCenterCode":"000000901",
            "Code":"02",
            "InternalId":"4d1e28f6-b423-11ec-b337-c18a880fb401",
            "DeliveryDateTime":"2022-04-20T11:37:53Z",
            "ItemInternalid":"T1|D MG 01|PRODQUIRONS02",
            "Quantity":"1",
            "TotalPrice":"1",
            "UnitPrice":"1",
            "UnitOfMeasureInternalId":"T1|D MG|Q5",
            "WarehouseInternalId":"T1|D MG|33"
         }
      ]
   }
}

A mensagem STOCKTURNOVER contém as informações das movimentações de estoque dos tipos de movimento 'Requisição' e 'Devolução' que podem ser enviadas do Protheus para o Quírons e também enviadas do Quírons para o Protheus.


TagConteúdo
CompanyIdEmpresa
BranchIdFilial

InternalId

Código interno da movimentação
TypeTipo da movimentação

MovementTypeCode

Código do tipo de movimento
UnitPricePreço unitãrio do produto
QuantityQuantidade do produto

ItemInternalId

Código interno do produto

UnitOfMeasureInternalId

Código interno da unidade de medida

WarehouseInternalId

Código interno do armazem
EmissionDateData da emissão

Os códigos do tipo de movimento (MovementTypeCode enviado do Quírons para o Protheus devem estar previamente cadastrados no cadastro de Tipos de Movimento(MATA230).

{
   "Header":{
      "ProductVersion":"12",
      "BranchId":"D MG 01 ",
      "Type":"BusinessMessage",
      "ProductName":"PROTHEUS",
      "BusinessUnit":"MG ",
      "DeliveryType":"Async",
      "Transaction":"STOCKTURNOVER",
      "StandardVersion":"1.000",
      "Version":"1.000",
      "UUID":"63f4edf9-2f90-9e14-dc40-a05f25109e03",
      "SubType":"event",
      "Enterprise":"D ",
      "Event":"upsert",
      "CompanyId":"T1",
      "GeneratedOn":"2022-04-20T14:52:06Z",
      "SourceApplication":"QUIRONS"
   },
   "Content":{
      "Number":"",
      "Series":"        ",
      "BranchId":"D MG 01 ",
      "Code":"pcpACR01G",
      "Type":"S",
      "MovementTypeCode":"501",
      "DocumentType":"R",
      "ListOfStockTurnoverItem":[
         {
            "NumberSeries":"",
            "ItemReferenceCode":"PRODQUIRONS01",
            "UnitPrice":1,
            "LotExpirationDate":"",
            "InternalId":"T1|D MG 01|pcpACR01G|107528",
            "ItemInternalId":"T1|D MG 01|PRODQUIRONS01",
            "UnitOfMeasureCode":"Q5",
            "ProjectInternalId":"",
            "WarehouseCode":"33",
            "RequestItemInternalId":"T1|D MG 01|PMS119|01|20220420",
            "CostCenterCode":"000000901",
            "Observation":"",
            "LotOrSerialNumber":"",
            "UnitOfMeasureInternalId":"T1|D MG|Q5",
            "Code":"pcpACR01G",
            "ItemCode":"PRODQUIRONS01",
            "WarehouseInternalId":"T1|D MG|33",
            "DeliveryDateTime":"2022-04-20",
            "CostCenterInternalId":"T1|D MG 01 |000000901",
            "AccountantAcountInternalId":"",
            "BinLocation":"",
            "TaskInternalId":"",
            "EmissionDate":"2022-04-20",
            "TotalPrice":1,
            "Quantity":1,
            "TotalStock":1000
         },
         {
            "NumberSeries":"",
            "ItemReferenceCode":"PRODQUIRONS02",
            "UnitPrice":1,
            "LotExpirationDate":"",
            "InternalId":"T1|D MG 01|pcpACR01G|107529",
            "ItemInternalId":"T1|D MG 01|PRODQUIRONS02",
            "UnitOfMeasureCode":"Q5",
            "ProjectInternalId":"",
            "WarehouseCode":"33",
            "RequestItemInternalId":"T1|D MG 01|PMS119|02|20220420",
            "CostCenterCode":"000000901",
            "Observation":"",
            "LotOrSerialNumber":"",
            "UnitOfMeasureInternalId":"T1|D MG|Q5",
            "Code":"pcpACR01G",
            "ItemCode":"PRODQUIRONS02",
            "WarehouseInternalId":"T1|D MG|33",
            "DeliveryDateTime":"2022-04-20",
            "CostCenterInternalId":"T1|D MG 01 |000000901",
            "AccountantAcountInternalId":"",
            "BinLocation":"",
            "TaskInternalId":"",
            "EmissionDate":"2022-04-20",
            "TotalPrice":1,
            "Quantity":1,
            "TotalStock":1000
         }
      ],
      "DeliveryDateTime":"2022-04-20",
      "InternalId":"T1|D MG 01|pcpACR01G|107528",
      "CompanyId":"T1",
      "RegisterDateTime":"2022-04-20",
      "CompanyInternalId":"T1|D MG 01",
      "AbatementDateTime":"2022-04-20"
   }
}

A mensagem STOCKLEVEL irá enviar o saldo atual de estoque dos produtos para o Quírons com as seguintes tag's:


TagConteúdo

CompanyId

Empresa

BranchId

Filial

ItemInternalId

Código do Produto

WarehouseInternalId

Código interno do armazem

SalesOrderQuantity

Quantidade

Para utilizar a mensagem StockLevel na integração entre Protheus x Quirons, é necessário cadastrar a versão "3.004" da mensagem no cadastro do Adapter.

Para que a mensagem STOCKLEVEL seja enviada a cada atualização de saldo de estoque é necessário configurar a rotina SCHEDESTMG no Schedule pelo Configurador do Protheus.

Para maiores informações sobre configuração do schedule consulte a documentação no link: DT Envio Ativo para Produtos com Estoque Alterado Desde o Último Envio

{
   "Header":{
      "ProductVersion":"12",
      "BranchId":"D MG 01 ",
      "Type":"BusinessMessage",
      "ProductName":"PROTHEUS",
      "BusinessUnit":"MG ",
      "DeliveryType":"Async",
      "Transaction":"STOCKLEVEL",
      "StandardVersion":"1.000",
      "Version":"3.003",
      "UUID":"48997d98-0480-0109-f17e-1fc7d8c844b0",
      "SubType":"event",
      "Enterprise":"D ",
      "Event":"upsert",
      "CompanyId":"T1",
      "GeneratedOn":"2022-04-20T14:35:21Z",
      "SourceApplication":"QUIRONS"
   },
   "Content":{
      "BranchId":"D MG 01 ",
      "Active":"true",
      "ListOfReturnItem":[
         {
            "CurrentStockAmount":"1000",
            "ReserveSource":" ",
            "FutureStockAmount":"0",
            "ValueOfCurrentStockAmount":"1000",
            "ListOfAddressStock":{
               
            },
            "CompanyId":"T1",
            "ItemInternalId":"T1|D MG 01|PRODQUIRONS01",
            "AvailableStockAmount":"1000",
            "BookedStockAmount":"0",
            "Amountcommittedstock":"0",
            "UnitItemCost":"1",
            "UnitOfMeasureInternalId":"T1|D MG|Q5",
            "BranchId":"D MG 01 ",
            "TransitStockAmount":"0",
            "CompanyInternalId":"T1|D MG 01 ",
            "AverageUnitItemCost":"1000",
            "SalesOrderQuantity":"0",
            "ListOfWarehouseStock":[
               {
                  "WarehouseInternalId":"T1|D MG|33",
                  "CurrentStockAmount":"1000",
                  "TransitStockAmount":"0",
                  "FutureStockAmount":"0",
                  "UnitItemCost":"1",
                  "ValueOfCurrentStockAmount":"1000",
                  "AvailableStockAmount":"1000",
                  "BookedStockAmount":"0",
                  "AverageUnitItemCost":"1000",
                  "SalesOrderQuantity":"0",
                  "Amountcommittedstock":"0"
               }
            ],
            "ListOfLotStock":{
               
            },
            "ListOfSeriesStock":{
               
            }
         }
      ],
      "Event":"upsert",
      "CompanyId":"T1",
      "CompanyinternalId":"T1|D MG 01 ",
      "Entity":"StockLevel"
   }
}


05. ASSUNTOS RELACIONADOS