TCSqlToArr[AS]

TCSqlToArr[AS]
Author: Eurai
Inclusão: 09/08/2023
Alteração: 09/08/2023

Descrição

Permite a abertura de uma query diretamente no banco de dados, trazendo os resultados em um array...

 

Sintaxe

TCSqlToArr()

 

Parâmetros


Par Nome Tipo Descrição Default Obg Ref
01
cQuery
Caracter
String contendo a query a ser executada.
  X  
02 aResult
Array Array multi-dimensional vazio, informado por referencia, onde serão alimentados os resultados
     
03 aBinds
Array
Array multi-dimensional opcional, para ser alimentado com a estrutura de campos retornada pela query -- equivalente ao uso da função DbStruct() em um alias de Query
     
04 aSetFields
Array
Array multi-dimensional opcional, com os valores dos campos de tratamento de tipo diferenciado de retorno -- equivalente ao uso da função TCSetField() após abrir uma Query
     
05 aQryStru
Array
Array multi-dimensional opcional, para ser alimentado com a estrutura de campos retornada pela query -- equivalente ao uso da função DbStruct() em um alias de Query
     

 

Retorno

Retorno Tipo Descrição
nRet Numérico
0 (zero) em caso de sucesso, ou um numero negativo em caso de falha. Detalhes da falha podem ser obtidos com a função TCSqlError(

 

Exemplo

#INCLUDE "TOTVS.CH"
 
 
User Function fTCSqlToArr()
Local cQuery     	:= "SELECT TOP 30 R_E_C_N_O_ AS RECNO, A2_NOME FROM "+ RetSqlName('SA2') +" WHERE D_E_L_E_T_='' "
Local aReturn     	:= {}
Local aBinds     	:= {}
Local aSetFields   	:= {}
Local oObjJson    	 := JsonObject():new()
Local cJsonResult 	 :=''
Local nRet      	:= 00
aAdd(aSetFields,{"RECNO"  ,"N",16,0})
aAdd(aSetFields,{"A2_NOME"  ,"C",TamSX3('A2_NOME')[01],0})
nRet := TCSqlToArr(cQuery,@aReturn,aBinds,aSetFields)
If nRet < 0  
	FWAlertError(TcSqlError(),"Falha ao executar a Query")
Else
	//VarInfo("aReturn",aReturn)
	oObjJson:set(aReturn)
	cJsonResult :=  oObjJson:toJson()
Endif    

 
 
Return( Nil )

Resultado
                                       

 

 

Informações adicionais

 

 

 

 

 

 

Gostou? Compartilhe com seus amigos e deixe um comentário! 😎  

 

 

 

 

 

 

 

Esse conteúdo te ajudou? Ajude o canal com doação
Compartilhar
Comentários