Project

General

Profile

Inline Edit » History » Version 4

Pascal Rössler, 17.07.2023 13:10

1 1 Jan Haller
h1. Inline Edit
2 2 Pascal Rössler
3
Autor: Pascal Rössler
4
Ticket: Refactor (#16137), InlineEdit (#16305) 
5
Dokumentation: https://docs.qfq.io/en/master/Report.html#column-edit
6
7 3 Pascal Rössler
h2. How to use
8
9
**1. Direct mode**
10
11
This variant requires the user to define the following parameters.
12
13
  * table - table name
14
  * column - column name
15
  * type - input type (currently only 'text' is possible)
16
  * r - record id
17
18
<pre>
19
10.sql = SELECT CONCAT('table=Person&column=firstName&type=text&r=', id) AS _edit FROM Person LIMIT 5
20
</pre>
21
22
**2. Reference mode**
23
24
This variant requires the user to define the following parameters.
25
26
  * form - form name (table specified in form is used)
27
  * fe - form element name (only form element names that exist as columns on the table specified in the form can be used)
28
  * r - record id
29
30
<pre>
31
10.sql = SELECT CONCAT('form=formName&fe=formElementName&r=', id) AS _edit FROM Person LIMIT 5
32
</pre>
33
34 2 Pascal Rössler
h2. Zukünftige Features / Offene Punkte
35
36 4 Pascal Rössler
h3. Refactor
37
38 2 Pascal Rössler
Bevor weitere FormElement-Typen dem Inline Editing hinzugefügt werden, sollten zuerst aus den 'build' (zbsp. buildSelect) Funktionen, die in der AbstractBuildForm.php Klasse definiert sind, eigene Klassen erstellt werden (Refactor). Die bereits erstellten Klassen FormElementInput und AbstractFormElement können als Vorlage dienen. 
39 4 Pascal Rössler
40
h3. InlineEdit
41
42
Für folgende FormElement-Typen wäre ein Inline Editing Feature 'Nice to have'.
43
* Upload
44
* Select 
45
* Date
46
* Datetime
47
* Time 
48
* Radio
49
* Subrecord
50
* Checkbox
51
* Editor