SOG-Helpcenter Logo SOG Business - Software

Abfragen von Benutzerentscheidungen


Mit Hilfe der Klasse SOGERPBenutzerEntscheidung können Benutzerentscheidungen aus SOG ERP-Verarbeitungsfunktionen abgerufen werden.
Die Funktion ist Job geeignet, da es mehrere unterschiedliche Mechanismen gibt, die Entscheidung vorweg zu nehmen, oder die Frage über eine eigene Entscheidungslogik zu beantworten.
Innerhalb von ActiveSkin stellt SOGERPBenutzerEntscheidung eine Schnittstelle zu der bekannten Maske "vdi4" dar, über die SOG ERP üblicherweise Benutzerentscheidungen abfordert.

Verwendung in der Software:

public const string ID_ENTSCHEIDUNG_VERTRETERZUORDNUNG = "AufgabenLogik.Entscheidung.Vertreterzuordnung";

...

  SOGERPBenutzerEntscheidung entscheidung = new SOGERPBenutzerEntscheidung
  {
    IdAndHelpUrl = ID_ENTSCHEIDUNG_VERTRETERZUORDNUNG,
    Frage = Aph.FormatLog(
      "Sachbearbeiter {0} ({1}) ist als Vertreter definiert worden.\r\n\r\nMöchten Sie die Aufgabe ({2}) stattdessen diesem Sachbearbeiter zuordnen?",
        vertretenderSachbearbeiter.Name,
        vertretenderSachbearbeiter.m_id,
        _aufgabe.UniqKey),
    Kopf = Aph.FormatLog("Aufgabenvertreter gefunden"),
    Antwort1 = Aph.FormatLog("Ja ({0} zuordnen)", vertretenderSachbearbeiter.m_id),
    Antwort2 = Aph.FormatLog("Nein ({0} zuordnen)", zustaendigerSachbearbeiter.m_id),
    UniqKey = _aufgabe.UniqKey,
    CursorFieldBeiAbbruch = K_FELD_SACH_ZUSTAENDIG,
    DefaultAntwort = SOGERPBenutzerEntscheidung.K_ANTWORT_1,
    DefaultJobAntwort = SOGERPBenutzerEntscheidung.K_ANTWORT_1
  };

  vertreterZuweisen = entscheidung.GetEntscheidung() == SOGERPBenutzerEntscheidung.K_ANTWORT_1;

  if (vertreterZuweisen)
    _aufgabe.m_sach4 = zustaendigerSachbearbeiter.m_aufg_vertret;


Eigenschaften

 

 

IdAndHelpUrl

Jeder Entscheidung muss eine eindeutige ID zugewiesen werden. Über diese Id kann direkt auch ein Hilfetext zu der Entscheidung hinterlegt werden. Außerdem können Batchverarbeitungen anhand dieser Id Entscheidungen vorwegnehmen, sodass die Frage innerhalb eines Jobs immer auf eine definierte Art beantwortet werden kann. Die Id wird außerdem für ein Dictionary verwendet, in dem die Entscheidung des Benutzer gespeichert wird, wenn er in der vdi4-Maske die Checkbox "Für alle Datenelemente verwenden" setzt. Dies ist vor allem innerhalb einer Sammeländerung z.B. in einem PropertyGrid von Belang.

Frage

Frage, die dem Benutzer gestellt wird. Verwenden Sie die Platzhalterschreibweise um einen übersetzbaren Text zu hinterlegen.

Kopf

Überschrift der vdi4-Dialogbox.

Antwort1

Beschriftung des 1. Antwort-Buttons.

Antwort2

Beschriftung des 2. Antwort-Buttons (Nur die notwendigen Buttons müssen gesetzt werden).

Antwort3

Beschriftung des 3. Antwort-Buttons (Nur die notwendigen Buttons müssen gesetzt werden).

Antwort4

Beschriftung des 4. Antwort-Buttons (Nur die notwendigen Buttons müssen gesetzt werden).

UniqKey

Eindeutiger Schlüssel des Datensatzes, auf den sich die Frage bezieht. Über IdAndHelpUrl und UniqKey kann die Antwort auf die Entscheidung individuell für einzelne Datensätze vorweggenommen werden.

CursorFieldBeiAbbruch

Name des Datenfeldes, auf den der Cursor gestellt werden soll, wenn der Benutzer "Abbrechen" klickt. (Kann auch null sein)

DefaultAntwort

Antwort die gegeben werden soll, wenn der Benutzer nur "Enter" drückt.

DefaultJobAntwort

Antwort die innerhalb einer Jobverarbeitung gelten soll, wenn keine abweichende Antwort eingestellt wird.

AntwortBeiAbbruch

Antwort die gegeben werden soll, wenn der Benutzer "Abbrechen" drückt. Wird hier nichts angegeben, wirft die Verarbeitung eine Exception wenn "Abbrechen" geklickt wird.

CssClass

Design der Fragebox (Hintergrundfarbe etc.)

Beispiel:



Vorwegnehmen der Entscheidung innerhalb einer Jobverarbeitung


Über die folgende Funktion kann die Entscheidung für eine nachfolgende Verarbeitung für alle Datensätze auf Antwort "2" eingestellt werden:

  SOGERPBenutzerEntscheidung.SetEntscheidung(AufgabenLogik.ID_ENTSCHEIDUNG_VERTRETERZUORDNUNG, null, SOGERPBenutzerEntscheidung.K_ANTWORT_2);