COUNTDBDATA
Conta il numero di record che soddisfano una certa condizione. Se la tabella è vuota oppure non esiste oppure nessun record soddisfa le condizioni di filtro, ritorna il valore '0' (zero).
Nel caso in cui sia presente il parametro VIRTUALE, la '@COUNTDBDATA esegue il conteggio sulla tabella o sulla struttura dinamica in memoria a seconda del valore del parametro VIRTUALE stesso.
Parametri
| Parametro | Definizione | I/O | Versione traduttore | SMP | |
|---|---|---|---|---|---|
| TABELLA | |||||
| IND | |||||
| TUTTIGRUPPI | Intero | ||||
| GRUPPO | Stringa | ||||
| VIRTUALE | Intero | ||||
| SELEZIONI | |||||
| SELEZIONIESTESE | |||||
| VINCOLI | Intero | ||||
| NUMRECORD | Long | ||||
| TIPOREC | |||||
| IDQUERY | Long |
TABELLA
Nome del DFX da cui reperire le caratteristiche della tabella, se sono indicati il dizionario dati e la sua versione fa riferimento la 'fotografia' del DFX alla determinata versione del dizionario dati indicata.
TUTTIGRUPPI
Se indicato, il filtro sul campo speciale DBGruppo per selezionare solo le righe del gruppo indicato in BCContextInfo.GetGruppo non viene effettuato.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
GRUPPO
Definisce per il database il valore del campo speciale DBGruppo dei record da identificare nella tabella.
VIRTUALE
Il parametro permette la sovrapposizione tra la gestione delle tabelle su DB e la gestione delle tabelle in Struttura Dinamica.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | la specifica gestisce il normale accesso alla tabella del DataBase. |
1 | la specifica gestisce l'accesso alla Struttura Dinamica in memoria, struttura definita con lo stesso nome del DFX della tabella. |
2 | la specifica gestisce solo l'accesso alla Struttura per le operazioni di LETTURA, mentre vengono gestiti sia il DB che la Struttura per le operazioni di SCRITTURA/CANCELLAZIONE |
SELEZIONI
Indica una o più condizioni che se verificate fanno sì che il record sia selezionato
SELEZIONIESTESE
Indica una o più condizioni che richiedono una sintassi estesa rispetto quanto possibile dal parametro SELEZIONI[]
VINCOLI
Permette di abilitare la gestione della profilazione se la tabella è soggetta a un vincolo di tipo elenco, inserendo in modo automatico delle clausole SQL da parte dell'ambiente, per filtrare gli elementi della tabella.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
NUMRECORD
Variabile numerica di tipo LONG che riceve il numero di record che soddisfano il criterio di selezione.
IDQUERY
Può essere utilizzato in alternativa al parametro TABELLA per eseguire il conteggio dei record a partire dalla definizione di una query.
In questo caso la definizione dei campi previsti dalla query viene ignorata estraendo il solo conteggio dei record.
Esempi
Definizione
DIM numRecords[INT]
'@COUNTDBDATA TABELLA[BLDFAMIGLIA] _
IND[0 \COD = ""\] _
SELEZIONI[FAMCOD$ >= ""] _
NUMRECORD[numRecords]
Definizione con parametro QUERY
DIM numRecords[INT]
DIM idQuery[INT]
'@DEFQUERY IDQUERY[idQuery] NOME["BCRIF_COUNTDBDATA_4"]
'@DEFQUERYFROM IDQUERY[idQuery] TABELLA[BLDCLIFOR]
'@DEFQUERYCOLUMN IDQUERY[idQuery] _
ESPR[BLDCLIFOR.COD AS [CodCliFor]]
'@COUNTDBDATA IDQUERY[idQuery] NUMRECORD[numRecords]