Actions
Feature #14995
closedSearch in DB for occurrences of a string
Start date:
05.11.2022
Due date:
% Done:
0%
Estimated time:
Discuss:
Prio Planung:
No
Vote:
Description
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.
- Die ganze Logik koennte mit auf der Seite des FormEditor implementiert werden - die Seite gibt es schon und es passt auch inhaltlich einigermassen.
- Nice to have: Radiolist 'todo'
- 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.
Files
Related issues
Updated by Carsten Rose over 1 year ago
- File clipboard-202211051141-gz4ze.png clipboard-202211051141-gz4ze.png added
- Description updated (diff)
Updated by Enis Nuredini over 1 year ago
- Assignee changed from Support: Web to Enis Nuredini
Updated by Enis Nuredini over 1 year ago
- Status changed from In Progress to ToDo
Updated by Carsten Rose over 1 year ago
- Target version changed from 24.10.0 to 411
Updated by Carsten Rose about 1 year ago
- Status changed from ToDo to Priorize
- Target version changed from 411 to 24.8.0
Updated by Enis Nuredini about 1 year ago
- Status changed from Priorize to In Progress
Updated by Carsten Rose about 1 year ago
Fuer das MedTool funktioniert die Suche aktuell nur nach FtG. Die Suche muss konfigurierbar (Source: Tabellen, Spalten) werden.
Fuer dieses Ticket haben wir eine aehnliche Problematik: wir haetten gern eine einfache Moeglichkeit x Tabellen mit y Spalten zu durchsuchen.
Wir koennen dieses Ticket
- hart in PHP programmieren
- hart in einem Report definieren
- eine Notation definieren mit der Queries dynamisch gebaut werden (JSON Konstrukt mit Spaltennamen die zu 'OR' Bedingungen explodiert wird)
- PHP Funktionen via Report aufgerufen werden koennen.
- ...
Updated by Carsten Rose about 1 year ago
- Has duplicate Feature #12477: Support for refactoring: Form, FormElement, diverse Tabellen/Spalten, tt-content Records added
Updated by Enis Nuredini about 1 year ago
- Status changed from In Progress to Ready to sync (develop)
- Assignee changed from Enis Nuredini to Carsten Rose
Erste Version ist bereit.
Updated by Carsten Rose about 1 year ago
- Target version changed from 24.8.0 to 22.2.0
Updated by Carsten Rose about 1 year ago
- Status changed from Ready to sync (develop) to Closed
Updated by Carsten Rose about 1 year ago
- Related to Feature #15491: Search/Refactor: redesign added
Actions