erste Compare Rumpf Routine impl.

This commit is contained in:
2023-10-19 17:28:47 +02:00
parent a1d8102774
commit 4efff81666
5 changed files with 60 additions and 47 deletions
+20 -21
View File
@@ -6,29 +6,28 @@ Ziel: Alte 3D-Daten aus Creo mit aktuellen SIVAS-Informationen in neuer Konstruk
Die folgenden Schritte müssen vom Entwickler aktuell beschritten werden:
1. Bestandsliste ableiten aus Rule Designer (was ist schon da)
2. BG-Stückliste aus SIVAS ableiten mit dem JSON/CSV-Export Tool
(wurde wiederverwendet, war schon mal programmiert) Vorteil man bekommt alle Unterbaugruppe mit aufgelistet.
3. Vorlagen-Excel für Baugruppenvergleich kopieren und auf aktuellen Fall verknüpfen ( BG-Stücklisten Excel)
4. Aufwandsabschätzung durchführen (Neuaufbau, Halbzeugbearbeitung usw.)
5. Einzelteil-Informationen aus SIVAS in Tabellenform ableiten und als Excel speichern (hierfür die zusätzlichen Spalten vom Jakob)
6. Excel zur Impfung der 3D-Datensätze öffnen.
7. Angaben zum eventuellen Neuaufbau vornehmen. Information kommt aus der Excel Baugruppenvergleich.
8. Falls noch nötig Einzelteil in Rohdatenpool suchen und in Austauschbereich verschieben. (Windows Explorer)
9. Altdateninformation über Funktion „Alle aktualisieren“ auf Datensatz abstimmen, Daten überprüfen und ggf. abändern, falls Fehler vorhanden (dies kann sehr Zeitintensiv sein). Nach Beurteilung Excel speichern.
10. 3D-Modell mit DataPrep-Tool impfen und Log kontrollieren
11. In RuleDesigner den Altdaten-Import starten
12. Nach Anlage des Datensatzes diesen „in Bearbeitung“ nehmen, und das Modell aufbereiten. (Gewinde nachpflegen, Körper optimieren usw.) danach speichern.
13. Datensatz „zur Prüfung“ schicken und „Freigeben
14. SIVAS-Eintrag grob kontrollieren, Zeichnungen in neuen Archiv-Bereich umziehen.
1. Bestandsliste ableiten aus Rule Designer (was ist schon da)
2. Baugruppen-Stückliste aus SIVAS ableiten mit dem JSON/CSV-Export Tool. Vorteil: Man bekommt alle Unterbaugruppen der Baugruppe mit aufgelistet.
3. Vorlagen-Excel für Baugruppenvergleich kopieren und auf aktuellen Fall verknüpfen (Baugruppen-Stücklisten Excel)
4. Aufwandsabschätzung durchführen (Neuaufbau, Halbzeugbearbeitung usw.)
5. Einzelteil-Informationen aus SIVAS in Tabellenform ableiten und als Excel speichern (hierfür die zusätzlichen Spalten vom Jakob)
6. Excel zur Impfung der 3D-Datensätze öffnen.
7. Angaben zum eventuellen Neuaufbau vornehmen. Information kommt aus der Excel Baugruppenvergleich.
8. Falls noch nötig Einzelteil in Rohdatenpool suchen und in Austauschbereich verschieben. (Windows Explorer)
9. Altdateninformation über Funktion „Alle aktualisieren“ auf Datensatz abstimmen, Daten überprüfen und ggf. abändern, falls Fehler vorhanden (dies kann sehr Zeitintensiv sein). Nach Beurteilung Excel speichern.
10. 3D-Modell mit DataPrep-Tool impfen und Log kontrollieren
11. In RuleDesigner den Altdaten-Import starten
12. Nach Anlage des Datensatzes diesen „in Bearbeitung“ nehmen, und das Modell aufbereiten. (Gewinde nachpflegen, Körper optimieren usw.) danach speichern.
13. Datensatz „zur Prüfung“ schicken und „Freigeben“
14. SIVAS-Eintrag grob kontrollieren, Zeichnungen in neuen Archiv-Bereich umziehen.
Vorteile:
- Zeitersparnis durch Wegfall von Händischen Verknüpfungen. (Abgeleitete Excel)
- Zeitersparnis durch einheitliches Programm (Änderungen werden gleich bei allen Usern durchgeführt)
- Fehlerreduktion durch nicht veränderbare Oberfläche (Excel kann unabsichtlich verändert werden)
- Komplexitätsreduzierung (Excelformeln zum Teil recht umständlich, tiefes Excelwissen benötigt, bei Programmcode Wahrscheinlichkeit höher, dass er besser gelesen werden kann)
- Loslösen von Excel als Bedienumgebung, somit nicht an Version oder Hersteller gebunden.
- Problemloseres Ausrollen auf mehrere Benutzer
- Zeitersparnis durch Wegfall von Händischen Verknüpfungen. (Abgeleitete Excel)
- Zeitersparnis durch einheitliches Programm (Änderungen werden gleich bei allen Usern durchgeführt)
- Fehlerreduktion durch nicht veränderbare Oberfläche (Excel kann unabsichtlich verändert werden)
- Komplexitätsreduzierung (Excelformeln zum Teil recht umständlich, tiefes Excelwissen benötigt, bei Programmcode Wahrscheinlichkeit höher, dass er besser gelesen werden kann)
- Loslösen von Excel als Bedienumgebung, somit nicht an Version oder Hersteller gebunden.
- Problemloseres Ausrollen auf mehrere Benutzer
@@ -1,3 +1,5 @@
@echo off
call cremig_setenv.bat
python %CREMIG_LIB%\update_database.py --rd
pause
@@ -1,5 +1,5 @@
call cremig_setenv.bat
@echo off
call cremig_setenv.bat
if "%1" == "-s" (set SIVAS_ID=%2) else (set /p SIVAS_ID=Enter Sivas ID:)
python %CREMIG_LIB%\update_database.py --sivas=%SIVAS_ID%
+6
View File
@@ -0,0 +1,6 @@
call cremig_setenv.bat
@echo off
if "%1" == "-s" (set SIVAS_ID=%2) else (set /p SIVAS_ID=Enter Sivas ID:)
python %CREMIG_LIB%\compare_lists.py --sivas=%SIVAS_ID%
pause
+31 -25
View File
@@ -11,12 +11,39 @@ Dieses Programm holt sich aus
- Sivas eine Liste der gewünschten Teile
"""
def get_rd_database(inPath, outDir, outFileName):
if os.path.isfile(inPath):
outFilePath = os.path.join(outDir, outFileName)
if os.path.isdir(outDir):
shutil.copyfile(inPath, outFilePath)
else:
print(f"no such directory ${outDir} of env CREMIG_DATA")
print("done")
else:
print(f"no such file ${inPath} of environment variable RD_DATABASE_SOURCE. have a look at cremig_setenv.bat")
def get_sivas_databse(exePath, sivasId, outFilePath):
if os.path.isfile(exePath):
if os.path.isdir(outDir):
#subprocess.Popen([exePath, "-o", outDir, "--format json", "-number", sivasId ])
cmd = ' '.join([exePath, "-o", outDir, "--format json", "-number", sivasId ])
os.system(cmd)
else:
print(f"no such executable ${outDir} of env CREMIG_DATA")
if os.path.isfile(outFilePath):
print("done")
else:
print("failure - did not get .json file")
else:
print(f"no such file ${exePath} of environment variable SIVAS_DATABASE_QUERY. have a look at cremig_setenv.bat")
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='fetches data from sivas or ruledesigner fusion', prog='update_database')
parser.add_argument('-s', '--sivas', action='store', help='fetch data of this id from sivas fo local database folder')
parser.add_argument('-r', '--rd', action='store_true', help='fetch list of existing parts from RD Fusion')
parser.add_argument('-r', '--rd', action='store_true', help='fetch list of existing parts from network drive')
args = parser.parse_args()
@@ -24,32 +51,11 @@ if __name__ == '__main__':
if args.rd:
inPath = os.environ.get('RD_DATABASE_SOURCE')
outFileName = "RD_Bestandspool.csv"
if os.path.isfile(inPath):
get_rd_database(inPath, outDir, outFileName)
outFilePath = os.path.join(outDir, outFileName)
if os.path.isdir(outDir):
shutil.copyfile(inPath, outFilePath)
else:
print(f"no such directory ${outDir} of env CREMIG_DATA")
print("done")
else:
print(f"no such file ${inPath} of environment variable RD_DATABASE_SOURCE. have a look at cremig_setenv.bat")
if args.sivas:
exePath = os.environ.get('SIVAS_DATABASE_QUERY')
sivasId = str(args.sivas)
if os.path.isfile(exePath):
outFilePath = os.path.join(outDir, sivasId + ".json")
if os.path.isdir(outDir):
#subprocess.Popen([exePath, "-o", outDir, "--format json", "-number", sivasId ])
cmd = ' '.join([exePath, "-o", outDir, "--format json", "-number", sivasId ])
os.system(cmd)
else:
print(f"no such executable ${outDir} of env CREMIG_DATA")
print("done")
else:
print(f"no such file ${exePath} of environment variable SIVAS_DATABASE_QUERY. have a look at cremig_setenv.bat")
outFilePath = os.path.join(outDir, sivasId + ".json")
get_sivas_databse(exePath, sivasId, outFilePath)