Histórico da Página
...
- type: Indica o tipo de dado do campo, mais detalhes consultar o tópico Tipos de dados padrão.
- description: é importante que a descrição esteja bem detalhada, lembre-se que para o analista que está propondo um campo, o objetivo deste campo é sempre muito óbvio, porém próximos analistas do mesmo produto ou até analistas de outros produtos sempre terão dificuldade caso o campo não esteja bem documentado.
- x-totvs: propriedade customizada com a documentação referente ao campo em cada produto Totvs.
Padrão de nomenclatura
Os nomes dos campos na mensagem única devem respeitar as regras a seguir:
...
Bloco de código | ||
---|---|---|
| ||
"BankCode": { "description": "Código do banco", "type": "integer", "format": "int32" } |
Long
type: integer
...
Bloco de código | ||
---|---|---|
| ||
"BankCode": { "description": "Código do banco", "type": "integer", "format": "int64" } |
Float
type: number
...
Bloco de código | ||
---|---|---|
| ||
"UnitsPerHour": {
"type": "number",
"format": "float"
} |
Double
...
Bloco de código | ||
---|---|---|
| ||
"CreditLimit":{ "type":"number", "format":"double" } |
Propriedades de validação
...
Por isso, ao declarar o schema, não se deve inserir a propriedade required para os campos.
Campos que se repetem poderão apresentar um padrão diferente, consulte o tópico criando listas de valores e elementos para mais informações.
Havendo a necessidade de validação da presença ou não de informação na mensagem, este controle deve ser feito no próprio adapter.
...
Porém, há casos em que um campo em um produto é composto por uma lista fixa de valores, enquanto em outro produto esses valores podem ser cadastrados dinamicamente. Exemplo: Tipo do documento no Logix é fixo; no Protheus é pre-cadastrado e permite alterar; no Datasul é fixo e no RM é totalmente cadastrável. Para estes casos leia o tópico Conflito entre valores fixos e valores cadastráveis.
Bloco de código | ||||
---|---|---|---|---|
| ||||
"SubscriptionType": { "type": "string", "example": "1", "description": "Tipo de inscrição", "enum": ["1", "2", "3", "4"], "x-totvs": [{ "product": "protheus", "field": "SM0.M0_TPINSC", "required": false, "type": "Char", "length": "1", "available": true, "canUpdate": false, "note": "1=CEI;2=CNPJ;3=CPF;4=INCRA" }] } |
...