Versões comparadas

Chave

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

...

Bloco de código
titleExemplo Logix
collapsetrue
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
titleRefundReason_1_000
collapsetrue
(...)


				"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
titleExemplo
collapsetrue
(...)

		"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"

					}

				}

			}

		}

ListOfInternalIdType está definido em um arquivo a parte e está estruturado conforme o exemplo abaixo:

Bloco de código
titleTrecho do ListOfInternalIdType
collapsetrue
(...)


"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
titleWarehouse 1_002
collapsetrue
(...) 


				"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
titleExemplo (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”

...