sviluppo:readerid
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
| Prossima revisione | Revisione precedente | ||
| sviluppo:readerid [2013/01/17 11:06] – creata 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 - ReaderId ==== | + | ==== Inserimento di un indice |
| + | |||
| + | 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) | ||
| + | | ||
| + | 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: | ||
| + | ^ Nome Attributo | ||
| + | | 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: | ||
| + | |||
| + | < | ||
| + | | ||
| + | $ita_grid01 = new TableView($this-> | ||
| + | array( | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | $ita_grid01-> | ||
| + | $ita_grid01-> | ||
| + | $ita_grid01-> | ||
| + | $ita_grid01-> | ||
| + | // Elabora il risultato | ||
| + | $Result_tab = $ita_grid01-> | ||
| + | $Result_tab = $this-> | ||
| + | $ita_grid01-> | ||
| + | |||
| + | </ | ||
| + | \\ | ||
| + | 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 | ||
| + | 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, | ||
| + | | ||
| + | |||
| + | Come detto in precedenza la griglia prende automaticamente l' | ||
| + | Per risolvere questo conflitto di Indici, possiamo pertanto ricorrere alla creazione di un ReaderId Composto: | ||
| + | Dovremo ,quindi, nell' | ||
| + | \\ | ||
| + | \\ | ||
| + | **Esempio Guidato: | ||
| + | \\ | ||
| + | In una tabella abbiamo: | ||
| + | TABELLA: OPERAI JOIN PRODUZIONI | ||
| + | ^ CodiceDipendente | ||
| + | | 001 | Rossi | Luigi | 22/ | ||
| + | | 004 | Verdi | Rosa | 25/ | ||
| + | |||
| + | Le tabelle senza JOIN :\\ | ||
| + | \\ | ||
| + | TABELLA: PRODUZIONI | ||
| + | ^ CodiceProdotto ^TipoProdotto ^ CodiceDipendente | ||
| + | | BX01 | BulloneB | ||
| + | | BX01 | BulloneA | ||
| + | | BX04 | BulloneC | ||
| + | | BC9F | ChiodoB | ||
| + | \\ | ||
| + | TABELLA: OPERAI | ||
| + | \\ | ||
| + | ^ CodiceDipendente | ||
| + | | 001 | Rossi | Luigi | | ||
| + | | 004 | Verdi | Rosa | | ||
| + | \\ | ||
| + | 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. | ||
| - | Se si vuole inserire un Rowid diverso da quello di Default | ||
sviluppo/readerid.1358420804.txt.gz · Ultima modifica: (modifica esterna)
