Planungscode Differenz Export

Der Planungscode-Differenz Export ist eine Programmfunktion, die anhand eines fixen Zeitbereichs, der aktuell eingetragenen Planungscodes und der zuvor exportierten Planungscodes des Personals eine Differenz berechnet und diese als Text-Datei exportiert.

Dieser Export wird zum Datenaustausch mit der Lohnverrechnung beim Krankenstands-Dashboard verwendet.

Ausgangssituation

Damit der Export seine Eingabedaten sammeln kann muss er wissen,

  • welche Zeitbereich er betrachten muss.
    • Heute minus 3 Monate bis Morgen 00:00
    • Variante: Systemeinstellungen: SAP/BI Export: zukünftige Planungscodes exportieren: Heute minus 3 Monate bis in alle Zukunft
  • welche Planungscodes er exportieren muss.
    • Systemeinstellungen: SAP/BI Export: Planungscodes
  • welche Personen er berücksichtigen muss.
    • gesamtes Personal im System
    • einstellbar: Personal: SAP/BI Export: SAP/BI Export Planungscodes aktiv: Ja/Nein vererbt
  • welche Planungscodes für das einzelne Personal beim Export zuvor exportiert wurden.

Funktionsbeschreibung

Der Planungscode-Differenz Export kann sich jetzt pro Personal, zu exportierenden Planungscode und Zeitbereich die aktuelle Zeitleiste (in der Folge CURRENT) berechnen. Dann vergleicht er die berechnete Zeitleiste mit der zuvor exportierten (in der Folge PREVIOUS) für dieses Personal und diesen Planungscode.

Es gibt folgende Entscheidungsmöglichkeiten:

  • Deckungsgleiche Überschneidungen von PREVIOUS und CURRENT:
    • werden ignoriert
    • VARIANTE: werden falls sich das exportierte Bis-Datum geändert hat gelöscht und mit neuem Bis-Datum neu eingefügt, mehr unter Echtzeitkomponente
  • ansonsten: PREVIOUS wird gelöscht, CURRENT wird eingefügt.

Deckungsgleiche Überschneidungen werden weitergeschrieben, neu Eingefügte werden weitergeschrieben und bilden die Basis für den nächsten Export. Gelöschte verfallen.

Änderungen bei Planungscodes außerhalb des exportierten Zeitbereiches werden nicht berücksichtigt.

Jeder Planungscode und Zeitbereich der neu eingefügt wird bekommt eine eindeutige Nummer, um ihn beim Löschen referenzieren zu können. Bei den nachfolgenden Beispielen wird diese eindeutige Nummer aus Gründen der Einfachheit nicht berücksichtigt.

Beispiele

Zur Vereinfachung betrachten wir ein System mit einem Personal (E), einem Planungscode (K) und exportiertem Zeitbereich (Tag 0-9)

Beispiel 1: Einfacher Ablauf

Situation zum Zeitpunkt t:
Tag | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    |   |   |   |   |   |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: <leer>
Previous: E -> K -> {}
 
Situation zum Zeitpunkt t + 1:
Tag | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K | K |   |   |   |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: +;E;0-1;K
Previous: E -> K -> {[0-1]}

Situation zum Zeitpunkt t + 2:
Tag | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K | K |   |   |   |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: <leere Datei>
Previous: E -> K -> {[0-1]}

Situation zum Zeitpunkt t + 3:
Tag | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K | K |   |   | K | K | K |   |   |   |

'Export wird durchgeführt'

Ergebnis: +;E;4-6;K
Previous: E -> K -> {[0-1],[4-6]}

Situation zum Zeitpunkt t + 4:
Tag | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K | K |   |   | K | K | K | K |   |   |

'Export wird durchgeführt'

Ergebnis: -;E;4-6;K
          +;E;4-7;K
Previous: E -> K -> {[0-1],[4-7]}

Situation zum Zeitpunkt t + 5:
Tag | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K | K | K | K | K | K | K | K |   |   |

'Export wird durchgeführt'

Ergebnis: -;E,0-1;K
          -;E,4-7;K
          +;E,0-7;K
Previous: E -> K -> {[0-7]}

Situation zum Zeitpunkt t + 6:
Tag | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    |   |   |   |   |   |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: -;E;0-7;K
Previous: E -> K -> {}

Beispiel 2: Planungscodes vollständig außerhalb exportiertem Zeitraum

Situation zum Zeitpunkt t:
Tag |-3 |-2 |-1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K | K | K |   |   |   |   |   |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: <leer>
Previous: E -> K -> {}
 
Situation zum Zeitpunkt t + 1:
Tag |-3 |-2 |-1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K |   | K |   |   |   |   |   |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: <leer>
Previous: E -> K -> {}

Beispiel 3: Planungscodes teilweise außerhalb exportiertem Zeitraum

Situation zum Zeitpunkt t:
Tag |-3 |-2 |-1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K | K | K | K | K |   |   |   |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: +;E;-3-1;K
Previous: E -> K -> {[-3-1]}
 
Situation zum Zeitpunkt t + 1:
Tag |-3 |-2 |-1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K |   | K | K | K |   |   |   |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: -;E;-3-1;K
          +;E;-1-1;K
Previous: E -> K -> {[-1-1]}

Situation zum Zeitpunkt t + 1:
Tag |-3 |-2 |-1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K |   | K |   |   |   |   |   |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: -;E;-1-1;K
Previous: E -> K -> {}

Echtzeitkomponente

Diese Vorgehensweise ist zurzeit Standard.

Es wird zu jedem exportiertem Zeitbereich das exportierte Bis-Datum gespeichert. Im Normalfall ist dieses ident dem Bis-Datum des exportierten Zeitbereichs.

Manche Lohnverrechnungssyteme verlangen, Zeitbereiche die noch nicht vollständig in der Vergangenheit liegen, als offen zu exportieren. Für diese Systeme wird als exportiertes Bis-Datum der 31.12.9999 gespeichert. Ist beim betreffenden Mitarbeiter bereits eine Inaktivzeit oder ein Austritt erfasst, so wird stattdessen das Datum der letzten Stammzuteilung eingetragen.

Verlagern sich offene Zeitbereiche durch verstreichen von Zeit in die Vergangenheit, kann sich dieses Bis-Datum ohne getätigte Änderung des Planungscode ändern und eine Änderung in der Schnittstelle kann notwendig werden.

Beispiel

31.12.9999 == inf
 
Situation zum Zeitpunkt t:
Export am:        *        
Tag | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K | K | K | K | K |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: +;E;0-inf;K
Previous: E -> K -> {[0-4;inf]}

Situation zum Zeitpunkt t + 1:
Export am:                    *        
Tag | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---------------------------------------------
    | K | K | K | K | K |   |   |   |   |   |

'Export wird durchgeführt'

Ergebnis: -;E;0-inf;K
          +;E;0-4;K
Previous: E -> K -> {[0-4;4]}

Export als Datei

Interaktiv

Automatisch

SAP

Schnittstellenformat zur Kommunikation mit SAP-"PTEX2000-Schnittstellentabelle".

Trennzeichen ";" zwischen den Feldern
Feldname:             Kurzzeichen:   Beschreibung:
-----------------------------------------------------------------------------------
Mandant               MANDT          Alphanum. Bezeichnung (für jeden Mandanten wird ein eigenes Export-File erstellt)
Logisches System      LOGSYS         AWTYP + MANDT
Referenzvorgang       AWTYP          ALEX
Referenzschlüssel     AWKEY          Eindeutige ID der Export-Zeile (wird zum stornieren benötigt)
Stornokennzeichen     STOKZ          X
Personalnummer        PERNR          Alphanum. Personalnummer
Infotyp               INFTY          2001
Subtyp                SUBTY          Planungscode: Abw-Kennzeichen für Export
Gültigkeitsbeginn     BEGDA          TT.MM.JJJJ Beginn-Datum der Abwesenheit
Gültigkeitsende       ENDDA          TT.MM.JJJJ Ende-Datum der Abwesenheit (siehe Anmerkung unterhalb)

IPIS [1]

Schnittstellenfomat für IPIS Lohnverrechnung

Id-Feld                ID_FELD (29)         besteht aus: 
                                            KZ_AEND(1): Stornokennzeichen 
                                            SB(8): IPIS Mandant 1 
                                            DAT(10): Datum der Schnittstellenerzeugung
                                            ZEIT(10): Zeit der Schnittstellenerzeugung (leer)
                                            ZEIT(10): Zeit der Schnittstellenerzeugung (leer)
IPIS Mandant 2          BZ(14)              
Personalnummer          PNR(11)             in der Form "5   XXXXXXX", wobei "XXXXXXX" die 7 Zeichen lange Alphanum. Personalnummer ist
Gültigkeitsbeginn       V_DAT(8)            JJJJMMTT Beginn-Datum der Abwesenheit
Gültigkeitsende         B_DAT(8)            JJJJMMTT Ende-Datum der Abwesenheit
Planungscode            ART(max 4)          Planungscode: Abw-Kennzeichen für Export
 der Rest der Schnittstellenfelder wird leer übermittelt

Parametrierung

...

...

...


Bit Factory interne Zusatzinfos

  1. #8071 SALK: K-Schnittstelle IPIS