feat: Fortna-Extraktion nach chapters/ + Sphinx-PDF-Build
Skripte zum Befuellen der Kapitelstruktur aus dem Fortna-Rohmaterial und Aufbau eines vollstaendigen Sphinx/LaTeX-Builds (nur Code/Config/Doku, generierte RST/Bilder/PDFs und Rohmaterial via .gitignore ausgeschlossen). - lib/fortna_inventory.py: Rohmaterial scannen, Sprache+Zielkapitel+Aktion zuordnen, results/fortna_inventory.json schreiben - lib/fortna_convert_chapters.py: 5 Hauptanleitungen volltextig (Text+Bilder) konvertieren, Verzeichnislisten (index.de.rst) fuer uebrige Kapitel - lib/fortna_init_project.py: projekte/fortna/ (anlage.json, overrides, images) - lib/build_index.py: index.rst mit toctrees aus chapters/**/*.de.rst generieren - lib/extract_products.py: Symbolfont-Zeichen (PUA) auf Unicode mappen (clean_pua) - conf.py: Sphinx-Build (lualatex, babel statt polyglossia, iconpackage=none) - bin/: .bat/.sh-Wrapper fuer alle Skripte + build_pdf - doc/: Konzept-Plan (plan_fortna_extraktion.md) und lib-Skript-Uebersicht - requirements.txt: Sphinx + myst-parser ergaenzt Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
eb9237217e
commit
e7aa3b4e4b
@@ -0,0 +1,504 @@
|
||||
[ 512] .
|
||||
├── [ 512] 00_CONTENTS_NOTES-OBSAH_POZNÁMKY
|
||||
│ ├── [355K] Contens-Obsah_500592_135776_V2.1_EN-CZ.pdf
|
||||
│ └── [348K] Contens_Obsah_500592_135776_V2.1_20260311_Rev_2.pdf
|
||||
├── [ 512] 01_CERTIFICATES-CERTIFIKÁTY
|
||||
│ ├── [ 512] 01_SCHÖNENBERGER
|
||||
│ │ ├── [ 512] 01_EN_original
|
||||
│ │ │ └── [ 74K] 00_EC Declaration of Conformity_V2_EN.pdf
|
||||
│ │ └── [ 512] 02_CZ
|
||||
│ │ └── [ 76K] 00_Prohlášení o shodě ES_V2_CZ.pdf
|
||||
│ └── [ 512] 02_KONFIGURATIONSBESCHREIBUNG_CONFIG-DESCRIPTION_POPIS KONFIG
|
||||
│ ├── [ 512] 01_DE
|
||||
│ │ └── [252K] Konfigurationsbeschreibung_für_CE_V2.pdf
|
||||
│ ├── [ 512] 02_EN
|
||||
│ │ └── [249K] Configuration Description_CE_V2_EN.pdf
|
||||
│ └── [ 512] 03_CZ
|
||||
│ └── [248K] Popis konfigurace_für_CE_V2_CZ.pdf
|
||||
├── [ 512] 02_INSTRUCTIONS-NÁVOD_K_POUŽITÍ
|
||||
│ ├── [ 512] 01_DE_original
|
||||
│ │ ├── [5.5M] 01_BETRIEBSANLEITUNG_500592_V2.3.pdf
|
||||
│ │ ├── [5.5M] 02_WARTUNGSANLEITUNG_500592_V2.2.pdf
|
||||
│ │ ├── [7.4M] 03_FUNKTION_STEUERUNG_ILS_500592_V2.1.pdf
|
||||
│ │ ├── [4.3M] 04_FUNKTION_STEUERUNG_OMNIFLO_500592_V1.0.pdf
|
||||
│ │ └── [2.5M] 05_FUNKTION_STEUERUNG_LoadingLoop_500592_V2.2.pdf
|
||||
│ ├── [ 512] 02_EN
|
||||
│ │ └── [2.5M] 05_FUNKTION_CONTROL_LoadingLoop_500592_V2.2_EN.pdf
|
||||
│ └── [ 512] 03_CZ
|
||||
│ ├── [5.4M] 01_NÁVOD_K_POUŽÍVÁNÍ_500592_135776_V2.3_CZ.pdf
|
||||
│ ├── [5.5M] 02_NÁVOD_K_ÚDRŽBĚ_500592_135776_V2.2_CZ.pdf
|
||||
│ ├── [7.5M] 03_FUNKCE_ŘÍZENÍ_ILS_500592_V2.1_CZ.pdf
|
||||
│ └── [4.8M] 04_ŘÍZENÍ_FUNKCÍ_OMNIFLO_500592_V1.0._CZ.pdf
|
||||
├── [ 512] 03_SPARE_PARTS-NÁHRADNÍ_DÍLY
|
||||
│ └── [3.3M] 01_SPARE_PARTS_500592_EN_V2.1.pdf
|
||||
├── [ 512] 04_TECHNICAL_DOC-TECHNICKÉ_DOKUMENTY
|
||||
│ ├── [ 512] 01_LAYOUT-DISPOZICE
|
||||
│ │ ├── [ 512] 01_MECHANICAL-MECHANICKÝ
|
||||
│ │ │ ├── [ 512] 01_EN_original
|
||||
│ │ │ │ ├── [196M] 01_500592_10_5.14_Layout_V2.1_EN.pdf
|
||||
│ │ │ │ └── [ 37M] 02_500592_10_5.14_Bereiche_V2.1_EN.pdf
|
||||
│ │ │ └── [ 512] 02_CZ
|
||||
│ │ │ ├── [196M] 01_500592_10_5.14_dispozice_V2.1_CZ.pdf
|
||||
│ │ │ └── [ 36M] 02_500592_10_5.14_oblasti_V2.1_CZ.pdf
|
||||
│ │ └── [ 512] 02_ELECTRICAL-ELEKTRIKA
|
||||
│ │ ├── [ 512] 01_EN_original
|
||||
│ │ │ ├── [3.0M] 01_ST500592_10_5.14_Omniflo-AMR+Highway-(ST6)-[EN].pdf
|
||||
│ │ │ ├── [2.4M] 02_ST500592_10_5.14_Omniflo-Outbound+Highway-(ST7)-[EN].pdf
|
||||
│ │ │ ├── [2.1M] 03_ST500592_10_5-14_ILS-AMR-ILS (ST4)-[EN].pdf
|
||||
│ │ │ ├── [2.3M] 04_ST500592_10_5-14_ILS-F2H-Workstation (ST5)-[EN].pdf
|
||||
│ │ │ ├── [1.8M] 05_ST500592_10_5-14_ILS-Highway (ST1-ST3)-[EN].pdf
|
||||
│ │ │ ├── [4.6M] 06_ST500592_10_5-14_ILS-Inbound level 0 (ST1)-[EN].pdf
|
||||
│ │ │ ├── [5.6M] 07_ST500592_10_5-14_ILS-Storage Level 1 (ST2)-[EN].pdf
|
||||
│ │ │ └── [5.4M] 08_ST500592_10_5-14_ILS-Storage level 2 (ST3)-[EN].pdf
|
||||
│ │ └── [ 512] 02_CZ
|
||||
│ │ ├── [3.7M] 01_ST500592_10_5.14_Omniflo_CZ-AMR+Highway(ST6)-[CZ].pdf
|
||||
│ │ ├── [2.4M] 02_ST500592_10_5.14_Omniflo_CZ-Outbound+Highway (ST7)-[CZ].pdf
|
||||
│ │ ├── [5.4M] 03_ST500592_10_5-14_ILS_CZ-Storage level 2 (ST3)-[CZ].pdf
|
||||
│ │ ├── [1.8M] 04_ST500592_10_5-14_ILS_CZ-AMR-ILS (ST4)-[CZ].pdf
|
||||
│ │ ├── [1.9M] 05_ST500592_10_5-14_ILS_CZ-F2H-Workstation (ST5)-[CZ].pdf
|
||||
│ │ ├── [1.4M] 06_ST500592_10_5-14_ILS_CZ-Highway (ST1-ST3)-[CZ].pdf
|
||||
│ │ ├── [2.7M] 07_ST500592_10_5-14_ILS_CZ-Inbound level 0 (ST1)-[CZ].pdf
|
||||
│ │ └── [6.0M] 08_ST500592_10_5-14_ILS_CZ-Storage Level 1 (ST2)-[CZ].pdf
|
||||
│ ├── [ 512] 02_AREA_STOP_ZASTAVENI_OBLASTI
|
||||
│ │ ├── [ 512] 02_CZ
|
||||
│ │ │ └── [ 22M] 01_ES500592_10_5-14_ILS-OF_Zastavení oblasti_cpl-[CZ].pdf
|
||||
│ │ └── [ 512] 1_EN_original
|
||||
│ │ └── [ 23M] 01_ES500592_10_5-14_ILS-OF-Area-Stop-cpl.-[EN].pdf
|
||||
│ ├── [ 512] 03_EMERGENCY_STOP-NOUZOVÉ_ZASTAVENÍ
|
||||
│ │ ├── [ 512] 01_EMERGENCY_STOP_NOUZOVE_ZASTAVENI
|
||||
│ │ │ ├── [ 512] 01_EN_original
|
||||
│ │ │ │ └── [ 30M] 01_ES500592_10_5-14_ILS-OF_cpl.-E-Stop-[EN].pdf
|
||||
│ │ │ └── [ 512] 02_CZ
|
||||
│ │ │ └── [ 26M] 01_ES500592_10_5-14_ILS-OF-cpl._NV-[CZ].pdf
|
||||
│ │ └── [ 512] 02_EMERGENCY_STOP_MATRIX
|
||||
│ │ └── [837K] 01_Emergency_Stop_Matrix_V1.5_20260213-[EN].pdf
|
||||
│ ├── [ 512] 04_DIAGRAMS-SCHÉMATA
|
||||
│ │ ├── [ 512] 01_EN_original
|
||||
│ │ │ ├── [ 32M] 01_Circuit diagrams_Controlarea 1_EN_Update_20260416.pdf
|
||||
│ │ │ ├── [ 94M] 02_Circuit diagrams_Controlarea 2_EN_Update_20260416.pdf
|
||||
│ │ │ ├── [ 98M] 03_Circuit diagrams_Controlarea 3_EN_Update_20260416.pdf
|
||||
│ │ │ ├── [ 17M] 04_Circuit diagrams_Controlarea 4_EN_Update_20260416.pdf
|
||||
│ │ │ ├── [ 18M] 05_Circuit diagrams_Controlarea 5_EN_Update_20260416.pdf
|
||||
│ │ │ ├── [ 39M] 06_Circuit diagrams_Controlarea 6_EN_Update_20260416.pdf
|
||||
│ │ │ └── [ 58M] 07_Circuit diagrams_Controlarea 7_EN_Update_20260416.pdf
|
||||
│ │ └── [ 512] 02_CZ
|
||||
│ │ ├── [ 32M] 01_Schéma zapojení_Ovládací oblast 1_CZ_Aktualizace_20260416.pdf
|
||||
│ │ ├── [ 93M] 02_Schéma zapojení_Ovládací oblast 2_CZ_Aktualizace_20260416.pdf
|
||||
│ │ ├── [ 96M] 03_Schéma zapojení_Ovládací oblast 3_CZ_Aktualizace_20260416.pdf
|
||||
│ │ ├── [ 17M] 04_Schéma zapojení_Ovládací oblast 4_CZ_Aktualizace_20260416.pdf
|
||||
│ │ ├── [ 18M] 05_Schéma zapojení_Ovládací oblast 5_CZ_Aktualizace_20260416.pdf
|
||||
│ │ ├── [ 39M] 06_Schéma zapojení_Ovládací oblast 6_CZ_Aktualizace_20260416.pdf
|
||||
│ │ └── [ 58M] 07_Schéma zapojení_Ovládací oblast 7_CZ_Aktualizace_20260416.pdf
|
||||
│ └── [ 512] 05_REPORTS-ZPRÁVY
|
||||
│ ├── [ 512] 01_Protokoll_Wiederanlauf_20260227
|
||||
│ │ └── [149K] 01_Schutz_gegen_automatischen_Wiederanlauf_V1.1.pdf
|
||||
│ ├── [ 512] 02_Prüfung_Drehrichtung_Asyncronmotoren_20260227
|
||||
│ │ └── [153K] 01_Drehrichtung_Asynchronmotoren_20260420.pdf
|
||||
│ └── [ 512] 03_Erprobung_Anzeige_Bediengeräte_20260227
|
||||
│ └── [161K] 01_Erprobung_Anzeige_Bediengeräte_20260420.pdf
|
||||
├── [ 512] 05_SUPPLIER_DOC-DOKUMENTY_DODAVATELE
|
||||
│ ├── [ 512] 01_MiTek_steel_structure_ocelová konstrukce
|
||||
│ │ ├── [ 512] 01_As Built_drawing
|
||||
│ │ │ └── [ 85M] MMS 2307-025 (As Built).pdf
|
||||
│ │ ├── [ 512] 02_Structural_Calcs
|
||||
│ │ │ └── [ 16M] Design_Calculation_Report_Rev_002_23.01.25_EN.pdf
|
||||
│ │ ├── [ 512] 03_Instructions_Pokyny
|
||||
│ │ │ ├── [ 512] 01_EN_original
|
||||
│ │ │ │ ├── [ 90K] 01_Sestavení dat_CZ-Data_Assembly_EN.pdf
|
||||
│ │ │ │ ├── [168K] 02_Operations and Maintenance_rev.1_EN.pdf
|
||||
│ │ │ │ └── [241K] 03_marathon-prime-finish-tds_EN.pdf
|
||||
│ │ │ └── [ 512] 02_CZ
|
||||
│ │ │ └── [106K] 02_Provozní a údržbové postupy_rev.1_CZ.pdf
|
||||
│ │ ├── [ 512] 04_MiTek DOP
|
||||
│ │ │ ├── [240K] Declaration_Performance_Certificate_MMS-2307-025_EN.pdf
|
||||
│ │ │ └── [204K] MMS-2307-025_Design_Compliance_Statement_EN.pdf
|
||||
│ │ ├── [ 512] 05_Fabricator DOP
|
||||
│ │ │ └── [228K] BRW0C96E613B534_000616.pdf
|
||||
│ │ ├── [ 512] 06_Steel Test Cert
|
||||
│ │ │ ├── [ 512] Lot 1
|
||||
│ │ │ │ ├── [4.4M] k093444 - Test Certs.pdf
|
||||
│ │ │ │ ├── [1.2M] k093445 - Test Certs.pdf
|
||||
│ │ │ │ ├── [718K] k093446 - Test Certs.pdf
|
||||
│ │ │ │ ├── [220K] k093452 - Test Certs.pdf
|
||||
│ │ │ │ ├── [192K] k093713 - Test Certs.pdf
|
||||
│ │ │ │ └── [147K] k093771 - Test Certs.pdf
|
||||
│ │ │ ├── [ 512] Lot 10
|
||||
│ │ │ │ ├── [1.2M] TC_7545925_001_2668830_001_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545925_002_2668830_002_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545925_003_2668830_003_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545925_004_2668830_004_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545925_005_2668830_005_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545925_006_2668830_006_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545925_007_2668830_007_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545925_008_2668830_008_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545925_009_2668830_009_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545925_010_2668830_010_0188358.pdf
|
||||
│ │ │ │ └── [1.2M] TC_7545925_011_2668830_011_0188358.pdf
|
||||
│ │ │ ├── [ 512] Lot 11
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_001_2668831_001_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_002_2668831_002_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_003_2668831_003_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_004_2668831_004_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_005_2668831_005_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_006_2668831_006_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_007_2668831_007_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_008_2668831_008_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_009_2668831_009_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_010_2668831_010_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_011_2668831_011_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_012_2668831_012_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_013_2668831_013_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_014_2668831_014_0188358.pdf
|
||||
│ │ │ │ ├── [1.2M] TC_7545926_015_2668831_015_0188358.pdf
|
||||
│ │ │ │ └── [1.2M] TC_7545926_016_2668831_016_0188358.pdf
|
||||
│ │ │ ├── [ 512] Lot 2
|
||||
│ │ │ │ ├── [2.1M] k093448 - Test Certs.pdf
|
||||
│ │ │ │ ├── [1.5M] k093449 - Test Certs.pdf
|
||||
│ │ │ │ ├── [2.0M] k093450 - Test Certs.pdf
|
||||
│ │ │ │ ├── [220K] k093452 - Test Certs.pdf
|
||||
│ │ │ │ ├── [189K] k093605 - Test Certs.pdf
|
||||
│ │ │ │ ├── [192K] k093714 - Test Certs.pdf
|
||||
│ │ │ │ └── [147K] k093771 - Test Certs.pdf
|
||||
│ │ │ ├── [ 512] Lot 3
|
||||
│ │ │ │ ├── [ 29M] SO-7537535-Test-Certs-03-12-2025-15-41-46 (10).zip
|
||||
│ │ │ │ ├── [ 29M] SO-7537535-Test-Certs-03-12-2025-15-41-46 (11).zip
|
||||
│ │ │ │ ├── [ 31M] SO-7537535-Test-Certs-03-12-2025-15-41-46 (12).zip
|
||||
│ │ │ │ ├── [ 31M] SO-7537535-Test-Certs-03-12-2025-15-41-46 (13).zip
|
||||
│ │ │ │ ├── [ 29M] SO-7537535-Test-Certs-03-12-2025-15-41-46 (14).zip
|
||||
│ │ │ │ ├── [ 29M] SO-7537535-Test-Certs-03-12-2025-15-41-46 (15).zip
|
||||
│ │ │ │ ├── [ 28M] SO-7537535-Test-Certs-03-12-2025-15-41-46 (16).zip
|
||||
│ │ │ │ ├── [ 18M] SO-7537535-Test-Certs-03-12-2025-15-41-46 (17).zip
|
||||
│ │ │ │ └── [ 28M] SO-7537535-Test-Certs-03-12-2025-15-41-46 (9).zip
|
||||
│ │ │ ├── [251M] Lot 3.zip
|
||||
│ │ │ ├── [ 512] Lot 4
|
||||
│ │ │ │ ├── [ 30M] SO-7537547-Test-Certs-03-12-2025-16-04-28 (1).zip
|
||||
│ │ │ │ ├── [ 30M] SO-7537547-Test-Certs-03-12-2025-16-04-28 (2).zip
|
||||
│ │ │ │ ├── [ 30M] SO-7537547-Test-Certs-03-12-2025-16-04-28 (3).zip
|
||||
│ │ │ │ ├── [ 29M] SO-7537547-Test-Certs-03-12-2025-16-04-28 (4).zip
|
||||
│ │ │ │ ├── [ 30M] SO-7537547-Test-Certs-03-12-2025-16-04-28 (5).zip
|
||||
│ │ │ │ └── [ 29M] SO-7537547-Test-Certs-03-12-2025-16-04-28.zip
|
||||
│ │ │ ├── [ 512] Lot 5
|
||||
│ │ │ │ ├── [ 30M] SO-7538540-Test-Certs-10-12-2025-11-55-15 (1).zip
|
||||
│ │ │ │ ├── [ 30M] SO-7538540-Test-Certs-10-12-2025-11-55-15 (2).zip
|
||||
│ │ │ │ ├── [ 27M] SO-7538540-Test-Certs-10-12-2025-11-55-15 (3).zip
|
||||
│ │ │ │ ├── [ 30M] SO-7538540-Test-Certs-10-12-2025-11-55-15 (4).zip
|
||||
│ │ │ │ ├── [ 28M] SO-7538540-Test-Certs-10-12-2025-11-55-15 (5).zip
|
||||
│ │ │ │ └── [ 29M] SO-7538540-Test-Certs-10-12-2025-11-55-15.zip
|
||||
│ │ │ ├── [ 512] Lot 6
|
||||
│ │ │ │ ├── [ 29M] SO-7539198-Test-Certs-10-12-2025-12-54-38 (1).zip
|
||||
│ │ │ │ ├── [ 29M] SO-7539198-Test-Certs-10-12-2025-12-54-38 (2).zip
|
||||
│ │ │ │ ├── [ 28M] SO-7539198-Test-Certs-10-12-2025-12-54-38 (3).zip
|
||||
│ │ │ │ ├── [ 29M] SO-7539198-Test-Certs-10-12-2025-12-54-38 (4).zip
|
||||
│ │ │ │ ├── [ 30M] SO-7539198-Test-Certs-10-12-2025-12-54-38 (5).zip
|
||||
│ │ │ │ ├── [ 27M] SO-7539198-Test-Certs-10-12-2025-12-54-38 (6).zip
|
||||
│ │ │ │ └── [ 28M] SO-7539198-Test-Certs-10-12-2025-12-54-38.zip
|
||||
│ │ │ ├── [ 512] Lot 7
|
||||
│ │ │ │ ├── [ 29M] SO-7540495-Test-Certs-10-12-2025-14-22-20 (1).zip
|
||||
│ │ │ │ ├── [ 28M] SO-7540495-Test-Certs-10-12-2025-14-22-20 (2).zip
|
||||
│ │ │ │ ├── [ 30M] SO-7540495-Test-Certs-10-12-2025-14-22-20 (3).zip
|
||||
│ │ │ │ ├── [ 18M] SO-7540495-Test-Certs-10-12-2025-14-22-20 (4).zip
|
||||
│ │ │ │ └── [ 29M] SO-7540495-Test-Certs-10-12-2025-14-22-20.zip
|
||||
│ │ │ ├── [ 512] Lot 8
|
||||
│ │ │ └── [ 512] Lot 9
|
||||
│ │ │ ├── [1.2M] TC_7545924_001_2668829_001_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_002_2668829_002_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_003_2668829_003_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_004_2668829_004_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_005_2668829_005_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_006_2668829_006_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_007_2668829_007_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_008_2668829_008_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_009_2668829_009_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_010_2668829_010_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_011_2668829_011_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_012_2668829_012_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_013_2668829_013_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_014_2668829_014_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_015_2668829_015_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_016_2668829_016_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_017_2668829_017_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_018_2668829_018_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_019_2668829_019_0188358.pdf
|
||||
│ │ │ ├── [1.2M] TC_7545924_020_2668829_020_0188358.pdf
|
||||
│ │ │ └── [1.2M] TC_7545924_021_2668829_021_0188358.pdf
|
||||
│ │ ├── [ 512] 07_Joist Test Cert
|
||||
│ │ │ ├── [ 512] Lot 13
|
||||
│ │ │ │ ├── [332K] Mitek 96119739_1 H3.309.pdf
|
||||
│ │ │ │ ├── [ 21K] Mitek 96119739_2 H4.87.pdf
|
||||
│ │ │ │ └── [ 21K] Mitek 96119739_3 H4.134.pdf
|
||||
│ │ │ ├── [ 512] Lot 14
|
||||
│ │ │ │ ├── [ 89K] Mitek 96120095_1 H3.309.pdf
|
||||
│ │ │ │ ├── [ 21K] Mitek 96120095_2 H4.87.pdf
|
||||
│ │ │ │ └── [ 21K] Mitek 96120095_3 H4.134.pdf
|
||||
│ │ │ ├── [ 512] Lot 15
|
||||
│ │ │ │ ├── [238K] Mitek 96120721_1 H3.309.pdf
|
||||
│ │ │ │ ├── [ 21K] Mitek 96120721_2 H4.87.pdf
|
||||
│ │ │ │ └── [238K] Mitek 96120721_3 H4.79.pdf
|
||||
│ │ │ ├── [ 512] Lot 16
|
||||
│ │ │ │ ├── [237K] Mitek 96120781_1 H3.309.pdf
|
||||
│ │ │ │ ├── [ 21K] Mitek 96120781_2 H4.87.pdf
|
||||
│ │ │ │ └── [ 21K] Mitek 96120781_3 H4.80.pdf
|
||||
│ │ │ └── [ 512] Lot 17
|
||||
│ │ │ ├── [237K] Mitek 96121082_1 H3.309.pdf
|
||||
│ │ │ ├── [ 21K] Mitek 96121082_2 H4.87.pdf
|
||||
│ │ │ └── [322K] Mitek 96121082_3 H4.134.pdf
|
||||
│ │ ├── [ 512] 08_Bolt Test Cert
|
||||
│ │ │ ├── [ 512] BAPP
|
||||
│ │ │ │ ├── [201K] 35801 LOC.pdf
|
||||
│ │ │ │ ├── [201K] 35935 LOC.pdf
|
||||
│ │ │ │ ├── [ 98K] FPC Hollo-Bolt 2812-CPR-0208 18-12-2023.pdf
|
||||
│ │ │ │ ├── [805K] M12X100 EN 15048 8.8SB HDG - Locked.pdf
|
||||
│ │ │ │ ├── [1.2M] M12X40 EN15048 8.8SB HDG - Locked.pdf
|
||||
│ │ │ │ ├── [1.2M] M12X45 EN15048 8.8SB HDG.pdf
|
||||
│ │ │ │ ├── [182K] M12X50 EN 15048 8.8SB HDG.pdf
|
||||
│ │ │ │ ├── [2.5M] M16X50 EN15048 8.8SB HDG.pdf
|
||||
│ │ │ │ └── [804K] M20X50 EN 15048 8.8SB HDG.pdf
|
||||
│ │ │ └── [ 512] Senco
|
||||
│ │ │ └── [ 77K] RSM562BFL.pdf
|
||||
│ │ ├── [ 512] 09_Paint Cert
|
||||
│ │ │ └── [268K] Marathon Prime Finish- SDS.pdf
|
||||
│ │ ├── [ 512] 10_Decking Data Sheet
|
||||
│ │ │ └── [ 512] Berghoef
|
||||
│ │ │ └── [513K] DOP_Mezzanine U7 Deluxe TG_EN.pdf
|
||||
│ │ ├── [ 512] 11_RAMS
|
||||
│ │ │ ├── [279K] MMS-2307-025-HS-1055 Method Statement Schonenberger Cheb.pdf
|
||||
│ │ │ ├── [648K] MMS-HS-1495 Paint Touch Up Risk Assessment_V2.pdf
|
||||
│ │ │ ├── [580K] MMS-HS-815 Decking Risk Assessment_V4.pdf
|
||||
│ │ │ ├── [582K] MMS-HS-820 Mobilisation & De-Mobilisation Risk Assessment_V3.pdf
|
||||
│ │ │ ├── [595K] MMS-HS-825 Setting Out Risk Assessment_V3.pdf
|
||||
│ │ │ ├── [602K] MMS-HS-830 Site Deliveries Risk Assessment_V3.pdf
|
||||
│ │ │ └── [619K] MMS-HS-835 Steel Erection Risk Assessment_V4.pdf
|
||||
│ │ └── [ 512] 12_Handover
|
||||
│ │ ├── [1.5M] 1_LOT 1-3 GOH FLOOR HANDOVER.pdf
|
||||
│ │ ├── [1.5M] 2_LOT 4-5 GOH FLOOR HANDOVER.pdf
|
||||
│ │ ├── [1.5M] 3_LOTS 6-9 GOH FLOOR HANDOVER..pdf
|
||||
│ │ ├── [2.7M] 4_LOT 1-11 COMPLETION & FINAL HANDOVER ALL LOTS..pdf
|
||||
│ │ └── [244K] MMS-2307-025_PM_Handover Check Sheet.pdf
|
||||
│ ├── [ 512] 02_ABS_safety_line-bezpečnostní_lano
|
||||
│ │ ├── [ 512] 01_Instructions_pokyny
|
||||
│ │ │ ├── [ 512] 01_DE_original
|
||||
│ │ │ │ ├── [4.2M] 01_ABS-Safety-Sicherheitshinweise-DE-EN.pdf
|
||||
│ │ │ │ ├── [ 29M] 02_Montagedokumentation_DE.pdf
|
||||
│ │ │ │ ├── [292K] 03_ABS_Basisinformationen_DE.pdf
|
||||
│ │ │ │ └── [1006K] 04_Pruefbuch_InspectionLog_DE_EN.pdf
|
||||
│ │ │ └── [ 512] 02_CZ
|
||||
│ │ │ ├── [1.3M] 01_ABS-Safety-Bezpečnostní pokyny_CZ.pdf
|
||||
│ │ │ ├── [7.7M] 02_Montážní dokumentace_CZ.pdf
|
||||
│ │ │ ├── [214K] 03_ABS_Základní informace_CZ.pdf
|
||||
│ │ │ └── [1.1M] 04_Kontrolní kniha_InspectionLog_CZ.pdf
|
||||
│ │ ├── [ 512] 02_Drawing
|
||||
│ │ │ └── [2.0M] 24007341P-25012501Z-3-Plan 4_DE.pdf
|
||||
│ │ └── [ 512] 03_Certificates
|
||||
│ │ ├── [584K] Acceptance_report_rev.2_DE.pdf
|
||||
│ │ ├── [973K] Certification_construction-product_DE.pdf
|
||||
│ │ └── [289K] Certification_installation_DE.pdf
|
||||
│ ├── [ 512] 03_DTS_Loading_Loop
|
||||
│ │ └── [966K] Zertifikat_3834_DE.pdf
|
||||
│ ├── [ 512] 04_Leantechnik_Loading_Loop
|
||||
│ │ ├── [ 512] 01_DE_original
|
||||
│ │ │ ├── [4.8M] 01_Leantechnik_Anleitung_DE.pdf
|
||||
│ │ │ └── [ 11M] 02_Leantechnik_Gesamtkatalog_DE.pdf
|
||||
│ │ ├── [ 512] 02_EN
|
||||
│ │ │ ├── [1.2M] 01_Leantechnik_instructions_EN.pdf
|
||||
│ │ │ └── [8.7M] 02_Leantechnik-complete-catalogue_EN.pdf
|
||||
│ │ └── [ 512] 03_CZ
|
||||
│ │ └── [1.3M] 01_Leantechnik_pokyny_CZ.pdf
|
||||
│ ├── [ 512] 06_Electrics_elektrika
|
||||
│ │ ├── [ 512] 01_Instructions_pokyny
|
||||
│ │ │ └── [ 512] 01_MOTORS_MOTORY
|
||||
│ │ │ ├── [ 512] 01_SEW
|
||||
│ │ │ │ ├── [ 512] 01_DE_für_Gesamtanlage
|
||||
│ │ │ │ │ ├── [ 34M] 01_Motor_25957066_DE.pdf
|
||||
│ │ │ │ │ ├── [3.5M] 01_Motor_info_30589452_DE.pdf
|
||||
│ │ │ │ │ ├── [ 10M] 01_Motor_korr_26857987_DE.pdf
|
||||
│ │ │ │ │ └── [ 21M] 02_Getriebe_31978061_DE.pdf
|
||||
│ │ │ │ ├── [ 512] 02_EN_for_entire_system
|
||||
│ │ │ │ │ ├── [ 34M] 01_Motor_25957074_EN.pdf
|
||||
│ │ │ │ │ ├── [3.6M] 01_Motor_info_30589460_EN.pdf
|
||||
│ │ │ │ │ ├── [10.0M] 01_Motor_rev_26861313_EN.pdf
|
||||
│ │ │ │ │ └── [ 20M] 02_Gear_31978088_EN.pdf
|
||||
│ │ │ │ ├── [ 512] 03_CZ_pro_celé_zařízení
|
||||
│ │ │ │ │ ├── [ 34M] 01_Motory_25957228_CZ.pdf
|
||||
│ │ │ │ │ ├── [5.6M] 01_Motory_info_30589606_CZ.pdf
|
||||
│ │ │ │ │ ├── [8.0M] 01_Motory_oprava_26861453_CZ.pdf
|
||||
│ │ │ │ │ └── [ 24M] 02_Převody_31988741_CZ.pdf
|
||||
│ │ │ │ └── [ 512] 04_Movimot_Loading_Loop
|
||||
│ │ │ │ ├── [ 512] 01_DE_original
|
||||
│ │ │ │ │ ├── [4.5M] 03_Movi_26865513_DE.pdf
|
||||
│ │ │ │ │ └── [9.6M] 03_Movimot_DBC_31985297_DE.pdf
|
||||
│ │ │ │ ├── [ 512] 02_EN_original
|
||||
│ │ │ │ │ ├── [6.6M] 03_Movi_C_info_26870770_EN.pdf
|
||||
│ │ │ │ │ └── [9.7M] 03_Movimot_DBC_31985300_EN.pdf
|
||||
│ │ │ │ └── [ 512] 03_CZ
|
||||
│ │ │ │ ├── [2.2M] 03_Movi_C_info_26870770_CZ.pdf
|
||||
│ │ │ │ └── [ 13M] 03_Movimot_DBC_31985300_CZ.pdf
|
||||
│ │ │ └── [ 512] 02_NORD
|
||||
│ │ │ ├── [ 512] 01_DE_original
|
||||
│ │ │ │ ├── [3.9M] 01_Getriebe_LoadingLoopAntr_DE.pdf
|
||||
│ │ │ │ └── [2.3M] 02_Motor_LoadingLoopAntr_DE.pdf
|
||||
│ │ │ ├── [ 512] 02_EN_original
|
||||
│ │ │ │ ├── [3.8M] 01_Gear_LoadingLoopDrive_EN.pdf
|
||||
│ │ │ │ └── [2.5M] 02_Motor_LoadingLoopDrive_EN.pdf
|
||||
│ │ │ └── [ 512] 03_CZ
|
||||
│ │ │ ├── [3.9M] 01_Převod_LoadingLoopPohon_CZ.pdf
|
||||
│ │ │ └── [2.4M] 02_Motory_LoadingLoopPohon_CZ.pdf
|
||||
│ │ └── [ 512] 02_Data-sheets
|
||||
│ │ ├── [ 512] 01_Siemens
|
||||
│ │ │ ├── [436K] 3LD22031TL53_datasheet_en.pdf
|
||||
│ │ │ ├── [1.1M] 3LD23051TL13_datasheet_en.pdf
|
||||
│ │ │ ├── [407K] 3LD28040TK53_datasheet_en.pdf
|
||||
│ │ │ ├── [539K] 3RA21101AA151BB4_datasheet_en.pdf
|
||||
│ │ │ ├── [539K] 3RA21101DA151BB4_datasheet_en.pdf
|
||||
│ │ │ ├── [393K] 3RH29112FA22_datasheet_en.pdf
|
||||
│ │ │ ├── [484K] 3RT20151BB41_datasheet_en.pdf
|
||||
│ │ │ ├── [460K] 3RT20162BB42_datasheet_en.pdf
|
||||
│ │ │ ├── [485K] 3RT20272BB40_datasheet_en.pdf
|
||||
│ │ │ ├── [278K] 3RT29261BB00_datasheet_en.pdf
|
||||
│ │ │ ├── [311K] 3RV29255AB_datasheet_en.pdf
|
||||
│ │ │ ├── [301K] 3SU10000AB100AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [304K] 3SU10000BB600AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [320K] 3SU10001GB200AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [312K] 3SU10010AB500AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [305K] 3SU10011BA300AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [312K] 3SU10016AA400AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [320K] 3SU10022BF100AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [316K] 3SU10022BM100AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [357K] 3SU11000AB103CA0_datasheet_en.pdf
|
||||
│ │ │ ├── [370K] 3SU11001HB203CH0_datasheet_en.pdf
|
||||
│ │ │ ├── [376K] 3SU11002BF603BA0_datasheet_en.pdf
|
||||
│ │ │ ├── [389K] 3SU11004BF113BA0_datasheet_en.pdf
|
||||
│ │ │ ├── [367K] 3SU11020AB403BA0_datasheet_en.pdf
|
||||
│ │ │ ├── [366K] 3SU11020AB503BA0_datasheet_en.pdf
|
||||
│ │ │ ├── [367K] 3SU11020AB703BA0_datasheet_en.pdf
|
||||
│ │ │ ├── [351K] 3SU11026AA203AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [352K] 3SU11026AA303AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [320K] 3SU14002AA103BA0_datasheet_en.pdf
|
||||
│ │ │ ├── [320K] 3SU14002AA103CA0_datasheet_en.pdf
|
||||
│ │ │ ├── [322K] 3SU14012BB303AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [322K] 3SU14012BB403AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [323K] 3SU14012BB503AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [271K] 3UG46152CR20_datasheet_en.pdf
|
||||
│ │ │ ├── [416K] 5ST3010_datasheet_en.pdf
|
||||
│ │ │ ├── [647K] 5SU13246FA10_datasheet_en.pdf
|
||||
│ │ │ ├── [424K] 5SY42107_datasheet_en.pdf
|
||||
│ │ │ ├── [447K] 5SY43027_datasheet_en.pdf
|
||||
│ │ │ ├── [447K] 5SY43067_datasheet_en.pdf
|
||||
│ │ │ ├── [447K] 5SY43107_datasheet_en.pdf
|
||||
│ │ │ ├── [446K] 5SY43167_datasheet_en.pdf
|
||||
│ │ │ ├── [447K] 5SY43327_datasheet_en.pdf
|
||||
│ │ │ ├── [420K] 5SY62107_datasheet_en.pdf
|
||||
│ │ │ ├── [239K] 5SY63027_datasheet_en.pdf
|
||||
│ │ │ ├── [443K] 5SY63067_datasheet_en.pdf
|
||||
│ │ │ ├── [239K] 5SY63107_datasheet_en.pdf
|
||||
│ │ │ ├── [239K] 5SY63167_datasheet_en.pdf
|
||||
│ │ │ ├── [444K] 5SY63257_datasheet_en.pdf
|
||||
│ │ │ ├── [443K] 5SY63327_datasheet_en.pdf
|
||||
│ │ │ ├── [369K] 6AV21283UB060AX1_datasheet_en.pdf
|
||||
│ │ │ ├── [289K] 6EP34368SB000AY0_datasheet_en.pdf
|
||||
│ │ │ ├── [281K] 6EP34378SB000AY0_datasheet_en.pdf
|
||||
│ │ │ ├── [306K] 6ES71316BF010AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [306K] 6ES71316BH010BA0_datasheet_en.pdf
|
||||
│ │ │ ├── [332K] 6ES71326BH010BA0_datasheet_en.pdf
|
||||
│ │ │ ├── [285K] 6ES71366BA010CA0_datasheet_en.pdf
|
||||
│ │ │ ├── [295K] 6ES71366DB000CA0_datasheet_en.pdf
|
||||
│ │ │ ├── [190K] 6ES71376BD000BA0_datasheet_en.pdf
|
||||
│ │ │ ├── [303K] 6ES71556AU010BN0_datasheet_en.pdf
|
||||
│ │ │ ├── [208K] 6ES71936BP200BA0_datasheet_en.pdf
|
||||
│ │ │ ├── [289K] 6ES71936BP200DA0_datasheet_en.pdf
|
||||
│ │ │ ├── [327K] 6ES75184FP000AB0_datasheet_en.pdf
|
||||
│ │ │ ├── [ 94K] 6ES79548LL040AA0_datasheet_en.pdf
|
||||
│ │ │ ├── [338K] 6GK51160BA002AC2_datasheet_en.pdf
|
||||
│ │ │ └── [502K] Siemens_3SU_3275_05_202107032151368800.pdf
|
||||
│ │ ├── [ 512] 02_Leuze
|
||||
│ │ │ ├── [452K] Datasheet_HT25CI-4P-M12_50134231_en.pdf
|
||||
│ │ │ ├── [388K] Datasheet_IS-218MM-4NO-8E0-S12_50109701_en.pdf
|
||||
│ │ │ ├── [393K] Datasheet_IS-218MM-4NO-8N0-S12_50109697_en.pdf
|
||||
│ │ │ ├── [1.2M] Datasheet_PAL_HRT25B_2500_50134386_en.pdf
|
||||
│ │ │ ├── [ 74K] Leuze_50109697_CER_CE_IS218(x)_M_de_en_fr.pdf
|
||||
│ │ │ ├── [ 74K] Leuze_50109701_CER_CE_IS218(x)_M_de_en_fr.pdf
|
||||
│ │ │ ├── [ 54K] Leuze_50134231_CER_CE_SR25C_de_en_fr.pdf
|
||||
│ │ │ └── [ 54K] Leuze_50142302_CER_CE_HRT(x)25B_de_en_fr.pdf
|
||||
│ │ ├── [ 512] 03_Cognex
|
||||
│ │ │ ├── [ 512] 01_EN_original
|
||||
│ │ │ │ ├── [670K] Cognex_DM280_Scanner.pdf
|
||||
│ │ │ │ ├── [6.8M] DM280_Reference_Manual_EN.pdf
|
||||
│ │ │ │ ├── [8.7M] DM370_Series_Reference_Manual_EN.pdf
|
||||
│ │ │ │ ├── [3.6M] Datasheet_DM280_en.pdf
|
||||
│ │ │ │ └── [1.8M] Datasheet_DM370_en.pdf
|
||||
│ │ │ └── [ 512] 02_CZ
|
||||
│ │ │ ├── [670K] Cognex_DM280_Scanner.pdf
|
||||
│ │ │ ├── [8.1M] DM280_Referenční příručka_CZ.pdf
|
||||
│ │ │ └── [10.0M] DM370_Series_Referenční příručka_CZ.pdf
|
||||
│ │ ├── [ 512] 04_Helukabel
|
||||
│ │ │ ├── [1.3M] Datasheet_HELUKABEL_51796_EN.pdf
|
||||
│ │ │ └── [198K] Datasheet_HELUKABEL_EN.pdf
|
||||
│ │ ├── [ 512] 05_Werma
|
||||
│ │ │ ├── [270K] Datasheet_26131070_en.pdf
|
||||
│ │ │ ├── [419K] Datasheet_64081000_en.pdf
|
||||
│ │ │ ├── [316K] Datasheet_64580075_en.pdf
|
||||
│ │ │ ├── [258K] Datasheet_64711075_en.pdf
|
||||
│ │ │ ├── [240K] Datasheet_64721075_en.pdf
|
||||
│ │ │ ├── [275K] Datasheet_64731075_en.pdf
|
||||
│ │ │ └── [277K] Datasheet_64751075_en.pdf
|
||||
│ │ ├── [ 512] 06_Phoenix
|
||||
│ │ │ ├── [363K] Datasheet_0804027_en.pdf
|
||||
│ │ │ ├── [186K] Datasheet_2900299_en.pdf
|
||||
│ │ │ └── [101K] Datasheet_2908215_en.pdf
|
||||
│ │ ├── [ 512] 07_Murrelektronik
|
||||
│ │ │ ├── [223K] Datasheet_58902_en.pdf
|
||||
│ │ │ ├── [230K] Datasheet_58904_en.pdf
|
||||
│ │ │ ├── [190K] Datasheet_8000-88590-0000000_en.pdf
|
||||
│ │ │ └── [233K] Datasheet_9000-41034-0401000_en.pdf
|
||||
│ │ ├── [ 512] 08_SEW
|
||||
│ │ │ ├── [ 93K] Datasheet_RF57_DRN80MK4_ASE1_Z_en.pdf
|
||||
│ │ │ ├── [ 88K] Datasheet_SA57_DRN80MK4_BE1_en.pdf
|
||||
│ │ │ ├── [ 93K] Datasheet_SA57_DRN80MK4_en.pdf
|
||||
│ │ │ ├── [ 88K] Datasheet_SA57_DRN80MK4_li_en.pdf
|
||||
│ │ │ ├── [ 93K] Datasheet_SA57_DRN90S4BE2_en.pdf
|
||||
│ │ │ ├── [ 88K] Datasheet_SF67_DRN80MK4_Z_en.pdf
|
||||
│ │ │ ├── [ 90K] Datasheet_WAF59_R37_DRN71M4_BE05_en.pdf
|
||||
│ │ │ └── [140K] SEW_DRNxx_23114118_Conformity_CE.pdf
|
||||
│ │ ├── [ 512] 09_Rittal
|
||||
│ │ │ ├── [102K] Datasheet_2500210-LED system light_en.pdf
|
||||
│ │ │ ├── [ 75K] Datasheet_2500470-Door-Operated Switch_en.pdf
|
||||
│ │ │ ├── [357K] Rittal_KX_declaration_of_conformity_20_1852.pdf
|
||||
│ │ │ └── [621K] Rittal_VX_20_2659.pdf
|
||||
│ │ ├── [ 512] 10_Nord
|
||||
│ │ │ └── [ 99K] Datasheet_Motor_SK1SI40-IEC71-71RP_6 TF_IE3_en.pdf
|
||||
│ │ ├── [ 512] 11_Pepperl+Fuchs
|
||||
│ │ │ ├── [661K] Datasheet_NBN12-18GM35-E2-0_en.pdf
|
||||
│ │ │ └── [1.2M] Pepperl_326163-0134_doc4844a.pdf
|
||||
│ │ ├── [ 512] 12_Bailey
|
||||
│ │ │ └── [577K] Datasheet_145502_en.pdf
|
||||
│ │ ├── [ 512] 13_Sick
|
||||
│ │ │ ├── [544K] Datasheet_WLL180T-F232_6039098_en.pdf
|
||||
│ │ │ ├── [482K] Datasheet_WLL180T-M432_6039097_en.pdf
|
||||
│ │ │ └── [156K] Sick_WLL180_Konformität.pdf
|
||||
│ │ ├── [ 512] 14_Schmersal
|
||||
│ │ │ └── [1.1M] Datasheet_Z4V7-336-11z-M20_en.pdf
|
||||
│ │ ├── [ 512] 15_ifm electronic
|
||||
│ │ │ └── [352K] Datasheet_JN2201-02_en.pdf
|
||||
│ │ ├── [ 512] 16_Balluff
|
||||
│ │ │ └── [214K] Balluff_BES M08MH1-PSC30B-S04G-101_CE_BES02PW_PV116429_sig.pdf
|
||||
│ │ └── [ 512] 17_TRelectronic
|
||||
│ │ └── [ 61K] TR-Electronic_CES582M-00004_TR-ECE-KE-DGB-0374-06.pdf
|
||||
│ └── [ 512] 07_Pneumatic_pneumatika
|
||||
│ ├── [ 512] 01_Aventics
|
||||
│ │ ├── [ 512] 01_DE-EN_original
|
||||
│ │ │ ├── [1.0M] 01_IU_Filter_DE_EN.pdf
|
||||
│ │ │ ├── [999K] 02_IU_Pressure_regulator_valve_DE_EN.pdf
|
||||
│ │ │ ├── [891K] 03_IU-3-2-shut_off_valve_DE_EN.pdf
|
||||
│ │ │ └── [562K] 04_IU-Distributor_DE_EN.pdf
|
||||
│ │ └── [ 512] 02_CZ
|
||||
│ │ ├── [1.8M] 01_IU_Filter_filtr_CZ.pdf
|
||||
│ │ ├── [2.1M] 02_IU_Press_reg_valve_Regulační ventil tlaku_CZ.pdf
|
||||
│ │ ├── [2.0M] 03_IU-3-2-Uzavírací ventil_CZ.pdf
|
||||
│ │ └── [1.3M] 04_IU-Distrib_Rozdělovač_CZ.pdf
|
||||
│ └── [ 512] 02_ITS
|
||||
│ └── [151K] KC-0167-00-01-4 Air distributor.pdf
|
||||
├── [ 11M] FUNKTION_CONTROL_LoadingLoop_500592_V2.2_EN.docx
|
||||
├── [ 11M] FUNKTION_STEUERUNG_LoadingLoop_500592_V2.2.docx
|
||||
├── [ 35M] RB_Fortna_H+M_500592_EV12_20260311.docx
|
||||
└── [2.7M] RB_Fortna_H+M_500592_V12_20260311.docx
|
||||
|
||||
123 directories, 378 files
|
||||
@@ -0,0 +1,99 @@
|
||||
# Skripte in lib/
|
||||
|
||||
Übersicht über die Python-Hilfsskripte zur Datenaufbereitung (Excel/PDF/Word -> JSON/CSV/RST).
|
||||
Alle Skripte werden über `bin/*.bat` bzw. `bin/*.sh` aufgerufen und nutzen die
|
||||
Umgebungsvariablen aus `bin/setenv.*` (`PROJECT`, `PV_EXAMPLES`, `PV_DATA`, ...).
|
||||
|
||||
## jsonFromXlsx.py
|
||||
|
||||
Baut aus der Positionsspalte einer Excel-Stückliste (`Stk.-Liste SOLL` / `Stk.-Liste IST`)
|
||||
eine hierarchische JSON-Baumstruktur. Positionspfade wie `10/5/1` bestimmen die Schachtelung,
|
||||
als Schlüssel dient die Teilenummer (bei Duplikaten ergänzt um Bezeichnung). Sonderfälle:
|
||||
|
||||
- **Längenabhängige Teile** (`LAENGENABHAENGIG`-Liste, z. B. Kettenprofile): Menge wird als
|
||||
`laenge` aufsummiert statt gezählt.
|
||||
- **9-stellige Sivas-Nummern**: doppelte Vorkommen werden zu `{"anzahl": n, "beschreibung": ...}`
|
||||
aggregiert.
|
||||
|
||||
```
|
||||
python jsonFromXlsx.py --filename Fortna --tab soll
|
||||
python jsonFromXlsx.py --all
|
||||
```
|
||||
|
||||
Eingabe: `examples/*.xlsx` · Ausgabe: `results/<name>_<tab>.json`
|
||||
|
||||
## extract_ids.py
|
||||
|
||||
Liest die von `jsonFromXlsx.py` erzeugten JSON-Bäume und sammelt 9-stellige Sivas-Nummern,
|
||||
die genau eine Ebene über den Blättern liegen (d. h. Baugruppen, deren Kinder alle Blätter sind).
|
||||
Kann Ergebnisse mehrerer Projekte zu einer Summary zusammenfassen.
|
||||
|
||||
```
|
||||
python extract_ids.py --filename KA135776
|
||||
python extract_ids.py --all --sum2json
|
||||
python extract_ids.py --all --sum2txt
|
||||
```
|
||||
|
||||
Eingabe: `results/*_<tab>.json` · Ausgabe: `results/<name>_ids_<tab>.txt` bzw.
|
||||
`results/summary_ids_<tab>.{json,txt}`
|
||||
|
||||
## project_from_xlsx.py
|
||||
|
||||
Durchsucht rekursiv Unterordner in `PV_EXAMPLES`, liest je Ordner die erste `.xlsx` aus dem
|
||||
Reiter `Stk.-Liste IST` (Position/Teilenummer/Bezeichnung/Menge) und filtert auf Positionspfade
|
||||
mit 3 oder 4 Hierarchieebenen. Optional werden pro Ordner JSON/CSV/XLSX-Ergebnisdateien erzeugt;
|
||||
die XLSX-Variante aggregiert Mengen je Teilenummer und markiert bekannte Produktnummern aus
|
||||
`cfg/product_numbers.cfg`.
|
||||
|
||||
```
|
||||
python project_from_xlsx.py --example-dir KA135776 --2csv
|
||||
python project_from_xlsx.py --2json --2xlsx
|
||||
```
|
||||
|
||||
## extract_products.py
|
||||
|
||||
Extrahiert Bilder und Fließtext aus Produktprogramm-PDFs (`data/Produktprogramm/*.pdf`) mittels
|
||||
PyMuPDF. Bilder werden nach Zielordner (Omniflo/ILS/CPC/Gerüst/Trolley, siehe `PDF_TARGETS`)
|
||||
sortiert und per MD5 dedupliziert. Text wird anhand von Schriftgröße, Positions- und
|
||||
Nummerierungsheuristiken (inkl. TOC-Abgleich) in `.de.rst`-Dateien mit Überschriftenhierarchie
|
||||
umgewandelt.
|
||||
|
||||
```
|
||||
python extract_products.py --data-dir data
|
||||
```
|
||||
|
||||
Ausgabe: `data/Produktprogramm/images/<ziel>/` und `data/Produktprogramm/<pdf-name>.de.rst`
|
||||
|
||||
## collect_partnumbers.py
|
||||
|
||||
Sammelt 9-stellige Teilenummern aus den von `extract_products.py` erzeugten RST-Dateien,
|
||||
inklusive Bereichsnotation (`834372007-011`) und OCR-bedingt verklebter Zahlen. Gleicht die
|
||||
Nummern gegen eine Excel-Stückliste (`data/KA*.xlsx`, Reiter `Stk.-Liste SOLL`) ab und schreibt
|
||||
eine CSV mit Fundstelle, Kapitel und Bezeichnung.
|
||||
|
||||
```
|
||||
python collect_partnumbers.py --data-dir data
|
||||
```
|
||||
|
||||
Ausgabe: `data/Produktprogramm/teilenummern.csv`
|
||||
|
||||
## convert_to_rst.py
|
||||
|
||||
Konvertiert Word-Dokumente (`.docx`, via `mammoth`) und Word-erstellte PDFs (via `pdfminer`,
|
||||
erkannt über PDF-Metadaten Creator/Producer) nach `.rst`. Ordnet Quelldateien anhand des
|
||||
Dateinamens automatisch einem Zielkapitel unter `chapters/` zu (`CHAPTER_MAPPING`), erkennt
|
||||
benutzerdefinierte Word-Formatvorlagen (`Ü1`-`Ü4` etc.) als Überschriftenebenen und speichert
|
||||
eingebettete Bilder neben der Ziel-RST.
|
||||
|
||||
```
|
||||
python convert_to_rst.py <input_dir> chapters --dry-run
|
||||
python convert_to_rst.py <input_dir> chapters --lang de
|
||||
```
|
||||
|
||||
## Typischer Ablauf
|
||||
|
||||
1. `jsonFromXlsx.py --all` – Stücklisten als JSON-Bäume aufbereiten
|
||||
2. `extract_ids.py --all --sum2json` – Sivas-Nummern projektübergreifend sammeln
|
||||
3. `extract_products.py` – Produktprogramm-PDFs in Bilder + RST zerlegen
|
||||
4. `collect_partnumbers.py` – Teilenummern aus den RSTs mit der Stückliste abgleichen
|
||||
5. `convert_to_rst.py` – vorhandene Word/PDF-Dokumentation in die Kapitelstruktur überführen
|
||||
@@ -0,0 +1,240 @@
|
||||
# Konzept: Fortna-Extraktion nach chapters/ + Projektordner fortna/
|
||||
|
||||
Status: **Umgesetzt** (erster vollständiger Durchlauf inkl. PDF-Build). Antworten aus der
|
||||
Rückfragerunde sind eingearbeitet (siehe Abschnitt "Entscheidungen"). Der tatsächliche
|
||||
Ist-Stand ist unten unter "Umsetzung / Ist-Stand" dokumentiert.
|
||||
|
||||
## Umsetzung / Ist-Stand
|
||||
|
||||
Implementiert wurden vier Python-Skripte in `lib/` mit `bin/`-Wrappern (`.bat` + `.sh`):
|
||||
|
||||
| Skript | Zweck | Wrapper |
|
||||
|---|---|---|
|
||||
| `lib/fortna_inventory.py` | Scannt das Rohmaterial, ordnet jede Datei Sprache + Zielkapitel + Aktion zu, schreibt `results/fortna_inventory.json`. | `bin/fortna_inventory.*` |
|
||||
| `lib/fortna_convert_chapters.py` | Volltext+Bilder für die 5 DE-Hauptanleitungen, Verzeichnislisten (`index.de.rst`) für alle übrigen Kapitel. `--dry-run` (Default) / `--apply`. | `bin/fortna_convert_chapters.*` |
|
||||
| `lib/fortna_init_project.py` | Legt `projekte/fortna/` an (`anlage.json`, `overrides/`, `images/`, `README.md`). | `bin/fortna_init_project.*` |
|
||||
| `lib/build_index.py` | Generiert `index.rst` mit toctrees aus allen `chapters/**/*.de.rst`. | (in `build_pdf.*`) |
|
||||
| `bin/build_pdf.*` | Kompletter PDF-Build: index → `sphinx-build -b latex` → `latexmk -lualatex`. | — |
|
||||
|
||||
Ergebnis des ersten Laufs:
|
||||
|
||||
- 5 Hauptanleitungen volltextig konvertiert (Betriebs-/Wartungsanleitung, Funktionsbeschreibung
|
||||
ILS/OMNIFLO/LoadingLoop), zusammen ~13.500 Textblöcke + mehrere Hundert entduplizierte Bilder.
|
||||
- 9 Verzeichnislisten erzeugt (Zertifikate, Lieferantendoku nach Gewerk, Notstopp, Prüfberichte).
|
||||
- `projekte/fortna/` mit `anlage.json`-Platzhalter angelegt.
|
||||
- **Vollständiger PDF-Build erfolgreich**: `_build/latex/Fortna_Dokumentation_DE.pdf`, ~670 Seiten,
|
||||
`latexmk`-Exit 0, keine LaTeX-Fehler.
|
||||
|
||||
### Umgebung / Build-Voraussetzungen (bereits erfüllt)
|
||||
|
||||
- Sphinx 9.1.0 + myst-parser 5.1.0 im `.venv` (ergänzt in `requirements.txt`).
|
||||
- LaTeX: MiKTeX unter `C:\Program Files\MiKTeX\` (lualatex/latexmk vorhanden).
|
||||
- `conf.py` erzeugt: LaTeX-Engine **lualatex**, **babel** statt polyglossia
|
||||
(polyglossia 2.13 wirft unter lualatex einen bidi-Fehler), **`iconpackage=none`**
|
||||
(FontAwesome7 in MiKTeX bricht unter lualatex ab). Beides in `conf.py` kommentiert.
|
||||
|
||||
### Behobene Extraktionsprobleme
|
||||
|
||||
- **Symbolfont-Zeichen** (Wingdings/Symbol Private-Use-Area, z. B. Aufzählungs-Bullet U+F0B7):
|
||||
in `extract_products.py` via `clean_pua()` auf echte Unicode-Zeichen (•, →, ✓) gemappt,
|
||||
restliche PUA-Zeichen entfernt. Vorher erschienen leere Kästchen im PDF.
|
||||
|
||||
### Bekannte Restpunkte (nicht Teil des Auftrags-Scopes)
|
||||
|
||||
- Zwei **Fremd-Altdateien** aus früheren `convert_to_rst.py`-Testläufen sind noch im Baum und
|
||||
vom Build ausgeschlossen (`conf.py` + `build_index.py` SKIP-Liste):
|
||||
`02_sicherheit/risikobewertung/rb_fortna_...de.rst` (unvollständiger Bildbestand) und
|
||||
`00_inhaltsverzeichnis/contens_obsah_...de.rst` (keine RST-Überschrift). Zwei weitere
|
||||
Altdateien in `10_anhang/` (Motor/Getriebe) sind noch im toctree und zeigen typische
|
||||
Extraktionsartefakte – bei Bedarf mit `fortna_convert_chapters.py` sauber neu erzeugen.
|
||||
- **Tabellen** (z. B. Änderungshistorie) werden weiterhin als Einzelzeilen extrahiert, nicht als
|
||||
RST-Tabelle rekonstruiert (wie im Konzept angekündigt).
|
||||
|
||||
---
|
||||
|
||||
|
||||
## Ausgangslage
|
||||
|
||||
- Reales Fortna-Rohmaterial liegt in `c:\10-Develop\projekte\Fortna\` (zusätzliches
|
||||
Arbeitsverzeichnis dieser Session, **nicht** im Repo). Struktur wie in `doc/Fortna.txt`
|
||||
dokumentiert (00_CONTENTS_NOTES … 05_SUPPLIER_DOC), Versionsstände dort sind aktueller als in
|
||||
`doc/Fortna.txt` (z. B. Betriebsanleitung V2.4 statt V2.3, Wartungsanleitung V2.3, ILS V2.2,
|
||||
OMNIFLO V1.1, LoadingLoop V2.3). `doc/Fortna.txt`/`doc/Fortna-size.txt` sind nur noch als
|
||||
Struktur-Referenz zu verstehen, nicht als Quelle für den Extraktionslauf.
|
||||
- `chapters/` (Base-Repo-Gerüst) existiert bereits vollständig mit `.gitkeep`-Platzhaltern gemäß
|
||||
`doc/kapitelstruktur.md`. `06_steuerung/loading_loop/` wurde testweise mit `convert_to_rst.py`
|
||||
aus der LoadingLoop-Word-Datei befüllt (2 RST + 74 Bilder). Qualität ist noch unzureichend:
|
||||
Kopf-/Fußzeilen (Firmenadresse, Kontaktdaten) landen als normale Absätze im Fließtext,
|
||||
Tabellen (Änderungshistorie) werden zu einzelnen Zeilen ohne Tabellenstruktur zerlegt. Das ist
|
||||
ein bekanntes Problem der aktuellen `_html_to_blocks`-Logik in `convert_to_rst.py` und wird im
|
||||
Zuge dieser Arbeit mit adressiert (siehe Abschnitt "Bekannte Schwachstellen").
|
||||
- Vorhandene Skripte in `lib/` (siehe `doc/lib_skripte.md`):
|
||||
- `convert_to_rst.py`: `.docx`/Word-PDF → RST, erkennt Zielkapitel nur anhand Dateiname-Pattern
|
||||
im Root eines Ordners, kein Verständnis für den verschachtelten Fortna-Sprachordner-Baum.
|
||||
- `extract_products.py`: Produktprogramm-PDFs → Bilder + RST (bereits fertig genutzt für
|
||||
`data/Produktprogramm`).
|
||||
- `jsonFromXlsx.py`, `extract_ids.py`, `project_from_xlsx.py`: Stücklisten-Auswertung, für
|
||||
diese Aufgabe nicht direkt relevant.
|
||||
- Kein Skript kennt bisher die komplette Fortna-Ordnerstruktur (Lieferantendoku-Baum, Layouts,
|
||||
Schaltpläne, Prüfberichte) und keines erzeugt den projektspezifischen Ordner (`anlage.json`,
|
||||
`overrides/`, `images/`) gemäß `doc/Kernkonzepte.md`.
|
||||
|
||||
## Entscheidungen (aus Rückfragen)
|
||||
|
||||
| Frage | Entscheidung |
|
||||
|---|---|
|
||||
| Lieferantendoku (~250 PDFs: SEW, Siemens, Leuze, Cognex, MiTek, Aventics, …) | **Nur Verzeichnisliste**, keine Kopie. RST-Referenztabelle mit Pfaden auf das Originalverzeichnis. |
|
||||
| Sonstige PDFs (Zertifikate, Konfigurationsbeschreibung, Layouts, Schaltpläne, Notstopp/Bereichsstopp, Prüfberichte, Ersatzteilliste) | Gleiche Behandlung wie Lieferantendoku: **nur Verzeichnisliste**, keine Kopie nach `chapters/`. |
|
||||
| Volltext-Konvertierung (Text + Bilder → RST) | **Nur die 5 Hauptanleitungen**: Betriebsanleitung, Wartungsanleitung, Funktionsbeschreibung ILS, Funktionsbeschreibung OMNIFLO, Funktionsbeschreibung LoadingLoop. |
|
||||
| Projektordner-Ort | `projekte/fortna/` **innerhalb dieses Repos** (docu_build), pragmatisch für jetzt; spätere Auslagerung in eigenes Repo bleibt möglich. |
|
||||
| Sprachumfang | **Nur Deutsch** in diesem Durchlauf. Namenskonvention `{name}.de.rst` einhalten, EN/CZ als späterer zweiter Durchlauf vorgesehen. |
|
||||
| Quelle | `c:\10-Develop\projekte\Fortna\` (aktueller Stand), nicht `doc/Fortna.txt`. |
|
||||
| Umgang mit bestehendem `chapters/06_steuerung/loading_loop/` | **Überschreiben/neu erzeugen** – konsistent aus einem Guss statt Altbestand stehen lassen. |
|
||||
|
||||
## Zielstruktur (Ergebnis nach Lauf)
|
||||
|
||||
```text
|
||||
chapters/
|
||||
01_zertifikate/
|
||||
konformitaetserklaerung/index.de.rst # Verzeichnisliste -> Originalpfade
|
||||
konfigurationsbeschreibung/index.de.rst
|
||||
02_sicherheit/ # unverändert (kein Fortna-Rohmaterial 1:1 zuordenbar)
|
||||
03_anlagenbeschreibung/ # unverändert (Modul-Mechanismus, nicht Teil dieser Aufgabe)
|
||||
04_betrieb/betriebsanleitung/
|
||||
betriebsanleitung_500592_135776_v2_4.de.rst # Volltext + Bilder
|
||||
images/img_001.png ...
|
||||
05_wartung/wartungsanleitung/
|
||||
wartungsanleitung_500592_v2_3.de.rst # Volltext + Bilder
|
||||
images/...
|
||||
06_steuerung/
|
||||
ils/funktion_steuerung_ils_500592_v2_2.de.rst # Volltext + Bilder
|
||||
omniflo/funktion_steuerung_omniflo_500592_v1_1.de.rst
|
||||
loading_loop/funktion_steuerung_loadingloop_500592_v2_3.de.rst # neu erzeugt, ersetzt Altbestand
|
||||
07_ersatzteile/index.de.rst # Verzeichnisliste -> Originalpfad SPARE_PARTS PDF
|
||||
08_lieferantendoku/
|
||||
antriebe/index.de.rst # Verzeichnisliste SEW, NORD, Leantechnik, DTS
|
||||
elektrik/index.de.rst # Siemens, Leuze, Cognex, Werma, ...
|
||||
pneumatik/index.de.rst # Aventics, ITS
|
||||
stahlbau/index.de.rst # MiTek (As-Built, Statik, Zertifikate, ...)
|
||||
sicherheitseinrichtungen/index.de.rst # ABS Sicherheitslinie
|
||||
09_technische_unterlagen/
|
||||
layouts/mechanisch/index.de.rst
|
||||
layouts/elektrisch/index.de.rst
|
||||
schaltplaene/index.de.rst
|
||||
notstopp/index.de.rst
|
||||
bereichsstopp/index.de.rst
|
||||
10_anhang/
|
||||
pruefberichte/index.de.rst
|
||||
|
||||
projekte/
|
||||
fortna/
|
||||
anlage.json # Projektmetadaten (Platzhalter/Vorschlag, manuell nachzuschärfen)
|
||||
overrides/ # leer angelegt, Struktur gemäß Kernkonzepte.md
|
||||
images/ # leer angelegt (projektspezifische Bilder, Kundenlogo etc.)
|
||||
README.md # kurze Erläuterung was hier reinkommt
|
||||
```
|
||||
|
||||
Jede `index.de.rst`-Verzeichnisliste enthält eine Tabelle: Dateiname, Hersteller/Kategorie
|
||||
(aus Ordnername abgeleitet), Originalpfad (relativ zu einer konfigurierbaren Basis, z. B.
|
||||
`PV_FORTNA_SOURCE`), Dateigröße. Kein PDF wird kopiert oder eingebettet – das hält den
|
||||
Kapitelbaum schlank und vermeidet Redundanz zum Rohmaterial, das ohnehin an anderer Stelle
|
||||
(Nextcloud/Projektordner) verwaltet wird.
|
||||
|
||||
## Geplante Skripte (in `lib/`)
|
||||
|
||||
### 1. `fortna_inventory.py` (neu)
|
||||
|
||||
Scannt `c:\10-Develop\projekte\Fortna\` rekursiv und baut ein Inventar (JSON) aller Dateien mit:
|
||||
Pfad, Größe, erkannte Sprache (aus Ordnername: `*_DE*`/`*_EN*`/`*_CZ*`/`*original*` → de),
|
||||
vermutetem Fortna-Kapitel (oberste zwei Ebenen) und vermutetem Ziel-Kapitel gemäß Mapping-Tabelle
|
||||
aus `doc/kapitelstruktur.md`. Dient als Kontrollartefakt (`results/fortna_inventory.json`), auf
|
||||
dessen Basis sich beide folgenden Skripte konfigurieren bzw. dessen Output sich manuell prüfen
|
||||
lässt, bevor tatsächlich geschrieben wird (`--dry-run` Default, `--apply` zum Ausführen).
|
||||
|
||||
Grund für ein separates Inventarskript: 387 Dateien über 6 Top-Level-Ordner mit inkonsistenter
|
||||
Sprachordner-Benennung (`01_DE_original`, `01_EN_original`, `1_EN_original` [Tippfehler im
|
||||
Quellbaum], `02_CZ`, `03_CZ_pro_celé_zařízení`, …) – ein Trockenlauf mit Report ist nötig, um
|
||||
Mapping-Lücken zu erkennen, bevor Dateien verschoben/verarbeitet werden.
|
||||
|
||||
### 2. `fortna_convert_chapters.py` (neu)
|
||||
|
||||
Nutzt das Inventar aus Schritt 1 (oder scannt bei Bedarf direkt) und führt zwei Aktionsarten aus:
|
||||
|
||||
- **Volltext-Konvertierung** für die 5 Hauptanleitungen: ruft die vorhandene Konvertierungslogik
|
||||
aus `convert_to_rst.py` wieder, aber mit expliziter Quelldatei-Liste (kein Verzeichnis-Scan)
|
||||
und fest zugeordnetem Zielkapitel (aus der Tabelle unten), statt der generischen
|
||||
`CHAPTER_MAPPING`-Heuristik. Überschreibt bestehende Ziel-RSTs/Bilder vollständig
|
||||
(Ordnerinhalt vorher leeren, dann neu schreiben).
|
||||
- **Verzeichnislisten-Generierung** für alle übrigen Kapitel (Zertifikate, Layouts, Schaltpläne,
|
||||
Notstopp/Bereichsstopp, Prüfberichte, Ersatzteile, Lieferantendoku): läuft über die im
|
||||
Inventar erkannten Dateien je Zielordner und rendert eine `index.de.rst` mit
|
||||
RST-list-table (Dateiname, Pfad, Größe).
|
||||
|
||||
Fest zugeordnete Hauptanleitungen (Quelle → Ziel):
|
||||
|
||||
| Quelldatei (DE, aktuellster Stand in `projekte/Fortna`) | Zielkapitel |
|
||||
|---|---|
|
||||
| `02_INSTRUCTIONS.../01_DE_original/01_BETRIEBSANLEITUNG_500592_135776_V2.4.pdf` | `04_betrieb/betriebsanleitung/` |
|
||||
| `02_INSTRUCTIONS.../01_DE_original/02_WARTUNGSANLEITUNG_500592_V2.3.pdf` | `05_wartung/wartungsanleitung/` |
|
||||
| `02_INSTRUCTIONS.../01_DE_original/03_FUNKTION_STEUERUNG_ILS_500592_V2.2.pdf` | `06_steuerung/ils/` |
|
||||
| `02_INSTRUCTIONS.../01_DE_original/04_FUNKTION_STEUERUNG_OMNIFLO_500592_V1.1.pdf` | `06_steuerung/omniflo/` |
|
||||
| `02_INSTRUCTIONS.../01_DE_original/05_FUNKTION_STEUERUNG_LOADING_LOOP_500592_V2.3.pdf` | `06_steuerung/loading_loop/` (ersetzt Altbestand) |
|
||||
|
||||
Alle fünf sind PDFs (keine `.docx` im Quellordner mehr vorhanden), daher wird der
|
||||
`is_word_pdf()`-Pfad aus `convert_to_rst.py` verwendet (pdfminer-Textextraktion). Die extra
|
||||
`extract_products.py`-Textheuristik (Schriftgrößen-basierte Überschriftenerkennung,
|
||||
Kopf-/Fußzeilen-Ausschluss nach Y-Position) ist für Word-erstellte PDFs wie diese *robuster* als
|
||||
die aktuelle `convert_to_rst.py`-Textheuristik (siehe Bekannte Schwachstellen) – Vorschlag: die
|
||||
Extraktionsroutine aus `extract_products.py` (`extract_text_to_rst`, `_is_noise`,
|
||||
`extract_images`) wiederverwenden/verallgemeinern statt der schwächeren `pdfminer`-Variante aus
|
||||
`convert_to_rst.py`.
|
||||
|
||||
### 3. `fortna_init_project.py` (neu)
|
||||
|
||||
Legt `projekte/fortna/` an: `anlage.json` (Platzhalter mit Projektnummer 500592/KA135776,
|
||||
Sprache `["de"]`, `normen_region` offen als TODO), leere `overrides/`- und `images/`-Ordner mit
|
||||
`.gitkeep`, sowie ein kurzes `README.md`. Einmaliger Lauf, kein Datei-Scan nötig – im
|
||||
Wesentlichen ein Gerüst-Generator.
|
||||
|
||||
## Bekannte Schwachstellen der bisherigen Konvertierung (zu beheben)
|
||||
|
||||
Der Altbestand in `chapters/06_steuerung/loading_loop/` zeigt zwei konkrete Probleme der
|
||||
aktuellen `convert_to_rst.py`-Logik, die für die 5 Hauptanleitungen behoben werden sollten:
|
||||
|
||||
1. **Kopf-/Fußzeilen als Fließtext**: Firmenadresse, Kontaktdaten, Projektnummer erscheinen als
|
||||
normale Absätze mitten im Dokument (weil `pdfminer.high_level.extract_text` keine
|
||||
Positionsinformation liefert, mit der man Kopf-/Fußzeilen herausfiltern könnte).
|
||||
`extract_products.py` löst das bereits über `page.get_text("dict")` mit Y-Positions-Filter
|
||||
(`bbox[1] < 100` / `bbox[3] > page_height - 50`) – diese Technik übernehmen.
|
||||
2. **Tabellen zerfallen in Einzelzeilen**: Die Änderungshistorie-Tabelle wird zu einer Folge
|
||||
einzelner Absätze ohne Tabellenstruktur. Vorschlag für ersten Wurf: Tabellen nicht als
|
||||
RST-Table rekonstruieren (zu fehleranfällig aus PDF-Text), sondern als eingerückten
|
||||
`.. code-block::` oder einfache Aufzählung kennzeichnen, mit `.. todo:: Tabelle manuell
|
||||
nachbearbeiten`-Marker – ehrlich statt falsch-schön.
|
||||
|
||||
## Offene Punkte / Annahmen, die ich getroffen habe
|
||||
|
||||
- Ich gehe davon aus, dass `PV_FORTNA_SOURCE` (oder ein `--source-dir`-Argument) als neue
|
||||
Umgebungsvariable/Parameter eingeführt wird, die auf `c:\10-Develop\projekte\Fortna\` zeigt,
|
||||
da dieser Pfad außerhalb des Repos liegt und nicht über `PV_DATA`/`PV_EXAMPLES` erreichbar ist.
|
||||
- `02_sicherheit/` und `03_anlagenbeschreibung/` bleiben in diesem Durchlauf unangetastet – es
|
||||
gibt keine 1:1-Quelle dafür in `projekte/Fortna/` (Risikobewertung liegt als separate
|
||||
`.docx`-Dateien direkt im Repo-Root von `chapters/`, siehe Git-Status, nicht Teil dieser
|
||||
Aufgabe).
|
||||
- Die generierten `index.de.rst`-Verzeichnislisten verweisen auf absolute oder
|
||||
repo-relative-konfigurierbare Pfade zum Rohmaterial – das bedeutet, das Zielsystem (Sphinx)
|
||||
bekommt keine eigenständig lauffähige Doku ohne Zugriff auf `projekte/Fortna/`. Das ist so
|
||||
gewollt gemäß der Entscheidung "nur Verzeichnisliste", sollte aber vor dem produktiven
|
||||
PDF-Build nochmal bewusst bestätigt werden (spätestens beim ersten `sphinx-build`-Versuch
|
||||
fehlen dann die Downloads/Links).
|
||||
|
||||
## Nächste Schritte
|
||||
|
||||
1. Dieses Konzept abstimmen (insb. Umgang mit `02_sicherheit`/Risikobewertung-Docx im Root von
|
||||
`chapters/`, sowie die Pfad-Referenzierung in den Verzeichnislisten).
|
||||
2. `fortna_inventory.py` implementieren und Trockenlauf-Report gegen `projekte/Fortna/` prüfen.
|
||||
3. `fortna_convert_chapters.py` implementieren (inkl. Wiederverwendung der
|
||||
`extract_products.py`-Textextraktion), auf 5 Hauptanleitungen anwenden, Ergebnis stichprobenhaft
|
||||
gegenlesen.
|
||||
4. `fortna_init_project.py` implementieren, `projekte/fortna/` anlegen.
|
||||
5. `bin/`-Wrapper-Skripte (`.bat`/`.sh`) für alle drei ergänzen, analog bestehender Konvention.
|
||||
Reference in New Issue
Block a user