Ansicht Dokumentation

Wir wachsen stetig und suchen neue Kollegen (m/w/d)! Schauen Sie sich unsere offenen Position an, um eine passende Herausforderung zu finden!

CL_PRP_BSP_C_ROLEPERIODICRULES - PLM Development Projects - BSP Controller Applikationskopf

CL_PRP_BSP_C_ROLEPERIODICRULES - PLM Development Projects - BSP Controller Applikationskopf

SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   CL_GUI_FRONTEND_SERVICES - Frontend Services  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Dieser Kontroller bildet zusammen mit der BSP-Seite StaffSearchDetailProject.bsp eine UI-Komponente. Alle aktuellen und historischen Projektean der eine Ressource (Geschäftspartner) beteiligt ist oder war werden aufgelistet.

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.

Der Kontroller besitzt 2 Modi (Attribut mv_duration_mode), welche steuern, ob ein manueller Zeitraum oder ein vordefinierter Zeitraum für die Anzeige der Projekte ausgewählt werden kann.

DEFAULT: ein DropDown mit vordefinierten Werten für den Zeitraum wird ausgegeben.

MANUAL: ein Eingabefeld zur Angabe eines Startdatums des Zeitraums wird angezeigt. Der Zeitraum geht bis zum Maximum von Projektende, Rollenende und aktuellem Datum.

Methodendefinitionen DO_INIT (redefiniert)

Die vordefinierten Zeiträume für die Anzeige der Projekte werden erzeigt.

DO_REQUEST (redefiniert)

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

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)

Hier wird der manuell eingegeben Startzeitpunkt für den anzuzeigenen Zeitraum ausgelesen.

Nur im Modus MANUAL relevant.

DO_HANDLE_EVENT (redefiniert)

Hier werden die Events, die auf der zugehörigen View ausgelöst werden, verarbeitert.

GET_DATA

Hier werden die Projekte der Ressource aus der Business-Logik geladen und für die Darstellung formatiert.

GET_DATE

Überprüft das manuell eingegebene Startdatum für den anzuzeigenen Zeitraum. Bei Auftreten eines Fehlers wird eine Fehlermeldung ausgegeben.

GET_MAX_DATE

Liefert das Maximum von Datümern. Wird hier verwendet um das Maximum zum Maximum von Projektende, Rollenende und dem aktuellen Datum zu berechnen.

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ß.






Addresses (Business Address Services)   General Material Data  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 5871 Date: 20210516 Time: 174111     sap01-206 ( 96 ms )