Zu Content springen
  • Es gibt keine Vorschläge, da das Suchfeld leer ist.

Workflow

Beschreibt den Ablauf und die Status des Kreditoren Workflows, welcher für sämtliche Rechnungen und Gutschriften angewendet wird.

Status und deren Bedeutung

# Bezeichnung Beschreibung Aktion
10 Neu Die Rechnung wurde neu erfasst und befindet sich noch nicht im Umlauf zur Freigabe. Daten prüfen und ergänzen
15 Liegenschaft zuordnen Zur Rechnung wurde eine Liegenschaft zugewiesen, aber die Rechnung wurde noch nicht in den Umlauf geschickt. keine, da automatische Fortsetzung / Workflow manuell starten
20 Workflow Benutzer zuweisen Es sind noch nicht alle erforderlichen Visumspfade mit Benutzern zugewiesen. Die Rechnung befindet sich noch nicht im Umlauf. Benutzer zuweisen und Workflow starten
25 Neustart nach Zurückgewiesen Die Rechnung befindet sich im Neustart für den Visierungsumlafu nach einer Zurückweisung. keine, da automatische Fortsetzung
30 Bereit zur Visierung Die Rechnung ist bereit für das 1. Visum. Freigabe/Zurückweisung Visum 1
41 Visum 1 freigegeben Das 1. Visum wurde erteilt. Die Rechnung ist bereit für das 2. Visum. Freigabe/Zurückweisung Visum 2
42 Visum 2 freigegeben Das 2. Visum wurde erteilt. Die Rechnung ist bereit für das 3. Visum. Freigabe/Zurückweisung Visum 3
43 Visum 3 freigegeben Das 3. Visum wurde erteilt. keine, da automatische Fortsetzung
49 Vollvisiert Die Rechnung ist vollvisiert. Alle erforderlichen Freigabe Visa sind erteilt. keine, da automatische Fortsetzung
50 an ERP gesendet Die Rechnung wurde an das ERP gesendet. keine, da automatische Fortsetzung
60 in ERP importiert Die Rechnung ist erfolgreich im ERP angekommen und kann dort nun weiterbearbeitet (importiert, bezahlt) werden. Import im ERP, Bezahlung im ERP
90 Bezahlt Die Rechnung wurde im ERP bezahlt. keine, da Prozess beendet
95 Zurückgewiesen Die Rechnung wurde im Visierungsprozess zurückgewiesen. Workflow abbrechen oder erneut starten
99 Abgebrochen Der Prozess wurde abgebrochen keine, da Prozess beendet

Flowchart - Prozessdarstellung

graph TD
  %% Start & Initialisierung
  Start((Start)) --> Initialisierung[Initialisierung <br/><i>Status: 10 Neu</i>]

  %% Origin Switch
  Initialisierung --> SW_Origin{manuell/automatisch}
  SW_Origin -- "automatisch" --> SW_FoundRE
  SW_Origin -- "manuell" --> DataExt[QR Code Datenextrakt]
  DataExt --> DataMap[Daten zuweisen]

  SW_FoundRE{Liegenschaft gefunden?}
  DataMap --> SW_FoundRE

  %% Real Estate Handling
  SW_FoundRE -- "nein" --> SW_Manual{ist Herkunft manuell?}
  SW_Manual -- "nein" --> Notify[Info an zentrale Mail]
  SW_Manual -- "ja" --> AssignRE[manuelle Datenerfassung <br/><i>User Interaktion erforderlich</i>]
  Notify --> AssignRE
  AssignRE --> GetREID[Liegenschaft gesetzt]
  GetREID --> SetREID2[Status setzen <br/><i>Status: 15 Liegenschaft zuordnen</i>]
  SetREID2 --> VisaInfo

  SW_FoundRE -- "Ja" --> VisaInfo[Anzahl erforderliche Visastufen ermitteln anhand Liegenschaft]

  %% Visa & User Assignment
  VisaInfo --> AssignUsers[Benutzer zu Visa zuordnen]
  AssignUsers --> SW_UsersOK{Sind zu allen erforderlichen Visastufen Benutzer zugewiesen?}

  SW_UsersOK -- "nein" --> SetState20[Status setzen <br/><i>Status: 20 Benutzer zuweisen</i>]
  SetState20 --> ManualAssign[Benutzer manuell zuweisen <br/><i>User Interaktion erforderlich</i>]
  ManualAssign --> StartLoop

  SW_UsersOK -- "Ja" --> StartLoop

  %% Loop Section
  subgraph LoopTask [Visa Workflow]

    %% Start und Initialisierung
    StartLoop((Starte Visierung)) --> SetStateReady[Status setzen <br/><i>Status: 30 Bereit zur Visierung</i>]

    %% --- VISA 1 PROZESS ---
    SetStateReady --> NotifyV1[Benutzer Visum 1 informieren]
    NotifyV1 --> SetUmsV1[Freigabe oder Zurückweisung durch Visum 1]
    SetUmsV1 --> SwitchV1Confirm{Rechnung freigegeben?}

    %% Visa 1 Pfad
    SwitchV1Confirm -- "ja" --> SetOkV1[Status setzen<br/><i>Status: 41 Visum 1 freigegeben</i>]
    SetOkV1 --> SwitchV2Needed{Visum 2 nötig?}
    SwitchV1Confirm -- "nein" --> Rejected[Status setzen <br/><i>Status: 95 Zurückgewiesen</i>]

    %% --- VISA 2 PROZESS ---
    SwitchV2Needed -- "ja" --> NotifyV2[Benutzer Visum 2 informieren]
    NotifyV2 --> SetUmsV2[Freigabe oder Zurückweisung durch Visum 2]
    SetUmsV2 --> SwitchV2Confirm{Rechnung freigegeben?}
    SwitchV2Needed -- "nein" --> SetStateFullySigned[Status setzen <br/><i>Status: 49 Vollvisiert</i>]

    %% Visa 2 Pfad
    SwitchV2Confirm -- "ja" --> SetOkV2[Status setzen<br/><i>Status: 42 Visum 2 freigegeben</i>]
    SetOkV2 --> SwitchV3Needed{Visum 3 nötig?}
    SwitchV2Confirm -- "Nein" --> Rejected

    %% --- VISA 3 PROZESS ---
    SwitchV3Needed -- "ja" --> NotifyV3[Benutzer Visum 3 informieren]
    NotifyV3 --> SetUmsV3[Freigabe oder Zurückweisung durch Visum 3]
    SetUmsV3 --> SwitchV3Confirm{Rechnung freigegeben?}
    SwitchV3Needed -- "Nein" --> SetStateFullySigned

    %% Visa 3 Pfad
    SwitchV3Confirm -- "ja" --> SetOkV3[Status setzen<br/><i>Status: 43 Visum 3 freigegeben</i>]
    SetOkV3 --> SetStateFullySigned
    SwitchV3Confirm -- "Nein" --> Rejected[Status setzen <br/><i>Status: 95 Zurückgewiesen</i>]

    %% Zurückweisung
    Rejected -->  NotifyRejected[Benutzer Zurückweisen an informieren]
    NotifyRejected--> SwitchRejectAction{neu starten oder abbrechen?<br/><i>User Interaktion erforderlich</i>}
    SwitchRejectAction -- "neu starten" --> SetVar1[Alle Visa Stempel entfernen]
    SetVar1 --> StartLoop

    %% Ende Subprozess
    SetStateFullySigned --> EndLoop((Ende Visumsprozess))
  end

  %%Prozess abbrechen
  SwitchRejectAction -- "abbrechen" --> ProcessCancel[Status setzen <br/><i>Status: 99 Abgebrochen</i>]
  ProcessCancel --> ProcessCancelled((Prozess abgebrochen))

  %% Send to ERP
  EndLoop --> SendERP[Übermittlung an ERP]
  SendERP --> SetStateSentToERP[Status setzen <br/><i>Status: 50 An ERP gesendet</i>]
  SetStateSentToERP --> RecieveERP[Empfang ERP<br><i>ERP meldet erfolgreichen Empfang</i>]
  RecieveERP --> SetStateRecievedERP[Status setzen <br/><i>Status: 60 in ERP technisch importiert</i>]
  SetStateRecievedERP --> StartImport((Start Import))

  %% Import und Bezahlen ERP
  subgraph ERPProcess [Verarbeitung im ERP]
    StartImport --> InvoiceImport[Rechnung importieren <br><i>manuell oder automatisch durch Job</i>]
    InvoiceImport --> InvoiceCancel{Rechnung abbrechen?<i>Entscheidung durch User</i>}
    InvoiceCancel -- "nein" --> InvoicePay[Rechnung bezahlen]
    InvoicePay --> InvoicePaid[Rechnung ist bezahlt]
    InvoicePaid --> EndERPProcess((Ende ERP Verarbeitung))
  end

  InvoiceCancel -- "ja" --> ProcessCancel
  EndERPProcess --> SetStatePaid[Status setzen <br/><i>Status: 90 Rechnung bezahlt</i>]
  SetStatePaid --> End((Ende))

  %% Styling
  classDef StateChange fill:#FFED29,color:#333
  class Initialisierung,SetREID2,SetState20,SetStateReady,SetOkV1,Rejected,SetStateFullySigned,SetOkV2,SetOkV3,ProcessCancel,SetStateRecievedERP,SetStateSentToERP,SetStatePaid StateChange

  classDef UserInteraction fill:#1C3FD9,color:#FFFFFF
  class AssignRE,ManualAssign,SwitchRejectAction,SetUmsV3,SetUmsV2,SetUmsV1,InvoicePay,InvoiceImport UserInteraction

  style ProcessCancelled fill:#FF1B00,color:#FFFFFF
  style End fill:#11B507,color:#FFFFFF
  style Start fill:#000000,color:#FFFFFF

  classDef SubGraphStart fill:#5C5C5C,color:#FFFFFF
  class StartLoop,StartImport SubGraphStart

  classDef SubGraphEnd fill:#6DAD87,color:#FFFFFF
  class EndLoop,EndERPProcess SubGraphEnd