erste Fassung rein

This commit is contained in:
2023-11-29 19:29:21 +01:00
parent 6d4ee17335
commit 7be759fd01
2 changed files with 62 additions and 0 deletions
+6
View File
@@ -0,0 +1,6 @@
@echo off
CALL cremig_setenv.bat
IF NOT EXIST %CREMIG%\.venv CALL %CREMIG_BIN%\install_py.bat
CALL %CREMIG%\.venv\Scripts\activate.bat
python %CREMIG_LIB%\create_tos.py
deactivate
+56
View File
@@ -0,0 +1,56 @@
import argparse
import os
import json
"""
Dieses Programm erzeugt aus den Angaben in der config TOS-Gruppen.json einen Export String zur Pflege des TOS im Ruledesigner Fusion
Pfad zur Datei:\\ruledesigner\RDF_Daten\Config\CampiEsterni.ini
Codebereich liegt bei Calk Link 10
- Alle informieren das RuleDesigner beendet werden muss.
- Auf den Rechner des RuleDesigner Servers einloggen. (nicht der selbe wie der SE-Admin)
- Dort dann die Powershell "Tomcat-IIS_reset" ausführen.
"""
def create_tos_string(config_path):
res = 'CalcMaster=EdmCodVal("'
if os.path.isfile(config_path):
tos_hierarchy = ""
with open(config_path, 'r', encoding='utf-8') as fh:
tos_hierarchy = json.loads(fh.read())
print(tos_hierarchy)
r = tos_hierarchy["root"]
myTuple = ("John", "Peter", "Vicky")
res += '")&EdmCodVal("'.join(myTuple)
res += '")'
return res
else:
print(f"Can't create tos string.")
return None
# CalcMaster=EdmCodVal("TOS-Gruppe")&EdmCodVal("TOS_Schoenenberger_Produkt")&EdmCodVal("TOS_Automation")&EdmCodVal("TOS_Maschinenelement")&EdmCodVal("TOS_Schoenenberger_Komponenten")&EdmCodVal("TOS_Pneumatik")&EdmCodVal("TOS_Konfig")&EdmCodVal("TOS_ILS")&EdmCodVal("TOS_MAS")&EdmCodVal("TOS_Spinnereikomponente")&EdmCodVal("TOS_Betriebsmittel")&EdmCodVal("TOS_Geruest")&EdmCodVal("TOS_FremdTransport")&EdmCodVal("TOS_MAS_Konfig")&EdmCodVal("TOS_Schaltschrank")&EdmCodVal("TOS_Schalt_Einbau")&EdmCodVal("TOS_Dezentral")&EdmCodVal("TOS_Automation_Sensorik")&EdmCodVal("TOS_Kabel")&EdmCodVal("TOS_Installation")&EdmCodVal("TOS_Automation_Sonstiges")&EdmCodVal("TOS_Verbindungselement")&EdmCodVal("TOS_Lager")&EdmCodVal("TOS_Kraft_Drehmoment")&EdmCodVal("TOS_Sicherungselement")&EdmCodVal("TOS_Bedienungselement")&EdmCodVal("TOS_ILS_2")&EdmCodVal("TOS_ILS_Foerderer")&EdmCodVal("TOS_MAS_Fahrstecke")&EdmCodVal("TOS_Trolley")&EdmCodVal("TOS_Trolley_Projekte")&EdmCodVal("TOS_Trolley_Omniflo")&EdmCodVal("TOS_Trolley_Spinnerei")&EdmCodVal("TOS_Trolley_ILS")
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='creates the string for the TOS System in Ruledesigner Fusion', prog='create_tos')
parser.add_argument('-o', '--outfile', action='store', help='put the result into a textfile')
parser.add_argument('-c', '--console', action='store_true', help='put the result to console')
args = parser.parse_args()
out_dir = os.environ.get('CREMIG_DATA')
config_dir = os.environ.get('CREMIG_CFG')
config_path = os.path.join(config_dir, 'TOS-Gruppen.json')
if args.outfile:
res = create_tos_string(config_path)
elif args.console:
res = create_tos_string(config_path)
print(res)
else:
parser.print_help()