Índice
Importante
- As configurações do pergunte e valores serão retornados considerando o usuário autenticado no Rest, desta forma, se faz obrigatória a ativação de segurança no serviço REST e autenticação com o usuário alvo.
- Parametrização da autenticação obrigatória:
[HTTPREST]
Port=3000
URIs=HTTPURI
Security=1
PrepareIn=ALL
GET - Consulta de Perguntes
API com objetivo disponibilizar dados de um determinado Pergunte Protheus conforme as regras do usuário autenticado, possibilitando seu uso em aplicações PO UI ou demais necessidades.
Importante
- API disponível a partir da lib 20230403;
- Serviço: /PERGUNTESERVICE/ [ GET ] ;
- Exemplo: http://localhost:3000/rest/api/framework/v1/pergunteservice/FINR917
Compreendendo o Json de retorno
Tendo a requisição devidamente validada pela API, um json com a estrutura básica abaixo será retornado:
{ "pergunte":"Código do Pergunte ", "items":{ lista com os detalhes das perguntas } }
Uma lista com as perguntas pertencentes será retornada no parâmetro “Items”, conforme as especificações abaixo:
Nome | Descrição |
Description | Pergunta a ser apresentada ao usuário |
Type | Tipo do Dado esperado (C = Caractere, N = Numérico, D = Data) |
Size | Tamanho máximo da resposta do usuário |
Decimal | Quantidade de casas decimais (para perguntas do tipo numérico) |
Presel01 | Para perguntas com opções predefinidas (combo é definido pelo campo "gsc" com valor "C"), indica a opção pré-selecionada. |
Gsc | Indica o tipo de objeto para resposta (G = Get, C = Combo, R = Range) |
Valid | Expressão ADVPL de validação. |
Content | Conteúdo padrão do pergunte, no caso de combos indica o número da opção selecionada. |
Range_target | Aplicável apenas para perguntes de Range (range é definido pelo campo "gsc" com valor "R"), indica o campo ao qual os registros se referem. |
Option01 | Opção 1 do combo. |
Option02 | Opção 2 do combo. |
Option03 | Opção 3 do combo. |
Option04 | Opção 4 do combo. |
Option05 | Opção 5 do combo. |
F3 | Código da consulta padrão do Pergunte. |
Picture | Picture do pergunte. |
editable | Indica se o pergunte pode ser editado (X3_WHEN) |
help | Help do pergunte. |
blocked_user | Indica se a pergunta esta bloqueada para edição do usuário (CFGA540). |
fullHelp | Objeto contendo as propriedades help e soluction, referentes ao help e solução do item do Pergunte por extenso (lib 20230918 ou superior) |
var01 | Conteúdo do Var01 (Nome da variável) para auxílio em ambientes localizados (lib 20240115 ou superior) |
Exemplo de retorno
Exemplo de retorno: { "pergunte":"FINR917 ", "items":{ "01":{ "description":"Nome de Arquivo de ?", "type":"C", "size":99, "decimal":0, "presel01":1, "gsc":"G", "valid":"", "content":" ", "range_target":"", "option01":"", "option02":"", "option03":"", "option04":"", "option05":"", "f3":"", "picture":"", "editable":true, "help":".FINR91701. ", "blocked_user":false }, "02":{ "description":"Nome de Arquivo ate ?", "type":"C", "size":99, "decimal":0, "presel01":1, "gsc":"G", "valid":"", "content":" ", "range_target":"", "option01":"", "option02":"", "option03":"", "option04":"", "option05":"", "f3":"", "picture":"", "editable":true, "help":".FINR91702. ", "blocked_user":false }, "03":{ "description":"Data Processamento de ?", "type":"D", "size":8, "decimal":0, "presel01":1, "gsc":"G", "valid":"", "content":"00/00/00", "range_target":"", "option01":"", "option02":"", "option03":"", "option04":"", "option05":"", "f3":"", "picture":"", "editable":true, "help":".FINR91703. ", "blocked_user":false }, "04":{ "description":"Data Processamento ate ?", "type":"D", "size":8, "decimal":0, "presel01":1, "gsc":"G", "valid":"", "content":"00/00/00", "range_target":"", "option01":"", "option02":"", "option03":"", "option04":"", "option05":"", "f3":"", "picture":"", "editable":true, "help":".FINR91704. ", "blocked_user":false }, "05":{ "description":"Administradora ?", "type":"C", "size":60, "decimal":0, "presel01":1, "gsc":"G", "valid":"", "content":" ", "range_target":"", "option01":"", "option02":"", "option03":"", "option04":"", "option05":"", "f3":"MDE916", "picture":"", "editable":true, "help":".FINR91705. ", "blocked_user":false }, "06":{ "description":"Usuário de Importação ?", "type":"C", "size":99, "decimal":0, "presel01":1, "gsc":"R", "valid":"", "content":"000001;", "range_target":"FVR_CODUSU ", "option01":"", "option02":"", "option03":"", "option04":"", "option05":"", "f3":"USR", "picture":"", "editable":true, "help":" ", "blocked_user":false } } }
PUT - Atualização de Perguntes
API com objetivo de atualizar o Pergunte no SX1/Profile de acordo com o json enviado na requisição.
Importante
- API disponível a partir da lib 20230403;
- Serviço: api/framework/v1/pergunteservice/{nomeGrupo} ;
- Obrigatório o envio do json no body da requisição com a propriedade "items", exemplo detalhado logo abaixo
Exemplo de envio do body da requisição:
{ "items": [ [ "MV_PAR01", "000110" ], [ "MV_PAR02", "000115" ] ] }
Com este exemplo acima ao chamar a api os dois MV_PAR enviados no body da requisição serão atualizados com os valores 000110 e 000115 no SX1 ou no Profile, dependendo da configuração do usuário que enviou a requisição.
Formato do pergunte tipo Data
Para pergunte do tipo data o formato a ser enviado no body da requisição deverá ser: AAAA-MM-DD