Project

General

Profile

Feature #14995

Updated by Carsten Rose over 1 year ago

Beim Refactoring fragt man sich oft wo wird ein String (z.B. ein Spaltenname) verwendet? 

 Fuer T3 gibt es eine recht gute (effziente) Suche. 

 Fuer QFQ waere es gut wenn wir etwas vergleichbares haetten. Ggfs. auch fuer T3 (das koennen wir zwar nicht verlinken, aber zumindest die uid und den T3 Pagenamen angeben. 

 * Suchstring 
 * Checkbox: exact oder wildcard 
 * Checkbox: a) Limit 100, b) all 
 * Suche in allen Spalten von Form & FormElement. 
 * Checkbox: Suche in allen Tabellen. 
 * Ausgabe Matches pro Tabelle 
 * FormElemente die disabled sind: entsprechend markieren das sie disabled sind. 
 * Verlinkung (Edit) um den Match zu bearbeiten: 

   * Pro Match/Tabelle wird nach Forms gesucht die die aktuelle Tabelle als Primary Table haben.  
   * Haben die gefundenen Forms in 'required_edit' etwas eingetragen? 

     * Ja: 'Edit' ist disabled. 
     * Nein: 'Edit' is enabled. 

   * Gibt es mehrere passende Forms, werden alle angegeben / verlinkt 

 * Neu: Im Form 'FormElement' soll es neu einen Link geben um das 'Form' (normalerweise erreichbar via Back Button der hier aber nicht funktioniert) aufzurufen. 
 * Ist es moeglich den gefundenen Text zu markieren? Ohne das die Markierung bei einem Save gespeichert wuerde. 
 * Bei Suche in T3 waeren vermutlich die Tabellen 'pages' und 'tt_content' interessant. Wichtig ist das 'deleted' Records nicht selektiert werden und 'disabled' markiert werden das sie disabled sind. 
 * Nice to have: Radiolist 'done' 

   * Eine Suche wird mit dem Suchbegriff gespeichert (Browser Localstore) und eine ID zugeordnet. 
   * Jeder Treffer bekommt eine Radioinput mit 'open,done,wdc' mit einer eindeutigen (HTML-)ID: searchid_dbname_tablename_recordid 
   * Der Radio input state wird im Browser Localstore gespeichert. 
   * Es gibt einen Clear Button um die Suchanfragen und zugehoerige Radio input Werte zu loeschen. 
   * Alte Suchanfragen koennen wieder aufgerufen werden - inkl. Restore wie weit man mit dem Refactoring gekommen ist. 
   

 

 Gedanken 
 -------- 

 QFQ: 

 * Wenn wir eine stored procedure machen, die als Parameter den Suchstring und einen Tabellennamen bekommt (Return: set of record id die matches), koennte man ggfs. den Rest in QFQ Report Notation umsetzen. 
 * Wuerde die SP ein Resultset zurueckliefern, koennte darueber iteriert werden.  
 * Den QFQ Code koennte man evtl. auf der FormEditor Seite implementieren oder wie beim FormEditor die Seite als JSON mitliefern. 

 PHP: 

 * Wenn wir das in PHP Programmieren waere eine Ausgabe moeglich vergleichbar mit der Wiki Suche in Redmine. Es koennte die Spalte angegeben werden in der der Match war. 
 !clipboard-202211051141-gz4ze.png! 

Back