@enervance/insight-cim-model 0.0.58 → 0.0.59

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/dist/config/westnetz-neplan/neplan-load.config.js +0 -1
  2. package/dist/config/westnetz-neplan/neplan-load.config.js.map +1 -1
  3. package/dist/constants/cim-class-definition.js +0 -10
  4. package/dist/constants/cim-class-definition.js.map +1 -1
  5. package/dist/constants/cim-class-names.d.ts +0 -5
  6. package/dist/constants/cim-class-names.js +0 -5
  7. package/dist/constants/cim-class-names.js.map +1 -1
  8. package/dist/constants/cim.sourcesystem.d.ts +5 -6
  9. package/dist/constants/cim.sourcesystem.js +8 -9
  10. package/dist/constants/cim.sourcesystem.js.map +1 -1
  11. package/dist/converter/integral7/ConverterIntegral7.js +23 -23
  12. package/dist/converter/integral7/converter-i7.d.ts +3 -5
  13. package/dist/converter/integral7/converter-i7.js +495 -460
  14. package/dist/converter/integral7/converter-i7.js.map +1 -1
  15. package/dist/converter/integral7/interface-i7/data-structures-i7.d.ts +3 -2
  16. package/dist/converter/integral7/interface-i7/data-structures-i7.js.map +1 -1
  17. package/dist/converter/integral7/interface-i7/export-frame-i7.d.ts +3 -2
  18. package/dist/converter/integral7/interface-i7/export-frame-i7.js +15 -4
  19. package/dist/converter/integral7/interface-i7/export-frame-i7.js.map +1 -1
  20. package/dist/converter/integral7/model/dl-utils/ISchemaDatabaseKey.d.ts +4 -0
  21. package/dist/converter/integral7/model/dl-utils/ISchemaDatabaseKey.js +3 -0
  22. package/dist/converter/integral7/model/dl-utils/ISchemaDatabaseKey.js.map +1 -0
  23. package/dist/converter/integral7/model/dl-utils/util-functions.d.ts +13 -1
  24. package/dist/converter/integral7/model/dl-utils/util-functions.js +50 -6
  25. package/dist/converter/integral7/model/dl-utils/util-functions.js.map +1 -1
  26. package/dist/converter/integral7/model/interfaces.d.ts +0 -5
  27. package/dist/converter/integral7/model/interfaces.js.map +1 -1
  28. package/dist/converter/integral7/sql/integral.sql.d.ts +1 -87
  29. package/dist/converter/integral7/sql/integral.sql.js +8 -107
  30. package/dist/converter/integral7/sql/integral.sql.js.map +1 -1
  31. package/dist/converter/integral7/utils.js +2 -5
  32. package/dist/converter/integral7/utils.js.map +1 -1
  33. package/dist/etl/etl-neplan/etl-neplan-csv.js +39 -39
  34. package/dist/etl/etl-neplan/etl-neplan-geo.js +16 -16
  35. package/dist/etl/etl-neplan/etl-neplan.js +17 -17
  36. package/dist/index.d.ts +2 -9
  37. package/dist/index.js +3 -17
  38. package/dist/index.js.map +1 -1
  39. package/dist/model/assetinfo/SwitchInfo.js +19 -19
  40. package/dist/model/assetinfo/TapChangerInfo.js +1 -1
  41. package/dist/model/assetinfo/WireInfo.js +3 -3
  42. package/dist/model/assets/Asset.js +30 -30
  43. package/dist/model/assets/AssetDeployment.js +48 -48
  44. package/dist/model/assets/AssetHealthEvent.js +1 -1
  45. package/dist/model/assets/AssetUser.js +1 -1
  46. package/dist/model/assets/Facility.js +37 -37
  47. package/dist/model/common/CoordinateSystem.js +17 -17
  48. package/dist/model/common/Location.js +22 -22
  49. package/dist/model/common/Organisation.js +1 -1
  50. package/dist/model/common/PositionPoint.js +25 -25
  51. package/dist/model/core/BaseVoltage.js +22 -22
  52. package/dist/model/core/ConnectivityNode.js +24 -24
  53. package/dist/model/core/Feeder.js +29 -29
  54. package/dist/model/core/IdentifiedObject.js +1 -1
  55. package/dist/model/core/IdentifiedObject.js.map +1 -1
  56. package/dist/model/core/PSRType.js +43 -43
  57. package/dist/model/core/Substation.js +1 -1
  58. package/dist/model/core/Terminal.js +31 -31
  59. package/dist/model/dc/DCLine.js +17 -17
  60. package/dist/model/dc/DCLineSegment.js +25 -25
  61. package/dist/model/diagram/Diagram.js +20 -20
  62. package/dist/model/diagram/DiagramObject.js +26 -26
  63. package/dist/model/diagram/DiagramObjectPoint.js +47 -47
  64. package/dist/model/equivalents/EquivalentBranch.js +44 -44
  65. package/dist/model/extensions/amprion/assets/AMPRIONAssetCommunicationEquipment.js +23 -23
  66. package/dist/model/extensions/amprion/assets/AMPRIONAssetConstructionMaintenance.js +23 -23
  67. package/dist/model/extensions/amprion/assets/AMPRIONAssetPrimaryEquipment.js +23 -23
  68. package/dist/model/extensions/amprion/assets/AMPRIONAssetSecondaryEquipment.js +23 -23
  69. package/dist/model/extensions/amprion/assets/AMPRIONContractingAuthority.js +23 -23
  70. package/dist/model/extensions/amprion/assets/AMPRIONCountry.js +19 -19
  71. package/dist/model/extensions/amprion/assets/AMPRIONFacility.js +60 -60
  72. package/dist/model/extensions/amprion/assets/AMPRIONLeaseholder.js +23 -23
  73. package/dist/model/extensions/amprion/assets/AMPRIONLineDistrict.js +23 -23
  74. package/dist/model/extensions/amprion/assets/AMPRIONServiceProvider.js +23 -23
  75. package/dist/model/extensions/amprion/assets/AMPRIONSpanField.js +49 -49
  76. package/dist/model/extensions/amprion/assets/AMPRIONState.js +21 -21
  77. package/dist/model/extensions/amprion/assets/AMPRIONTower.js +51 -51
  78. package/dist/model/extensions/amprion/assets/AMPRIONWire.js +68 -68
  79. package/dist/model/extensions/amprion/core/AMPRIONBay.js +26 -26
  80. package/dist/model/extensions/amprion/core/AMPRIONSubstation.js +25 -25
  81. package/dist/model/extensions/amprion/model/AMPRIONModel.d.ts +0 -16
  82. package/dist/model/extensions/amprion/model/AMPRIONModel.js +0 -32
  83. package/dist/model/extensions/amprion/model/AMPRIONModel.js.map +1 -1
  84. package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.js +1 -1
  85. package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerEndInfo.js +1 -1
  86. package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerInfo.js +1 -1
  87. package/dist/model/extensions/enervance/assetinfo/EVStationInfo.js +1 -1
  88. package/dist/model/extensions/enervance/assetinfo/EVTapChangerInfo.js +1 -1
  89. package/dist/model/extensions/enervance/assetinfo/EVWireInfo.js +38 -38
  90. package/dist/model/extensions/enervance/assets/EVWireObject.js +1 -1
  91. package/dist/model/extensions/enervance/model/EVModel.d.ts +2 -2
  92. package/dist/model/extensions/enervance/model/EVModel.js +1 -1
  93. package/dist/model/extensions/enervance/model/EVModel.js.map +1 -1
  94. package/dist/model/extensions/enervance/wires/EVACLineSegment.js +1 -1
  95. package/dist/model/extensions/enervance/wires/EVACLineSubSegment.js +32 -32
  96. package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js +33 -33
  97. package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js +40 -40
  98. package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js +31 -31
  99. package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js +34 -34
  100. package/dist/model/extensions/neplan-westnetz/wires/WNACLineSegment.js +1 -1
  101. package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js +1 -1
  102. package/dist/model/generation/GeneratingUnit.js +36 -36
  103. package/dist/model/generation/WindGeneratingUnit.js +38 -38
  104. package/dist/model/loadmodel/ConformLoad.js +33 -33
  105. package/dist/model/loadmodel/ConformLoadGroup.js +22 -22
  106. package/dist/model/loadmodel/LoadArea.js +21 -21
  107. package/dist/model/loadmodel/SubLoadArea.js +22 -22
  108. package/dist/model/model/Model.d.ts +1 -6
  109. package/dist/model/model/Model.js +0 -12
  110. package/dist/model/model/Model.js.map +1 -1
  111. package/dist/model/model-operations/ModelOperationDescription.d.ts +1 -5
  112. package/dist/model/model-operations/ModelOperationDescription.js +1 -36
  113. package/dist/model/model-operations/ModelOperationDescription.js.map +1 -1
  114. package/dist/model/operationallimits/CurrentLimit.js +19 -19
  115. package/dist/model/operationallimits/OperationalLimitSet.js +18 -18
  116. package/dist/model/operationallimits/OperationalLimitType.js +16 -16
  117. package/dist/model/statevariables/SvPowerFlow.js +20 -20
  118. package/dist/model/statevariables/SvVoltage.js +1 -1
  119. package/dist/model/topology/TopologicalIsland.js +1 -1
  120. package/dist/model/topology/TopologicalNode.js +25 -25
  121. package/dist/model/wires/Breaker.js +34 -34
  122. package/dist/model/wires/BusbarSection.js +1 -1
  123. package/dist/model/wires/Clamp.js +1 -1
  124. package/dist/model/wires/Disconnector.js +31 -31
  125. package/dist/model/wires/EnergyConsumer.js +32 -32
  126. package/dist/model/wires/ExternalNetworkInjection.js +45 -45
  127. package/dist/model/wires/Ground.js +1 -1
  128. package/dist/model/wires/GroundDisconnector.js +1 -1
  129. package/dist/model/wires/Junction.js +20 -20
  130. package/dist/model/wires/Line.js +23 -23
  131. package/dist/model/wires/LinearShuntCompensator.js +36 -36
  132. package/dist/model/wires/LoadBreakSwitch.js +1 -1
  133. package/dist/model/wires/PetersenCoil.js +34 -34
  134. package/dist/model/wires/PowerTransformer.js +27 -27
  135. package/dist/model/wires/PowerTransformerEnd.js +31 -31
  136. package/dist/model/wires/Recloser.js +1 -1
  137. package/dist/model/wires/RegulatingControl.js +31 -31
  138. package/dist/model/wires/SeriesCompensator.js +36 -36
  139. package/dist/model/wires/Switch.js +32 -32
  140. package/dist/model/wires/SynchronousMachine.js +1 -1
  141. package/dist/package.json +16 -16
  142. package/dist/util/cim.model.util.js +4 -4
  143. package/dist/util/cim.model.util.js.map +1 -1
  144. package/package.json +94 -94
  145. package/dist/model/extensions/amprion/operationallimits/AMPRIONMaxInstrumentalCurrentLimit.d.ts +0 -8
  146. package/dist/model/extensions/amprion/operationallimits/AMPRIONMaxInstrumentalCurrentLimit.js +0 -45
  147. package/dist/model/extensions/amprion/operationallimits/AMPRIONMaxInstrumentalCurrentLimit.js.map +0 -1
  148. package/dist/model/extensions/amprion/operationallimits/AMPRIONProtectionCurrentLimit.d.ts +0 -8
  149. package/dist/model/extensions/amprion/operationallimits/AMPRIONProtectionCurrentLimit.js +0 -45
  150. package/dist/model/extensions/amprion/operationallimits/AMPRIONProtectionCurrentLimit.js.map +0 -1
  151. package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalConnectionCurrentLimit.d.ts +0 -8
  152. package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalConnectionCurrentLimit.js +0 -45
  153. package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalConnectionCurrentLimit.js.map +0 -1
  154. package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalCurrentLimit.d.ts +0 -8
  155. package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalCurrentLimit.js +0 -45
  156. package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalCurrentLimit.js.map +0 -1
@@ -141,7 +141,7 @@ class ConverterI7 {
141
141
  this.exportFrames = new Map();
142
142
  this.exportFramesBoundary = new Map();
143
143
  this.cimModelDefault = new INTEGRALModel_1.INTEGRALModel();
144
- this.availableTableNames = new Map();
144
+ this.availableTableNames = [];
145
145
  this.integralID2Type = new Map();
146
146
  this.coordinateSystem = 'EPSG:4326';
147
147
  this.integralID2UUID = new Map();
@@ -396,10 +396,6 @@ class ConverterI7 {
396
396
  yield this.convertSVC(cimModel, soSfKnoten);
397
397
  logExecutionTime(this.logger, startTime, `convertSVC`);
398
398
  }
399
- startTime = perf_hooks_1.performance.now();
400
- if (standortIDs.length)
401
- yield this.convertSchaltanlagen(cimModel, integral7Modell, standortIDs, defaultValuesConfig);
402
- logExecutionTime(this.logger, startTime, `convertSchaltanlagen(${standortIDs.length})`);
403
399
  if (knotenSoIDs.length > 0 || integral7Modell.knotenSfIDs.length > 0) {
404
400
  startTime = perf_hooks_1.performance.now();
405
401
  yield this.convertCsConverterDC(cimModel, integral7Modell, soSfKnoten);
@@ -433,65 +429,70 @@ class ConverterI7 {
433
429
  startTime = perf_hooks_1.performance.now();
434
430
  yield this.convertNetzvarianten(cimModel, integral7Modell);
435
431
  logExecutionTime(this.logger, startTime, `convertNetzvarianten`);
432
+ console.log(this.exportFramesBoundary);
436
433
  for (const key of integral7Modell.i7SchemaID2UUID.keys()) {
437
434
  startTime = perf_hooks_1.performance.now();
438
- const convertAll = yield this.convertSchemaStandorte(cimModel, integral7Modell, standortIDs, key, constants_1.NsgConstants.onlyEingeblendet);
435
+ yield this.convertSchemaStandorte(cimModel, integral7Modell, standortIDs, key, constants_1.NsgConstants.onlyEingeblendet);
439
436
  logExecutionTime(this.logger, startTime, `convertSchemaStandorte`);
440
- if (convertAll) {
441
- startTime = perf_hooks_1.performance.now();
442
- yield this.convertSchemaKnotenSo(cimModel, integral7Modell, knotenSoIDs, key, constants_1.NsgConstants.onlyEingeblendet);
443
- logExecutionTime(this.logger, startTime, `convertSchemaKnotenSo`);
444
- startTime = perf_hooks_1.performance.now();
445
- logExecutionTime(this.logger, startTime, `convertSchemaHgueKnotenSo`);
446
- startTime = perf_hooks_1.performance.now();
447
- yield this.convertSchemaSchaltanlage(cimModel, integral7Modell, schaltanlagenIDs, key, constants_1.NsgConstants.onlyEingeblendet);
448
- logExecutionTime(this.logger, startTime, `convertSchemaSchaltanlage`);
449
- startTime = perf_hooks_1.performance.now();
450
- yield this.convertSchemaSchaltanlagenAbschnitte(cimModel, integral7Modell, schaltanlagenAbschnittIDs, key, constants_1.NsgConstants.onlyEingeblendet);
451
- logExecutionTime(this.logger, startTime, `convertSchemaSchaltanlagenAbschnitte`);
452
- startTime = perf_hooks_1.performance.now();
453
- yield this.convertSchemaSammelschienenAbschnitte(cimModel, integral7Modell, schaltanlagenAbschnittIDs, key, constants_1.NsgConstants.onlyEingeblendet);
454
- logExecutionTime(this.logger, startTime, `convertSchemaSammelschienenAbschnitte`);
455
- startTime = perf_hooks_1.performance.now();
456
- yield this.convertSchemaSchaltfeldElemente(cimModel, integral7Modell, schaltfeldIDs, key, constants_1.NsgConstants.onlyEingeblendet);
457
- logExecutionTime(this.logger, startTime, `convertSchemaSchaltfeldElemente`);
458
- startTime = perf_hooks_1.performance.now();
459
- yield this.convertSchemaQuerkupplungen(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
460
- logExecutionTime(this.logger, startTime, `convertSchemaQuerkupplungen`);
461
- startTime = perf_hooks_1.performance.now();
462
- yield this.convertSchemaLaengskupplungen(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
463
- logExecutionTime(this.logger, startTime, `convertSchemaLaengskupplungen`);
464
- startTime = perf_hooks_1.performance.now();
465
- yield this.convertSchemaTransformatoren2W(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
466
- logExecutionTime(this.logger, startTime, `convertSchemaTransformatoren2W`);
467
- startTime = perf_hooks_1.performance.now();
468
- yield this.convertSchemaTransformatoren3W(cimModel, integral7Modell, standortIDs, key, constants_1.NsgConstants.onlyEingeblendet);
469
- logExecutionTime(this.logger, startTime, `convertSchemaTransformatoren3W`);
470
- startTime = perf_hooks_1.performance.now();
471
- yield this.convertSchemaQuerzweige(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
472
- logExecutionTime(this.logger, startTime, `convertSchemaQuerzweige`);
473
- startTime = perf_hooks_1.performance.now();
474
- logExecutionTime(this.logger, startTime, `convertSchemaSternpunktSchiene`);
475
- startTime = perf_hooks_1.performance.now();
476
- logExecutionTime(this.logger, startTime, `convertSchemaSternpunktKnoten`);
477
- startTime = perf_hooks_1.performance.now();
478
- yield this.convertSchemaLeitungen(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
479
- logExecutionTime(this.logger, startTime, `convertSchemaLeitungen`);
480
- integral7Modell.integralLaengskupplungen.clear();
481
- integral7Modell.integralHgueLeitungen.clear();
437
+ startTime = perf_hooks_1.performance.now();
438
+ yield this.convertSchemaKnotenSo(cimModel, integral7Modell, knotenSoIDs, key, constants_1.NsgConstants.onlyEingeblendet);
439
+ logExecutionTime(this.logger, startTime, `convertSchemaKnotenSo`);
440
+ startTime = perf_hooks_1.performance.now();
441
+ logExecutionTime(this.logger, startTime, `convertSchemaHgueKnotenSo`);
442
+ startTime = perf_hooks_1.performance.now();
443
+ yield this.convertSchemaSchaltanlage(cimModel, integral7Modell, schaltanlagenIDs, key, constants_1.NsgConstants.onlyEingeblendet);
444
+ logExecutionTime(this.logger, startTime, `convertSchemaSchaltanlage`);
445
+ startTime = perf_hooks_1.performance.now();
446
+ yield this.convertSchemaSchaltanlagenAbschnitte(cimModel, integral7Modell, schaltanlagenAbschnittIDs, key, constants_1.NsgConstants.onlyEingeblendet);
447
+ logExecutionTime(this.logger, startTime, `convertSchemaSchaltanlagenAbschnitte`);
448
+ startTime = perf_hooks_1.performance.now();
449
+ yield this.convertSchemaSammelschienenAbschnitte(cimModel, integral7Modell, schaltanlagenAbschnittIDs, key, constants_1.NsgConstants.onlyEingeblendet);
450
+ logExecutionTime(this.logger, startTime, `convertSchemaSammelschienenAbschnitte`);
451
+ startTime = perf_hooks_1.performance.now();
452
+ yield this.convertSchemaSchaltfeldElemente(cimModel, integral7Modell, schaltfeldIDs, key, constants_1.NsgConstants.onlyEingeblendet);
453
+ logExecutionTime(this.logger, startTime, `convertSchemaSchaltfeldElemente`);
454
+ startTime = perf_hooks_1.performance.now();
455
+ yield this.convertSchemaQuerkupplungen(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
456
+ logExecutionTime(this.logger, startTime, `convertSchemaQuerkupplungen`);
457
+ startTime = perf_hooks_1.performance.now();
458
+ yield this.convertSchemaLaengskupplungen(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
459
+ logExecutionTime(this.logger, startTime, `convertSchemaLaengskupplungen`);
460
+ startTime = perf_hooks_1.performance.now();
461
+ yield this.convertSchemaTransformatoren2W(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
462
+ logExecutionTime(this.logger, startTime, `convertSchemaTransformatoren2W`);
463
+ startTime = perf_hooks_1.performance.now();
464
+ yield this.convertSchemaTransformatoren3W(cimModel, integral7Modell, standortIDs, key, constants_1.NsgConstants.onlyEingeblendet);
465
+ logExecutionTime(this.logger, startTime, `convertSchemaTransformatoren3W`);
466
+ startTime = perf_hooks_1.performance.now();
467
+ yield this.convertSchemaQuerzweige(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
468
+ logExecutionTime(this.logger, startTime, `convertSchemaQuerzweige`);
469
+ startTime = perf_hooks_1.performance.now();
470
+ logExecutionTime(this.logger, startTime, `convertSchemaSternpunktSchiene`);
471
+ startTime = perf_hooks_1.performance.now();
472
+ logExecutionTime(this.logger, startTime, `convertSchemaSternpunktKnoten`);
473
+ startTime = perf_hooks_1.performance.now();
474
+ yield this.convertSchemaLeitungen(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
475
+ logExecutionTime(this.logger, startTime, `convertSchemaLeitungen`);
476
+ startTime = perf_hooks_1.performance.now();
477
+ yield this.convertSchemaKnotenSo2(cimModel, integral7Modell, [...integral7Modell.integralAdditionalGrenzknotenIDs.values()], key, constants_1.NsgConstants.onlyEingeblendet);
478
+ logExecutionTime(this.logger, startTime, `convertSchemaKnotenSo`);
479
+ integral7Modell.integralLaengskupplungen.clear();
480
+ integral7Modell.integralHgueLeitungen.clear();
481
+ integral7Modell.integralNSGSchaltanlage.clear();
482
+ integral7Modell.integralNSGSchaltfeld.clear();
483
+ integral7Modell.integralNSGSAAbschnitt.clear();
484
+ integral7Modell.integralNSGSsab.clear();
485
+ integral7Modell.integralNSGStpSchiene.clear();
486
+ integral7Modell.integralNSGStpKnoten.clear();
487
+ integral7Modell.integralNSGTrafos.clear();
488
+ integral7Modell.integralNSGQuerzweig.clear();
489
+ integral7Modell.integralAdditionalGrenzknotenIDs.clear();
490
+ if (!frame.boundary) {
491
+ integral7Modell.integralNSGStandorte.clear();
482
492
  integral7Modell.i7ID2UUID.clear();
483
493
  integral7Modell.i7SchemaID2Type.clear();
484
- integral7Modell.integralNSGSchaltanlage.clear();
485
- integral7Modell.integralNSGSchaltfeld.clear();
486
- integral7Modell.integralNSGSAAbschnitt.clear();
487
- integral7Modell.integralNSGSsab.clear();
488
- integral7Modell.integralNSGStpSchiene.clear();
489
- integral7Modell.integralNSGStpKnoten.clear();
490
- integral7Modell.integralNSGTrafos.clear();
491
- integral7Modell.integralNSGQuerzweig.clear();
492
- }
493
- integral7Modell.integralNSGStandorte.clear();
494
- integral7Modell.placedCIMObjectsForDLProfil.clear();
494
+ integral7Modell.placedCIMObjectsForDLProfil.clear();
495
+ }
495
496
  }
496
497
  });
497
498
  }
@@ -513,6 +514,7 @@ class ConverterI7 {
513
514
  }
514
515
  }
515
516
  else {
517
+ console.log(`Terminal without connection ${terminalUUID}`);
516
518
  }
517
519
  }
518
520
  }
@@ -531,6 +533,7 @@ class ConverterI7 {
531
533
  }
532
534
  }
533
535
  else {
536
+ console.log(`Terminal without connection ${terminalUUID}`);
534
537
  }
535
538
  }
536
539
  }
@@ -549,6 +552,7 @@ class ConverterI7 {
549
552
  }
550
553
  }
551
554
  else {
555
+ console.log(`Terminal without connection ${terminalUUID}`);
552
556
  }
553
557
  }
554
558
  }
@@ -637,7 +641,7 @@ class ConverterI7 {
637
641
  convertNetzvarianten(cimModel, integral7) {
638
642
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
639
643
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NETZVARIANTEN)) {
640
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NETZVARIANTEN, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NETZVARIANTEN), [2]));
644
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NETZVARIANTEN, [2]));
641
645
  for (const i7Data of result) {
642
646
  const diagram = new Diagram_1.Diagram(utils_1.getUUID(i7Data.guid), i7Data.name, String(i7Data.id));
643
647
  diagram.orientation = OrientationKind_1.OrientationKind.negative;
@@ -653,37 +657,57 @@ class ConverterI7 {
653
657
  }
654
658
  convertSchemaStandorte(cimModel, integral7, standortIDs, variantenNr, onlyEingeblendet = true) {
655
659
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
656
- let retVal = false;
657
660
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_STANDORT) && standortIDs.length > 0) {
658
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_STANDORT, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_STANDORT), standortIDs));
661
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_STANDORT, standortIDs));
659
662
  const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(result, variantenNr, onlyEingeblendet);
660
663
  for (const i7Data of filteredResults) {
661
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_STANDORT);
664
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_STANDORT);
662
665
  const standort = integral7.integralStandorte.get(i7Data.standort);
663
666
  if (standort) {
664
667
  standort.standortNsg = new StandortNsg_1.StandortNsgImpl(i7Data);
665
668
  integral7.integralNSGStandorte.set(i7Data.id, standort.standortNsg);
666
669
  }
667
670
  }
668
- if (filteredResults.length > 0) {
669
- retVal = true;
670
- }
671
671
  }
672
672
  else {
673
673
  this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_STANDORT} ist nicht vorhanden.`);
674
674
  }
675
- return retVal;
676
675
  });
677
676
  }
678
677
  convertSchemaKnotenSo(cimModel, integral7, knotenSoIDs, variantenNr, onlyEingeblendet = true) {
679
678
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
680
679
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) && knotenSoIDs.length > 0) {
681
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_KNOTEN_SO, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO), knotenSoIDs));
680
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_KNOTEN_SO, knotenSoIDs));
681
+ const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(result, variantenNr, onlyEingeblendet);
682
+ for (const i7Data of filteredResults) {
683
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO);
684
+ const cimObjectUUID = this.integralID2UUID.get(i7Data.knotenso);
685
+ const nsgStandort = integral7.integralNSGStandorte.get(i7Data.nsgso);
686
+ if (nsgStandort === undefined) {
687
+ continue;
688
+ }
689
+ util_functions_1.DLUtilFunctions.convertNsgKnoten(cimModel, integral7, i7Data, cimObjectUUID, constants_1.NsgConstants.KNOTENSO_WIDTH, constants_1.NsgConstants.KNOTENSO_HEIGHT, nsgStandort.xrel, nsgStandort.yrel);
690
+ }
691
+ }
692
+ else {
693
+ this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO} ist nicht vorhanden.`);
694
+ }
695
+ });
696
+ }
697
+ convertSchemaKnotenSo2(cimModel, integral7, nsgKnotenSoIDs, variantenNr, onlyEingeblendet = true) {
698
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
699
+ if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) && nsgKnotenSoIDs.length > 0) {
700
+ const result = yield this.mysqlController.execQuery(`SELECT variantennr, id, xrel, yrel, angezeigt, eingeblendet, knotenso, nsgso FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.NSG_KNOTEN_SO]} WHERE ${integral_sql_1.getWhereIDs('id', nsgKnotenSoIDs.map(arg => util_functions_1.DLUtilFunctions.parseSchemaKey(arg).id)).join(' OR ')};`);
682
701
  const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(result, variantenNr, onlyEingeblendet);
683
702
  for (const i7Data of filteredResults) {
684
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO);
703
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO);
685
704
  const cimObjectUUID = this.integralID2UUID.get(i7Data.knotenso);
686
- util_functions_1.DLUtilFunctions.convertNsgKnoten(cimModel, integral7, i7Data, cimObjectUUID, constants_1.NsgConstants.KNOTENSO_WIDTH, constants_1.NsgConstants.KNOTENSO_HEIGHT);
705
+ const resultNsgStandort = yield this.mysqlController.execQuery(`SELECT variantennr, id, xrel, yrel, angezeigt, eingeblendet, standort FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.NSG_STANDORT]} WHERE ${integral_sql_1.getWhereIDs('id', [i7Data.nsgso]).join(' OR ')};`);
706
+ const filteredResultNsgStandort = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(resultNsgStandort, variantenNr, onlyEingeblendet);
707
+ if (filteredResultNsgStandort.length === 0) {
708
+ continue;
709
+ }
710
+ util_functions_1.DLUtilFunctions.convertNsgKnoten(cimModel, integral7, i7Data, cimObjectUUID, constants_1.NsgConstants.KNOTENSO_WIDTH, constants_1.NsgConstants.KNOTENSO_HEIGHT, filteredResultNsgStandort[0].xrel, filteredResultNsgStandort[0].yrel);
687
711
  }
688
712
  }
689
713
  else {
@@ -695,12 +719,16 @@ class ConverterI7 {
695
719
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
696
720
  const nsgStandortIDs = [...integral7.integralNSGStandorte.keys()];
697
721
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE) && nsgStandortIDs.length > 0) {
698
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_KNOTEN_HGUE, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE), nsgStandortIDs));
722
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_KNOTEN_HGUE, nsgStandortIDs));
699
723
  const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(result, variantenNr, onlyEingeblendet);
700
724
  for (const i7Data of filteredResults) {
701
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE);
725
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE);
702
726
  const cimObjectUUID = this.integralID2UUID.get(i7Data.knotenso);
703
- util_functions_1.DLUtilFunctions.convertNsgKnoten(cimModel, integral7, i7Data, cimObjectUUID, constants_1.NsgConstants.HGUE_KNOTENSO_WIDTH, constants_1.NsgConstants.HGUE_KNOTENSO_HEIGHT);
727
+ const nsgStandort = integral7.integralNSGStandorte.get(i7Data.nsgso);
728
+ if (nsgStandort === undefined) {
729
+ continue;
730
+ }
731
+ util_functions_1.DLUtilFunctions.convertNsgKnoten(cimModel, integral7, i7Data, cimObjectUUID, constants_1.NsgConstants.HGUE_KNOTENSO_WIDTH, constants_1.NsgConstants.HGUE_KNOTENSO_HEIGHT, nsgStandort.xrel, nsgStandort.yrel);
704
732
  }
705
733
  }
706
734
  else {
@@ -711,10 +739,10 @@ class ConverterI7 {
711
739
  convertSchemaSchaltanlage(cimModel, integral7, saIDs, variantenNr, onlyEingeblendet = true) {
712
740
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
713
741
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGE) && saIDs.length > 0) {
714
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_SCHALTANLAGE, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGE), saIDs));
742
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_SCHALTANLAGE, saIDs));
715
743
  const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(result, variantenNr, onlyEingeblendet);
716
744
  for (const i7Data of filteredResults) {
717
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGE);
745
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGE);
718
746
  const schaltanlage = integral7.integralSchaltanlagen.get(i7Data.schaltanlage);
719
747
  if (schaltanlage) {
720
748
  schaltanlage.schaltanlageNsg = new SchaltanlageNSG_1.SchaltanlageNsgImpl(i7Data);
@@ -730,10 +758,10 @@ class ConverterI7 {
730
758
  convertSchemaSchaltanlagenAbschnitte(cimModel, integral7, schaltanlagenabschnittIDs, variantenNr, onlyEingeblendet = true) {
731
759
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
732
760
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT) && schaltanlagenabschnittIDs.length > 0) {
733
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_SCHALTANLAGENABSCHNITT, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT), schaltanlagenabschnittIDs));
761
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_SCHALTANLAGENABSCHNITT, schaltanlagenabschnittIDs));
734
762
  const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(result, variantenNr, onlyEingeblendet);
735
763
  for (const i7Data of filteredResults) {
736
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT);
764
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT);
737
765
  const saabschnitt = integral7.integralSchaltanlagenAbschnitte.get(i7Data.saabschnitt);
738
766
  if (saabschnitt) {
739
767
  saabschnitt.schaltanlagenabschnittNsg = new SchaltanlagenabschnittNsg_1.SchaltanlagenabschnittNsg(i7Data);
@@ -794,40 +822,41 @@ class ConverterI7 {
794
822
  for (const queryResult of filteredResults) {
795
823
  const nsgSa = integral7.integralNSGSchaltanlage.get(queryResult.nsgsa);
796
824
  const nsgSo = integral7.integralNSGStandorte.get(nsgSa.nsgsoid);
797
- if (nsgSa !== undefined && nsgSo !== undefined) {
798
- const leftOffset = queryResult.nslots * constants_1.NsgConstants.HORIZONTAL_OFFSET;
799
- const topOffset = queryResult.posSSAB * constants_1.NsgConstants.VERTICAL_OFFSET;
800
- const ssabLength = queryResult.laenge * constants_1.NsgConstants.HORIZONTAL_OFFSET;
801
- let pointTopLeft = new DiagramObjectPoint_1.DiagramObjectPoint(leftOffset, topOffset, 1);
802
- let pointBottomRight = new DiagramObjectPoint_1.DiagramObjectPoint(leftOffset + ssabLength, topOffset, 2);
803
- let saaShiftOffset = 0;
804
- for (const tempNsgSaa of nsgSa.saabNsg) {
805
- saaShiftOffset = saaShiftOffset < (tempNsgSaa.nslots + tempNsgSaa.laenge) ? (tempNsgSaa.nslots + tempNsgSaa.laenge) : saaShiftOffset;
806
- }
807
- const points = [];
808
- points.push(pointTopLeft, pointBottomRight);
809
- for (const p of points) {
810
- util_functions_1.DLUtilFunctions.rotateDiagramObjectPoint(p, -90 * nsgSa.ausrichtung);
811
- p.xPosition += nsgSo.xrel + nsgSa.xrel + (nsgSa.ausrichtung === 2 ? saaShiftOffset * constants_1.NsgConstants.HORIZONTAL_OFFSET : 0);
812
- p.yPosition += nsgSo.yrel + nsgSa.yrel + (nsgSa.ausrichtung === 3 ? saaShiftOffset * constants_1.NsgConstants.HORIZONTAL_OFFSET : 0);
813
- }
814
- integral7.integralNSGSsab.set(queryResult.idSSAB, queryResult);
815
- const diagramObject = new DiagramObject_1.DiagramObject(utils_1.getUUID(''), 'SSAB Diagram');
816
- diagramObject.rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSa(nsgSa.ausrichtung);
817
- utils_schema_1.copyDiagramObjectPoints(diagramObject, points);
818
- const cnUUID = this.integralID2UUID.get(queryResult.idSSAB);
819
- const connectivityNode = cimModel.getConnectivityNode(cnUUID);
820
- diagramObject.setIdentifiedObject(connectivityNode);
821
- const diagramUUID = integral7.i7SchemaID2UUID.get(nsgSa.variantennr);
822
- const diagram = cimModel.getDiagram(diagramUUID);
823
- if (diagram) {
824
- diagramObject.setDiagram(diagram);
825
- diagram.addDiagramObject(diagramObject);
826
- integral7.placedCIMObjectsForDLProfil.set(cnUUID, diagramObject);
827
- }
828
- else {
829
- this.logger.debug(`SSAB/DiagramObject ${diagramObject.mrid} hat kein Diagram-Objekt.`);
830
- }
825
+ if (nsgSo === undefined) {
826
+ continue;
827
+ }
828
+ const leftOffset = queryResult.nslots * constants_1.NsgConstants.HORIZONTAL_OFFSET;
829
+ const topOffset = queryResult.posSSAB * constants_1.NsgConstants.VERTICAL_OFFSET;
830
+ const ssabLength = queryResult.laenge * constants_1.NsgConstants.HORIZONTAL_OFFSET;
831
+ let pointTopLeft = new DiagramObjectPoint_1.DiagramObjectPoint(leftOffset, topOffset, 1);
832
+ let pointBottomRight = new DiagramObjectPoint_1.DiagramObjectPoint(leftOffset + ssabLength, topOffset, 2);
833
+ let saaShiftOffset = 0;
834
+ for (const tempNsgSaa of nsgSa.saabNsg) {
835
+ saaShiftOffset = saaShiftOffset < (tempNsgSaa.nslots + tempNsgSaa.laenge) ? (tempNsgSaa.nslots + tempNsgSaa.laenge) : saaShiftOffset;
836
+ }
837
+ const points = [];
838
+ points.push(pointTopLeft, pointBottomRight);
839
+ for (const p of points) {
840
+ util_functions_1.DLUtilFunctions.rotateDiagramObjectPoint(p, -90 * nsgSa.ausrichtung);
841
+ p.xPosition += nsgSo.xrel + nsgSa.xrel + (nsgSa.ausrichtung === 2 ? saaShiftOffset * constants_1.NsgConstants.HORIZONTAL_OFFSET : 0);
842
+ p.yPosition += nsgSo.yrel + nsgSa.yrel + (nsgSa.ausrichtung === 3 ? saaShiftOffset * constants_1.NsgConstants.HORIZONTAL_OFFSET : 0);
843
+ }
844
+ integral7.integralNSGSsab.set(queryResult.idSSAB, queryResult);
845
+ const diagramObject = new DiagramObject_1.DiagramObject(utils_1.getUUID(''), 'SSAB Diagram');
846
+ diagramObject.rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSa(nsgSa.ausrichtung);
847
+ utils_schema_1.copyDiagramObjectPoints(diagramObject, points);
848
+ const cnUUID = this.integralID2UUID.get(queryResult.idSSAB);
849
+ const connectivityNode = cimModel.getConnectivityNode(cnUUID);
850
+ diagramObject.setIdentifiedObject(connectivityNode);
851
+ const diagramUUID = integral7.i7SchemaID2UUID.get(nsgSa.variantennr);
852
+ const diagram = cimModel.getDiagram(diagramUUID);
853
+ if (diagram) {
854
+ diagramObject.setDiagram(diagram);
855
+ diagram.addDiagramObject(diagramObject);
856
+ integral7.placedCIMObjectsForDLProfil.set(cnUUID, diagramObject);
857
+ }
858
+ else {
859
+ this.logger.debug(`SSAB/DiagramObject ${diagramObject.mrid} hat kein Diagram-Objekt.`);
831
860
  }
832
861
  }
833
862
  });
@@ -843,9 +872,8 @@ class ConverterI7 {
843
872
  ];
844
873
  const i7checkedTables = this.filterTablesByAvailability(i7relevantTables);
845
874
  const i7knotenBeziehungen = yield this.mysqlController.execQuery(integral_sql_1.getI7KnotenBeziehungenQuery(i7checkedTables, schaltfeldIDs));
846
- const resultsNsgSchaltfeld = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_SCHALTFELD, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_SCHALTFELD), schaltfeldIDs));
875
+ const resultsNsgSchaltfeld = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_SCHALTFELD, schaltfeldIDs));
847
876
  const filteredResultsNsgSchaltfeld = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(resultsNsgSchaltfeld, variantenNr, onlyEingeblendet);
848
- let tmpcnt = 0;
849
877
  for (const i7Data of filteredResultsNsgSchaltfeld) {
850
878
  const nsgSaa = integral7.integralNSGSAAbschnitt.get(i7Data.nsgsaa);
851
879
  const nsgSa = integral7.integralNSGSchaltanlage.get(nsgSaa.nsgsaid);
@@ -856,7 +884,7 @@ class ConverterI7 {
856
884
  if (nsgSo === undefined) {
857
885
  continue;
858
886
  }
859
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_SCHALTFELD);
887
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_SCHALTFELD);
860
888
  const nsgSchaltfeldObj = new SchaltfeldNsg_1.SchaltfeldNsgImpl(i7Data);
861
889
  integral7.integralNSGSchaltfeld.set(i7Data.id, nsgSchaltfeldObj);
862
890
  const nodePointMap = new Map();
@@ -874,57 +902,53 @@ class ConverterI7 {
874
902
  const xPos = schaltfeldLeftOffset + (constants_1.NsgConstants.HORIZONTAL_OFFSET / 2);
875
903
  let lastNode = undefined;
876
904
  for (const node of onSSabNodes) {
877
- let tmp_node = integral7.integralNSGSsab.get(node.aknoten);
878
- if (tmp_node !== undefined) {
879
- const ssabYPos = tmp_node ? tmp_node.posSSAB * constants_1.NsgConstants.VERTICAL_OFFSET : undefined;
880
- let yStackPos = 1;
881
- let prevNode = null;
882
- let crtNode = node;
883
- while (crtNode) {
884
- if (nodePointMap.get(crtNode.id) === undefined) {
885
- let yPos = ssabYPos;
886
- if (crtNode === node) {
887
- yPos += shiftFromBusbar ? (schaltfeldDeltaausrichtung === 0 ? -1 : 1) * constants_1.NsgConstants.VERTICAL_OFFSET : 0;
905
+ const ssabYPos = integral7.integralNSGSsab.get(node.aknoten).posSSAB * constants_1.NsgConstants.VERTICAL_OFFSET;
906
+ let yStackPos = 1;
907
+ let prevNode = null;
908
+ let crtNode = node;
909
+ while (crtNode) {
910
+ if (nodePointMap.get(crtNode.id) === undefined) {
911
+ let yPos = ssabYPos;
912
+ if (crtNode === node) {
913
+ yPos += shiftFromBusbar ? (schaltfeldDeltaausrichtung === 0 ? -1 : 1) * constants_1.NsgConstants.VERTICAL_OFFSET : 0;
914
+ }
915
+ else {
916
+ const ssabOffset = schaltfeldDeltaausrichtung === 0 ? 0 : maxSSabPos;
917
+ yPos = ((schaltfeldDeltaausrichtung === 0 ? -1 : 1) * (yStackPos) + ssabOffset) * constants_1.NsgConstants.VERTICAL_OFFSET;
918
+ yStackPos += 1;
919
+ }
920
+ nodePointMap.set(crtNode.id, util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(xPos, yPos, schaltfeldDeltaausrichtung * 180));
921
+ const aKnotenUUID = this.integralID2UUID.get(crtNode.aknoten);
922
+ if (!integral7.placedCIMObjectsForDLProfil.has(aKnotenUUID) && !nodePointMap.has(crtNode.aknoten)) {
923
+ let prevNodeY = (prevNode !== null && nodePointMap.get(prevNode.id) !== undefined) ? nodePointMap.get(prevNode.id).diagramObjectPoints[0].yPosition : 0;
924
+ let yPosAKnoten;
925
+ if (prevNode === node) {
926
+ yPosAKnoten = yPos - ((schaltfeldDeltaausrichtung === 0 ? -1 : 1) * constants_1.NsgConstants.VERTICAL_OFFSET) / 2;
888
927
  }
889
928
  else {
890
- const ssabOffset = schaltfeldDeltaausrichtung === 0 ? 0 : maxSSabPos;
891
- yPos = ((schaltfeldDeltaausrichtung === 0 ? -1 : 1) * (yStackPos) + ssabOffset) * constants_1.NsgConstants.VERTICAL_OFFSET;
892
- yStackPos += 1;
893
- }
894
- nodePointMap.set(crtNode.id, util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(xPos, yPos, schaltfeldDeltaausrichtung * 180));
895
- const aKnotenUUID = this.integralID2UUID.get(crtNode.aknoten);
896
- if (!integral7.placedCIMObjectsForDLProfil.has(aKnotenUUID) && !nodePointMap.has(crtNode.aknoten)) {
897
- let prevNodeY = (prevNode !== null && nodePointMap.get(prevNode.id) !== undefined) ? nodePointMap.get(prevNode.id).diagramObjectPoints[0].yPosition : 0;
898
- let yPosAKnoten;
899
- if (prevNode === node) {
900
- yPosAKnoten = yPos - ((schaltfeldDeltaausrichtung === 0 ? -1 : 1) * constants_1.NsgConstants.VERTICAL_OFFSET) / 2;
901
- }
902
- else {
903
- yPosAKnoten = (yPos - prevNodeY) / 2 + prevNodeY;
904
- }
929
+ yPosAKnoten = (yPos - prevNodeY) / 2 + prevNodeY;
905
930
  }
906
- lastNode = crtNode;
907
- prevNode = crtNode;
908
- crtNode = schaltfeldI7KnotenBeziehungen.find(elem => elem.aknoten === crtNode.eknoten);
931
+ nodePointMap.set(crtNode.aknoten, util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(xPos, yPosAKnoten));
909
932
  }
910
933
  }
934
+ lastNode = crtNode;
935
+ prevNode = crtNode;
936
+ crtNode = schaltfeldI7KnotenBeziehungen.find(elem => elem.aknoten === crtNode.eknoten);
911
937
  }
912
938
  }
913
- if (lastNode !== undefined) {
914
- const lastEKnotenUUID = this.integralID2UUID.get(lastNode.eknoten);
915
- if (!integral7.placedCIMObjectsForDLProfil.has(lastEKnotenUUID) && !nodePointMap.has(lastNode.eknoten)) {
916
- const yPos = (schaltfeldDeltaausrichtung === 0 ? -1 : 1) * (i7Data.hoehe);
917
- const heightAdjustement = schaltfeldDeltaausrichtung === 0 ? (constants_1.NsgConstants.VERTICAL_OFFSET * (maxSSabPos + 1)) : 0;
918
- nodePointMap.set(lastNode.eknoten, util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(xPos, yPos + heightAdjustement));
919
- }
920
- nsgSchaltfeldObj.lastNodeID = lastNode.eknoten;
921
- nsgSchaltfeldObj.lastNodeCimUUID = lastEKnotenUUID;
939
+ const lastEKnotenUUID = this.integralID2UUID.get(lastNode.eknoten);
940
+ if (!integral7.placedCIMObjectsForDLProfil.has(lastEKnotenUUID) && !nodePointMap.has(lastNode.eknoten)) {
941
+ const yPos = (schaltfeldDeltaausrichtung === 0 ? -1 : 1) * (i7Data.hoehe);
942
+ const heightAdjustement = schaltfeldDeltaausrichtung === 0 ? (constants_1.NsgConstants.VERTICAL_OFFSET * (maxSSabPos + 1)) : 0;
943
+ nodePointMap.set(lastNode.eknoten, util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(xPos, yPos + heightAdjustement));
922
944
  }
945
+ nsgSchaltfeldObj.lastNodeID = lastNode.eknoten;
946
+ nsgSchaltfeldObj.lastNodeCimUUID = lastEKnotenUUID;
923
947
  for (const node of onSSabNodes) {
924
948
  let crtNode = node;
925
949
  while (crtNode) {
926
950
  let aKnotenPos = undefined;
927
- if (crtNode === node && xPos !== undefined && integral7.integralNSGSsab.get(crtNode.aknoten) !== undefined) {
951
+ if (crtNode === node) {
928
952
  aKnotenPos = new DiagramObjectPoint_1.DiagramObjectPoint(xPos, integral7.integralNSGSsab.get(crtNode.aknoten).posSSAB * constants_1.NsgConstants.VERTICAL_OFFSET);
929
953
  }
930
954
  util_functions_1.DLUtilFunctions.exportTerminals(crtNode, nodePointMap, uuidPointsMap, cimModel, this.integralID2UUID, aKnotenPos);
@@ -959,10 +983,10 @@ class ConverterI7 {
959
983
  ];
960
984
  const i7checkedTables = this.filterTablesByAvailability(i7relevantTables);
961
985
  const i7knotenBeziehungen = yield this.mysqlController.execQuery(integral_sql_1.getI7KnotenBeziehungenQuery(i7checkedTables, integral7.querkupplungIDs));
962
- const resultsNsgKpFeld = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_QUERKUPPLUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_QUERKUPPLUNG), integral7.querkupplungIDs));
986
+ const resultsNsgKpFeld = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_QUERKUPPLUNG, integral7.querkupplungIDs));
963
987
  const filteredResultsNsgKpFeld = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(resultsNsgKpFeld, variantenNr, onlyEingeblendet);
964
988
  for (const i7Data of filteredResultsNsgKpFeld) {
965
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_QUERKUPPLUNG);
989
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_QUERKUPPLUNG);
966
990
  const uuidPointsMap = new Map();
967
991
  const kpFeldLeftOffset = i7Data.slotnummer * constants_1.NsgConstants.HORIZONTAL_OFFSET;
968
992
  const kpFeldDeltaausrichtung = i7Data.deltaausrichtung;
@@ -987,7 +1011,7 @@ class ConverterI7 {
987
1011
  convertSchemaLaengskupplungen(cimModel, integral7, variantenNr, onlyEingeblendet = true) {
988
1012
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
989
1013
  const ssabIDs = [...integral7.integralNSGSAAbschnitt.keys()];
990
- if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_LAENGSKUPPLUNG) && integral7.laengskupplungIDs.length > 0 && [...integral7.integralNSGSAAbschnitt.keys()].length > 0) {
1014
+ if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_LAENGSKUPPLUNG) && integral7.laengskupplungIDs.length > 0 && ssabIDs.length > 0) {
991
1015
  const i7relevantTables = [
992
1016
  integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LEISTUNGSSCHALTER],
993
1017
  integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRENNER_3P],
@@ -996,10 +1020,10 @@ class ConverterI7 {
996
1020
  ];
997
1021
  const i7checkedTables = this.filterTablesByAvailability(i7relevantTables);
998
1022
  const i7knotenBeziehungen = yield this.mysqlController.execQuery(integral_sql_1.getI7KnotenBeziehungenQuery(i7checkedTables, integral7.laengskupplungIDs));
999
- const resultsNsgLKupplung = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_LAENGSKUPPLUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_LAENGSKUPPLUNG), ssabIDs));
1023
+ const resultsNsgLKupplung = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_LAENGSKUPPLUNG, ssabIDs));
1000
1024
  const filteredResultsNsgLKupplung = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(resultsNsgLKupplung, variantenNr, onlyEingeblendet);
1001
1025
  for (const i7Data of filteredResultsNsgLKupplung) {
1002
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_LAENGSKUPPLUNG);
1026
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_LAENGSKUPPLUNG);
1003
1027
  const uuidPointsMap = new Map();
1004
1028
  const schaltanlagenID = integral7.integralNSGSAAbschnitt.get(i7Data.nsgsaa).nsgsa.schaltanlageid;
1005
1029
  const netzLaengskupplungsObjs = [...integral7.integralLaengskupplungen.values()].filter(elem => elem.schaltanlagenID === schaltanlagenID);
@@ -1028,74 +1052,77 @@ class ConverterI7 {
1028
1052
  }
1029
1053
  convertSchemaTransformatoren2W(cimModel, integral7, variantenNr, onlyEingeblendet = true) {
1030
1054
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1031
- try {
1032
- const nsgStandortIDs = [...integral7.integralNSGStandorte.keys()];
1033
- if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_TRAFO2W) && nsgStandortIDs.length > 0) {
1034
- const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_TRAFO2W, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_TRAFO2W), nsgStandortIDs));
1035
- let filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(results, variantenNr, onlyEingeblendet);
1036
- for (const i7Data of filteredResults) {
1037
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_TRAFO2W);
1038
- const uuidPointsMap = new Map();
1039
- const trafo2wNsg = new Trafo2wNsg_1.Trafo2wNsgImpl(i7Data);
1040
- integral7.integralNSGTrafos.set(i7Data.trafo2w, trafo2wNsg);
1041
- const trafoDiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(constants_1.NsgConstants.TRAFO2W_WIDTH / 2, constants_1.NsgConstants.TRAFO2W_HEIGHT / 2);
1042
- trafoDiagramObject.rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnTrafo2W(trafo2wNsg.ausrichtung);
1043
- const tempPoints = [];
1044
- tempPoints.push(trafoDiagramObject.diagramObjectPoints[0]);
1045
- const trafoUUID = this.integralID2UUID.get(trafo2wNsg.trafo2wid);
1046
- const transformer = cimModel.getPowerTransformer(trafoUUID);
1047
- const terminal1 = transformer.powerTransformerEnds[0].terminal;
1048
- const terminal1DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(0, constants_1.NsgConstants.TRAFO2W_HEIGHT / 2);
1049
- tempPoints.push(terminal1DiagramObject.diagramObjectPoints[0]);
1050
- const terminal2 = transformer.powerTransformerEnds[1].terminal;
1051
- const terminal2DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(constants_1.NsgConstants.TRAFO2W_WIDTH, constants_1.NsgConstants.TRAFO2W_HEIGHT / 2);
1052
- tempPoints.push(terminal2DiagramObject.diagramObjectPoints[0]);
1053
- for (const p of tempPoints) {
1054
- util_functions_1.DLUtilFunctions.rotateDiagramObjectPoint(p, 360 - (90 * trafo2wNsg.ausrichtung) % 360);
1055
- p.xPosition += trafo2wNsg.xrel;
1056
- p.yPosition += trafo2wNsg.yrel;
1057
- p.xPosition += (trafo2wNsg.ausrichtung === 1 ? constants_1.NsgConstants.TRAFO2W_HEIGHT : 0);
1058
- p.xPosition += (trafo2wNsg.ausrichtung === 2 ? constants_1.NsgConstants.TRAFO2W_WIDTH : 0);
1059
- p.yPosition += (trafo2wNsg.ausrichtung === 2 ? constants_1.NsgConstants.TRAFO2W_HEIGHT : 0);
1060
- p.yPosition += (trafo2wNsg.ausrichtung === 3 ? constants_1.NsgConstants.TRAFO2W_WIDTH : 0);
1061
- }
1062
- uuidPointsMap.set(this.integralID2UUID.get(trafo2wNsg.trafo2wid), trafoDiagramObject);
1063
- if (terminal1 !== undefined) {
1064
- uuidPointsMap.set(terminal1.getUUID(), terminal1DiagramObject);
1065
- }
1066
- if (terminal2 !== undefined) {
1067
- uuidPointsMap.set(terminal2.getUUID(), terminal2DiagramObject);
1068
- }
1069
- util_functions_1.DLUtilFunctions.shiftAddBasedOnNsgSo(cimModel, integral7, variantenNr, trafo2wNsg.nsgsoid, uuidPointsMap);
1070
- let t1CNdiagramObject, t1DiagramObject, t2CNdiagramObject, t2DiagramObject;
1071
- if (terminal1 !== undefined) {
1072
- t1CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal1.connectivityNode.getUUID());
1073
- t1DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal1.getUUID());
1074
- }
1075
- if (terminal2 !== undefined) {
1076
- t2CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal2.connectivityNode.getUUID());
1077
- t2DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal2.getUUID());
1078
- }
1079
- if (trafo2wNsg.ausrichtung === 2 || trafo2wNsg.ausrichtung === 3) {
1080
- if (terminal2 !== undefined && t1CNdiagramObject !== undefined)
1081
- utils_schema_1.copyDiagramObjectPoints(t2DiagramObject, t1CNdiagramObject.diagramObjectPoints);
1082
- if (terminal1 !== undefined && t2CNdiagramObject !== undefined)
1083
- utils_schema_1.copyDiagramObjectPoints(t1DiagramObject, t2CNdiagramObject.diagramObjectPoints);
1055
+ const nsgStandortIDs = [...integral7.integralNSGStandorte.keys()];
1056
+ if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_TRAFO2W) && nsgStandortIDs.length > 0) {
1057
+ const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_TRAFO2W, nsgStandortIDs));
1058
+ let filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(results, variantenNr, onlyEingeblendet);
1059
+ for (const i7Data of filteredResults) {
1060
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_TRAFO2W);
1061
+ const uuidPointsMap = new Map();
1062
+ const trafo2wNsg = new Trafo2wNsg_1.Trafo2wNsgImpl(i7Data);
1063
+ integral7.integralNSGTrafos.set(i7Data.trafo2w, trafo2wNsg);
1064
+ const trafoDiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(constants_1.NsgConstants.TRAFO2W_WIDTH / 2, constants_1.NsgConstants.TRAFO2W_HEIGHT / 2);
1065
+ trafoDiagramObject.rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnTrafo2W(trafo2wNsg.ausrichtung);
1066
+ const tempPoints = [];
1067
+ tempPoints.push(trafoDiagramObject.diagramObjectPoints[0]);
1068
+ const trafoUUID = this.integralID2UUID.get(trafo2wNsg.trafo2wid);
1069
+ const transformer = cimModel.getPowerTransformer(trafoUUID);
1070
+ if (transformer === undefined)
1071
+ continue;
1072
+ const terminal1 = transformer.powerTransformerEnds[0].terminal;
1073
+ const terminal1DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(0, constants_1.NsgConstants.TRAFO2W_HEIGHT / 2);
1074
+ tempPoints.push(terminal1DiagramObject.diagramObjectPoints[0]);
1075
+ const terminal2 = transformer.powerTransformerEnds[1].terminal;
1076
+ const terminal2DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(constants_1.NsgConstants.TRAFO2W_WIDTH, constants_1.NsgConstants.TRAFO2W_HEIGHT / 2);
1077
+ tempPoints.push(terminal2DiagramObject.diagramObjectPoints[0]);
1078
+ for (const p of tempPoints) {
1079
+ util_functions_1.DLUtilFunctions.rotateDiagramObjectPoint(p, 360 - (90 * trafo2wNsg.ausrichtung) % 360);
1080
+ p.xPosition += trafo2wNsg.xrel;
1081
+ p.yPosition += trafo2wNsg.yrel;
1082
+ p.xPosition += (trafo2wNsg.ausrichtung === 1 ? constants_1.NsgConstants.TRAFO2W_HEIGHT : 0);
1083
+ p.xPosition += (trafo2wNsg.ausrichtung === 2 ? constants_1.NsgConstants.TRAFO2W_WIDTH : 0);
1084
+ p.yPosition += (trafo2wNsg.ausrichtung === 2 ? constants_1.NsgConstants.TRAFO2W_HEIGHT : 0);
1085
+ p.yPosition += (trafo2wNsg.ausrichtung === 3 ? constants_1.NsgConstants.TRAFO2W_WIDTH : 0);
1086
+ }
1087
+ uuidPointsMap.set(this.integralID2UUID.get(trafo2wNsg.trafo2wid), trafoDiagramObject);
1088
+ if (terminal1 !== undefined) {
1089
+ uuidPointsMap.set(terminal1.getUUID(), terminal1DiagramObject);
1090
+ }
1091
+ if (terminal2 !== undefined) {
1092
+ uuidPointsMap.set(terminal2.getUUID(), terminal2DiagramObject);
1093
+ }
1094
+ util_functions_1.DLUtilFunctions.shiftAddBasedOnNsgSo(cimModel, integral7, variantenNr, trafo2wNsg.nsgsoid, uuidPointsMap);
1095
+ let t1CNdiagramObject, t1DiagramObject, t2CNdiagramObject, t2DiagramObject;
1096
+ if (terminal1 !== undefined) {
1097
+ t1CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal1.getConnectivityNodeUUID());
1098
+ if (!t1CNdiagramObject) {
1099
+ t1CNdiagramObject = util_functions_1.DLUtilFunctions.lookupKnotenSOInBoundaryFrames([...this.exportFramesBoundary.values()], terminal1.getConnectivityNodeUUID(), integral7.placedCIMObjectsForDLProfil, integral7.integralAdditionalGrenzknotenIDs);
1084
1100
  }
1085
- else {
1086
- if (terminal1 !== undefined && t1CNdiagramObject !== undefined)
1087
- utils_schema_1.copyDiagramObjectPoints(t1DiagramObject, t1CNdiagramObject.diagramObjectPoints);
1088
- if (terminal2 !== undefined && t2CNdiagramObject !== undefined)
1089
- utils_schema_1.copyDiagramObjectPoints(t2DiagramObject, t2CNdiagramObject.diagramObjectPoints);
1101
+ t1DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal1.getUUID());
1102
+ }
1103
+ if (terminal2 !== undefined) {
1104
+ t2CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal2.getConnectivityNodeUUID());
1105
+ if (!t2CNdiagramObject) {
1106
+ t2CNdiagramObject = util_functions_1.DLUtilFunctions.lookupKnotenSOInBoundaryFrames([...this.exportFramesBoundary.values()], terminal2.getConnectivityNodeUUID(), integral7.placedCIMObjectsForDLProfil, integral7.integralAdditionalGrenzknotenIDs);
1090
1107
  }
1108
+ t2DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal2.getUUID());
1109
+ }
1110
+ if (trafo2wNsg.ausrichtung === 0 || trafo2wNsg.ausrichtung === 1) {
1111
+ if (terminal2 !== undefined && t1CNdiagramObject !== undefined)
1112
+ utils_schema_1.copyDiagramObjectPoints(t2DiagramObject, t1CNdiagramObject.diagramObjectPoints);
1113
+ if (terminal1 !== undefined && t2CNdiagramObject !== undefined)
1114
+ utils_schema_1.copyDiagramObjectPoints(t1DiagramObject, t2CNdiagramObject.diagramObjectPoints);
1115
+ }
1116
+ else {
1117
+ if (terminal1 !== undefined && t1CNdiagramObject !== undefined)
1118
+ utils_schema_1.copyDiagramObjectPoints(t1DiagramObject, t1CNdiagramObject.diagramObjectPoints);
1119
+ if (terminal2 !== undefined && t2CNdiagramObject !== undefined)
1120
+ utils_schema_1.copyDiagramObjectPoints(t2DiagramObject, t2CNdiagramObject.diagramObjectPoints);
1091
1121
  }
1092
- }
1093
- else {
1094
- this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_TRAFO2W} ist nicht vorhanden.`);
1095
1122
  }
1096
1123
  }
1097
- catch (err) {
1098
- console.log(err);
1124
+ else {
1125
+ this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_TRAFO2W} ist nicht vorhanden.`);
1099
1126
  }
1100
1127
  });
1101
1128
  }
@@ -1103,12 +1130,12 @@ class ConverterI7 {
1103
1130
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1104
1131
  const nsgStandortIDs = [...integral7.integralNSGStandorte.keys()];
1105
1132
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_TRAFO3W) && nsgStandortIDs.length > 0 && standortIDs.length > 0) {
1106
- const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_TRAFO3W, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_TRAFO3W), nsgStandortIDs));
1133
+ const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_TRAFO3W, nsgStandortIDs));
1107
1134
  let filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(results, variantenNr, onlyEingeblendet);
1108
- const netzTrafoResults = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRAFO3W, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TRAFO3W), standortIDs));
1135
+ const netzTrafoResults = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRAFO3W, standortIDs));
1109
1136
  const netzTrafos = new Map(netzTrafoResults.map(obj => [obj.id, obj]));
1110
1137
  for (const i7Data of filteredResults) {
1111
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_TRAFO3W);
1138
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_TRAFO3W);
1112
1139
  const uuidPointsMap = new Map();
1113
1140
  const trafo3wNsg = new Trafo3wNsg_1.Trafo3wNsgImpl(i7Data);
1114
1141
  integral7.integralNSGTrafos.set(i7Data.trafo3w, trafo3wNsg);
@@ -1129,52 +1156,66 @@ class ConverterI7 {
1129
1156
  exchangeGroup = constants_1.NsgConstants.TRAFO3W_ExchangeMap[key];
1130
1157
  break;
1131
1158
  }
1132
- const rotationenGroups = constants_1.NsgConstants.TRAFO3W_RotationGroups;
1133
- let rotationenGroup = undefined;
1134
- for (const key of Object.keys(rotationenGroups)) {
1135
- if (rotationenGroups[key].indexOf(trafo3wNsg.ausrichtung) !== -1) {
1136
- rotationenGroup = constants_1.NsgConstants.TRAFO3W_RotationGroup2Positions[key];
1137
- break;
1138
- }
1139
- }
1140
- const xMirroring = trafo3wNsg.orientierung_cw === 1;
1141
- const terminal1 = pteW1.terminal;
1142
- const terminal1DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPointArrayBased(rotationenGroup[exchangeGroup[1]]);
1143
- tempPoints.push(terminal1DiagramObject.diagramObjectPoints[0]);
1144
- const terminal2 = pteW2.terminal;
1145
- const terminal2DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPointArrayBased(rotationenGroup[exchangeGroup[xMirroring ? 3 : 2]]);
1146
- tempPoints.push(terminal2DiagramObject.diagramObjectPoints[0]);
1147
- const terminal3 = pteW3.terminal;
1148
- const terminal3DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPointArrayBased(rotationenGroup[exchangeGroup[xMirroring ? 2 : 3]]);
1149
- tempPoints.push(terminal3DiagramObject.diagramObjectPoints[0]);
1150
- if (terminal1 !== undefined) {
1151
- uuidPointsMap.set(terminal1.getUUID(), terminal1DiagramObject);
1152
- }
1153
- if (terminal2 !== undefined) {
1154
- uuidPointsMap.set(terminal2.getUUID(), terminal2DiagramObject);
1155
- }
1156
- if (terminal3 !== undefined) {
1157
- uuidPointsMap.set(terminal3.getUUID(), terminal3DiagramObject);
1159
+ }
1160
+ const rotationenGroups = constants_1.NsgConstants.TRAFO3W_RotationGroups;
1161
+ let rotationenGroup = undefined;
1162
+ for (const key of Object.keys(rotationenGroups)) {
1163
+ if (rotationenGroups[key].indexOf(trafo3wNsg.ausrichtung) !== -1) {
1164
+ rotationenGroup = constants_1.NsgConstants.TRAFO3W_RotationGroup2Positions[key];
1165
+ break;
1158
1166
  }
1159
- util_functions_1.DLUtilFunctions.shiftAddBasedOnNsgSo(cimModel, integral7, variantenNr, trafo3wNsg.nsgsoid, uuidPointsMap);
1160
- if (terminal1) {
1161
- const t1CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal1.getConnectivityNodeUUID());
1162
- const t1DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal1.getUUID());
1163
- if (t1CNdiagramObject !== undefined)
1164
- utils_schema_1.copyDiagramObjectPoints(t1DiagramObject, t1CNdiagramObject.diagramObjectPoints);
1167
+ }
1168
+ const xMirroring = trafo3wNsg.orientierung_cw === 1;
1169
+ const terminal1 = pteW1.terminal;
1170
+ const terminal1DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPointArrayBased(rotationenGroup[exchangeGroup[1]]);
1171
+ tempPoints.push(terminal1DiagramObject.diagramObjectPoints[0]);
1172
+ const terminal2 = pteW2.terminal;
1173
+ const terminal2DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPointArrayBased(rotationenGroup[exchangeGroup[xMirroring ? 3 : 2]]);
1174
+ tempPoints.push(terminal2DiagramObject.diagramObjectPoints[0]);
1175
+ const terminal3 = pteW3.terminal;
1176
+ const terminal3DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPointArrayBased(rotationenGroup[exchangeGroup[xMirroring ? 2 : 3]]);
1177
+ tempPoints.push(terminal3DiagramObject.diagramObjectPoints[0]);
1178
+ for (const p of tempPoints) {
1179
+ p.xPosition += trafo3wNsg.xrel;
1180
+ p.yPosition += trafo3wNsg.yrel;
1181
+ }
1182
+ uuidPointsMap.set(this.integralID2UUID.get(trafo3wNsg.trafo3wid), trafoDiagramObject);
1183
+ if (terminal1 !== undefined) {
1184
+ uuidPointsMap.set(terminal1.getUUID(), terminal1DiagramObject);
1185
+ }
1186
+ if (terminal2 !== undefined) {
1187
+ uuidPointsMap.set(terminal2.getUUID(), terminal2DiagramObject);
1188
+ }
1189
+ if (terminal3 !== undefined) {
1190
+ uuidPointsMap.set(terminal3.getUUID(), terminal3DiagramObject);
1191
+ }
1192
+ util_functions_1.DLUtilFunctions.shiftAddBasedOnNsgSo(cimModel, integral7, variantenNr, trafo3wNsg.nsgsoid, uuidPointsMap);
1193
+ if (terminal1) {
1194
+ let t1CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal1.getConnectivityNodeUUID());
1195
+ if (!t1CNdiagramObject) {
1196
+ t1CNdiagramObject = util_functions_1.DLUtilFunctions.lookupKnotenSOInBoundaryFrames([...this.exportFramesBoundary.values()], terminal1.getConnectivityNodeUUID(), integral7.placedCIMObjectsForDLProfil, integral7.integralAdditionalGrenzknotenIDs);
1165
1197
  }
1166
- if (terminal2) {
1167
- const t2CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal2.getConnectivityNodeUUID());
1168
- const t2DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal2.getUUID());
1169
- if (t2CNdiagramObject !== undefined)
1170
- utils_schema_1.copyDiagramObjectPoints(t2DiagramObject, t2CNdiagramObject.diagramObjectPoints);
1198
+ const t1DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal1.getUUID());
1199
+ if (t1CNdiagramObject !== undefined)
1200
+ utils_schema_1.copyDiagramObjectPoints(t1DiagramObject, t1CNdiagramObject.diagramObjectPoints);
1201
+ }
1202
+ if (terminal2) {
1203
+ let t2CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal2.getConnectivityNodeUUID());
1204
+ if (!t2CNdiagramObject) {
1205
+ t2CNdiagramObject = util_functions_1.DLUtilFunctions.lookupKnotenSOInBoundaryFrames([...this.exportFramesBoundary.values()], terminal2.getConnectivityNodeUUID(), integral7.placedCIMObjectsForDLProfil, integral7.integralAdditionalGrenzknotenIDs);
1171
1206
  }
1172
- if (terminal3) {
1173
- const t3CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal3.getConnectivityNodeUUID());
1174
- const t3DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal3.getUUID());
1175
- if (t3CNdiagramObject !== undefined)
1176
- utils_schema_1.copyDiagramObjectPoints(t3DiagramObject, t3CNdiagramObject.diagramObjectPoints);
1207
+ const t2DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal2.getUUID());
1208
+ if (t2CNdiagramObject !== undefined)
1209
+ utils_schema_1.copyDiagramObjectPoints(t2DiagramObject, t2CNdiagramObject.diagramObjectPoints);
1210
+ }
1211
+ if (terminal3) {
1212
+ let t3CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal3.getConnectivityNodeUUID());
1213
+ if (!t3CNdiagramObject) {
1214
+ t3CNdiagramObject = util_functions_1.DLUtilFunctions.lookupKnotenSOInBoundaryFrames([...this.exportFramesBoundary.values()], terminal3.getConnectivityNodeUUID(), integral7.placedCIMObjectsForDLProfil, integral7.integralAdditionalGrenzknotenIDs);
1177
1215
  }
1216
+ const t3DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal3.getUUID());
1217
+ if (t3CNdiagramObject !== undefined)
1218
+ utils_schema_1.copyDiagramObjectPoints(t3DiagramObject, t3CNdiagramObject.diagramObjectPoints);
1178
1219
  }
1179
1220
  }
1180
1221
  }
@@ -1189,14 +1230,14 @@ class ConverterI7 {
1189
1230
  const leitungIDs = [...integral7.integralLeitungen.keys(), ...integral7.integralHgueLeitungen.keys()];
1190
1231
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_LEITUNG) && this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_LEITUNGSPUNKT)
1191
1232
  && leitungIDs.length > 0) {
1192
- const leitungResults = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_LEITUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_LEITUNG), leitungIDs));
1233
+ const leitungResults = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_LEITUNG, leitungIDs));
1193
1234
  let filteredLeitungResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(leitungResults, variantenNr, onlyEingeblendet);
1194
1235
  const nsgLeitungIDs = filteredLeitungResults.map(elem => elem.id);
1195
1236
  if (nsgLeitungIDs.length > 0) {
1196
- const leitungspktResults = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_LEITUNGSPUNKT, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_LEITUNGSPUNKT), nsgLeitungIDs));
1237
+ const leitungspktResults = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_LEITUNGSPUNKT, nsgLeitungIDs));
1197
1238
  let filteredLeitungspktResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(leitungspktResults, variantenNr, onlyEingeblendet);
1198
1239
  for (const i7Data of filteredLeitungResults) {
1199
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_LEITUNG);
1240
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_LEITUNG);
1200
1241
  let netzLeitung, aKnotenCimObjectUUID, eKnotenCimObjectUUID;
1201
1242
  const isACLine = integral7.integralLeitungen.get(i7Data.leitung);
1202
1243
  if (isACLine) {
@@ -1209,44 +1250,62 @@ class ConverterI7 {
1209
1250
  aKnotenCimObjectUUID = this.integralID2UUID.get(netzLeitung.anetzobjekt);
1210
1251
  eKnotenCimObjectUUID = this.integralID2UUID.get(netzLeitung.enetzobjekt);
1211
1252
  }
1212
- const anfSchemaType = integral7.i7SchemaID2Type.get(i7Data.anschlussanf);
1213
- const endSchemaType = integral7.i7SchemaID2Type.get(i7Data.anschlussend);
1253
+ let anfSchemaType = util_functions_1.DLUtilFunctions.getObjectFromMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.anschlussanf, variantennr: variantenNr }));
1254
+ let endSchemaType = util_functions_1.DLUtilFunctions.getObjectFromMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.anschlussend, variantennr: variantenNr }));
1214
1255
  let tempDiagramObjectPoints = [];
1215
1256
  let tempAnfDiagramObject = undefined;
1216
1257
  let tempEndDiagramObject = undefined;
1217
- if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
1218
- const anfSchaltfeld = integral7.integralNSGSchaltfeld.get(i7Data.anschlussanf);
1219
- tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(anfSchaltfeld.lastNodeCimUUID);
1220
- }
1221
- else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) {
1222
- tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(aKnotenCimObjectUUID);
1223
- }
1224
- else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE) {
1225
- tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(integral7.i7ID2UUID.get(i7Data.anschlussanf));
1258
+ if (anfSchemaType === undefined) {
1259
+ const tempAnf = util_functions_1.DLUtilFunctions.lookupKnotenSOInBoundaryFramesI7IDBased([...this.exportFramesBoundary.values()], i7Data.anschlussanf, variantenNr, integral7.placedCIMObjectsForDLProfil, integral7.integralAdditionalGrenzknotenIDs);
1260
+ tempAnfDiagramObject = tempAnf.diagramObject;
1261
+ anfSchemaType = tempAnf.schemaType;
1226
1262
  }
1227
- else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_QUERZWEIG) {
1228
- tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(aKnotenCimObjectUUID);
1229
- }
1230
- else {
1231
- this.logger.info(`nsg-line with a unknown/unhandled start reference-point (i7-NetzLeitungID ${netzLeitung.id}, i7-aKnotenID: ${netzLeitung.aknotenid})`);
1232
- continue;
1263
+ if (endSchemaType === undefined) {
1264
+ const tempEnd = util_functions_1.DLUtilFunctions.lookupKnotenSOInBoundaryFramesI7IDBased([...this.exportFramesBoundary.values()], i7Data.anschlussend, variantenNr, integral7.placedCIMObjectsForDLProfil, integral7.integralAdditionalGrenzknotenIDs);
1265
+ tempEndDiagramObject = tempEnd.diagramObject;
1266
+ endSchemaType = tempEnd.schemaType;
1233
1267
  }
1234
- if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
1235
- const anfSchaltfeld = integral7.integralNSGSchaltfeld.get(i7Data.anschlussend);
1236
- tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(anfSchaltfeld.lastNodeCimUUID);
1237
- }
1238
- else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) {
1239
- tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(eKnotenCimObjectUUID);
1240
- }
1241
- else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE) {
1242
- tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(integral7.i7ID2UUID.get(i7Data.anschlussend));
1243
- }
1244
- else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_QUERZWEIG) {
1245
- tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(eKnotenCimObjectUUID);
1268
+ if (tempAnfDiagramObject === undefined) {
1269
+ if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
1270
+ const anfSchaltfeld = integral7.integralNSGSchaltfeld.get(i7Data.anschlussanf);
1271
+ tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(anfSchaltfeld.lastNodeCimUUID);
1272
+ }
1273
+ else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) {
1274
+ const uuid = util_functions_1.DLUtilFunctions.getObjectFromMapJSONBased(integral7.i7ID2UUID, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.anschlussanf, variantennr: variantenNr }));
1275
+ tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(uuid);
1276
+ }
1277
+ else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE) {
1278
+ const uuid = util_functions_1.DLUtilFunctions.getObjectFromMapJSONBased(integral7.i7ID2UUID, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.anschlussanf, variantennr: variantenNr }));
1279
+ tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(uuid);
1280
+ }
1281
+ else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_QUERZWEIG) {
1282
+ tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(aKnotenCimObjectUUID);
1283
+ }
1284
+ else {
1285
+ this.logger.info(`nsg-line with a unknown/unhandled start reference-point (i7-NetzLeitungID ${netzLeitung.id}, i7-aKnotenID: ${netzLeitung.aknotenid})`);
1286
+ continue;
1287
+ }
1246
1288
  }
1247
- else {
1248
- this.logger.info(`nsg-line with a unknown/unhandled end reference-point (i7-NetzLeitungID ${netzLeitung.id}, i7-eKnotenID: ${netzLeitung.eknotenid})`);
1249
- continue;
1289
+ if (tempEndDiagramObject === undefined) {
1290
+ if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
1291
+ const endSchaltfeld = integral7.integralNSGSchaltfeld.get(i7Data.anschlussend);
1292
+ tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(endSchaltfeld.lastNodeCimUUID);
1293
+ }
1294
+ else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) {
1295
+ const uuid = util_functions_1.DLUtilFunctions.getObjectFromMapJSONBased(integral7.i7ID2UUID, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.anschlussend, variantennr: variantenNr }));
1296
+ tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(uuid);
1297
+ }
1298
+ else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE) {
1299
+ const uuid = util_functions_1.DLUtilFunctions.getObjectFromMapJSONBased(integral7.i7ID2UUID, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.anschlussend, variantennr: variantenNr }));
1300
+ tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(uuid);
1301
+ }
1302
+ else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_QUERZWEIG) {
1303
+ tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(eKnotenCimObjectUUID);
1304
+ }
1305
+ else {
1306
+ this.logger.info(`nsg-line with a unknown/unhandled end reference-point (i7-NetzLeitungID ${netzLeitung.id}, i7-eKnotenID: ${netzLeitung.eknotenid})`);
1307
+ continue;
1308
+ }
1250
1309
  }
1251
1310
  if (tempAnfDiagramObject === undefined || tempEndDiagramObject === undefined)
1252
1311
  continue;
@@ -1292,19 +1351,16 @@ class ConverterI7 {
1292
1351
  const cableAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.KABEL);
1293
1352
  const overheadAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.FREILEITUNG);
1294
1353
  let type = integral_sql_1.I7Objects.STROMKREISABSCHNITT;
1295
- let tableName = integral_sql_1.Integral7TableNames.FREILEITUNG;
1296
1354
  if (cableAvailable && overheadAvailable) {
1297
1355
  type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_KABEL_FREILEITUNG;
1298
1356
  }
1299
1357
  else if (cableAvailable) {
1300
1358
  type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_KABEL;
1301
- tableName = integral_sql_1.Integral7TableNames.KABEL;
1302
1359
  }
1303
1360
  else if (overheadAvailable) {
1304
1361
  type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_FREILEITUNG;
1305
- tableName = integral_sql_1.Integral7TableNames.FREILEITUNG;
1306
1362
  }
1307
- const leitungStromkreisabschnitt = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(type, this.getAvailableColumnNames(tableName), [netzLeitung.id]));
1363
+ const leitungStromkreisabschnitt = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(type, [netzLeitung.id]));
1308
1364
  leitungStromkreisabschnitt.sort((a, b) => a.pos - b.pos);
1309
1365
  const acSegmentPercentages = [];
1310
1366
  let completeLength = 0;
@@ -1352,14 +1408,14 @@ class ConverterI7 {
1352
1408
  }
1353
1409
  convertSchemaQuerzweige(cimModel, integral7, variantenNr, onlyEingeblendet = true) {
1354
1410
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1355
- const whereIDs = [...integral7.i7SchemaID2Type.keys()];
1411
+ const whereIDs = [...integral7.i7SchemaID2Type.keys()].map(value => util_functions_1.DLUtilFunctions.parseSchemaKey(value).id);
1356
1412
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_QUERZWEIG) && whereIDs.length > 0) {
1357
- const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_QUERZWEIG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_QUERZWEIG), whereIDs));
1413
+ const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_QUERZWEIG, whereIDs));
1358
1414
  let filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(results, variantenNr, onlyEingeblendet);
1359
1415
  for (const i7Data of filteredResults) {
1360
- integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_QUERZWEIG);
1416
+ util_functions_1.DLUtilFunctions.setObjectIntoMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.id, variantennr: variantenNr }), integral_sql_1.Integral7TableNames.NSG_QUERZWEIG);
1361
1417
  integral7.integralNSGQuerzweig.set(i7Data.id, i7Data);
1362
- const referenceType = integral7.i7SchemaID2Type.get(i7Data.bezugsobjekt);
1418
+ const referenceType = util_functions_1.DLUtilFunctions.getObjectFromMapJSONBased(integral7.i7SchemaID2Type, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.bezugsobjekt, variantennr: variantenNr }));
1363
1419
  const uuidPointsMap = new Map();
1364
1420
  const rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnQuerzweig(i7Data.ausrichtung);
1365
1421
  let refXPos = 0;
@@ -1381,7 +1437,7 @@ class ConverterI7 {
1381
1437
  nsgQuerzweigWidth = constants_1.NsgConstants.QUERZWEIG_OBJ_WIDTH;
1382
1438
  nsgQuerzweigHeight = constants_1.NsgConstants.QUERZWEIG_OBJ_HEIGHT;
1383
1439
  }
1384
- if (referenceType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD && integral7.integralNSGSchaltfeld.get(i7Data.bezugsobjekt) !== undefined) {
1440
+ if (referenceType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
1385
1441
  const nsgSchaltfeld = integral7.integralNSGSchaltfeld.get(i7Data.bezugsobjekt);
1386
1442
  refCNNodeUUID = nsgSchaltfeld.lastNodeCimUUID;
1387
1443
  const lastDiagramObjectPointInsideBay = integral7.placedCIMObjectsForDLProfil.get(nsgSchaltfeld.lastNodeCimUUID).diagramObjectPoints[0];
@@ -1430,8 +1486,8 @@ class ConverterI7 {
1430
1486
  }
1431
1487
  }
1432
1488
  }
1433
- else if (referenceType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO && integral7.i7ID2UUID.get(i7Data.bezugsobjekt) !== undefined) {
1434
- const nsgKnotenSoUUID = integral7.i7ID2UUID.get(i7Data.bezugsobjekt);
1489
+ else if (referenceType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) {
1490
+ const nsgKnotenSoUUID = util_functions_1.DLUtilFunctions.getObjectFromMapJSONBased(integral7.i7ID2UUID, util_functions_1.DLUtilFunctions.stringifySchemaKey({ id: i7Data.bezugsobjekt, variantennr: variantenNr }));
1435
1491
  refCNNodeUUID = nsgKnotenSoUUID;
1436
1492
  const lastDiagramObjectPointInsideBay = integral7.placedCIMObjectsForDLProfil.get(nsgKnotenSoUUID).diagramObjectPoints[0];
1437
1493
  refXPos = lastDiagramObjectPointInsideBay.xPosition;
@@ -1449,7 +1505,7 @@ class ConverterI7 {
1449
1505
  const querzweigObjectUUID = this.integralID2UUID.get(i7Data.querzweig);
1450
1506
  const cimObject2LinkWith = cimModel.getObject(querzweigObjectUUID);
1451
1507
  uuidPointsMap.set(querzweigObjectUUID, tempDiagramObject);
1452
- if (cimObject2LinkWith !== undefined && cimModel.getConnectivityNode(refCNNodeUUID) !== undefined) {
1508
+ if (cimObject2LinkWith !== undefined) {
1453
1509
  let ceTerminals = new Set([...cimObject2LinkWith.terminals.values()].map(t => t.getUUID()));
1454
1510
  cimObject2LinkWith.terminalsUUIDs.forEach(tUUID => ceTerminals.add(tUUID));
1455
1511
  let cnTerminals = new Set([...cimModel.getConnectivityNode(refCNNodeUUID).terminals.values()].map(t => t.getUUID()));
@@ -1487,7 +1543,7 @@ class ConverterI7 {
1487
1543
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1488
1544
  const nsgStandortIDs = [...integral7.integralNSGStandorte.keys()];
1489
1545
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_STP_SCHIENE) && nsgStandortIDs.length > 0) {
1490
- const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_STP_SCHIENE, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_STP_SCHIENE), nsgStandortIDs));
1546
+ const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_STP_SCHIENE, nsgStandortIDs));
1491
1547
  let filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(results, variantenNr, onlyEingeblendet);
1492
1548
  for (const i7Data of filteredResults) {
1493
1549
  const nsgSo = integral7.integralNSGStandorte.get(i7Data.nsgso);
@@ -1529,7 +1585,7 @@ class ConverterI7 {
1529
1585
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1530
1586
  const nsgStandortIDs = [...integral7.integralNSGStandorte.keys()];
1531
1587
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_STP_KNOTEN) && nsgStandortIDs.length > 0) {
1532
- const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_STP_KNOTEN, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_STP_KNOTEN), nsgStandortIDs));
1588
+ const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_STP_KNOTEN, nsgStandortIDs));
1533
1589
  let filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(results, variantenNr, onlyEingeblendet);
1534
1590
  if (filteredResults.length <= 0)
1535
1591
  return;
@@ -1564,32 +1620,30 @@ class ConverterI7 {
1564
1620
  let centerPoint = new DiagramObjectPoint_1.DiagramObjectPoint(0, 0, 1);
1565
1621
  const shiftOffset = constants_1.NsgConstants.STP_KNOTEN_WIDTH;
1566
1622
  const trafoIDType = trafoIDTypeMap.get(i7Data.knoten);
1567
- if (trafoIDType !== undefined) {
1568
- const nsgTrafo = integral7.integralNSGTrafos.get(trafoIDType.trafoID);
1569
- const nsgStandort = integral7.integralNSGStandorte.get(nsgTrafo.nsgsoid);
1570
- const points = [];
1571
- points.push(centerPoint);
1572
- for (const p of points) {
1573
- util_functions_1.DLUtilFunctions.rotateDiagramObjectPoint(p, -90 * i7Data.ausrichtung);
1574
- p.xPosition += i7Data.xrel + nsgTrafo.xrel + nsgStandort.xrel + (i7Data.ausrichtung === 2 ? shiftOffset : 0);
1575
- p.yPosition += i7Data.yrel + nsgTrafo.yrel + nsgStandort.yrel + (i7Data.ausrichtung === 3 ? shiftOffset : 0);
1576
- }
1577
- integral7.integralNSGStpKnoten.set(i7Data.id, i7Data);
1578
- const diagramObject = new DiagramObject_1.DiagramObject(utils_1.getUUID(''), 'Stp-SSAB');
1579
- diagramObject.rotation = (360 - 90 * i7Data.ausrichtung) % 360;
1580
- utils_schema_1.copyDiagramObjectPoints(diagramObject, points);
1581
- const uuid = this.integralID2UUID.get(i7Data.knoten);
1582
- diagramObject.setIdentifiedObjectUUID(uuid);
1583
- const diagramUUID = integral7.i7SchemaID2UUID.get(i7Data.variantennr);
1584
- const diagram = cimModel.getDiagram(diagramUUID);
1585
- if (diagram) {
1586
- diagramObject.setDiagram(diagram);
1587
- diagram.addDiagramObject(diagramObject);
1588
- integral7.placedCIMObjectsForDLProfil.set(uuid, diagramObject);
1589
- }
1590
- else {
1591
- this.logger.debug(`SSAB/DiagramObject ${diagramObject.mrid} hat kein Diagram-Objekt.`);
1592
- }
1623
+ const nsgTrafo = integral7.integralNSGTrafos.get(trafoIDType.trafoID);
1624
+ const nsgStandort = integral7.integralNSGStandorte.get(nsgTrafo.nsgsoid);
1625
+ const points = [];
1626
+ points.push(centerPoint);
1627
+ for (const p of points) {
1628
+ util_functions_1.DLUtilFunctions.rotateDiagramObjectPoint(p, -90 * i7Data.ausrichtung);
1629
+ p.xPosition += i7Data.xrel + nsgTrafo.xrel + nsgStandort.xrel + (i7Data.ausrichtung === 2 ? shiftOffset : 0);
1630
+ p.yPosition += i7Data.yrel + nsgTrafo.yrel + nsgStandort.yrel + (i7Data.ausrichtung === 3 ? shiftOffset : 0);
1631
+ }
1632
+ integral7.integralNSGStpKnoten.set(i7Data.id, i7Data);
1633
+ const diagramObject = new DiagramObject_1.DiagramObject(utils_1.getUUID(''), 'Stp-SSAB');
1634
+ diagramObject.rotation = (360 - 90 * i7Data.ausrichtung) % 360;
1635
+ utils_schema_1.copyDiagramObjectPoints(diagramObject, points);
1636
+ const uuid = this.integralID2UUID.get(i7Data.knoten);
1637
+ diagramObject.setIdentifiedObjectUUID(uuid);
1638
+ const diagramUUID = integral7.i7SchemaID2UUID.get(i7Data.variantennr);
1639
+ const diagram = cimModel.getDiagram(diagramUUID);
1640
+ if (diagram) {
1641
+ diagramObject.setDiagram(diagram);
1642
+ diagram.addDiagramObject(diagramObject);
1643
+ integral7.placedCIMObjectsForDLProfil.set(uuid, diagramObject);
1644
+ }
1645
+ else {
1646
+ this.logger.debug(`SSAB/DiagramObject ${diagramObject.mrid} hat kein Diagram-Objekt.`);
1593
1647
  }
1594
1648
  }
1595
1649
  }
@@ -1601,7 +1655,7 @@ class ConverterI7 {
1601
1655
  convertStandorte(cimModel, integral7, whereID, defaultValuesConfig) {
1602
1656
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1603
1657
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.STANDORT)) {
1604
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STANDORT, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.STANDORT), whereID));
1658
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STANDORT, whereID));
1605
1659
  for (const i7Data of result) {
1606
1660
  const i7name = util_create_1.createNotation([utils_2.getName(i7Data), '_', utils_2.ueberpruefeZeichenkette(i7Data.ukz)], 32);
1607
1661
  const substation = new AMPRIONSubstation_1.AMPRIONSubstation(utils_1.getUUID(i7Data.guid), i7name, i7Data.kurzname, i7Data.kommentar, i7Data.stationsnummer, i7Data.ukz);
@@ -1639,7 +1693,7 @@ class ConverterI7 {
1639
1693
  convertSchaltanlagen(cimModel, integral7, standortIDs, defaultValuesConfig) {
1640
1694
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1641
1695
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.SCHALTANLAGE)) {
1642
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SCHALTANLAGE, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.SCHALTANLAGE), standortIDs));
1696
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SCHALTANLAGE, standortIDs));
1643
1697
  for (const i7Data of result) {
1644
1698
  const substation = cimModel.getSubstation(this.integralID2UUID.get(i7Data.standort));
1645
1699
  const object = cimModel.getObject(this.integralID2UUID.get(i7Data.standort));
@@ -1676,7 +1730,7 @@ class ConverterI7 {
1676
1730
  convertSchaltanlagenAbschnitte(cimModel, integral7, schaltanlagenIDs) {
1677
1731
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1678
1732
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.SCHALTANLAGENABSCHNITT)) {
1679
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SCHALTANLAGENABSCHNITT, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.SCHALTANLAGENABSCHNITT), schaltanlagenIDs));
1733
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SCHALTANLAGENABSCHNITT, schaltanlagenIDs));
1680
1734
  for (const i7Data of result) {
1681
1735
  const voltageLevel = cimModel.getVoltageLevel(this.integralID2UUID.get(i7Data.schaltanlage));
1682
1736
  if (!voltageLevel) {
@@ -1700,7 +1754,7 @@ class ConverterI7 {
1700
1754
  convertSchaltfelder(cimModel, integral7, schaltanlagenAbschnittIDs) {
1701
1755
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1702
1756
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.SCHALTFELD)) {
1703
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SCHALTFELD, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.SCHALTFELD), schaltanlagenAbschnittIDs));
1757
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SCHALTFELD, schaltanlagenAbschnittIDs));
1704
1758
  for (const i7Data of result) {
1705
1759
  const voltageLevel = cimModel.getVoltageLevel(this.integralID2UUID.get(i7Data.saabschnitt));
1706
1760
  if (!voltageLevel) {
@@ -1735,7 +1789,7 @@ class ConverterI7 {
1735
1789
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1736
1790
  const cimModel = frame.cimModel;
1737
1791
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.KNOTEN_SO)) {
1738
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KNOTEN_SO, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.KNOTEN_SO), standortIDs));
1792
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KNOTEN_SO, standortIDs));
1739
1793
  for (const i7Data of result) {
1740
1794
  const substation = cimModel.getSubstation(this.integralID2UUID.get(i7Data.standort));
1741
1795
  const vl = new VoltageLevel_1.VoltageLevel(utils_1.generateUUID(), util_create_1.createNotation([utils_2.getName(i7Data), i7Data.un.toString(), '_VL']), i7Data.kurzname);
@@ -1781,32 +1835,18 @@ class ConverterI7 {
1781
1835
  }
1782
1836
  });
1783
1837
  }
1784
- convertKnotenHgue(frame, integral7, standortIDs, defaultValuesConfig) {
1785
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
1786
- const cimModel = frame.cimModel;
1787
- if (this.isTableAvailable(integral_sql_1.Integral7TableNames.HGUE_KNOTEN)) {
1788
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.HGUE_KNOTEN, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.HGUE_KNOTEN), standortIDs));
1789
- for (const i7Data of result) {
1790
- const cimrdfid = utils_1.getUUID(i7Data.guid);
1791
- const dcNode = new DCNode_1.DCNode(cimrdfid, util_create_1.createNotation([utils_2.getName(i7Data), '_', cimrdfid.substring(0, 8), '_DC_Node'], 32, true), i7Data.kurzname);
1792
- cimModel.addDCNode(dcNode);
1793
- this.addIdMapping(i7Data.id, dcNode.mrid, integral_sql_1.Integral7TableNames.HGUE_KNOTEN);
1794
- }
1795
- }
1796
- else {
1797
- this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.KNOTEN_SO} ist nicht vorhanden.`);
1798
- }
1799
- });
1800
- }
1801
1838
  convertSammelschienenAbschnitte(cimModel, integral7, schaltanlagenAbschnittIDs) {
1802
1839
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1803
1840
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.SAMMELSCHIENE)) {
1804
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SAMMELSCHIENE, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.SAMMELSCHIENE), schaltanlagenAbschnittIDs));
1841
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SAMMELSCHIENE, schaltanlagenAbschnittIDs));
1805
1842
  for (const i7Data of result) {
1806
1843
  const i7Schaltanlagenabschnitt = integral7.integralSchaltanlagenAbschnitte.get(i7Data.saabschnitt);
1807
1844
  const busbarSection = new BusbarSection_1.BusbarSection(utils_1.generateUUID(), util_create_1.createNotation([utils_2.getName(i7Schaltanlagenabschnitt), '_BBS']), i7Schaltanlagenabschnitt.kurzname);
1808
1845
  busbarSection.ipMax = i7Data.limit_ip;
1809
1846
  busbarSection.aggregate = false;
1847
+ if (utils_1.getUUID(i7Data.guid) === '24206c79-3ac8-4436-aa02-3f60a9e85975') {
1848
+ let stop = true;
1849
+ }
1810
1850
  const rdfid = utils_1.getUUID(i7Data.guid);
1811
1851
  const connectivityNode = new AMPRIONConnectivityNode_1.AMPRIONConnectivityNode(rdfid, util_create_1.createNotation([utils_2.getName(i7Data), '_' + i7Data.pos.toString(), '_' + rdfid.substring(0, 8), '_CN'], 32, true), i7Data.kurzname);
1812
1852
  const voltageLevel = cimModel.getVoltageLevel(this.integralID2UUID.get(i7Schaltanlagenabschnitt.id));
@@ -1870,7 +1910,7 @@ class ConverterI7 {
1870
1910
  convertKnotenKf(cimModel, querkupplungIDs) {
1871
1911
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1872
1912
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.KNOTEN_KF)) {
1873
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KNOTEN_KF, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.KNOTEN_KF), querkupplungIDs));
1913
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KNOTEN_KF, querkupplungIDs));
1874
1914
  for (const i7Data of result) {
1875
1915
  const connectivityNode = new ConnectivityNode_1.ConnectivityNode(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_CN']), 'knotenkf');
1876
1916
  const bay = cimModel.getBay(this.integralID2UUID.get(i7Data.kpfeld));
@@ -1893,7 +1933,7 @@ class ConverterI7 {
1893
1933
  convertKnotenLk(cimModel, laengskupplungIDs) {
1894
1934
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1895
1935
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.KNOTEN_LK)) {
1896
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KNOTEN_LK, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.KNOTEN_LK), laengskupplungIDs));
1936
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KNOTEN_LK, laengskupplungIDs));
1897
1937
  for (const i7Data of result) {
1898
1938
  const connectivityNode = new ConnectivityNode_1.ConnectivityNode(utils_1.generateUUID(), util_create_1.createNotation([utils_2.getName(i7Data), '_CN']), 'KnotenLk');
1899
1939
  const bay = cimModel.getBay(this.integralID2UUID.get(i7Data.lkupplung));
@@ -1916,7 +1956,7 @@ class ConverterI7 {
1916
1956
  convertSchlaufen(cimModel, integral7, knotenSoIDs) {
1917
1957
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1918
1958
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.SCHLAUFE)) {
1919
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SCHLAUFE, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.SCHLAUFE), knotenSoIDs));
1959
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SCHLAUFE, knotenSoIDs));
1920
1960
  for (const i7Data of result) {
1921
1961
  const terminal = new Terminal_1.Terminal(utils_1.generateUUID(), util_create_1.createNotation([utils_2.getName(i7Data), '_Schlaufe_T']), i7Data.kurzname, i7Data.kommentar);
1922
1962
  terminal.connected = utils_2.convertToBooleanI7(i7Data.schaltzustand);
@@ -1944,7 +1984,7 @@ class ConverterI7 {
1944
1984
  convertBelastungen(cimModel, knotenSfIDs, defaultValuesConfig, targetClass) {
1945
1985
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1946
1986
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.BELASTUNG)) {
1947
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.BELASTUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.BELASTUNG), knotenSfIDs));
1987
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.BELASTUNG, knotenSfIDs));
1948
1988
  for (const i7Data of result) {
1949
1989
  const load = targetClass === cim_class_names_1.CIM_CLASS_NAMES.ConformLoad ? new INTEGRALConformLoad_1.INTEGRALConformLoad(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_CL'])) : new EnergyConsumer_1.EnergyConsumer(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_EC']));
1950
1990
  this.setTopologyEnergySourceConsumerObject(cimModel, load, i7Data);
@@ -1956,8 +1996,8 @@ class ConverterI7 {
1956
1996
  const powerData = utils_2.getActiveReactivePower(i7Data, mf);
1957
1997
  load.p = powerData[0];
1958
1998
  load.q = powerData[1];
1959
- load.p_mf = powerData[2] ? powerData[2] : undefined;
1960
- load.q_mf = powerData[3] ? powerData[3] : undefined;
1999
+ load.p_mf = utils_2.isNumericI7(powerData[2]) ? powerData[2] : undefined;
2000
+ load.q_mf = utils_2.isNumericI7(powerData[3]) ? powerData[3] : undefined;
1961
2001
  if (targetClass === cim_class_names_1.CIM_CLASS_NAMES.ConformLoad) {
1962
2002
  const conformLoadGroup = cimModel.getObjectByName(defaultValuesConfig.ConformLoadGroup.name, cim_class_names_1.CIM_CLASS_NAMES.ConformLoadGroup);
1963
2003
  load.loadGroup = conformLoadGroup;
@@ -1974,7 +2014,7 @@ class ConverterI7 {
1974
2014
  convertEinspeisungen(cimModel, knotenSfIDs, targetClass) {
1975
2015
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1976
2016
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.EINSPEISUNG)) {
1977
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.EINSPEISUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.EINSPEISUNG), knotenSfIDs));
2017
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.EINSPEISUNG, knotenSfIDs));
1978
2018
  switch (targetClass) {
1979
2019
  case cim_class_names_1.CIM_CLASS_NAMES.EquivalentInjection: {
1980
2020
  yield this.convertEinspeisungen2EquivalentInjection(cimModel, result);
@@ -1997,7 +2037,7 @@ class ConverterI7 {
1997
2037
  convertErsatzQuerZweige(cimModel, knotenSfIDs, targetClass) {
1998
2038
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1999
2039
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.ERSATZQUERZWEIG)) {
2000
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.ERSATZQUERZWEIG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.ERSATZQUERZWEIG), knotenSfIDs));
2040
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.ERSATZQUERZWEIG, knotenSfIDs));
2001
2041
  switch (targetClass) {
2002
2042
  case cim_class_names_1.CIM_CLASS_NAMES.EquivalentInjection: {
2003
2043
  yield this.convertErsatzQuerZweige2EquivalentInjection(cimModel, result);
@@ -2020,7 +2060,7 @@ class ConverterI7 {
2020
2060
  convertGeneratoren(cimModel, knotenSfIDs, energyTypesConfig) {
2021
2061
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
2022
2062
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.GENERATOR)) {
2023
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.GENERATOR, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.GENERATOR), knotenSfIDs));
2063
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.GENERATOR, knotenSfIDs));
2024
2064
  for (const i7Data of result) {
2025
2065
  const genType = this.generatorTypen.get(i7Data.nametyp);
2026
2066
  const synchronousMachine = new INTEGRALSynchronousMachine_1.INTEGRALSynchronousMachine(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_SM'], 32, true), i7Data.kurzname, i7Data.nameprimaertyp);
@@ -2114,8 +2154,8 @@ class ConverterI7 {
2114
2154
  const qType = Math.sqrt(Math.pow(genType === null || genType === void 0 ? void 0 : genType.sr, 2) - Math.pow(pType, 2));
2115
2155
  synchronousMachine.setActivePower(p * -1);
2116
2156
  synchronousMachine.setReactivePower(q * -1);
2117
- synchronousMachine.p_mf = powerData[2] ? powerData[2] * -1 : undefined;
2118
- synchronousMachine.q_mf = powerData[3] ? powerData[3] * -1 : undefined;
2157
+ synchronousMachine.p_mf = utils_2.isNumericI7(powerData[2]) ? powerData[2] * -1 : undefined;
2158
+ synchronousMachine.q_mf = utils_2.isNumericI7(powerData[3]) ? powerData[3] * -1 : undefined;
2119
2159
  const sr = utils_2.isNumericI7(i7Data.sr) ? utils_2.convertToNumberI7(i7Data.sr) : genType === null || genType === void 0 ? void 0 : genType.sr;
2120
2160
  if (sr && sr >= 0) {
2121
2161
  synchronousMachine.ratedS = sr;
@@ -2283,8 +2323,8 @@ class ConverterI7 {
2283
2323
  const q = powerData[1];
2284
2324
  asynchronousMachine.setActivePower(p * -1);
2285
2325
  asynchronousMachine.setReactivePower(q * -1);
2286
- asynchronousMachine.p_mf = powerData[2] ? powerData[2] * -1 : undefined;
2287
- asynchronousMachine.q_mf = powerData[3] ? powerData[3] * -1 : undefined;
2326
+ asynchronousMachine.p_mf = utils_2.isNumericI7(powerData[2]) ? powerData[2] * -1 : undefined;
2327
+ asynchronousMachine.q_mf = utils_2.isNumericI7(powerData[3]) ? powerData[3] * -1 : undefined;
2288
2328
  asynchronousMachine.controlEnabled = false;
2289
2329
  const inBetrieb = utils_2.isBooleanI7(i7Data.betrieb) ? utils_2.convertToBooleanI7(i7Data.betrieb) : true;
2290
2330
  asynchronousMachine.normallyInService = inBetrieb;
@@ -2315,7 +2355,7 @@ class ConverterI7 {
2315
2355
  convertKraftwerksbloecke(cimModel, knotenSfIDs, energyTypesConfig) {
2316
2356
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
2317
2357
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.KWBLOCK)) {
2318
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KWBLOCK, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.KWBLOCK), knotenSfIDs));
2358
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KWBLOCK, knotenSfIDs));
2319
2359
  for (const i7Data of result) {
2320
2360
  const synchronousMachine = new INTEGRALSynchronousMachine_1.INTEGRALSynchronousMachine(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_SM']), i7Data.kurzname);
2321
2361
  let mf = this.cimModelDefault.multiplierFactors.get(this.integralID2UUID.get(i7Data.multfaktor));
@@ -2461,7 +2501,7 @@ class ConverterI7 {
2461
2501
  convertBoundaryInjections(cimModel, knotenSfIDs, targetClass) {
2462
2502
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
2463
2503
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.BOUNDARYINJECTION)) {
2464
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.BOUNDARYINJECTION, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.BOUNDARYINJECTION), knotenSfIDs));
2504
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.BOUNDARYINJECTION, knotenSfIDs));
2465
2505
  switch (targetClass) {
2466
2506
  case cim_class_names_1.CIM_CLASS_NAMES.EquivalentInjection: {
2467
2507
  yield this.convertBoundaryInjections2EquivalentInjection(cimModel, result);
@@ -2521,7 +2561,7 @@ class ConverterI7 {
2521
2561
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
2522
2562
  const cimModel = frame.cimModel;
2523
2563
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.ERSATZLAENGSZWEIG) && integral7.ersatzZweigAnschlussKnotenIDs.length > 0) {
2524
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.ERSATZLAENGSZWEIG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.ERSATZLAENGSZWEIG), integral7.ersatzZweigAnschlussKnotenIDs));
2564
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.ERSATZLAENGSZWEIG, integral7.ersatzZweigAnschlussKnotenIDs));
2525
2565
  for (const i7Data of result) {
2526
2566
  const i7Schluessel = integral_prefix_1.ERSATZLAENGSZWEIG_PRAEFIX +
2527
2567
  utils_2.ueberpruefeZeichenkette(i7Data.ukz) +
@@ -2558,7 +2598,7 @@ class ConverterI7 {
2558
2598
  convertKompensationsdrossel(cimModel, knotenSfIDs) {
2559
2599
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
2560
2600
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.KOMPENSATIONSDROSSEL)) {
2561
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KOMPENSATIONSDROSSEL, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.KOMPENSATIONSDROSSEL), knotenSfIDs));
2601
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KOMPENSATIONSDROSSEL, knotenSfIDs));
2562
2602
  for (const i7Data of result) {
2563
2603
  const shunt = new LinearShuntCompensator_1.LinearShuntCompensator(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_LSC']), i7Data.kurzname);
2564
2604
  shunt.normalSections = i7Data.aktstufe;
@@ -2592,7 +2632,7 @@ class ConverterI7 {
2592
2632
  convertKompensationskondensatoren(cimModel, knotenSfIDs) {
2593
2633
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
2594
2634
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.KOMPENSATIONSKONDENSATOR)) {
2595
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KOMPENSATIONSKONDENSATOR, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.KOMPENSATIONSKONDENSATOR), knotenSfIDs));
2635
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KOMPENSATIONSKONDENSATOR, knotenSfIDs));
2596
2636
  for (const i7Data of result) {
2597
2637
  const shunt = new LinearShuntCompensator_1.LinearShuntCompensator(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_LSC']), i7Data.kurzname);
2598
2638
  shunt.normalSections = i7Data.aktstufe;
@@ -2626,7 +2666,7 @@ class ConverterI7 {
2626
2666
  convertStatcom(cimModel, knotenSfIDs) {
2627
2667
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
2628
2668
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.STATCOM)) {
2629
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STATCOM, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.STATCOM), knotenSfIDs));
2669
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STATCOM, knotenSfIDs));
2630
2670
  for (const i7Data of result) {
2631
2671
  const statVarCom = new StaticVarCompensator_1.StaticVarCompensator(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_SVC']), i7Data.kurzname);
2632
2672
  const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
@@ -2666,7 +2706,7 @@ class ConverterI7 {
2666
2706
  convertSVC(cimModel, knotenSfIDs) {
2667
2707
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
2668
2708
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.SVC)) {
2669
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SVC, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.SVC), knotenSfIDs));
2709
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.SVC, knotenSfIDs));
2670
2710
  for (const i7Data of result) {
2671
2711
  const statVarCom = new StaticVarCompensator_1.StaticVarCompensator(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_SVC']), i7Data.kurzname);
2672
2712
  const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
@@ -2706,7 +2746,7 @@ class ConverterI7 {
2706
2746
  convertCsConverterDC(cimModel, integral7, knotenSfIDs) {
2707
2747
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
2708
2748
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.HGUE_KOPFSTATION_KLASSISCH)) {
2709
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.HGUE_KOPFSTATION_KLASSISCH, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.HGUE_KOPFSTATION_KLASSISCH), knotenSfIDs));
2749
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.HGUE_KOPFSTATION_KLASSISCH, knotenSfIDs));
2710
2750
  for (const i7Data of result) {
2711
2751
  const dcConverterUnit = new DCConverterUnit_1.DCConverterUnit(utils_1.generateUUID(), util_create_1.createNotation([utils_2.getName(i7Data), '_DCCU']));
2712
2752
  const acConnectivityNode = cimModel.connectivityNodes.get(this.integralID2UUID.get(i7Data.anschluss));
@@ -2773,7 +2813,7 @@ class ConverterI7 {
2773
2813
  var _a;
2774
2814
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
2775
2815
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.HGUE_KOPFSTATION_VSC)) {
2776
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.HGUE_KOPFSTATION_VSC, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.HGUE_KOPFSTATION_VSC), knotenSfIDs));
2816
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.HGUE_KOPFSTATION_VSC, knotenSfIDs));
2777
2817
  for (const i7Data of result) {
2778
2818
  const dcConverterUnit = new DCConverterUnit_1.DCConverterUnit(utils_1.generateUUID(), util_create_1.createNotation([utils_2.getName(i7Data), '_DCCU']));
2779
2819
  const acConnectivityNode = cimModel.connectivityNodes.get(this.integralID2UUID.get(i7Data.anschluss));
@@ -2896,7 +2936,7 @@ class ConverterI7 {
2896
2936
  try {
2897
2937
  const cn = cimModel.objects.get(this.integralID2UUID.get(i7Data.anschluss));
2898
2938
  const cimrdfid = utils_1.getUUID(i7Data.guid);
2899
- const externalNetworkInjection = new INTEGRALExternalNetworkInjection_1.INTEGRALExternalNetworkInjection(cimrdfid, util_create_1.createNotation([utils_2.getName(i7Data), '_', cimrdfid.substring(0, 8), '_ENI'], 32, true), i7Data.kurzname);
2939
+ const externalNetworkInjection = new INTEGRALExternalNetworkInjection_1.INTEGRALExternalNetworkInjection(cimrdfid, util_create_1.createNotation([utils_2.getName(i7Data), '_' + cimrdfid, '_ENI'], 32, true), i7Data.kurzname);
2900
2940
  const un = cn.getVoltageLevel().getBaseVoltageAsNumber();
2901
2941
  externalNetworkInjection.nameprimaertyp = i7Data.nameprimaertyp;
2902
2942
  let mf = undefined;
@@ -2907,7 +2947,7 @@ class ConverterI7 {
2907
2947
  }
2908
2948
  const maxP = utils_2.isNumericI7(i7Data.p_max) ? utils_2.convertToNumberI7(i7Data.p_max) : undefined;
2909
2949
  externalNetworkInjection.maxP = maxP;
2910
- const governorscd = utils_2.isNumericI7(i7Data.kr) ? utils_2.convertToNumberI7(i7Data.kr) : undefined;
2950
+ const governorscd = utils_2.isNumericI7(i7Data.kr) && maxP ? utils_2.calculateSigma(50, externalNetworkInjection.maxP, utils_2.convertToNumberI7(i7Data.kr)) : undefined;
2911
2951
  externalNetworkInjection.governorSCD = governorscd;
2912
2952
  const maxQ = utils_2.isNumericI7(i7Data.q_max) ? utils_2.convertToNumberI7(i7Data.q_max) : undefined;
2913
2953
  externalNetworkInjection.maxQ = maxQ;
@@ -2942,8 +2982,7 @@ class ConverterI7 {
2942
2982
  let regulatingControl = undefined;
2943
2983
  switch (i7Data.spannungsgeregelt) {
2944
2984
  case 1: {
2945
- const cimrdfid = utils_1.getUUID(externalNetworkInjection.getUUID());
2946
- regulatingControl = new RegulatingControl_1.RegulatingControl(utils_1.generateUUID(), util_create_1.createNotation([cimrdfid.substring(0, 8), '_RC_ENI'], 32, true));
2985
+ regulatingControl = new RegulatingControl_1.RegulatingControl(utils_1.generateUUID(), `RC_ENI_${externalNetworkInjection.getUUID().substring(0, 8)}`);
2947
2986
  regulatingControl.targetValue = usoll;
2948
2987
  regulatingControl.mode = RegulatingControlModeKind_1.RegulatingControlModeKind.voltage;
2949
2988
  regulatingControl.discrete = false;
@@ -2974,8 +3013,8 @@ class ConverterI7 {
2974
3013
  const q = powerData[1];
2975
3014
  externalNetworkInjection.setActivePower(p * -1);
2976
3015
  externalNetworkInjection.setReactivePower(q * -1);
2977
- externalNetworkInjection.p_mf = powerData[2] ? powerData[2] * -1 : undefined;
2978
- externalNetworkInjection.q_mf = powerData[3] ? powerData[3] * -1 : undefined;
3016
+ externalNetworkInjection.p_mf = utils_2.isNumericI7(powerData[2]) ? powerData[2] * -1 : undefined;
3017
+ externalNetworkInjection.q_mf = utils_2.isNumericI7(powerData[3]) ? powerData[3] * -1 : undefined;
2979
3018
  cimModel.addExternalNetworkInjection(externalNetworkInjection);
2980
3019
  this.addIdMapping(i7Data.id, externalNetworkInjection.mrid, integral_sql_1.I7Objects.EINSPEISUNG);
2981
3020
  }
@@ -3034,7 +3073,7 @@ class ConverterI7 {
3034
3073
  convertQuerkupplungen(cimModel, integral7, schaltanlagenAbschnittIDs) {
3035
3074
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3036
3075
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.QUERKUPPLUNG)) {
3037
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.QUERKUPPLUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.QUERKUPPLUNG), schaltanlagenAbschnittIDs));
3076
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.QUERKUPPLUNG, schaltanlagenAbschnittIDs));
3038
3077
  for (const i7Data of result) {
3039
3078
  const cimrdfid = utils_1.getUUID(i7Data.guid);
3040
3079
  const bay = new AMPRIONBay_1.AMPRIONBay(cimrdfid, util_create_1.createNotation([utils_2.getName(i7Data), '_', cimrdfid.substring(0, 8), '_B']), 'Querkupplung');
@@ -3065,7 +3104,7 @@ class ConverterI7 {
3065
3104
  convertLaegskupplungen(cimModel, integral7, schaltanlagenIDs) {
3066
3105
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3067
3106
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSKUPPLUNG)) {
3068
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LAENGSKUPPLUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.LAENGSKUPPLUNG), schaltanlagenIDs));
3107
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LAENGSKUPPLUNG, schaltanlagenIDs));
3069
3108
  for (const i7Data of result) {
3070
3109
  const cimrdfid = utils_1.getUUID(i7Data.guid);
3071
3110
  const bay = new AMPRIONBay_1.AMPRIONBay(cimrdfid, util_create_1.createNotation([utils_2.getName(i7Data), '_', cimrdfid.substring(0, 8), '_B']), i7Data.kurzname, 'Laengskupplung');
@@ -3098,7 +3137,7 @@ class ConverterI7 {
3098
3137
  convertStarreVerbindungen(cimModel, containerIDs) {
3099
3138
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3100
3139
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.KNOTEN_STARR)) {
3101
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KNOTEN_STARR, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.KNOTEN_STARR), containerIDs));
3140
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.KNOTEN_STARR, containerIDs));
3102
3141
  for (const i7Data of result) {
3103
3142
  const breaker = new Breaker_1.Breaker(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_BR']), 'Breaker', 'starre Verbindung');
3104
3143
  yield this.convertSwitch(breaker, cimModel, i7Data);
@@ -3114,7 +3153,7 @@ class ConverterI7 {
3114
3153
  convertTrennerFi3f(cimModel, containerIDs) {
3115
3154
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3116
3155
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TRENNERFI_3P)) {
3117
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRENNERFI_3P, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TRENNERFI_3P), containerIDs));
3156
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRENNERFI_3P, containerIDs));
3118
3157
  for (const i7Data of result) {
3119
3158
  const disconnector = new Disconnector_1.Disconnector(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_D']));
3120
3159
  yield this.convertSwitch(disconnector, cimModel, i7Data);
@@ -3130,7 +3169,7 @@ class ConverterI7 {
3130
3169
  convertTrenner3f(cimModel, containerIDs) {
3131
3170
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3132
3171
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TRENNER_3P)) {
3133
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRENNER_3P, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TRENNER_3P), containerIDs));
3172
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRENNER_3P, containerIDs));
3134
3173
  for (const i7Data of result) {
3135
3174
  const disconnector = new Disconnector_1.Disconnector(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_D']));
3136
3175
  yield this.convertSwitch(disconnector, cimModel, i7Data);
@@ -3146,7 +3185,7 @@ class ConverterI7 {
3146
3185
  convertLeistungsschalter(cimModel, containerIDs) {
3147
3186
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3148
3187
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.LEISTUNGSSCHALTER)) {
3149
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LEISTUNGSSCHALTER, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.LEISTUNGSSCHALTER), containerIDs));
3188
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LEISTUNGSSCHALTER, containerIDs));
3150
3189
  for (const i7Data of result) {
3151
3190
  const breaker = new Breaker_1.Breaker(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_BR']));
3152
3191
  yield this.convertSwitch(breaker, cimModel, i7Data);
@@ -3200,7 +3239,7 @@ class ConverterI7 {
3200
3239
  var _a;
3201
3240
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3202
3241
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSDROSSEL) && integral7.lDrosselAnschlussKnotenIDs.length) {
3203
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LAENGSDROSSEL, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.LAENGSDROSSEL), integral7.lDrosselAnschlussKnotenIDs));
3242
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LAENGSDROSSEL, integral7.lDrosselAnschlussKnotenIDs));
3204
3243
  for (const i7Data of result) {
3205
3244
  const seriesCompensator = new AMPRIONSeriesCompensator_1.AMPRIONSeriesCompensator(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_SC']), i7Data.kurzname, i7Data.kommentar + '; LD-' + i7Data.bezeichner);
3206
3245
  const start = cimModel.objects.get(this.integralID2UUID.get(i7Data.aknoten));
@@ -3262,7 +3301,7 @@ class ConverterI7 {
3262
3301
  var _a;
3263
3302
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3264
3303
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSKONDENSATOR) && integral7.lKondensatorAnschlussKnotenIDs.length > 0) {
3265
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LAENGSKONDENSATOR, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.LAENGSKONDENSATOR), integral7.lKondensatorAnschlussKnotenIDs));
3304
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LAENGSKONDENSATOR, integral7.lKondensatorAnschlussKnotenIDs));
3266
3305
  for (const i7Data of result) {
3267
3306
  const seriesCompensator = new AMPRIONSeriesCompensator_1.AMPRIONSeriesCompensator(utils_1.getUUID(i7Data.guid), util_create_1.createNotation([utils_2.getName(i7Data), '_SC']), i7Data.kurzname);
3268
3307
  const start = cimModel.getObject(this.integralID2UUID.get(i7Data.aknoten));
@@ -3324,7 +3363,7 @@ class ConverterI7 {
3324
3363
  convertBetriebsmitteltypenKdrossel() {
3325
3364
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3326
3365
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TYP_KDROSSEL)) {
3327
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_KDROSSEL, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TYP_KDROSSEL), []));
3366
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_KDROSSEL, []));
3328
3367
  for (const i7Data of result) {
3329
3368
  this.kdrosseltypen.set(i7Data.name, i7Data);
3330
3369
  }
@@ -3339,7 +3378,7 @@ class ConverterI7 {
3339
3378
  return new Promise((resolve) => tslib_1.__awaiter(this, void 0, void 0, function* () {
3340
3379
  const stpSchieneIDs = [];
3341
3380
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.STERNPUNKT_SCHIENE)) {
3342
- const stpSchiene = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STERNPUNKT_SCHIENE, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.STERNPUNKT_SCHIENE), standortIDs));
3381
+ const stpSchiene = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STERNPUNKT_SCHIENE, standortIDs));
3343
3382
  for (const i7DataSchiene of stpSchiene) {
3344
3383
  try {
3345
3384
  stpSchieneIDs.push(i7DataSchiene.id);
@@ -3379,7 +3418,7 @@ class ConverterI7 {
3379
3418
  try {
3380
3419
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.STERNPUNKT_IMPEDANZ)) {
3381
3420
  if (stpScheinenID.length) {
3382
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STERNPUNKT_IMPEDANZ, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.STERNPUNKT_IMPEDANZ), stpScheinenID));
3421
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STERNPUNKT_IMPEDANZ, stpScheinenID));
3383
3422
  for (const i7Data of result) {
3384
3423
  const kdType = this.kdrosseltypen.get(i7Data.nametyp);
3385
3424
  const imax = utils_2.isNumericI7(i7Data.imax) ? i7Data.imax : (utils_2.isNumericI7(kdType === null || kdType === void 0 ? void 0 : kdType.imax) ? kdType === null || kdType === void 0 ? void 0 : kdType.imax : undefined);
@@ -3431,7 +3470,7 @@ class ConverterI7 {
3431
3470
  try {
3432
3471
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.STERNPUNKT_SCHALTER)) {
3433
3472
  if (stpSchienenID.length) {
3434
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STERNPUNKT_SCHALTER, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.STERNPUNKT_SCHALTER), stpSchienenID));
3473
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STERNPUNKT_SCHALTER, stpSchienenID));
3435
3474
  for (const i7Data of result) {
3436
3475
  const terminal = integral7.sternPunktImpModel.stpSchieneTerminal.get(i7Data.eknoten);
3437
3476
  if (terminal) {
@@ -3461,7 +3500,7 @@ class ConverterI7 {
3461
3500
  convertLaengskupplungen(cimModel, integral7, schaltanlagenIDs) {
3462
3501
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3463
3502
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSKUPPLUNG)) {
3464
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LAENGSKUPPLUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.LAENGSKUPPLUNG), schaltanlagenIDs));
3503
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LAENGSKUPPLUNG, schaltanlagenIDs));
3465
3504
  for (const i7Data of result) {
3466
3505
  const cimrdfid = utils_1.getUUID(i7Data.guid);
3467
3506
  const bay = new AMPRIONBay_1.AMPRIONBay(cimrdfid, util_create_1.createNotation([utils_2.getName(i7Data), '_', cimrdfid.substring(0, 8), '_B']), i7Data.kurzname, 'Laengskupplung');
@@ -3494,7 +3533,7 @@ class ConverterI7 {
3494
3533
  convertBetriebsmitteltypenLeitung() {
3495
3534
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3496
3535
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TYP_FREILEITUNG)) {
3497
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_FREILEITUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TYP_FREILEITUNG), []));
3536
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_FREILEITUNG, []));
3498
3537
  for (const i7Data of result) {
3499
3538
  const typ = new EVWireInfo_1.EVWireInfo(utils_1.generateUUID(), i7Data.name);
3500
3539
  this.setWireInfoProperties(typ, i7Data, 'Freileitung');
@@ -3505,7 +3544,7 @@ class ConverterI7 {
3505
3544
  this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TYP_FREILEITUNG} ist nicht vorhanden.`);
3506
3545
  }
3507
3546
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TYP_KABEL)) {
3508
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_KABEL, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TYP_KABEL), []));
3547
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_KABEL, []));
3509
3548
  for (const i7Data of result) {
3510
3549
  const typ = new EVWireInfo_1.EVWireInfo(utils_1.generateUUID(), i7Data.name);
3511
3550
  this.setWireInfoProperties(typ, i7Data, 'Kabel');
@@ -3534,25 +3573,25 @@ class ConverterI7 {
3534
3573
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3535
3574
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.LEITUNG) && integral7.leitungsAnschlussIDs.length) {
3536
3575
  const cimModel = frame.cimModel;
3537
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LEITUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.LEITUNG), integral7.leitungsAnschlussIDs));
3576
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.LEITUNG, integral7.leitungsAnschlussIDs));
3538
3577
  const leitungIDs = result.map(elem => elem.id);
3539
3578
  const cableAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.KABEL);
3540
3579
  const overheadAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.FREILEITUNG);
3541
3580
  let type = integral_sql_1.I7Objects.STROMKREISABSCHNITT;
3542
- let tableName = integral_sql_1.Integral7TableNames.FREILEITUNG;
3543
3581
  if (cableAvailable && overheadAvailable) {
3544
3582
  type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_KABEL_FREILEITUNG;
3545
3583
  }
3546
3584
  else if (cableAvailable) {
3547
3585
  type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_KABEL;
3548
- tableName = integral_sql_1.Integral7TableNames.KABEL;
3549
3586
  }
3550
3587
  else if (overheadAvailable) {
3551
3588
  type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_FREILEITUNG;
3552
- tableName = integral_sql_1.Integral7TableNames.FREILEITUNG;
3553
3589
  }
3554
- const leitungStromkreisabschnitt = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(type, this.getAvailableColumnNames(tableName), leitungIDs));
3590
+ const leitungStromkreisabschnitt = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(type, leitungIDs));
3555
3591
  for (const i7Data of result) {
3592
+ if (i7Data.id === 943) {
3593
+ let stop = true;
3594
+ }
3556
3595
  const stromkreisabschnitte = leitungStromkreisabschnitt.filter(elem => elem.leitung === i7Data.id);
3557
3596
  if (!((stromkreisabschnitte === null || stromkreisabschnitte === void 0 ? void 0 : stromkreisabschnitte.length) > 0))
3558
3597
  continue;
@@ -3585,8 +3624,11 @@ class ConverterI7 {
3585
3624
  utils_2.ueberpruefeZeichenkette(i7Data.bezeichner) +
3586
3625
  '-' +
3587
3626
  utils_2.ueberpruefeZeichenkette(stk.bezeichner);
3588
- const cimrdfid = utils_1.getUUID(stk.custom_guid_0120 + stk.custom_guid_2137);
3589
- const acLineSegment = new INTEGRALACLineSegment_1.INTEGRALACLineSegment(cimrdfid, util_create_1.createNotation([name, '_' + stk.pos.toString(), '_' + cimrdfid.substring(0, 8), '_ACLS'], 32, true), i7Data.stkabname, i7Schluessel);
3627
+ if (utils_1.getUUID(stk.custom_guid_0120 + stk.custom_guid_2137).toLowerCase() === '8387376e-86bf-4da0-91f2-b19a3d490715') {
3628
+ let stop = true;
3629
+ }
3630
+ const uuidACLineString = utils_1.getUUID(i7Data.guid);
3631
+ const acLineSegment = new INTEGRALACLineSegment_1.INTEGRALACLineSegment(uuidACLineString, util_create_1.createNotation([name, '_' + stk.pos.toString(), uuidACLineString, '_ACLS'], 32, true), i7Data.stkabname, i7Schluessel);
3590
3632
  let mf = this.cimModelDefault.multiplierFactors.get(this.integralID2UUID.get(stk.multfaktor));
3591
3633
  if (mf) {
3592
3634
  cimModel.addMultiplierFactor(mf);
@@ -3616,6 +3658,12 @@ class ConverterI7 {
3616
3658
  else {
3617
3659
  this.logger.debug(`Leitung ${i7Data.id} ${acLineSegmentStart.mrid} besitzt keinen Anfangsknoten. ${i7Data.aknoten} ${this.integralID2UUID.get(i7Data.aknoten)}`);
3618
3660
  }
3661
+ if (acLineSegments[0].getUUID() === 'c6b755ed-b4fa-4649-8aa5-62ebcbd3b559') {
3662
+ let stop = true;
3663
+ }
3664
+ else if (acLineSegments[0].getUUID() === 'e1a65e81-1cec-4f1a-ab87-9c7b667ad64f') {
3665
+ let stop = true;
3666
+ }
3619
3667
  this.setACLineSegmentProperties(this.cimModelDefault, cimModel, acLineSegmentStart, stromkreisabschnitte[0], defaultValuesConfig);
3620
3668
  cimModel.addACLineSegment(acLineSegmentStart);
3621
3669
  const anzahl = acLineSegments.length;
@@ -3629,6 +3677,9 @@ class ConverterI7 {
3629
3677
  if (tmp_terminal) {
3630
3678
  tmp_terminal = undefined;
3631
3679
  }
3680
+ if (acLineSegments[i].getUUID() === 'c6b755ed-b4fa-4649-8aa5-62ebcbd3b559') {
3681
+ let stop = true;
3682
+ }
3632
3683
  this.setACLineSegmentProperties(this.cimModelDefault, cimModel, acLineSegments[i], stromkreisabschnitte[i], defaultValuesConfig);
3633
3684
  const acLineSegment2 = acLineSegments[i + 1];
3634
3685
  tmp_terminal = this.createConnection(cimModel, acLineSegment2, cn, PhaseCode_1.PhaseCode.ABC, true);
@@ -3706,8 +3757,12 @@ class ConverterI7 {
3706
3757
  var _a, _b;
3707
3758
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3708
3759
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.HGUE_LEITUNG) && integral7.hgueAnschlussKnotenIDs.length > 0) {
3709
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.HGUE_LEITUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.HGUE_LEITUNG), integral7.hgueAnschlussKnotenIDs));
3760
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.HGUE_LEITUNG, integral7.hgueAnschlussKnotenIDs));
3710
3761
  for (const i7Data of result) {
3762
+ console.log(utils_1.getUUID(i7Data.guid_dcline));
3763
+ if (utils_1.getUUID(i7Data.guid_dcline) === '6a5b7e1e-f8be-4165-9752-2e2359d9b4f8') {
3764
+ let stop = true;
3765
+ }
3711
3766
  integral7.integralHgueLeitungen.set(i7Data.id, i7Data);
3712
3767
  const dcLine = new DCLine_1.DCLine(utils_1.getUUID(i7Data.guid_dcline), util_create_1.createNotation([utils_2.getName(i7Data), '_DCL']));
3713
3768
  const i7Schluessel = integral_prefix_1.HGUELEITUNG_PRAEFIX +
@@ -3776,7 +3831,7 @@ class ConverterI7 {
3776
3831
  convertBetriebsmitteltypenTrafo() {
3777
3832
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3778
3833
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TYP_TRAFO2W)) {
3779
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_TRAFO2W, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TYP_TRAFO2W), []));
3834
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_TRAFO2W, []));
3780
3835
  for (const i7Data of result) {
3781
3836
  const typTrafo = new EVPowerTransformerInfo_1.EVPowerTransformerInfo(utils_1.generateUUID(), i7Data.name);
3782
3837
  typTrafo.ukr12 = i7Data.ukr;
@@ -3804,7 +3859,7 @@ class ConverterI7 {
3804
3859
  this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TYP_TRAFO2W} ist nicht vorhanden.`);
3805
3860
  }
3806
3861
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TYP_TRAFO3W)) {
3807
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_TRAFO3W, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TYP_TRAFO3W), []));
3862
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_TRAFO3W, []));
3808
3863
  for (const i7Data of result) {
3809
3864
  const typTrafo = new EVPowerTransformerInfo_1.EVPowerTransformerInfo(utils_1.generateUUID(), i7Data.name);
3810
3865
  typTrafo.pLeer = i7Data.p_leer;
@@ -3844,7 +3899,7 @@ class ConverterI7 {
3844
3899
  convertBetriebsmitteltypenGenerator() {
3845
3900
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3846
3901
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TYP_GENERATOR)) {
3847
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_GENERATOR, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TYP_GENERATOR), []));
3902
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_GENERATOR, []));
3848
3903
  for (const i7Data of result) {
3849
3904
  this.generatorTypen.set(i7Data.name, i7Data);
3850
3905
  }
@@ -3857,7 +3912,7 @@ class ConverterI7 {
3857
3912
  convertBetriebsmitteltypenAsynchronmotor() {
3858
3913
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3859
3914
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TYP_ASYNCHRONMOTOR)) {
3860
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_ASYNCHRONMOTOR, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TYP_ASYNCHRONMOTOR), []));
3915
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TYP_ASYNCHRONMOTOR, []));
3861
3916
  for (const i7Data of result) {
3862
3917
  this.asynchronmotorTypen.set(i7Data.name, i7Data);
3863
3918
  }
@@ -3870,7 +3925,7 @@ class ConverterI7 {
3870
3925
  convertMultiplikationsfaktoren() {
3871
3926
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3872
3927
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.MULTIPLIKATIONSFAKTOR)) {
3873
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.MULTIPLIKATIONSFAKTOR, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.MULTIPLIKATIONSFAKTOR), []));
3928
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.MULTIPLIKATIONSFAKTOR, []));
3874
3929
  for (const i7Data of result) {
3875
3930
  const multFaktor = new INTEGRALMultiplierFactor_1.INTEGRALMultiplierFactor(utils_1.getUUID(undefined), utils_2.getName(i7Data), i7Data.kurzname, i7Data.kommentar);
3876
3931
  multFaktor.p = utils_2.isNumericI7(i7Data.p) ? utils_2.convertToNumberI7(i7Data.p) : undefined;
@@ -3892,14 +3947,14 @@ class ConverterI7 {
3892
3947
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
3893
3948
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO2W)) {
3894
3949
  const cimModel = frame.cimModel;
3895
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRAFO2W, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TRAFO2W), standortIDs));
3950
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRAFO2W, standortIDs));
3896
3951
  const trafoIDs = result.map(obj => obj['id']);
3897
3952
  const sternpunktKnotenMap = new Map();
3898
3953
  for (const elem of trafoIDs) {
3899
3954
  sternpunktKnotenMap.set(elem, new Map());
3900
3955
  }
3901
3956
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.STERNPUNKT_KNOTEN) && trafoIDs.length) {
3902
- const sternpunktKnotenResult = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STERNPUNKT_KNOTEN, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.STERNPUNKT_KNOTEN), trafoIDs));
3957
+ const sternpunktKnotenResult = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STERNPUNKT_KNOTEN, trafoIDs));
3903
3958
  for (const spKnoten of sternpunktKnotenResult) {
3904
3959
  (_a = sternpunktKnotenMap.get(spKnoten.netzobjekt)) === null || _a === void 0 ? void 0 : _a.set(spKnoten.id, spKnoten);
3905
3960
  }
@@ -4002,13 +4057,12 @@ class ConverterI7 {
4002
4057
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
4003
4058
  if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO3W)) {
4004
4059
  const cimModel = frame.cimModel;
4005
- const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRAFO3W, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TRAFO3W), standortIDs));
4060
+ const result = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRAFO3W, standortIDs));
4006
4061
  const trafoIDs = result.map(obj => obj['id']);
4007
4062
  const trafoWicklungen = new Map();
4008
4063
  const trafoWicklungIDs = [];
4009
- const tableNameWicklung = integral_sql_1.Integral7TableNames.TRAFO3_WICKLUNG;
4010
- if (this.isTableAvailable(tableNameWicklung) && trafoIDs.length) {
4011
- const wicklungenResult = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRAFO3_WICKLUNG, this.getAvailableColumnNames(tableNameWicklung), trafoIDs));
4064
+ if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO3_WICKLUNG) && trafoIDs.length) {
4065
+ const wicklungenResult = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.TRAFO3_WICKLUNG, trafoIDs));
4012
4066
  for (const wicklung of wicklungenResult) {
4013
4067
  trafoWicklungen.set(wicklung.id, wicklung);
4014
4068
  trafoWicklungIDs.push(wicklung.id);
@@ -4021,9 +4075,8 @@ class ConverterI7 {
4021
4075
  for (const elem of trafoIDs) {
4022
4076
  sternpunktKnotenMap.set(elem, new Map());
4023
4077
  }
4024
- const tableNameStpKnoten = integral_sql_1.Integral7TableNames.STERNPUNKT_KNOTEN;
4025
- if (this.isTableAvailable(tableNameStpKnoten) && trafoIDs.length) {
4026
- const sternpunktKnotenResult = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STERNPUNKT_KNOTEN, this.getAvailableColumnNames(tableNameStpKnoten), trafoIDs));
4078
+ if (this.isTableAvailable(integral_sql_1.Integral7TableNames.STERNPUNKT_KNOTEN) && trafoIDs.length) {
4079
+ const sternpunktKnotenResult = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.STERNPUNKT_KNOTEN, trafoIDs));
4027
4080
  for (const spKnoten of sternpunktKnotenResult) {
4028
4081
  (_a = sternpunktKnotenMap.get(spKnoten.netzobjekt)) === null || _a === void 0 ? void 0 : _a.set(spKnoten.id, spKnoten);
4029
4082
  }
@@ -4282,6 +4335,9 @@ class ConverterI7 {
4282
4335
  });
4283
4336
  }
4284
4337
  sortTransformerEnd(powerTransformer, sortProperty, order) {
4338
+ if (powerTransformer.getUUID() === '5b0e4820d43247188ded6b28db72fc95') {
4339
+ let stop = true;
4340
+ }
4285
4341
  let winding_guids = new Array(powerTransformer.powerTransformerEnds.length);
4286
4342
  let winding_guids_fixed = new Array(powerTransformer.powerTransformerEnds.length);
4287
4343
  for (let i = 0; i < powerTransformer.powerTransformerEnds.length; i++) {
@@ -4304,12 +4360,11 @@ class ConverterI7 {
4304
4360
  }
4305
4361
  }
4306
4362
  setACLineSegmentProperties(defaultModel, cimModel, acLineSegment, data, defaultValuesConfig) {
4307
- if (utils_2.isBooleanI7(data.flag_impedanzlos) && utils_2.convertToBooleanI7(data.flag_impedanzlos)) {
4308
- data.flag_impedanzlos = 1;
4363
+ if (acLineSegment.getUUID() === 'e2505f0f-c764-44da-b88b-d40e048193c9') {
4364
+ let stop = true;
4309
4365
  }
4310
- else if (!utils_2.isNumericI7(data.laenge) && utils_2.isBooleanI7(data.flag_impedanzlos) && !utils_2.convertToBooleanI7(data.flag_impedanzlos)) {
4311
- data.flag_impedanzlos = 0;
4312
- data.laenge = 1;
4366
+ if ((utils_2.isNumericI7(data.laenge) && data.laenge <= 0) || (utils_2.isBooleanI7(data.flag_impedanzlos) && utils_2.convertToBooleanI7(data.flag_impedanzlos))) {
4367
+ data.flag_impedanzlos = 1;
4313
4368
  }
4314
4369
  if (utils_2.isNumericI7(data.laenge) && data.laenge > 0 && !data.flag_impedanzlos) {
4315
4370
  acLineSegment.length = data.laenge;
@@ -4435,6 +4490,9 @@ class ConverterI7 {
4435
4490
  return operationalLimitType;
4436
4491
  }
4437
4492
  createConnection(cimModel, conductingEquipment, object, phase, connected) {
4493
+ if (conductingEquipment.getUUID() === '66d3c196-8927-478a-a6bf-248ea34cdeb3') {
4494
+ let stop = true;
4495
+ }
4438
4496
  let isNameSet = false;
4439
4497
  let terminal;
4440
4498
  if (object instanceof ConnectivityNode_1.ConnectivityNode) {
@@ -4677,26 +4735,7 @@ class ConverterI7 {
4677
4735
  try {
4678
4736
  const results = yield this.mysqlController.execQuery(`SHOW TABLES FROM ${database}`);
4679
4737
  for (const table of results) {
4680
- this.availableTableNames.set(table[`Tables_in_${database}`], []);
4681
- }
4682
- }
4683
- catch (e) {
4684
- this.logger.error(e);
4685
- console.error('ERROR:' + e);
4686
- }
4687
- });
4688
- }
4689
- getAvailableTableColumnNames(database) {
4690
- var _a;
4691
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
4692
- const query = `SELECT table_name, column_name
4693
- FROM information_schema.columns
4694
- WHERE table_schema = '${database}'
4695
- ORDER BY table_name, ORDINAL_POSITION;`;
4696
- try {
4697
- const results = yield this.mysqlController.execQuery(query);
4698
- for (const table of results) {
4699
- (_a = this.availableTableNames.get(table['table_name'])) === null || _a === void 0 ? void 0 : _a.push(table['column_name']);
4738
+ this.availableTableNames.push(table[`Tables_in_${database}`]);
4700
4739
  }
4701
4740
  }
4702
4741
  catch (e) {
@@ -4712,7 +4751,6 @@ class ConverterI7 {
4712
4751
  this.logger = logger;
4713
4752
  this.initMySQLConnection(mySqlConfig);
4714
4753
  yield this.getAvailableTableNames(mySqlConfig.database);
4715
- yield this.getAvailableTableColumnNames(mySqlConfig.database);
4716
4754
  }
4717
4755
  catch (e) {
4718
4756
  status.status = 'error';
@@ -4814,7 +4852,7 @@ class ConverterI7 {
4814
4852
  const offset = i * limit;
4815
4853
  const currentLimit = (i + 1 === numberOfIntervals && restCount > 0) ? restCount : limit;
4816
4854
  const partSchaltfeldIDs = ids.slice(offset, offset + currentLimit);
4817
- result.push(...yield this.mysqlController.execQuery(integral_sql_1.getI7Query(objectName, this.getAvailableColumnNames(objectName), partSchaltfeldIDs)));
4855
+ result.push(...yield this.mysqlController.execQuery(integral_sql_1.getI7Query(objectName, partSchaltfeldIDs)));
4818
4856
  }
4819
4857
  return result;
4820
4858
  });
@@ -5330,10 +5368,7 @@ class ConverterI7 {
5330
5368
  return filteredRelevantTables;
5331
5369
  }
5332
5370
  isTableAvailable(tableName) {
5333
- return this.availableTableNames.has(tableName);
5334
- }
5335
- getAvailableColumnNames(tableName) {
5336
- return this.availableTableNames.get(tableName);
5371
+ return this.availableTableNames.indexOf(tableName) > -1 ? true : false;
5337
5372
  }
5338
5373
  addIdMapping(i7ID, uuid, type) {
5339
5374
  if (this.integralID2UUID.has(i7ID)) {