...
Bloco de código |
---|
title | Exemplo Logix |
---|
collapse | true |
---|
|
Tabela VDP_DPARA_GERAL
TABELA_DPARA CHAR(18)
CAMPO_DPARA CHAR(150)
CARACTER_LOGIX CHAR(150)
SISTEMA_INTEGR CHAR(20)
CARACTER_INTEGR CHAR(150) |
...
Bloco de código |
---|
title | RefundReason_1_000 |
---|
collapse | true |
---|
|
(...)
"Code": {
"description": "Código do Motivo",
"type": "string",
"x-totvs": [
{
"product": "PROTHEUS",
"field": "G8P.G8P_CODIGO",
"required": true,
"type": "Char",
"length": "4",
"note": "",
"available": true,
"canUpdate": false
}
]
},
"InternalId": {
"description": "InternalId do Motivo",
"type": "string",
"x-totvs": [
{
"product": "PROTHEUS",
"field": "cEmpAnt+G8P.G8P_FILIAL+G8P.G8P_CODIGO",
"required": true,
"type": "Char",
"length": "136",
"note": "",
"available": true,
"canUpdate": false
}
]
},
(...) |
Suponhamos que em um cenário tenhamos CompanyId com valor 23 e Code com valor 50. O internalId trafegado seguiria então a seguinte lógica:
...
Bloco de código |
---|
|
(...)
"ReturnContentType": {
"type": "object",
"properties": {
"ListOfInternalId": {
"type": "array",
"items": {
"$ref": "https://raw.githubusercontent.com/totvs/ttalk-standard-message/master/jsonschema/schemas/types/ListOfInternalId_1_000.json#/definitions/ListOfInternalIdType",
"type": "object"
}
}
}
}
|
O ListOfInternalIdType está definido em um arquivo a parte e está estruturado conforme o exemplo abaixo:
Bloco de código |
---|
title | Trecho do ListOfInternalIdType |
---|
collapse | true |
---|
|
(...)
"definitions": {
"ReturnContentWithModelType": {
"type": "object",
"properties": {
"ListOfInternalId": {
"type": "object",
"$ref": "#/definitions/ListOfInternalIdType"
}
}
},
"ListOfInternalIdType": {
"type": "array",
"items": {
"$ref": "#/definitions/InternalIdType",
"type": "object"
}
},
"InternalIdType": {
"type": "object",
"properties": {
"name": {
"description": "Nome da InternalId, este nome será padronizado entre todas as linhas e corresponderá ao nome da própria transação. Exemplo: City, Item, CustomerVendor. Observação: em outras partes da mensagem, que não sejam a tag ListOfInternalId, a regra pode ser diferente. Para mais informações, consulte http://tdn.totvs.com/pages/viewpage.action?pageId=181142263",
"type": "string"
},
"origin": {
"description": "InternalId da origem",
"type": "string"
},
"destination": {
"description": "InternalId do destino",
"type": "string"
}
}
}
}
(...) |
Como este retorno representa a resposta de uma mensagem enviada, deve-se entender a tag "origin" como a InternalId do produto que enviou a mensagem (a origem), e "destination" como a InternalId do produto que foi o destino da mensagem.
...
Bloco de código |
---|
title | Warehouse 1_002 |
---|
collapse | true |
---|
|
(...)
"InternalId": {
"description": "InternalId de Integração para o Grupo de Produto",
"type": "string",
"x-totvs": [
{
"product": "PROTHEUS",
"available": true,
"note": "O InternalID do Codigo do Armazém é formado por EMPRESA|NNR_FILIAL|NNR_CODIGO",
"field": "EMPRESA|NNR_FILIAL|NNR_CODIGO",
"length": "50",
"type": "string"
}
]
},
"Code": {
"description": "Código do Local de Estoque (armazém/almoxarifado/depósito)",
"type": "string",
"x-totvs": [
{
"product": "PROTHEUS",
"available": true,
"note": "Pode ter tamanho entre 02 e 06 dependendo da configuração do Protheus",
"field": "NNRXX0.NNR_CODIGO",
"length": "2",
"type": "string",
"required": true
}
]
},
"Description": {
"description": "Descrição do Local de Estoque",
"type": "string",
"x-totvs": [
{
"product": "PROTHEUS",
"available": true,
"note": "Descrição do Local de Estoque(armazém/almoxarifado/depósito)",
"field": "NNRXX0.NNR_DESCRI",
"length": "20",
"type": "string"
}
]
}
(...) |
...
Bloco de código |
---|
title | Exemplo (em pseudocódigo) |
---|
|
Adapter da mensagem Item
AdapterItem.Get_InternalId(cod_empresa, cod_filial, item)
Retorna Empresa + “|” + Filial + “|” + Código
Uso: AdapterItem.Get_InternalId(50,10,123456) = “50|10|123456”
AdapterItem.Get_InternalId_Value(InternalId, Campo)
Retorna <retorna o valor correspondente a posição de “Campo”>
Uso: AdapterItem.Get_InternalId_Value(“50|10|123456”,”cod_empresa”) == “123456” |
...