Project

General

Profile

Actions

Feature #3881

closed

Variables: Ex 'keySemId', New 'periodId' (System Store)

Added by Carsten Rose almost 7 years ago. Updated almost 6 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Carsten Rose
Target version:
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.
Implementation:
  • 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

Related to QFQ - Bug #4158: Delete Button im Form fehlen die SIP Parameter - aufgefallen weil periodId nicht durchgereicht wurdeClosedCarsten Rose02.08.2017

Actions
Actions #1

Updated by Carsten Rose almost 7 years ago

  • Description updated (diff)
Actions #2

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.
Actions #3

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
Actions #4

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.
Actions #5

Updated by Carsten Rose over 6 years ago

  • Target version set to next9
Actions #7

Updated by Carsten Rose over 6 years ago

  • Status changed from In Progress to Closed
Actions #8

Updated by Carsten Rose almost 6 years ago

  • Target version changed from next9 to 0.25.6
Actions

Also available in: Atom PDF