Ansicht
Dokumentation

CL_PRP_BSP_C_ROLEAPPROLE - Favoritenliste zur Projektrolle

CL_PRP_BSP_C_ROLEAPPROLE - Favoritenliste zur Projektrolle

BAL_S_LOG - Application Log: Log header data   BAL Application Log Documentation  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Dieser Kontroller bildet zusammen mit der BSP-Seite roleAppointmentRole.bsp eine UI-Komponente. Es wird eine Übersicht über alle Termine gegeben, die über Ressourcenzuordnungen mit der aktuellen Rolle verknüpft sind.

Die BSP-Seite wird komplett neu aufgebaut (Complete Modus) oder nur bei verändertem Inhalt (Differential Modus). Ob sich der Seiteninhalt geändert hat wird über das Attribut mv_changed gesteuert. Analog hält mv_data_changed ob sich auch zugehörige Daten geändert haben, welche neu aufbereitet werden müssen.

Methodendefinitionen DO_REQUEST (redefiniert)

Diese Methode ist für die Erzeugung und den Aufbau der BSP-View verantwortlich.

DO_HANDLE_EVENT (redefiniert)

Hier werden die BSP-Events der BSP-Seite verarbeitet.

DO_FINISH_INPUT (redefiniert)

Hier wird dieser Controller vom Input - Processing abgemeldet, um nur dann die eingehenden Daten der BSP-Seite zu verarbeiten, wenn die Seite auch wirklich sichtbar ist

DO_HANDLE_DATA (redefiniert)

Die Felder der zugehörigen View werden zwischengespeichert.

GET_DATA

Hier werden alle Termine der aktiven Rolle geladen. Zudem wird die Dauer der Termine in der Zeiteinheit des Projektes berechnet.

ON_APPOINTMENTS_CHANGED (Ereignisbehandler)

Die Liste der Termine zu der aktiven Rolle hat sich geändert, d.h. die Termine müssen neu geladen werden.

ON_ACTIVE_ROLE_CHANGED (Ereignisbehandler)

Die aktive Rolle wurde gewechselt, d.h. die Termine für die jetzt aktive Rolle müssen geladen werden.

RAISE_SEND_APPOINTMENT

Das Ereignis SEND_APPOINTMENT wird ausgelöst, welches ein weiteres Fenster (UI-Komponente roleAppointmentsSend) aufruft, mit dem der selektierte Termin an die zugehörige Ressource versendet werden kann.

SET_TRAY_PARAMETER

Der Zustand des Trays, der die Eingabefelder umschließt, wird auf der Datenbank gespeichert.

GET_TRAY_PARAMETER

Liest von der Datenbank,ob der Tray, der die Eingabefelder umschließt, zuletzt im geöffneten oder geschlossen Zustand verlassen wurde.

Beziehungen

Beispiel

Hinweise

Weiterführende Informationen

Austausch geänderter Seiteninhalte

Der Mechanismus zum Austausch geänderter Seiteninhalte (im Dokument "Technical UI-Design" als "Differential rendering" bezeichnet) ist im Framework der Basis enthalten. Der Mechanismus wird in der Anwendung "Development Projects" als Erweiterung des Komponenten-Framework durch Anwendung folgender Regeln realisiert:

  • Das Layout jeder Komponente wird in ein div-Tag mit der ID der Komponente eingeschlossen (-> BSP View)
  • Der Controller der Komponente erhält ein Attribut "differential", das den Aufruf-Modus steuert
  • Der Controller muß über Änderungen seines eigenen Inhalts informiert sein
  • Der Controller macht Ausgaben vom Änderungs-Zustand und vom Aufruf-Modus abhängig:
  • Wurde der Controller im "complete"-Modus aufgerufen (differential ist initial), gibt der Controller seinen kompletten Inhalt aus und ruft eingebettete Komponenten ebenfalls im "complete"-Modus auf

  • Wurde der Controller im "differential"-Modus aufgerufen (differential = "X") und sein eigener Inhalt wurde seit dem letzten Request verändert, gibt der Controller seinen kompletten Inhalt aus und ruft eingebettete Komponenten im "complete"-Modus auf

  • Wurde der Controller im "differential"-Modus aufgerufen (differential = "X") und sein eigener Inhalt wurde seit dem letzten Request nicht verändert, gibt der Controller seinen eigenen Inhalt nicht aus und ruft eingebettete Komponenten im "differential"-Modus auf. Zusätzlich gibt der Controller außerhalb des die Komponente einschießenden div-Tag"s einen JavaScript-Block zum Ersetzen des Inhalts aus (CL_DPR_BSP_APPLICATION stellt dazu die Methode WRITE_REPLACE_SCRIPT zur Verfügung).

Eine Komponente, die den Austausch geänderter Seiteninhalte unterstützt kann jederzeit von einer anderen Komponente, die den Mechanismus nicht unterstützt, im "complete"-Mode (ist Default, wenn der Parameter "differential" nicht übergeben wird) aufgerufen werden.

Umgekehrt kann auch eine Komponente, die den Austausch geänderter Seiteninhalte nicht unterstützt, von einer Komponente, die den Mechanismus unterstützt, aufgerufen werden. Sofern die aufrufende Komponente über Änderungen der aufgerufenen Komponente nicht informiert ist, muß sie davon ausgehen, dass die aufgerufene Komponente geändert wurde. Letztendlich bedeutet das, dass sich die aufrufende Komponente dann immer so verhalten muß, als ob ihr eigener Inhalt verändert wurde und den kompletten Inhalt (ggf. mit Replace Script) ausgeben muß.






SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   Vendor Master (General Section)  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 5925 Date: 20240426 Time: 053658     sap01-206 ( 101 ms )