sviluppo:readerid
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
sviluppo:readerid [2013/01/17 14:19] – a.mucci | sviluppo:readerid [2024/10/15 09:45] (versione attuale) – modifica esterna 127.0.0.1 | ||
---|---|---|---|
Linea 1: | Linea 1: | ||
- | ==== Inserimento di un Rowid Specifico in Tabella | + | ==== Inserimento di un indice |
- | Se si vuole inserire un Rowid diverso da quello di Default | + | Il ReaderId è l' |
+ | Se nella querry che viene passata alla Grid non è presente un Indice, il ReaderId viene automaticamente assegnato e assume valori in ordine Crescente.\\ | ||
+ | \\ | ||
+ | Esempi: | ||
- | | + | 1) |
- | Dove ' | + | |
+ | In questo caso abbiamo preso tutto, compreso l' | ||
+ | |||
+ | 2) | ||
+ | Se invece prendiamo solo determinati campi dalla tabella DIPENDENTI: | ||
+ | |||
+ | | ||
+ | |||
+ | L' | ||
+ | \\ | ||
+ | |||
+ | Se nella griglia si vuole utilizzare un Indice differente dall' | ||
+ | |||
+ | * 1) Nel model della grid inserire l' | ||
+ | Dove ' | ||
\\ | \\ | ||
Esempio: | Esempio: | ||
^ Nome Attributo | ^ Nome Attributo | ||
- | | class | {cellEdit: | + | | class | {cellEdit: |
+ | \\ | ||
+ | * 2) Nel programma, al momento della creazione della griglia, dovremo aggiungere all' | ||
+ | < | ||
+ | | ||
+ | $ita_grid01 = new TableView($this-> | ||
+ | array( | ||
+ | ' | ||
+ | ' | ||
+ | ' | ||
+ | $ita_grid01-> | ||
+ | $ita_grid01-> | ||
+ | $ita_grid01-> | ||
+ | $ita_grid01-> | ||
+ | .... | ||
+ | </ | ||
\\ | \\ | ||
+ | Se nella select quindi specificheremo ad esempio:\\ | ||
+ | | ||
+ | Avremo come indice il Codice del Dipendente. | ||
+ | \\ | ||
+ | \\ | ||
+ | ---- | ||
+ | \\ | ||
+ | == Elabora Record == | ||
+ | \\ | ||
+ | |||
+ | Nel Caso in cui vogliamo Elaborare il risultato della nostra tabella per un qualsiasi motivo, come ad esempio l' | ||
+ | Questo tipo di funzione ci permette di **Rielaborare** l' | ||
+ | | {{ : | ||
+ | \\ | ||
+ | Per ottenere un' | ||
+ | \\ | ||
+ | * 1) Creare la Funzione di rielaborazione: | ||
+ | |||
+ | < | ||
+ | |||
+ | function elaboraRecords($Result_tab) { | ||
+ | foreach ($Result_tab as $key => $Result_rec) { | ||
+ | $Result_tab[$key][' | ||
+ | $Result_tab[$key][' | ||
+ | } | ||
+ | return $Result_tab; | ||
+ | } | ||
+ | </ | ||
+ | \\ | ||
+ | In questa funzioene viene passato l' | ||
+ | |||
+ | |||
+ | * 2) Al momento della creazione della tabella, richiamiamo la funzione appena creata: | ||
- | * Nell' | ||
< | < | ||
- | $sql=$this-> | + | $sql=" |
$ita_grid01 = new TableView($this-> | $ita_grid01 = new TableView($this-> | ||
array( | array( | ||
- | ' | + | ' |
' | ' | ||
' | ' | ||
$ita_grid01-> | $ita_grid01-> | ||
$ita_grid01-> | $ita_grid01-> | ||
- | $ita_grid01-> | + | $ita_grid01-> |
$ita_grid01-> | $ita_grid01-> | ||
// Elabora il risultato | // Elabora il risultato | ||
$Result_tab = $ita_grid01-> | $Result_tab = $ita_grid01-> | ||
$Result_tab = $this-> | $Result_tab = $this-> | ||
+ | $ita_grid01-> | ||
+ | | ||
</ | </ | ||
- | |||
- | **Nota.** | ||
- | Questa elaborazione è necessaria nel momento in cui la query che passiamo sarà il risultato di più JOIN a più tabelle.\\ | ||
\\ | \\ | ||
+ | E come possiamo notare la griglia viene creata utilizzando l' | ||
+ | \\ | ||
+ | \\ | ||
+ | \\ | ||
+ | ----- | ||
+ | \\ | ||
+ | \\ | ||
+ | \\ | ||
+ | Nel caso in cui la SELECT preveda una JOIN con più tabelle e non si ha la possibilità di selezionare un determinato indice da una TABELLA sarà necessario ricorre ad un Funzione Elabora Record e alla creazione di un ReaderId composto da più Campi.\\ | ||
+ | Questa funzione è necessaria sopratutto con una JOIN di più tabelle, perchè non sempre è possibile selezionare un solo campo:\\ | ||
+ | \\ | ||
+ | Immaginiamo di avere 2 tabelle: ANAGRAFICA_SOGGETTO e ANAGRAFICA_IMMOBILE e che entrambe racchiudono tanti campi anagrafici importanti, | ||
+ | | ||
- | Se invece | + | Come detto in precedenza la griglia prende automaticamente l' |
- | + | Per risolvere questo conflitto di Indici, possiamo pertanto ricorrere alla creazione di un ReaderId Composto: | |
- | * Nell' | + | Dovremo ,quindi, nell' |
+ | \\ | ||
+ | \\ | ||
+ | **Esempio Guidato: | ||
\\ | \\ | ||
- | Esempio:\\ | ||
In una tabella abbiamo: | In una tabella abbiamo: | ||
TABELLA: OPERAI JOIN PRODUZIONI | TABELLA: OPERAI JOIN PRODUZIONI | ||
Linea 61: | Linea 138: | ||
| 004 | Verdi | Rosa | | | 004 | Verdi | Rosa | | ||
\\ | \\ | ||
- | Vogliamo che al doppioclick su una riga vengano elencati | + | Vogliamo che all' |
+ | \\ | ||
+ | Procedimento: | ||
+ | \\ | ||
+ | Dopo aver aggiunto nella gird del model il **ReaderId** | ||
+ | Questa rielaborazione può essere fatta sempre attraverso la funzione **ElaboraRecords** :\\ | ||
+ | < | ||
+ | function elaboraRecords($Result_tab) { | ||
+ | foreach ($Result_tab as $key => $Result_rec) { | ||
+ | $Result_tab[$key][' | ||
+ | |||
+ | } | ||
+ | return $Result_tab; | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | |||
+ | \\ | ||
+ | Come possiamo notare il nostro Indice ' | ||
+ | \\ | ||
+ | Dopo di che, per poter utilizzare questo **Indice Composto**, all' | ||
+ | |||
+ | < | ||
+ | | ||
+ | case $this-> | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | array( | ||
+ | ' | ||
+ | ' | ||
+ | $ita_grid01-> | ||
+ | $ita_grid01-> | ||
+ | $ita_grid01-> | ||
+ | $ita_grid01-> | ||
+ | $ita_grid01-> | ||
+ | break; | ||
+ | } | ||
+ | break; | ||
+ | </ | ||
+ | L' | ||
+ | {{counter}} visualizzazioni. |
sviluppo/readerid.1358432387.txt.gz · Ultima modifica: 2018/03/19 10:45 (modifica esterna)