Class WorkflowElement


  • public class WorkflowElement
    extends TaskElement

    Überschrift: WorkflowElement.

    Beschreibung: Ein Workflow.

    ACHTUNG: Diese Klasse leitet sich erst ab 8.01.000 von IndexedElement ab.

    Copyright: Copyright (c) ELO Digital Office GmbH 2007-2015

    • Constructor Summary

      Constructors 
      Constructor Description
      WorkflowElement​(Workspace workspace, UserTask task)
      Interner Konstruktor für die Klasse "WorkflowElement".
    • Method Summary

      Modifier and Type Method Description
      void confirmFlow​(int[] successorIds)
      Leitet den Workflow an die angegebenen Nachfolger weiter.
      void confirmFlow​(String name, String comment, int[] successorIds)
      Leitet den Workflow an die angegebenen Nachfolger weiter.
      boolean del()
      Löscht diesen Workflow.
      void delegateWorkflowNode​(int userId, String nodeName, String nodeComment, boolean workflowRetoure)
      Delegiert den aktiven Workflowknoten an dem angegebenen Anwender oder Gruppe.
      void delegateWorkflowNode​(String userName, String nodeName, String nodeComment, boolean workflowRetoure)
      Delegiert den aktiven Workflowknoten an dem angebenen Anwender oder Gruppe.
      ArchiveElement getArchiveElement()
      Liefert den zu der Aufgabe gehörenden Archiveintrag.
      Enumeration<ArchiveElement> getChildren()
      Liefert eine Aufzählung aller Einträge (als ArchiveElement-Objekte ArchiveDokument oder StructureElement), falls sich die Aufgabe auf einen Ordner bezieht.
      WFDiagram getDiagram()
      Liest das WFDiagramm zu diesem Workflow.
      WFDiagram getDiagramWithoutLock()
      Liest das WFDiagramm zu diesem Workflow ohne eine Sperre zu setzen.
      EditInfo getEditInfo()
      Liefert das zugehörige EditInfo-Objekt zurück.
      int getId()
      Liefert die ObjektID des Archiveintrags zurück auf den sich diese Aufgabe bezieht.
      String getName()
      Liefert die Kurzbezeichnung dieses Elements.
      WFNode[] getSuccessorsList()
      Liefert eine Liste mit den Nachfolgerknoten des aktiven Workflowknotens zurück.
      WFNode[] getSuccessorsList​(WFNode wfNode)
      Liefert eine Liste mit den Nachfolgerknoten für den übergebenen Workflowknoten zurück.
      String getWorkflowStatus()
      Liest den Wert aus dem Workflow Status Feld.
      boolean isDocument()
      Liefert true, wenn dies Aufgabe sich auf ein Dokument bezieht.
      boolean isStructure()
      Liefert true, wenn dies Aufgabe sich auf einen Ordner bezieht.
      Sord loadSord()
      Lädt die aktuelle Verschlagwortung (vom Server oder (in der Postbox) aus der zugehörigen ESW-Datei).
      void releaseWorkflowNode​(int userId)
      Gibt den aktiven Workflowknoten an dem angegebenen Anwender oder Gruppe ab.
      void releaseWorkflowNode​(String userName)
      Gibt den aktiven Workflowknoten an dem angegebenen Anwender oder Gruppe ab.
      void returnNodeToGroup()
      Gibt den angenommenen Workflowknoten an die Gruppe zurück.
      boolean saveDiagram()
      Speichert das geänderte WFDiagram und entfernt die Sperre auf dem Workflow.
      boolean setDiagram​(WFDiagram wfDiagram)
      Setzt das WFDiagramm für diesen Workflow.
      boolean setLock()
      Setzt eine Sperre auf den Workflow.
      void setNode​(int nodeId, WFNode wfNode)
      Setzt die Daten des angegebenen Workflowknotens in diesem Workflow.
      void setSord​(Sord sord)
      Setzt das angegebene SORD-Objekt als neue Verschlagwortung.
      void setWorkflowStatus​(String status)
      Setzt den Wert für das Workflow Status Feld.
      void takeWorkflowNode()
      Nimmt den aktiven Workflowknoten an.
      boolean unlock()
      Entfernt die Sperre auf diesem Workflow.
      • Methods inherited from class Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • WorkflowElement

        public WorkflowElement​(Workspace workspace,
                               UserTask task)
        Interner Konstruktor für die Klasse "WorkflowElement".
        Parameters:
        workspace - Aktueller Arbeitsbereich
        task - Index Server Objekt für eine Anwenderaufgabe
    • Method Detail

      • delegateWorkflowNode

        public void delegateWorkflowNode​(int userId,
                                         String nodeName,
                                         String nodeComment,
                                         boolean workflowRetoure)
        Delegiert den aktiven Workflowknoten an dem angegebenen Anwender oder Gruppe.
        Parameters:
        userId - AnwenderId, an dem der Workflow delegiert wird
        nodeName - Bezeichnung des aktiven Workflowknotens
        nodeComment - Kommentar des aktiven Workflowknotens
        workflowRetoure - Benachrichtigung beim Abschluß
        Since:
        7.00.004
      • delegateWorkflowNode

        public void delegateWorkflowNode​(String userName,
                                         String nodeName,
                                         String nodeComment,
                                         boolean workflowRetoure)
        Delegiert den aktiven Workflowknoten an dem angebenen Anwender oder Gruppe.
        Parameters:
        userName - Anwender/Gruppe, an dem der Workflow delegiert wird
        nodeName - Bezeichnung des aktiven Workflowknotens
        nodeComment - Kommentar des aktiven Workflowknotens
        workflowRetoure - Benachrichtigung beim Abschluß
        Since:
        7.00.004
      • takeWorkflowNode

        public void takeWorkflowNode()
                              throws Exception
        Nimmt den aktiven Workflowknoten an.
        Throws:
        Exception - Wenn der Knoten nicht angenommen werden konnte oder die Aufgabenliste nicht aktualisiert werden kann.
        Since:
        7.00.004
      • releaseWorkflowNode

        public void releaseWorkflowNode​(int userId)
                                 throws Exception
        Gibt den aktiven Workflowknoten an dem angegebenen Anwender oder Gruppe ab.
        Parameters:
        userId - AnwenderId, an dem der Knoten abgegeben wird
        Throws:
        Exception - Wenn der Workflow nicht abgegeben werden konnte.
        Since:
        7.00.004
      • releaseWorkflowNode

        public void releaseWorkflowNode​(String userName)
                                 throws Exception
        Gibt den aktiven Workflowknoten an dem angegebenen Anwender oder Gruppe ab.
        Parameters:
        userName - Anwender- oder Gruppenname, an dem der Knoten abgegeben wird
        Throws:
        Exception - Wenn der Workflow nicht abgegeben werden konnte.
        Since:
        7.00.004
      • getSuccessorsList

        public WFNode[] getSuccessorsList()
                                   throws RemoteException
        Liefert eine Liste mit den Nachfolgerknoten des aktiven Workflowknotens zurück.
        Returns:
        WFNode[] Liste mit Nachfolgerknoten
        Throws:
        RemoteException - Wenn der Workflow nicht gelesen werden konnte.
        Since:
        7.00.004
      • getSuccessorsList

        public WFNode[] getSuccessorsList​(WFNode wfNode)
                                   throws RemoteException
        Liefert eine Liste mit den Nachfolgerknoten für den übergebenen Workflowknoten zurück.
        Parameters:
        wfNode - Workflow-Knoten, dessen Nachfolgeknoten ermittelt werden sollen
        Returns:
        Liste mit Nachfolgerknoten
        Throws:
        RemoteException - Wenn der Workflow nicht gelesen und gesperrt werden konnte.
        Since:
        7.00.006
      • setWorkflowStatus

        public void setWorkflowStatus​(String status)
                               throws RemoteException
        Setzt den Wert für das Workflow Status Feld. Dieser Wert gehört zum gesamten Workflow und nicht zu diesem Element und die Änderung wird sofort gespeichert.
        Parameters:
        status - Neuer Wert
        Throws:
        RemoteException - Wenn der Workflow nicht gelesen und gesperrt werden konnte.
        Since:
        9.03.000
      • getWorkflowStatus

        public String getWorkflowStatus()
                                 throws RemoteException
        Liest den Wert aus dem Workflow Status Feld. Dieser Wert gehört zum gesamten Workflow und nicht zu diesem Element.
        Returns:
        aktueller Statuswert
        Throws:
        RemoteException - Wenn der Workflow nicht gelesen werden konnte.
        Since:
        9.03.000
      • getDiagramWithoutLock

        public WFDiagram getDiagramWithoutLock()
                                        throws RemoteException
        Liest das WFDiagramm zu diesem Workflow ohne eine Sperre zu setzen.
        Returns:
        Workflowdiagramm (Workflowdefinition)
        Throws:
        RemoteException - Wenn der Workflow nicht gelesen werden konnte.
        Since:
        10.00.000
      • getDiagram

        public WFDiagram getDiagram()
                             throws RemoteException
        Liest das WFDiagramm zu diesem Workflow. Hierbei wird eine Sperre auf den Workflow gesetzt, welche am Ende mit der Methode "unlock", "setDiagram" oder "saveDiagram" wieder entfernt werden muss.
        Returns:
        Workflowdiagramm (Workflowdefinition)
        Throws:
        RemoteException - Wenn der Workflow nicht gelesen und gesperrt werden konnte.
        Since:
        7.00.006
      • setDiagram

        public boolean setDiagram​(WFDiagram wfDiagram)
        Setzt das WFDiagramm für diesen Workflow. Dabei wird die Sperre auf den Workflow entfernt.
        Parameters:
        wfDiagram - Workflowdiagramm
        Returns:
        True wenn das Workflow-Diagramm gesetzt wurde, False bei einem Fehler
        Since:
        7.00.006
      • saveDiagram

        public boolean saveDiagram()
        Speichert das geänderte WFDiagram und entfernt die Sperre auf dem Workflow. Dies ist nach Änderungen am Diagramm welche z.B. per "setNode" vorgenommen wurden notwendig.
        Returns:
        True wenn das Diagramm gespeichert wurde, False bei einem Fehler
        Since:
        7.00.006
      • unlock

        public boolean unlock()
        Entfernt die Sperre auf diesem Workflow.
        Returns:
        True wenn die Sperre entfernt wurde oder keine Sperre vorhanden war, False wenn die Sperre nicht entfernt werden konnte
        Since:
        7.00.006
      • setLock

        public boolean setLock()
        Setzt eine Sperre auf den Workflow.
        Returns:
        True wenn die Sperre gesetzt werden konnte, False sonst
        Since:
        7.00.014
      • setNode

        public void setNode​(int nodeId,
                            WFNode wfNode)
                     throws RemoteException
        Setzt die Daten des angegebenen Workflowknotens in diesem Workflow.
        Parameters:
        nodeId - ID des Workflowknotens, welcher gesetzt werden soll
        wfNode - Workflowknoten
        Throws:
        RemoteException - Wenn der Workflow nicht gelesen und gesperrt werden konnte.
        Since:
        7.00.006
      • confirmFlow

        public void confirmFlow​(String name,
                                String comment,
                                int[] successorIds)
                         throws RemoteException
        Leitet den Workflow an die angegebenen Nachfolger weiter.
        Parameters:
        name - Name des aktiven Knotens. Bei "null" wird der Name des aktiven Knotens verwendet
        comment - Kommentar des aktiven Knotens. Bei "null" wird der Kommentar des aktiven Knotens verwendet
        successorIds - Liste mit den Ids der Nachfolgerknoten
        Throws:
        RemoteException - Wenn der Workflow nicht weitergeleitet werden konnte.
        Since:
        7.00.004
      • confirmFlow

        public void confirmFlow​(int[] successorIds)
                         throws RemoteException
        Leitet den Workflow an die angegebenen Nachfolger weiter.
        Parameters:
        successorIds - Liste mit den Ids der Nachfolgerknoten
        Throws:
        RemoteException - Wenn der Workflow nicht weitergeleitet werden konnte.
        Since:
        8.00.006
      • returnNodeToGroup

        public void returnNodeToGroup()
                               throws RemoteException
        Gibt den angenommenen Workflowknoten an die Gruppe zurück.
        Throws:
        RemoteException - Wenn der Workflow nicht abgegeben werden konnte.
        Since:
        7.00.004
      • del

        public boolean del()
                    throws Exception
        Löscht diesen Workflow.
        Specified by:
        del in class TaskElement
        Returns:
        TRUE bei Erfolg, FALSE sonst.
        Throws:
        Exception - Wenn die Aufgabe nicht gelöscht werden kann.
        Since:
        7.00.004
      • getArchiveElement

        public ArchiveElement getArchiveElement()
                                         throws Exception
        Description copied from class: TaskElement
        Liefert den zu der Aufgabe gehörenden Archiveintrag.
        Specified by:
        getArchiveElement in class TaskElement
        Returns:
        Archive-Eintrag (Dokument oder Ordner) zu dieser Aufgabe.
        Throws:
        Exception - Wenn der Arhciveintrag nicht gelesen werden kann.
      • loadSord

        public Sord loadSord()
                      throws Exception
        Description copied from class: IndexedElement
        Lädt die aktuelle Verschlagwortung (vom Server oder (in der Postbox) aus der zugehörigen ESW-Datei).
        Specified by:
        loadSord in class IndexedElement
        Returns:
        Sord
        Throws:
        Exception - Wenn die Daten nicht vom Server oder aus der ESW Datei (Postbox) gelesen werden können.
        Since:
        8.01.000
      • getEditInfo

        public EditInfo getEditInfo()
        Description copied from class: IndexedElement
        Liefert das zugehörige EditInfo-Objekt zurück.
        Specified by:
        getEditInfo in class IndexedElement
        Returns:
        EditInfo
        Since:
        8.01.000
      • setSord

        public void setSord​(Sord sord)
                     throws Exception
        Description copied from class: IndexedElement
        Setzt das angegebene SORD-Objekt als neue Verschlagwortung.
        Specified by:
        setSord in class IndexedElement
        Parameters:
        sord - Verschlagwortungsinformation
        Throws:
        Exception - Wenn die Daten nicht auf dem Server oder in die ESW Datei (Postbox) gespeichert werden können.
        Since:
        8.01.000
      • isDocument

        public boolean isDocument()
        Description copied from class: TaskElement
        Liefert true, wenn dies Aufgabe sich auf ein Dokument bezieht.
        Specified by:
        isDocument in class TaskElement
        Returns:
        TRUE, wenn es sich um ein Dokument handelt.
        Since:
        8.01.000
      • isStructure

        public boolean isStructure()
        Description copied from class: TaskElement
        Liefert true, wenn dies Aufgabe sich auf einen Ordner bezieht.
        Specified by:
        isStructure in class TaskElement
        Returns:
        TRUE, wenn es sich um einen Ordner handelt.
        Since:
        8.01.000
      • getChildren

        public Enumeration<ArchiveElement> getChildren()
        Description copied from class: TaskElement
        Liefert eine Aufzählung aller Einträge (als ArchiveElement-Objekte ArchiveDokument oder StructureElement), falls sich die Aufgabe auf einen Ordner bezieht.
        Specified by:
        getChildren in class TaskElement
        Returns:
        Aufzählung mit Unterelementen
        Since:
        8.01.000
      • getId

        public int getId()
        Description copied from class: TaskElement
        Liefert die ObjektID des Archiveintrags zurück auf den sich diese Aufgabe bezieht.
        Specified by:
        getId in class TaskElement
        Returns:
        ObjektID
        Since:
        8.01.000
      • getName

        public String getName()
                       throws Exception
        Description copied from class: IndexedElement
        Liefert die Kurzbezeichnung dieses Elements.
        Overrides:
        getName in class IndexedElement
        Returns:
        Kurzbezeichnung
        Throws:
        Exception - Wenn die Daten nicht vom Server oder aus der ESW Datei (Postbox) gelesen werden können.
        Since:
        8.01.000