Project

General

Profile

Feature #15524

Updated by Carsten Rose about 1 year ago

Um einfach beliebige Daten anschauen / bearbeiten / exportieren zu koennen: 

 * In einer Tabelle 'GenericReport' werden SQL SELECT Anweisungen hinterlegt.  

   * Spalten: sql1, genericReport (uniq name for this report),    description, required (comma list of required SIP arguments), sqlStoreVar (SELECT Definition), formForDelete (siehe unten), fileNameExcelExport (kann QFQ Variablen enthalten). 
 
 * Eine T3 Page 'Generic Report' wird mit dem SIP Parameter 'genericReport=<uniq name>' und weiteren SIP Parametern aufgerufen. 
 * Der Report wird mit TableSorter dargestellt, inkl. ColumnSelector 
 * Die Spaltennamen des SQL Statements: 

   * a) referenzieren direkt eine Tabellenspalte. 
   * b) bei z.B. CONCAT() oder '... AS something' oder bei einem SQL View Statement: im Spaltennamen die Definition. Bsp: 'Person|VARCHAR(20)|' 

 * Mit den Spaltendefinitionen kann: 

   * Der Tablesorter auch nach Datum oder numerisch sortieren. 
   * Kann ein generisches Excel erzeugt werden. 
   * Ein generisches Formular erzeugt werden (Form wird on demand in Tabelle Form/FormElement gerendert). Gibt es eine Spalte 'id', wird ein Edit / Delete Link gerendert.  

     * Ein dem DELETE wird nur gerendert wenn genau eine Spalte 'id' existiert und eine primary Tabelle eindeutig bestimmt werden kann oder ein Form in @formForDelete@ gesetzt ist. 

 * Die Angabe @sql1: SELECT * FROM Person@ fuehrt automatisch zu einem vollstaenigen Reprt, mit Edit / Delete Link und einem Excel Export. 
 * Fuer den Report fuehren wir alternativ zu dem Schluesselwort 'sql' ein neues Wort 'genericReport' ein. BSP: 10.genericReport = SELECT * FROM Person 

   * Ausgabe: head,althead,shead,tail,stail 
   * Nicht beachten: alle anderen 
   * Beim Excel Export  

     * kann via @fileNameExcelExport@ kann der Exportdateiname vorgegeben werden. Falls nicht gesetzt: Tabellenname_Datum.xlsx.  
     * <br> erzeugt eine neue Zeile im Excel. 
     * Die Titelzeile wird gesetzt. Tabellenname_Datum.xlsx 

 * Die Funktion, um Formulare 'on the fly' zu rendern, wird neu im FormEditor angeboten, um ein komplettes Form mit einem Mausklick (a la template) zu erzeugen.  

   * Vorschlag: Neues Form anlegen, Primary Tabelle waehlen, in dem Moment erscheit ein Link im Notizfeld 'Create Form', ein Klick darauf legt alle FE fuer die gewaehlte Tabelle in dem neuen Form an.

Back