Páginas filhas
  • PergunteService - Serviço de Perguntas do Protheus

Í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:

Estrutura básica do Json de retorno
{
   "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).

fullHelpObjeto contendo as propriedades help e soluction, referentes ao help e solução do item do Pergunte por extenso (lib 20230918 ou superior)
var01Conteúdo do Var01 (Nome da variável) para auxílio em ambientes localizados (lib 20240115 ou superior)

Exemplo de retorno


Exemplo Json 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

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

  • Sem rótulos