Descrição
TCSqlToArr[AS] - Permite a abertura de uma query diretamente no banco de dados, trazendo os resultados em um array...
|
Sintaxe
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! 😎