Passa al contenuto principale

DEFQUERYPARAM

Desktop
warning
La specifica è deprecata nei sorgenti con STRICT maggiore o uguale a 4

Permette di definire dei parametri da poter utilizzare nelle condizioni di filtro tramite le specifiche @DEFQUERYWHERE.
La particolarità sta nel fatto che è possibile eseguire una query utilizzando il valore della variabile associata al parametro senza dover ridefinire la query stessa.

Parametri

ParametroDefinizioneI/OInformazioniVersione traduttoreSMP
IDQUERYLongINObbligatorioDesktop
PARINObbligatorioDesktop
VARVariabiliINDesktop
ERROREInteroINDesktop

IDQUERY

LongINInputObbligatorioObbligatorioValore non necessarioValore non necessarioDesktop

Identificatore della query ottenuto tramite @DEFQUERY.

PAR

INInputObbligatorioObbligatorioValore non necessarioValore non necessarioDesktop

Indica il nome del parametro per cui si possono riferire i parametri all'interno dei filtri con il loro nome.

VAR

VariabiliINInputValore non necessarioValore non necessarioDesktop

Indica la variabile di programma che è associata al parametro.
Se non viene indicato l'attributo VAR[] sarà necessario eseguire una @BINDQUERYPARAM per associare la variabile al campo.

ERRORE

InteroINInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente al programma di intercettare e gestire l'errore restituito dalla funzione.

suggerimento

Utilizzare uno dei metodi GetLastError*() della classe BCContextInfo per ottenere le informazioni dell'errore.

Esempi

Definizione

 DIM QueryObject[INT]

DIM NumMisura[INT]

DIM posFlag[INT]

DIM varMagUM[STRING]="Kg"

'@DEFQUERY IDQUERY[QueryObject] NOME["BCRIF_DEFQUERYPARAM_8"]

'@DEFQUERYPARAM IDQUERY[QueryObject] PAR["UM"] VAR[varMagUM]

'@DEFQUERYFROM IDQUERY[QueryObject] TABELLA[BLDART]

'@DEFQUERYCOLUMN IDQUERY[QueryObject] ESPR[COUNT(BLDART.UNITA) AS [NumUdm]] VAR[NumMisura]

'@DEFQUERYWHERE IDQUERY[QueryObject] ESPR[BLDART.UNITA=PAR["UM"]]


posFlag=1
'@GETQUERYDATA IDQUERY[QueryObject] POSIZIONA[posFlag] ERRORE[#ENDFIL]

varMagUM="m"

posFlag=1
'@GETQUERYDATA IDQUERY[QueryObject] POSIZIONA[posFlag] ERRORE[#ENDFIL]