|
|
@@ -17,6 +17,7 @@ from cognos11.xml_prettify import prettify_xml
|
|
|
def convert_filename(filename: str) -> str:
|
|
|
# Entferne ungültige Zeichen
|
|
|
filename = re.sub(r'[<>"/|?*]', "", filename)
|
|
|
+ filename = filename.replace("\u2013", "") # Grad-Zeichen
|
|
|
return re.sub(r"[^\x00-\x7F]äöüÄÖÜß", "", filename)
|
|
|
|
|
|
|
|
|
@@ -279,11 +280,16 @@ class c11_api:
|
|
|
res = [r for r in self.reports if r["path"] == folder]
|
|
|
|
|
|
if specs:
|
|
|
- return [self.get_report_specs(r) for r in res]
|
|
|
+ for _ in range(5):
|
|
|
+ res = [self.get_report_specs(r) for r in res]
|
|
|
return res
|
|
|
|
|
|
def get_report_specs(self, report):
|
|
|
+ if "spec" in report:
|
|
|
+ return report
|
|
|
+
|
|
|
report = self.get_report_filename(report)
|
|
|
+
|
|
|
headers = {
|
|
|
"Content-Type": "text/xml; charset=UTF-8",
|
|
|
"X-XSRF-TOKEN": self.headers["X-XSRF-TOKEN"],
|
|
|
@@ -349,7 +355,8 @@ class c11_api:
|
|
|
json.dump(meta, open(filename, "w"), indent=2)
|
|
|
report["cube"] = self.get_cube_name(meta)
|
|
|
report["meta"] = meta
|
|
|
- report["spec"] = parts[2].text
|
|
|
+ if len(meta["optional"]) > 0:
|
|
|
+ report["spec"] = parts[2].text
|
|
|
return report
|
|
|
|
|
|
@staticmethod
|