Importante
O conteúdo relacionado na página abaixo foi substituído e será descontinuado em releases futuras.
A nova técnica para desenvolvimento de API poderá ser consultada através do seguinte endereço (http://tdn.totvs.com/x/6BE4Fw) e esta disponível a partir da release 12.1.22 do Logix.
O parâmetro de saída deve ser padrão para todas as funções da API, definida como RECORD
com o nome lr_return
e deverá possuir os atributos conforme abaixo:
Atributo | Tipo de Dado | Obrigatório? | Descrição |
---|---|---|---|
status | SMALLINT | Sim | Status da execução, verdadeiro ou falso. |
msg | CHAR | Sim | Mensagem da execução, pode ser nulo se o atributo status for verdadeiro. |
data | Misto | Não | Dados complementares de retorno. |
O atributo data
é incluído apenas nos casos em que é necessário, como por exemplo numa pesquisa para retornar os registros encontrados ou numa inclusão para retornar os dados do registro incluído na base.
Importante
O nome das variáveis devem ser sempre definidas com letras minúsculas, não é permitido utilizar letras maiúsculas ou "Camel Case".
# Retorna as informações de uma determinada empresa. # GET http://<servidor>:<porta>/logixrest/logr2/empresa/01 #------------------------------------------------------------------------------# FUNCTION logr0002_pub_get_empresa(l_pp_cod_empresa) #------------------------------------------------------------------------------# DEFINE l_pp_cod_empresa LIKE empresa.cod_empresa DEFINE lr_return RECORD status SMALLINT, msg CHAR(200), data RECORD LIKE empresa.* END RECORD INITIALIZE lr_return.data.*, lr_return.* TO NULL IF logm2_empresa_leitura(l_pp_cod_empresa,TRUE,1) THEN LET lr_return.data.cod_empresa = logm2_empresa_get_cod_empresa() LET lr_return.data.den_empresa = logm2_empresa_get_den_empresa() LET lr_return.data.den_reduz = logm2_empresa_get_den_reduz() LET lr_return.data.end_empresa = logm2_empresa_get_end_empresa() LET lr_return.data.den_bairro = logm2_empresa_get_den_bairro() LET lr_return.data.den_munic = logm2_empresa_get_den_munic() LET lr_return.data.uni_feder = logm2_empresa_get_uni_feder() LET lr_return.data.ins_estadual = logm2_empresa_get_ins_estadual() LET lr_return.data.num_cgc = logm2_empresa_get_num_cgc() LET lr_return.data.num_caixa_postal = logm2_empresa_get_num_caixa_postal() LET lr_return.data.cod_cep = logm2_empresa_get_cod_cep() LET lr_return.data.num_telefone = logm2_empresa_get_num_telefone() LET lr_return.data.num_telex = logm2_empresa_get_num_telex() LET lr_return.data.num_fax = logm2_empresa_get_num_fax() LET lr_return.data.end_telegraf = logm2_empresa_get_end_telegraf() LET lr_return.data.num_reg_junta = logm2_empresa_get_num_reg_junta() LET lr_return.data.dat_inclu_junta = logm2_empresa_get_dat_inclu_junta() LET lr_return.data.ies_filial = logm2_empresa_get_ies_filial() LET lr_return.data.dat_fundacao = logm2_empresa_get_dat_fundacao() LET lr_return.data.cod_cliente = logm2_empresa_get_cod_cliente() LET lr_return.status = TRUE LET lr_return.msg = NULL ELSE LET lr_return.status = FALSE LET lr_return.msg = log0030_mensagem_get_texto() END IF RETURN lr_return END FUNCTION
O retorno deve ser sempre da RECORD
lr_return
sem a utilização do asterisco (*
).
Tipos de Variáveis
Para este desenvolvimento, alguns tipos de dados 4GL não são suportados como parâmetros de saída, como:
INTERVAL
, DATETIME
e ARRAY
multidimensional.