Ereignis - Abonnement Arbeitsmappe

Aus ArcFlow Wiki
Zur Navigation springen Zur Suche springen
Diese Seite enthält Bearbeitungen, die nicht zum Übersetzen freigegeben sind.
 Ereignis - Abonnement Arbeitsmappe
Aufruf eines Skripts vor dem Versenden einer Abonnementbenachrichtigung beim Anlegen, Ändern oder Löschen einer Arbeitsmappe
Variablen gAfAboArea alpha(10) Bereich für den die Abonnementnachricht ausgelöst wurde (siehe unten)
gAfAboAction alpha(10) auslösende Aktion (siehe unten)
gAfAbo* variable Feldpuffer des Abonnements
gAfAbm* variable Feldpuffer der Arbeitsmappe
gAfArc* variable Feldpuffer des Archivs
Resultat true Abonnementbenachrichtigung wird gesendet
false Abonnementbenachrichtigung wird nicht gesendet
Siehe

Liste aller Ereignisse, Ereignis - Abonnement Archiv, Ereignis - Abonnement Anhangdatei

Ist in den Einstellungen ein Skript eingetragen, wird es immer vor dem Versenden bzw. vor dem Anzeigen einer Abonnementbenachrichtigung ausgeführt.

Das eingetragene Skript wird auch dann ausgeführt, wenn keine Benutzerinteraktion möglich ist (zum Beispiel, wenn eine Arbeitsmappe durch ein Skript vom ArcFlow Jobserver erstellt wird). Innerhalb des Skriptes dürfen daher keine Benutzerabfragen verwendet werden.

Die Aktion, die zum Auslösen der Abonnementbenachrichtigung geführt hat, wird in der globalen Variablen gAfAboAction übergeben und kann mit folgenden Konstanten verglichen werden:

Konstante Wert Beschreibung
sAfActNew 'NEW' Arbeitsmappe oder Archiv wurde angelegt
sAfActEdit 'EDIT' Arbeitsmappe oder Archiv wurde geändert
sAfActDelete 'DELETE' Arbeitsmappe oder Archiv wurde gelöscht
sAfActRetrieve 'RETRIEVE' Arbeitsmappe oder Archiv wurde aus dem Papierkorb wieder hergestellt

In der Variablen gAfAboArea wird der Bereich angegeben, in dem die Aktion stattgefunden hat. Der Inhalt der Variablen kann mit folgenden Konstaten verglichen werden:

Konstante Wert Beschreibung
sAfAboTypeAbmHead 'ABMHEAD' Änderung in den Stammdaten der Arbeitsmappe
sAfAboTypeAbmContent 'ABMCONT' Änderung im Inhalt der Arbeitsmappe
sAfAboTypeAbmLink 'ABMLNK' Änderung einer Arbeitsmappenverknüpfung
sAfAboTypeArcAllocation 'ARCALLOC' Zuweisung eines Archivs zu der Arbeitsmappe

Das Abonnement ist bei einer Arbeitsmappe definiert. Die Informationen zu der Arbeitsmappe können in folgenden globalen Variablen abgefragt werden:

gAFAboObject alpha(30) Nummer der auslösenden Arbeitsmappe
gAFAboObjectType word Objekt-Typ (sAfAboTypeABM, sAfAboTypeARC oder sAfAboTypeANH)
gAFAboSendType word Versendetyp des Abonnements (sAfSendTypeMail Versenden per Mail, sAfSendTypeDlg Anzeige als Dialog)
gAFAboName alpha(250) Name des Abonnements
gAFAboNote alpha(4096) Beschreibung des Abonnements
gAFAboNotifications int Benachrichtigung (siehe unten)
gAFAboOwner alpha(25) Der Benutzer, der das Abonnement erstellt hat

Der Inhalt der variablen gAfAboNotifications kann mit folgenden Konstanten verglichen werden:

Konstante Wert
sAfAboAnhCreate 0x00000001
sAfAboAnhEdit 0x00000002
sAfAboAnhDelete 0x00000004
sAfAboArcCreate 0x00000010
sAfAboArcEdit 0x00000020
sAfAboArcDelete 0x00000040
sAfAboAbmCreate 0x00000100
sAfAboAbmEdit 0x00000200
sAfAboAbmDelete 0x00000400
sAfAboAbmSelfEdit 0x00002000
sAfAboAbmSelfDelete 0x00004000
sAfAboAbmLinkCreate 0x00010000
sAfAboAbmLinkEdit 0x00020000
sAfAboAbmLinkDelete 0x00040000

Der Wert setzt sich aus einem oder mehreren ODER-verknüpften Werten zusammen und gibt an, bei welchen Ereignissen eine Abonnement-Benachrichtigung ausgelöst werden soll. Mit der Bedingung (gAfAboNotifications & sAfAboAbmDelete > 0) kann geprüft werden, ob das Abonnement ausgelöst wird, wenn eine Arbeitsmappe gelöscht wurde.

Wird eine Arbeitsmappe angelegt oder geändert, werden die Informationen zu der Arbeitsmappe in folgenden Variablen übergeben:

gAFAbmId int Id der Arbeitsmappe
gAFAbmParentId int Id der Elternarbeitsmappe
gAFAbmName alpha(250) Name der Arbeitsmappe
gAFAbmDescr alpha(250) Beschreibung der Arbeitsmappe
gAFAbmCloseDate date Abschlussdatum der Arbeitsmappe
gAFAbmPartitioning int Unterteilung der Arbeitsmappe
gAFAbmType int Typ der Arbeitsmappe

Ist ein Archiv für das Auslösen eines Abonnements verantwortlich, werden die Informationen zu dem Archiv in folgenden Variablen übergeben:

Archiv-Informationen

gAfArcNr alpha(12) Archivnummer
gAfArcDocDate date Dokumentdatum
gAfArcScanDate date Scandatum
gAfArcCreateModul alpha(80) Erstellt durch Modul
gAfArcTypeString alpha(250) Archivtyp
gAfArcFilesCnt int Anzahl der Anhangdateien
gAfArcScanFilesCnt int Anzahl der Scan-Dateien
gAfArcFileSize int Dateigröße
gAfArcStorageYears int Aufbewahrungsfrist
gAfArcCaption alpha(250) Bezeichnung
gAfArcLocation alpha(250) Standort
gAfArcColor int Farbe zur Darstellung im Arbeitsmappenbaum

Über den Rückgabewert des Skripts kann entschieden werden, ob die Benachrichtigung versendet (true) oder nicht versendet (false) werden soll.

Beispiel:

main() : logic;

local
{
  tReturn : logic;
}

{
  switch (gAfAboAction)
  {
    case sAfActNew :
    {
      if (gAfAboArea = sAfAboTypeAbmContent)
      {
        // folder or archive created
        ...
        tReturn # true;
      }
    }
    ...
    
    default :
    {
      // error: unknown action
      ...
      tReturn # false;
    }
  }
  return(tReturn);
}