Páginas filhas
  • Consumo de serviço do TAS por função

Versões comparadas

Chave

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

A partir da lib 20250811 passa ser , torna-se possível obter as informações retornadas os dados retornados pelos serviços do Totvs TOTVS API Services (TAS) por meio de da função ADVPL BlindTASExec ou API Rest, desta forma é possível aproveitar as facilidades de obtenção de dados do TAS em suas aplicações customizadas e integraçõesvia API REST APCFG10LAPI.

Essa funcionalidade permite que aplicações customizadas e integrações externas aproveitem de forma simplificada os recursos de consulta e recuperação de dados disponibilizados pelo TAS.


Informações
titleImportante

Apenas serviços devidamente parametrizados serão possíveis de ser consumidos estarão disponíveis para consumo via função ou API , para maiores informações consulte REST.

Para mais detalhes sobre o processo de parametrização, consulte a seção Configuração Do Totvs Api Services.

Consumo de um serviço TAS por meio de função

A consulta de serviço TAS via função deverá ser realizada por meio da função BlindTASExec recebendo que deverá receber os seguintes parâmetros:

ParâmetroTipoDescriçãoObrigatório
cAliasCharactereAlias correspondente a parametrização do serviço realizada no Configurador Sim
cServTasCharactereNome do serviço TAS a ser consumidoSim
aValBlindTasArrayArray com os parâmetros requisitados pelo serviço, os valores devem seguir a sequencia apresentada na parametrização do serviçoSim
Bloco de código
languagecpp
#include "protheus.ch"

/*/{Protheus.doc} TstBlindTAS
	ApenasExemplo parade testarimplementação ada função, nãoBlindTASExec
 deve  ser considerado na versão final
	@type  Function
	@author Bruno Pirolo
	@since 05/06/2025
/*/
Function TstBlindTAS()
	Local aValBlindTas 	as array
	Local cAlias		as character
	Local cServTas		as character
	Local jBlindTasRet	as json

	RpcSetEnv("T1", "D MG 01")

	//SOACEPService	
	aValBlindTas	:= {"03223110"}
	cAlias 			:= "SA1"
	cServTas		:= "SOACEPService"
	
	jBlindTasRet := BlindTASExec(cAlias, cServTas, aValBlindTas)

	If jBlindTasRet["error"] == nil
		VarInfo("Resultado TAS", jBlindTasRet)
	Else
		Conout("Erro na execução do TAS via função"+jBlindTasRet["error"])
	EndIf

	//BancoCentral.ConversaoMoeda             
	cAlias			:= "SA1"
	cServTas 		:= "BancoCentral.ConversaoMoeda             "
	aValBlindTas	:= {"177" /*Real*/, "61" /*Dolar EUA*/, "1", "05/06/2025"}

	jBlindTasRet := BlindTASExec(cAlias, cServTas, aValBlindTas)

	If jBlindTasRet["error"] == nil
		VarInfo("Resultado TAS", jBlindTasRet)
	Else
		Conout("Erro na execução do TAS via função"+jBlindTasRet["error"])
	EndIf

	//SOASimplesNacionalService
	cAlias			:= "SA1"
	cServTas 		:= "SOASimplesNacionalService               "
	aValBlindTas	:= {"53113791000122"}

	jBlindTasRet := BlindTASExec(cAlias, cServTas, aValBlindTas)

	If jBlindTasRet["error"] == nil
		VarInfo("Resultado TAS", jBlindTasRet)
	Else
		Conout("Erro na execução do TAS via função"+jBlindTasRet["error"])
	EndIf

	//SOASuframaService ******Esse serviçoSOASuframaService - Nesse exemplo é esperado um erro tratado pelo TAS e que será detalhado no error
	cAlias			:= "SA1"
	cServTas 		:= "SOASuframaService"
	aValBlindTas	:= {"53113791000122", "SP"}

	jBlindTasRet := BlindTASExec(cAlias, cServTas, aValBlindTas)

	If jBlindTasRet["error"] == nil
		VarInfo("Resultado TAS", jBlindTasRet)
	Else
		Conout("Erro na execução do TAS via função"+jBlindTasRet["error"])
	EndIf

Return
	//SOASintegraService
	cAlias			:= "SA1"
	cServTas 		:= "SOASintegraService"
	aValBlindTas	:= {"53113791000122", "SP"}

	jBlindTasRet := BlindTASExec(cAlias, cServTas, aValBlindTas)

	If jBlindTasRet["error"] == nil
		VarInfo("Resultado TAS", jBlindTasRet)
	Else
		Conout("Erro na execução do TAS via função"+jBlindTasRet["error"])
	EndIf

	//SOASintegraService
	cAlias			:= "SA1"
	cServTas 		:= "SOASintegraService"
	aValBlindTas	:= {"53113791000122", "SP"}

	jBlindTasRet := BlindTASExec(cAlias, cServTas, aValBlindTas)

	If jBlindTasRet["error"] == nil
		VarInfo("Resultado TAS", jBlindTasRet)
	Else
		Conout("Erro na execução do TAS via função"+jBlindTasRet["error"])
	EndIf

Return


Consumo TAS via API REST

Com o mesmo objetivo da função BlindTASExec, foi disponibilizada a API APCFG10LAPI para consumo de serviços do TOTVS API Services (TAS).
Para utilizar essa API, é necessário seguir os procedimentos descritos na seção a seguir.

Parâmetro (Body)

Json contendo as seguintes propriedades

    • Alias
      • Tipo: String
      • Descrição: Alias correspondente a parametrização do serviço realizada no Configurador.
    • ServTas
      • Tipo: String
      • Descrição: Nome do serviço TAS a ser consumido
    • ValBlindTas
      • Tipo: String
      • Descrição: Array com os parâmetros requisitados pelo serviço, os valores devem seguir a sequencia apresentada na parametrização do serviço

Exemplo:

{
  "Alias": "SA1",
  "ServTas": "SOACEPService",
  "ValBlindTas": ["03223110"]
}

Path:

api/framework/v1/apcfg10lAPI

Retorno

Json contendo todas as propriedades retornadas pelo serviço TAS consumido.

Exemplo (SOACEPService):

{
    "CEP": "03223110",
    "Endereço": "Rua Secundino Domingues",
    "Bairro": "Jardim Independência",
    "Cidade": "São Paulo",
    "Estado": "SP"
}


Exemplo de consumo no Postman

Image Added