Actions
Feature #3881
closedVariables: Ex 'keySemId', New 'periodId' (System Store)
Start date:
08.06.2017
Due date:
% Done:
0%
Estimated time:
Discuss:
Prio Planung:
Vote:
Description
- Name of table 'schedule' in 'config.qfq.ini'. E.g.: 'semester', 'schoolYear', ...
- dynamic per page: switching on page '1' does not affect page '2'.
- static per User: if a user switches to next semester, all of 'static semester configured pages' select the choosen semester.
- mode 'per page' | 'static' might be a user setting option or might be a webmaster configuration decision.
- in qfq record botytext: scheduleId = ...
- scheduleId = dynamic | staticPerUser | <const> | {{...}}
- default: dynamic
- first request to 'scheduleId':
- if there is a 'scheduleId' in SIP and {{scheduleId:T}}='staticPerUser', set new value in QFQ session.
- dynamic: check table schedule, replace 'dynamic' by computed id.
- staticPerUser: get value from QFQ session. If not exist, get computed id. save new id in QFQ session
- numerical: return value.
Related issues
Updated by Carsten Rose over 6 years ago
- Subject changed from Variables: Ex 'keySemId', New '_scheduleId' (System Store) to Variables: Ex 'keySemId', New 'periodId' (System Store)
- Status changed from New to In Progress
- Assignee set to Carsten Rose
- '_scheduleId' is renamed to 'period'.
- persistant storage is not implemented at the moment. will be done via STORE_SESSION (N) - this store will be newly implemented.
Updated by Carsten Rose over 6 years ago
- Related to Bug #4158: Delete Button im Form fehlen die SIP Parameter - aufgefallen weil periodId nicht durchgereicht wurde added
Updated by Carsten Rose over 6 years ago
Der obige Ansatz wurde anders implementiert:
- Die Anweisung fuer die Berechnung steht in der config.qfq.ini: VAR_ADD_BY_SQL=SELECT id AS periodId FROM Period WHERE start<=NOW ORDER BY start DESC LIMIT 1
- Die SQL Spaltennamen sind die Variablennamen. Es koennen beliebige Variablen via den Spaltenamen gesetzt werden.
- Es koennen auch bestehende Variablen uberschrieben werden.
- Wird ausgefuehrt, nachdem config, store und db inititalisiert wurden.
- Zugriff
- volatile: {{periodId:SY0}}
- persistent: {{periodId:SN0}}
- nur auf Seiten die 'Persistant' benötigen wird eine neue periodId in die Session geschrieben. Dies muss in einem QFQ Report Record erfolgen.
- Aktuell ist der Session Store noch nicht implementiert
- In Forms sollte als scheduleId immer der aktuelle Wert genommen werden, und nciht eine die durch den user in einem anderen tab gesetzt wurde
- Mehrere tabs, mit unterschiedlichen persistent periodId ueberschreiben sich gegenseitig - das Problem wird aktuell ignoriert.
Updated by Carsten Rose over 6 years ago
- Status changed from In Progress to Closed
Updated by Carsten Rose almost 6 years ago
- Target version changed from next9 to 0.25.6
Actions