Esempio di allineamento di attributi multiistanza
Supponiamo di trovarci in una situazione di questo tipo:
Base dati a 16 bit esistente, alimentata e manutenuta con SfPlus;
Esempio di struttura:
Tabella 1 |
multiistanza |
nome attributo |
no |
NRECORD |
no |
CLIENTE |
si - gruppo 1 |
INDIRIZZO |
si - gruppo 1 |
LOCALITA |
si - gruppo 1 |
INDIRIZZO |
si - gruppo 1 |
TELEFONO |
si |
FATTURE |
Per eseguire un allineamento sul numero delle righe degli attributi
dello stesso gruppo e per allineare i \r\n sull'ultima riga si dovrà
procedere come nell'esempio sottoindicato:
<!-- è prevista una precedente chiamata a %BLOADDOC% -->
%STRING%(a_indirizzo, %ATTRIB%("INDIRIZZO"))
%STRING%(a_localita, %ATTRIB%("LOCALITA"))
%STRING%(a_telefono, %ATTRIB%("TELEFONO"))
%NUMBER%(nrighe_gr1, %CHKROWS%("\r\n",1,a_indirizzo, a_localita, a_telefono))
%STRING%(a_fatture, %ATTRIB%("FATTURE"))
%NUMBER%(nrighe_fatture, %CHKROWS%("\r\n",1,a_fatture))
A questo punto il corretto contenuto degli attributi del documento
corrente è nelle variabili sopra dichiarate e valorizzate dalla %CHKROWS%
Se la modalità in cui si sta operando è la visualizzazione del
documento, allora prima di mostrare il contenuto degli attributi suddetti
si eseguirà:
%FILLATTR%("INDIRIZZO", a_indirizzo)
%FILLATTR%("LOCALITA", a_localita)
%FILLATTR%("TELEFONO", a_telefono)
%FILLATTR%("FATTURE", a_fatture)
e quindi all'atto della visualizzazione:
%IF%(%STRLEN%(%ATTRIB%("INDIRIZZO", "")))
%REPEAT%(1, nrighe_gr1)
%ATTROW%("INDIRIZZO")<BR>
%ENDREPEAT%
%ENDIF%