Skip to content

it-agile/isha7800

Repository files navigation

GuV-Reporting System (ISHA7800)

Übersicht

Das ISHA7800-System ist eine COBOL-Anwendung zur Erstellung von GuV-Berichten (Gewinn- und Verlustrechnung). Das System importiert Finanzdaten und generiert wahlweise monats- oder mitarbeiterbasierte Berichte.

Schnelleinstieg für neue Mitarbeiter

Wichtigste Dokumentation

  1. Quick-Start Guide - Erste Schritte und Einrichtung
  2. Architektur-Übersicht - Systemarchitektur und Datenfluss
  3. Modul-Referenz - Detaillierte Beschreibung aller Programme
  4. Entwickler-Leitfaden - Code-Konventionen und Best Practices

Systemübersicht

                           ISHA7800 (Hauptprogramm)
                                    |
                    +---------------+----------------+
                    |                                |
                ISUD7805                         ISUD7810
           (Control Parser)                   (Daten-Import)
                    |                                |
                    v                                v
            Steuerungsdaten                   GUV-TABELLE
                    |                                |
                    +--------+-----------------------+
                             |
              +--------------+--------------+
              |                             |
         MONATLICH                    MITARBEITER
              |                             |
         ISUD7820                       ISUD7821
    (Monats-Berechnung)          (Mitarbeiter-Berechnung)
              |                             |
         ISUD7830                       ISUD7831
     (Monats-Export)              (Mitarbeiter-Export)

Projektstruktur

isha7800/
├── README.md                    # Diese Datei
├── CLAUDE.md                    # Claude Code Projektanweisungen
├── docs/                        # Dokumentation
│   ├── ARCHITEKTUR.md          # Architektur-Details
│   ├── MODULE.md               # Modul-Beschreibungen
│   ├── ENTWICKLER-LEITFADEN.md # Coding Standards
│   └── QUICK-START.md          # Einführung
│
├── ISHA7800.cbl                # Hauptprogramm
│
├── ISUD*.cbl                   # Subroutinen/Module
│   ├── ISUD7805.cbl           # Control-Datei Parser
│   ├── ISUD7810.cbl           # GuV-Daten Importer
│   ├── ISUD7820.cbl           # Monats-Berechnung
│   ├── ISUD7821.cbl           # Mitarbeiter-Berechnung
│   ├── ISUD7830.cbl           # Monats-Export
│   ├── ISUD7831.cbl           # Mitarbeiter-Export
│   └── ISUD7890.cbl           # Assertions/Testing
│
├── ISS*                        # Copybooks (Datenstrukturen)
│   ├── ISS7805                # STEUER (Steuerungsdaten)
│   ├── ISS7810                # GUV (Import-Tabelle)
│   ├── ISS7820                # EXPORT-MONAT
│   ├── ISS7821                # EXPORT-MITARBEITER
│   └── ISS7890                # ASSERT (Test-Framework)
│
└── ISHA78*.cbl                 # Test- und Kata-Programme
    ├── ISHA7805.cbl           # Unit-Tests für ISUD7805
    ├── ISHA7810.cbl           # Unit-Tests für ISUD7810
    ├── ISHA7820.cbl           # Unit-Tests für ISUD7820
    ├── ISHA7821.cbl           # Unit-Tests für ISUD7821
    └── ISHA7851-7854.cbl      # Trainings-Kata Programme

Programm-Typen

ISHA* - Batch/Hauptprogramme

Ausführbare Programme mit Entry-Point. Diese können eigenständig aufgerufen werden.

ISUD* - Subroutinen/Module

Wiederverwendbare Module (TYPE='MOD'), die von anderen Programmen aufgerufen werden.

ISS* - Copybooks

Datenstruktur-Definitionen mit Parameter-Substitution.

Kern-Datenstrukturen

Copybook Zweck Hauptfelder
ISS7805 Steuerungsdaten STEUER-INPUT, STEUER-DESC
ISS7810 GuV-Rohdaten GUV-TABELLE (bis 9999 Einträge)
ISS7820 Monats-Export EXPORT-MONAT-TABELLE (12 Monate)
ISS7821 Mitarbeiter-Export EXPORT-MITARBEITER-TABELLE (99 Mitarbeiter)
ISS7890 Test-Assertions ASSERT-* Felder für Unit-Tests

Datenfluss im Überblick

  1. Steuerung: EXPRTART-Datei wird gelesen → bestimmt Export-Typ
  2. Import: ROHDATEN-Datei wird in GUV-TABELLE eingelesen (bis 9999 Zeilen)
  3. Verarbeitung: Je nach Steuerung:
    • Monatlich: Aggregation nach 12 Monaten (MONAT 01-12)
    • Mitarbeiter: Aggregation nach Mitarbeiter-IDs (bis 99 Mitarbeiter)
  4. Export: Formatierte Ausgabe des jeweiligen Berichts

Besondere COBOL-Syntax

Dieses Projekt verwendet Präprozessor-Direktiven (markiert mit + in Spalte 7):

+ PGMDCL        Programm-Deklaration mit Metadaten
+ FC            File Control Section
+ FS            File Section
+ WSS           Working Storage Section
+ LS            Linkage Section
+ COPY          Copybook mit Parameter-Substitution
+ CALLD         Subroutinen-Aufruf mit erweiterten Parametern
+ DISPLY        Display mit String-Konkatenation
+ LOGIC         Beginn Procedure Division

Copybook Parameter-Substitution

Copybooks verwenden "X-" als Platzhalter für Präfixe:

+ COPY ISS7805,STEUER;

Alle "X-" Vorkommen werden durch STEUER- ersetzt:

  • "X-"DATENSTEUER-DATEN
  • "X-"INPUTSTEUER-INPUT
  • "X-"DESCSTEUER-DESC

Testing

Das Projekt verfügt über ein eigenes Test-Framework:

  • Assertion-Bibliothek: ISUD7890 (ISS7890)
  • Unit-Test-Programme: ISHA7805, ISHA7810, ISHA7820, ISHA7821
  • Test-Struktur: Arrange-Act-Assert Pattern
  • Return-Code: Failed Tests setzen RETURN-CODE auf 12

Nächste Schritte

  1. Lesen Sie den Quick-Start Guide für die ersten Schritte
  2. Studieren Sie die Architektur für ein tieferes Verständnis
  3. Konsultieren Sie die Modul-Referenz für Details zu einzelnen Komponenten
  4. Beachten Sie den Entwickler-Leitfaden beim Schreiben von Code

Autoren

Bohlmann/Botzet (Original-Entwicklung)

Lizenz

Internes Projekt

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages