@enervance/insight-cim-model 0.0.25 → 0.0.27
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.
- package/dist/analysis/analysis-neplan/digi-ons.d.ts +58 -0
- package/dist/analysis/analysis-neplan/digi-ons.js +361 -0
- package/dist/analysis/analysis-neplan/digi-ons.js.map +1 -0
- package/dist/config/config.utils.d.ts +1 -0
- package/dist/config/config.utils.js +37 -0
- package/dist/config/config.utils.js.map +1 -0
- package/dist/config/westnetz-neplan/callbacks/cb-connectivitynode.js +1 -1
- package/dist/config/westnetz-neplan/callbacks/cb-connectivitynode.js.map +1 -1
- package/dist/config/westnetz-neplan/neplan-load.config.d.ts +1 -0
- package/dist/config/westnetz-neplan/neplan-load.config.js +37 -1
- package/dist/config/westnetz-neplan/neplan-load.config.js.map +1 -1
- package/dist/constants/cim-class-definition.js +12 -0
- package/dist/constants/cim-class-definition.js.map +1 -1
- package/dist/constants/cim-class-names.d.ts +8 -0
- package/dist/constants/cim-class-names.js +8 -0
- package/dist/constants/cim-class-names.js.map +1 -1
- package/dist/constants/init-data/JENA_SPARQL.js +1 -1
- package/dist/constants/init-data/xml/settings.d.ts +1 -0
- package/dist/constants/init-data/xml/settings.js +70 -0
- package/dist/constants/init-data/xml/settings.js.map +1 -0
- package/dist/constants/rdf-xml.d.ts +7 -2
- package/dist/constants/rdf-xml.js +7 -2
- package/dist/constants/rdf-xml.js.map +1 -1
- package/dist/converter/cgmes-validator.js +2 -0
- package/dist/converter/cgmes-validator.js.map +1 -1
- package/dist/converter/integral7/ConverterIntegral7.d.ts +51 -21
- package/dist/converter/integral7/ConverterIntegral7.js +1097 -1385
- package/dist/converter/integral7/ConverterIntegral7.js.map +1 -1
- package/dist/converter/integral7/converter-i7.d.ts +175 -0
- package/dist/converter/integral7/converter-i7.js +3175 -0
- package/dist/converter/integral7/converter-i7.js.map +1 -0
- package/dist/converter/integral7/interface-i7/IDefaultValuesConfig.d.ts +207 -157
- package/dist/converter/integral7/interface-i7/IObjectMappingConfig.d.ts +8 -0
- package/dist/converter/integral7/interface-i7/IObjectMappingConfig.js +3 -0
- package/dist/converter/integral7/interface-i7/IObjectMappingConfig.js.map +1 -0
- package/dist/converter/integral7/interface-i7/IUkzExportConfig.d.ts +5 -0
- package/dist/converter/integral7/interface-i7/{db-config.js → IUkzExportConfig.js} +1 -1
- package/dist/converter/integral7/interface-i7/IUkzExportConfig.js.map +1 -0
- package/dist/converter/integral7/interface-i7/data-structures-i7.d.ts +34 -0
- package/dist/converter/integral7/interface-i7/data-structures-i7.js +3 -0
- package/dist/converter/integral7/interface-i7/data-structures-i7.js.map +1 -0
- package/dist/converter/integral7/interface-i7/export-frame-i7.d.ts +20 -0
- package/dist/converter/integral7/interface-i7/export-frame-i7.js +185 -0
- package/dist/converter/integral7/interface-i7/export-frame-i7.js.map +1 -0
- package/dist/converter/integral7/model/interfaces.d.ts +30 -7
- package/dist/converter/integral7/sql/integral.sql.d.ts +3 -1
- package/dist/converter/integral7/sql/integral.sql.js +236 -2
- package/dist/converter/integral7/sql/integral.sql.js.map +1 -1
- package/dist/converter/integral7/utils-cgmes-export.d.ts +15 -0
- package/dist/converter/integral7/utils-cgmes-export.js +119 -0
- package/dist/converter/integral7/utils-cgmes-export.js.map +1 -0
- package/dist/converter/integral7/utils.d.ts +33 -6
- package/dist/converter/integral7/utils.js +352 -66
- package/dist/converter/integral7/utils.js.map +1 -1
- package/dist/data-structures/Settings.d.ts +16 -0
- package/dist/data-structures/Settings.js +74 -0
- package/dist/data-structures/Settings.js.map +1 -0
- package/dist/data-structures/graph/GraphObject.d.ts +4 -2
- package/dist/data-structures/graph/GraphObject.js +3 -1
- package/dist/data-structures/graph/GraphObject.js.map +1 -1
- package/dist/data-structures/graph/Types.d.ts +2 -1
- package/dist/data-structures/graph/Types.js +1 -0
- package/dist/data-structures/graph/Types.js.map +1 -1
- package/dist/data-structures/graph/edges/GraphEdge.d.ts +2 -1
- package/dist/data-structures/graph/edges/GraphEdge.js +2 -2
- package/dist/data-structures/graph/edges/GraphEdge.js.map +1 -1
- package/dist/data-structures/graph/graph.js +3 -3
- package/dist/data-structures/graph/graph.js.map +1 -1
- package/dist/data-structures/graph/nodes/GraphNode.d.ts +2 -1
- package/dist/data-structures/graph/nodes/GraphNode.js +2 -2
- package/dist/data-structures/graph/nodes/GraphNode.js.map +1 -1
- package/dist/data-structures/tree/GraphTree.js +3 -3
- package/dist/data-structures/tree/GraphTree.js.map +1 -1
- package/dist/data-structures/tree/GraphTreeEdge.d.ts +1 -1
- package/dist/data-structures/tree/GraphTreeEdge.js +2 -2
- package/dist/data-structures/tree/GraphTreeEdge.js.map +1 -1
- package/dist/data-structures/tree/GraphTreeNode.d.ts +1 -1
- package/dist/data-structures/tree/GraphTreeNode.js +2 -2
- package/dist/data-structures/tree/GraphTreeNode.js.map +1 -1
- package/dist/data-structures/tree/GraphTreeObject.d.ts +2 -1
- package/dist/data-structures/tree/GraphTreeObject.js +2 -1
- package/dist/data-structures/tree/GraphTreeObject.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan-csv.js +70 -63
- package/dist/etl/etl-neplan/etl-neplan-csv.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan-feederline.d.ts +20 -0
- package/dist/etl/etl-neplan/etl-neplan-feederline.js +83 -2
- package/dist/etl/etl-neplan/etl-neplan-feederline.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan-geo.d.ts +5 -0
- package/dist/etl/etl-neplan/etl-neplan-geo.js +221 -1
- package/dist/etl/etl-neplan/etl-neplan-geo.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan.js +4 -1
- package/dist/etl/etl-neplan/etl-neplan.js.map +1 -1
- package/dist/etl/etl-neplan/neplan-contingency-analysis.js +4 -4
- package/dist/etl/etl-neplan/neplan-contingency-analysis.js.map +1 -1
- package/dist/index.d.ts +6 -4
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces/ILogger.d.ts +2 -0
- package/dist/interfaces/model/core/IIdentifiedObject.d.ts +3 -1
- package/dist/model/assetinfo/PowerTransformerInfo.js +2 -2
- package/dist/model/assetinfo/PowerTransformerInfo.js.map +1 -1
- package/dist/model/assetinfo/TapChangerInfo.js +17 -15
- package/dist/model/assetinfo/TapChangerInfo.js.map +1 -1
- package/dist/model/assetinfo/TransformerEndInfo.js +7 -5
- package/dist/model/assetinfo/TransformerEndInfo.js.map +1 -1
- package/dist/model/assetinfo/WireInfo.js +4 -3
- package/dist/model/assetinfo/WireInfo.js.map +1 -1
- package/dist/model/assets/Structure.d.ts +6 -0
- package/dist/model/assets/Structure.js +11 -0
- package/dist/model/assets/Structure.js.map +1 -0
- package/dist/model/assets/TowerConstructionKind.d.ts +4 -0
- package/dist/model/assets/TowerConstructionKind.js +9 -0
- package/dist/model/assets/TowerConstructionKind.js.map +1 -0
- package/dist/model/common/CoordinateSystem.js +4 -2
- package/dist/model/common/CoordinateSystem.js.map +1 -1
- package/dist/model/common/Location.js +4 -3
- package/dist/model/common/Location.js.map +1 -1
- package/dist/model/common/PositionPoint.js +6 -5
- package/dist/model/common/PositionPoint.js.map +1 -1
- package/dist/model/core/ACDCTerminal.d.ts +3 -1
- package/dist/model/core/ACDCTerminal.js +9 -4
- package/dist/model/core/ACDCTerminal.js.map +1 -1
- package/dist/model/core/BaseVoltage.js +5 -4
- package/dist/model/core/BaseVoltage.js.map +1 -1
- package/dist/model/core/Bay.d.ts +1 -0
- package/dist/model/core/Bay.js +13 -8
- package/dist/model/core/Bay.js.map +1 -1
- package/dist/model/core/ConductingEquipment.js +2 -1
- package/dist/model/core/ConductingEquipment.js.map +1 -1
- package/dist/model/core/ConnectivityNode.d.ts +8 -1
- package/dist/model/core/ConnectivityNode.js +22 -6
- package/dist/model/core/ConnectivityNode.js.map +1 -1
- package/dist/model/core/Curve.js +5 -5
- package/dist/model/core/Curve.js.map +1 -1
- package/dist/model/core/CurveData.js +8 -7
- package/dist/model/core/CurveData.js.map +1 -1
- package/dist/model/core/Equipment.js +7 -9
- package/dist/model/core/Equipment.js.map +1 -1
- package/dist/model/core/Feeder.js +4 -3
- package/dist/model/core/Feeder.js.map +1 -1
- package/dist/model/core/GeographicalRegion.js +3 -3
- package/dist/model/core/GeographicalRegion.js.map +1 -1
- package/dist/model/core/IdentifiedObject.d.ts +5 -3
- package/dist/model/core/IdentifiedObject.js +18 -9
- package/dist/model/core/IdentifiedObject.js.map +1 -1
- package/dist/model/core/PSRType.js +2 -2
- package/dist/model/core/PSRType.js.map +1 -1
- package/dist/model/core/PowerSystemResource.js +2 -1
- package/dist/model/core/PowerSystemResource.js.map +1 -1
- package/dist/model/core/SubGeographicalRegion.js +5 -5
- package/dist/model/core/SubGeographicalRegion.js.map +1 -1
- package/dist/model/core/Substation.d.ts +1 -0
- package/dist/model/core/Substation.js +7 -4
- package/dist/model/core/Substation.js.map +1 -1
- package/dist/model/core/Terminal.d.ts +7 -3
- package/dist/model/core/Terminal.js +31 -13
- package/dist/model/core/Terminal.js.map +1 -1
- package/dist/model/core/VoltageLevel.js +10 -14
- package/dist/model/core/VoltageLevel.js.map +1 -1
- package/dist/model/dc/ACDCConverter.js +22 -21
- package/dist/model/dc/ACDCConverter.js.map +1 -1
- package/dist/model/dc/ACDCConverterDCTerminal.js +4 -4
- package/dist/model/dc/ACDCConverterDCTerminal.js.map +1 -1
- package/dist/model/dc/CsConverter.js +18 -18
- package/dist/model/dc/CsConverter.js.map +1 -1
- package/dist/model/dc/DCBaseTerminal.js +3 -3
- package/dist/model/dc/DCBaseTerminal.js.map +1 -1
- package/dist/model/dc/DCConverterUnit.js +4 -4
- package/dist/model/dc/DCConverterUnit.js.map +1 -1
- package/dist/model/dc/DCLine.js +2 -2
- package/dist/model/dc/DCLine.js.map +1 -1
- package/dist/model/dc/DCLineSegment.js +6 -6
- package/dist/model/dc/DCLineSegment.js.map +1 -1
- package/dist/model/dc/DCNode.js +3 -3
- package/dist/model/dc/DCNode.js.map +1 -1
- package/dist/model/dc/DCTerminal.js +3 -3
- package/dist/model/dc/DCTerminal.js.map +1 -1
- package/dist/model/dc/VsConverter.js +17 -17
- package/dist/model/dc/VsConverter.js.map +1 -1
- package/dist/model/diagram/Diagram.js +4 -4
- package/dist/model/diagram/Diagram.js.map +1 -1
- package/dist/model/diagram/DiagramObject.d.ts +4 -3
- package/dist/model/diagram/DiagramObject.js +22 -9
- package/dist/model/diagram/DiagramObject.js.map +1 -1
- package/dist/model/diagram/DiagramObjectPoint.d.ts +6 -5
- package/dist/model/diagram/DiagramObjectPoint.js +22 -9
- package/dist/model/diagram/DiagramObjectPoint.js.map +1 -1
- package/dist/model/diagram/DiagramStyle.js +4 -3
- package/dist/model/diagram/DiagramStyle.js.map +1 -1
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsEnums.d.ts +16 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsEnums.js +23 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsEnums.js.map +1 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsFunctionBlock.d.ts +8 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsFunctionBlock.js +22 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsFunctionBlock.js.map +1 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/RotatingMachineDynamics.d.ts +9 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/RotatingMachineDynamics.js +8 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/RotatingMachineDynamics.js.map +1 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDetailed.d.ts +8 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDetailed.js +8 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDetailed.js.map +1 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDynamics.d.ts +7 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDynamics.js +16 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDynamics.js.map +1 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance.d.ts +25 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance.js +61 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance.js.map +1 -0
- package/dist/model/equivalents/EquivalentBranch.js +19 -17
- package/dist/model/equivalents/EquivalentBranch.js.map +1 -1
- package/dist/model/equivalents/EquivalentInjection.d.ts +25 -0
- package/dist/model/equivalents/EquivalentInjection.js +93 -0
- package/dist/model/equivalents/EquivalentInjection.js.map +1 -0
- package/dist/model/extensions/amprion/assets/AMPRIONConstructionContainer.d.ts +22 -0
- package/dist/model/extensions/amprion/assets/AMPRIONConstructionContainer.js +90 -0
- package/dist/model/extensions/amprion/assets/AMPRIONConstructionContainer.js.map +1 -0
- package/dist/model/extensions/amprion/assets/AMPRIONFacility.d.ts +25 -0
- package/dist/model/extensions/amprion/assets/AMPRIONFacility.js +98 -0
- package/dist/model/extensions/amprion/assets/AMPRIONFacility.js.map +1 -0
- package/dist/model/extensions/amprion/assets/AMPRIONSpanField.d.ts +27 -0
- package/dist/model/extensions/amprion/assets/AMPRIONSpanField.js +99 -0
- package/dist/model/extensions/amprion/assets/AMPRIONSpanField.js.map +1 -0
- package/dist/model/extensions/amprion/assets/AMPRIONStatusTypeKind.d.ts +9 -0
- package/dist/model/extensions/amprion/assets/AMPRIONStatusTypeKind.js +14 -0
- package/dist/model/extensions/amprion/assets/AMPRIONStatusTypeKind.js.map +1 -0
- package/dist/model/extensions/amprion/assets/AMPRIONTower.d.ts +34 -0
- package/dist/model/extensions/amprion/assets/AMPRIONTower.js +103 -0
- package/dist/model/extensions/amprion/assets/AMPRIONTower.js.map +1 -0
- package/dist/model/extensions/amprion/assets/AMPRIONWire.d.ts +38 -0
- package/dist/model/extensions/amprion/assets/AMPRIONWire.js +120 -0
- package/dist/model/extensions/amprion/assets/AMPRIONWire.js.map +1 -0
- package/dist/model/extensions/amprion/common/AMPRIONStateTypeKind.d.ts +5 -0
- package/dist/model/extensions/amprion/common/AMPRIONStateTypeKind.js +10 -0
- package/dist/model/extensions/amprion/common/AMPRIONStateTypeKind.js.map +1 -0
- package/dist/model/extensions/amprion/common/AMPRIONWireIsolationTypeKind.d.ts +11 -0
- package/dist/model/extensions/amprion/common/AMPRIONWireIsolationTypeKind.js +16 -0
- package/dist/model/extensions/amprion/common/AMPRIONWireIsolationTypeKind.js.map +1 -0
- package/dist/model/extensions/amprion/common/AMPRIONWireLayoutKind.d.ts +6 -0
- package/dist/model/extensions/amprion/common/AMPRIONWireLayoutKind.js +11 -0
- package/dist/model/extensions/amprion/common/AMPRIONWireLayoutKind.js.map +1 -0
- package/dist/model/extensions/amprion/common/AMPRIONWireOperatingTypeKind.d.ts +10 -0
- package/dist/model/extensions/amprion/common/AMPRIONWireOperatingTypeKind.js +15 -0
- package/dist/model/extensions/amprion/common/AMPRIONWireOperatingTypeKind.js.map +1 -0
- package/dist/model/extensions/amprion/core/AMPRIONBay.js +5 -4
- package/dist/model/extensions/amprion/core/AMPRIONBay.js.map +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js +5 -5
- package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js.map +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONLine.d.ts +5 -0
- package/dist/model/extensions/amprion/core/AMPRIONLine.js +33 -0
- package/dist/model/extensions/amprion/core/AMPRIONLine.js.map +1 -0
- package/dist/model/extensions/amprion/core/AMPRIONSubstation.d.ts +15 -0
- package/dist/model/extensions/amprion/core/AMPRIONSubstation.js +93 -0
- package/dist/model/extensions/amprion/core/AMPRIONSubstation.js.map +1 -0
- package/dist/model/extensions/amprion/model/AMPRIONModel.d.ts +22 -2
- package/dist/model/extensions/amprion/model/AMPRIONModel.js +57 -3
- package/dist/model/extensions/amprion/model/AMPRIONModel.js.map +1 -1
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProject.d.ts +2 -0
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProject.js +2 -2
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProject.js.map +1 -1
- package/dist/model/extensions/amprion/project/AMPRIONErpProjectPhase.js +30 -30
- package/dist/model/extensions/amprion/project/AMPRIONErpProjectPhase.js.map +1 -1
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.d.ts +13 -0
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.js +80 -0
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.js.map +1 -0
- package/dist/model/extensions/amprion/wires/AMPRIONSeriesCompensator.js +4 -4
- package/dist/model/extensions/amprion/wires/AMPRIONSeriesCompensator.js.map +1 -1
- package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerEndInfo.js +9 -8
- package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerEndInfo.js.map +1 -1
- package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerInfo.js +9 -8
- package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerInfo.js.map +1 -1
- package/dist/model/extensions/enervance/assetinfo/EVWireInfo.js +14 -13
- package/dist/model/extensions/enervance/assetinfo/EVWireInfo.js.map +1 -1
- package/dist/model/extensions/enervance/assets/EVWireObject.d.ts +1 -1
- package/dist/model/extensions/enervance/assets/EVWireObject.js +10 -5
- package/dist/model/extensions/enervance/assets/EVWireObject.js.map +1 -1
- package/dist/model/extensions/enervance/core/EVTerminal.d.ts +3 -0
- package/dist/model/extensions/enervance/core/EVTerminal.js +19 -0
- package/dist/model/extensions/enervance/core/EVTerminal.js.map +1 -1
- package/dist/model/extensions/enervance/wires/EVACLineSegment.d.ts +1 -1
- package/dist/model/extensions/enervance/wires/EVACLineSegment.js +3 -3
- package/dist/model/extensions/enervance/wires/EVACLineSegment.js.map +1 -1
- package/dist/model/extensions/enervance/wires/EVACLineSubSegment.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/assets/WNFacility.d.ts +1 -1
- package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js +22 -2
- package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.d.ts +5 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.js +14 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js +3 -2
- package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.d.ts +10 -3
- package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js +147 -98
- package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/core/WNFeeder.d.ts +8 -2
- package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js +80 -9
- package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.d.ts +5 -4
- package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js +114 -45
- package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js.map +1 -1
- package/dist/model/generation/FossilFuel.js +4 -4
- package/dist/model/generation/FossilFuel.js.map +1 -1
- package/dist/model/generation/GeneratingUnit.js +7 -6
- package/dist/model/generation/GeneratingUnit.js.map +1 -1
- package/dist/model/generation/HydroGeneratingUnit.d.ts +3 -0
- package/dist/model/generation/HydroGeneratingUnit.js +21 -0
- package/dist/model/generation/HydroGeneratingUnit.js.map +1 -1
- package/dist/model/generation/SolarGeneratingUnit.d.ts +2 -0
- package/dist/model/generation/SolarGeneratingUnit.js +13 -0
- package/dist/model/generation/SolarGeneratingUnit.js.map +1 -1
- package/dist/model/generation/ThermalGeneratingUnit.js +2 -2
- package/dist/model/generation/ThermalGeneratingUnit.js.map +1 -1
- package/dist/model/generation/WindGeneratingUnit.js +3 -3
- package/dist/model/generation/WindGeneratingUnit.js.map +1 -1
- package/dist/model/loadmodel/ConformLoad.js +3 -3
- package/dist/model/loadmodel/ConformLoad.js.map +1 -1
- package/dist/model/loadmodel/ConformLoadGroup.js +2 -2
- package/dist/model/loadmodel/ConformLoadGroup.js.map +1 -1
- package/dist/model/loadmodel/LoadArea.js +2 -2
- package/dist/model/loadmodel/LoadArea.js.map +1 -1
- package/dist/model/loadmodel/LoadGroup.js +2 -2
- package/dist/model/loadmodel/LoadGroup.js.map +1 -1
- package/dist/model/loadmodel/SubLoadArea.js +3 -3
- package/dist/model/loadmodel/SubLoadArea.js.map +1 -1
- package/dist/model/model/Model.d.ts +34 -2
- package/dist/model/model/Model.js +86 -12
- package/dist/model/model/Model.js.map +1 -1
- package/dist/model/operationallimits/CurrentLimit.js +3 -2
- package/dist/model/operationallimits/CurrentLimit.js.map +1 -1
- package/dist/model/operationallimits/OperationalLimit.js +7 -14
- package/dist/model/operationallimits/OperationalLimit.js.map +1 -1
- package/dist/model/operationallimits/OperationalLimitSet.js +5 -8
- package/dist/model/operationallimits/OperationalLimitSet.js.map +1 -1
- package/dist/model/operationallimits/OperationalLimitType.js +4 -4
- package/dist/model/operationallimits/OperationalLimitType.js.map +1 -1
- package/dist/model/operationallimits/VoltageLimit.d.ts +9 -0
- package/dist/model/operationallimits/VoltageLimit.js +38 -0
- package/dist/model/operationallimits/VoltageLimit.js.map +1 -0
- package/dist/model/statevariables/SvPowerFlow.js +5 -5
- package/dist/model/statevariables/SvPowerFlow.js.map +1 -1
- package/dist/model/statevariables/SvStatus.js +5 -5
- package/dist/model/statevariables/SvStatus.js.map +1 -1
- package/dist/model/statevariables/SvTapStep.js +5 -5
- package/dist/model/statevariables/SvTapStep.js.map +1 -1
- package/dist/model/topology/TopologicalNode.js +5 -4
- package/dist/model/topology/TopologicalNode.js.map +1 -1
- package/dist/model/wires/ACLineSegment.js +12 -11
- package/dist/model/wires/ACLineSegment.js.map +1 -1
- package/dist/model/wires/AsynchronousMachine.js +20 -20
- package/dist/model/wires/AsynchronousMachine.js.map +1 -1
- package/dist/model/wires/Breaker.js +2 -2
- package/dist/model/wires/Breaker.js.map +1 -1
- package/dist/model/wires/BusbarSection.js +3 -3
- package/dist/model/wires/BusbarSection.js.map +1 -1
- package/dist/model/wires/Conductor.js +8 -2
- package/dist/model/wires/Conductor.js.map +1 -1
- package/dist/model/wires/Disconnector.js +2 -2
- package/dist/model/wires/Disconnector.js.map +1 -1
- package/dist/model/wires/EarthFaultCompensator.js +2 -1
- package/dist/model/wires/EarthFaultCompensator.js.map +1 -1
- package/dist/model/wires/EnergyConsumer.js +10 -9
- package/dist/model/wires/EnergyConsumer.js.map +1 -1
- package/dist/model/wires/EnergySource.js +13 -12
- package/dist/model/wires/EnergySource.js.map +1 -1
- package/dist/model/wires/ExternalNetworkInjection.js +20 -19
- package/dist/model/wires/ExternalNetworkInjection.js.map +1 -1
- package/dist/model/wires/GroundingImpedance.js +3 -3
- package/dist/model/wires/GroundingImpedance.js.map +1 -1
- package/dist/model/wires/Junction.js +3 -3
- package/dist/model/wires/Junction.js.map +1 -1
- package/dist/model/wires/Line.d.ts +3 -0
- package/dist/model/wires/Line.js +20 -5
- package/dist/model/wires/Line.js.map +1 -1
- package/dist/model/wires/LinearShuntCompensator.js +6 -6
- package/dist/model/wires/LinearShuntCompensator.js.map +1 -1
- package/dist/model/wires/PetersenCoil.js +9 -9
- package/dist/model/wires/PetersenCoil.js.map +1 -1
- package/dist/model/wires/PhaseTapChanger.d.ts +9 -0
- package/dist/model/wires/PhaseTapChanger.js +27 -0
- package/dist/model/wires/PhaseTapChanger.js.map +1 -0
- package/dist/model/wires/PhaseTapChangerAsymmetrical.d.ts +10 -0
- package/dist/model/wires/PhaseTapChangerAsymmetrical.js +41 -0
- package/dist/model/wires/PhaseTapChangerAsymmetrical.js.map +1 -0
- package/dist/model/wires/PhaseTapChangerLinear.d.ts +12 -0
- package/dist/model/wires/PhaseTapChangerLinear.js +51 -0
- package/dist/model/wires/PhaseTapChangerLinear.js.map +1 -0
- package/dist/model/wires/PhaseTapChangerNonLinear.d.ts +10 -0
- package/dist/model/wires/PhaseTapChangerNonLinear.js +37 -0
- package/dist/model/wires/PhaseTapChangerNonLinear.js.map +1 -0
- package/dist/model/wires/PhaseTapChangerSymmetrical.d.ts +6 -0
- package/dist/model/wires/PhaseTapChangerSymmetrical.js +24 -0
- package/dist/model/wires/PhaseTapChangerSymmetrical.js.map +1 -0
- package/dist/model/wires/PhaseTapChangerTable.d.ts +14 -0
- package/dist/model/wires/PhaseTapChangerTable.js +44 -0
- package/dist/model/wires/PhaseTapChangerTable.js.map +1 -0
- package/dist/model/wires/PhaseTapChangerTablePoint.d.ts +15 -0
- package/dist/model/wires/PhaseTapChangerTablePoint.js +54 -0
- package/dist/model/wires/PhaseTapChangerTablePoint.js.map +1 -0
- package/dist/model/wires/PhaseTapChangerTabular.d.ts +10 -0
- package/dist/model/wires/PhaseTapChangerTabular.js +38 -0
- package/dist/model/wires/PhaseTapChangerTabular.js.map +1 -0
- package/dist/model/wires/PowerTransformer.js +3 -2
- package/dist/model/wires/PowerTransformer.js.map +1 -1
- package/dist/model/wires/PowerTransformerEnd.js +21 -21
- package/dist/model/wires/PowerTransformerEnd.js.map +1 -1
- package/dist/model/wires/RatioTapChanger.d.ts +2 -0
- package/dist/model/wires/RatioTapChanger.js +21 -24
- package/dist/model/wires/RatioTapChanger.js.map +1 -1
- package/dist/model/wires/RatioTapChangerTable.d.ts +3 -0
- package/dist/model/wires/RatioTapChangerTable.js +16 -2
- package/dist/model/wires/RatioTapChangerTable.js.map +1 -1
- package/dist/model/wires/RatioTapChangerTablePoint.js +4 -4
- package/dist/model/wires/RatioTapChangerTablePoint.js.map +1 -1
- package/dist/model/wires/ReactiveCapabilityCurve.js +2 -2
- package/dist/model/wires/ReactiveCapabilityCurve.js.map +1 -1
- package/dist/model/wires/RegulatingCondEq.js +3 -2
- package/dist/model/wires/RegulatingCondEq.js.map +1 -1
- package/dist/model/wires/RegulatingControl.js +9 -8
- package/dist/model/wires/RegulatingControl.js.map +1 -1
- package/dist/model/wires/RotatingMachine.d.ts +1 -0
- package/dist/model/wires/RotatingMachine.js +21 -7
- package/dist/model/wires/RotatingMachine.js.map +1 -1
- package/dist/model/wires/SeriesCompensator.js +9 -8
- package/dist/model/wires/SeriesCompensator.js.map +1 -1
- package/dist/model/wires/ShuntCompensator.js +15 -15
- package/dist/model/wires/ShuntCompensator.js.map +1 -1
- package/dist/model/wires/StaticVarCompensator.js +14 -14
- package/dist/model/wires/StaticVarCompensator.js.map +1 -1
- package/dist/model/wires/Switch.js +4 -3
- package/dist/model/wires/Switch.js.map +1 -1
- package/dist/model/wires/SynchronousMachine.d.ts +2 -0
- package/dist/model/wires/SynchronousMachine.js +28 -31
- package/dist/model/wires/SynchronousMachine.js.map +1 -1
- package/dist/model/wires/TapChanger.d.ts +2 -0
- package/dist/model/wires/TapChanger.js +15 -15
- package/dist/model/wires/TapChanger.js.map +1 -1
- package/dist/model/wires/TapChangerControl.js +3 -3
- package/dist/model/wires/TapChangerControl.js.map +1 -1
- package/dist/model/wires/TapChangerTablePoint.d.ts +3 -0
- package/dist/model/wires/TapChangerTablePoint.js +34 -7
- package/dist/model/wires/TapChangerTablePoint.js.map +1 -1
- package/dist/model/wires/TransformerEnd.d.ts +3 -0
- package/dist/model/wires/TransformerEnd.js +12 -19
- package/dist/model/wires/TransformerEnd.js.map +1 -1
- package/dist/util/collection/util-dot.d.ts +2 -0
- package/dist/util/collection/util-dot.js +71 -0
- package/dist/util/collection/util-dot.js.map +1 -0
- package/dist/util/collection/util-excel.d.ts +10 -0
- package/dist/util/collection/util-excel.js +58 -0
- package/dist/util/collection/util-excel.js.map +1 -0
- package/dist/util/collection/util-graph.d.ts +7 -0
- package/dist/util/collection/util-graph.js +168 -0
- package/dist/util/collection/util-graph.js.map +1 -0
- package/dist/util/collection/util-graph2tree.d.ts +39 -0
- package/dist/util/collection/util-graph2tree.js +172 -0
- package/dist/util/collection/util-graph2tree.js.map +1 -0
- package/dist/util/collection/util-tree.d.ts +65 -0
- package/dist/util/collection/util-tree.js +236 -0
- package/dist/util/collection/util-tree.js.map +1 -0
- package/dist/util/database/mysql-controller.d.ts +16 -0
- package/dist/util/database/mysql-controller.js +45 -0
- package/dist/util/database/mysql-controller.js.map +1 -0
- package/dist/util/sparql/sparql-utils.d.ts +1 -0
- package/dist/util/sparql/sparql-utils.js +5 -1
- package/dist/util/sparql/sparql-utils.js.map +1 -1
- package/dist/util/util-create.d.ts +5 -2
- package/dist/util/util-create.js +18 -6
- package/dist/util/util-create.js.map +1 -1
- package/dist/util/util-test.d.ts +18 -0
- package/dist/util/util-test.js +300 -0
- package/dist/util/util-test.js.map +1 -0
- package/dist/util/util-topology.js +0 -2
- package/dist/util/util-topology.js.map +1 -1
- package/dist/util/utils.d.ts +0 -12
- package/dist/util/utils.js +17 -33
- package/dist/util/utils.js.map +1 -1
- package/dist/util/xml/xml.serializer.d.ts +12 -0
- package/dist/util/xml/xml.serializer.js +33 -3
- package/dist/util/xml/xml.serializer.js.map +1 -1
- package/package.json +11 -5
- package/dist/converter/integral7/interface-i7/db-config.d.ts +0 -13
- package/dist/converter/integral7/interface-i7/db-config.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.validateInMemoryObjects = exports.getValidTerminals = exports.getGeoCoordinates = exports.getVoltageLevelByVoltage = exports.ConverterIntegral7 = void 0;
|
|
3
|
+
exports.validateInMemoryObjects = exports.getValidTapChangerControls = exports.getValidTerminals = exports.getGeoCoordinates = exports.getVoltageLevelByVoltage = exports.ConverterIntegral7 = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const __1 = require("../..");
|
|
6
6
|
const mysql = tslib_1.__importStar(require("mysql"));
|
|
@@ -11,24 +11,17 @@ const utils_trafo3w_1 = require("./utils-trafo3w");
|
|
|
11
11
|
const integral_sql_1 = require("./sql/integral.sql");
|
|
12
12
|
const path_1 = tslib_1.__importDefault(require("path"));
|
|
13
13
|
const fs_1 = tslib_1.__importDefault(require("fs"));
|
|
14
|
-
const jszip_1 = tslib_1.__importDefault(require("jszip"));
|
|
15
14
|
const Standort_1 = require("./model/integral/Standort");
|
|
16
15
|
const Schaltanlage_1 = require("./model/integral/Schaltanlage");
|
|
17
16
|
const Schaltanlagenabschnitt_1 = require("./model/integral/Schaltanlagenabschnitt");
|
|
18
|
-
const StandortNsg_1 = require("./model/integral/StandortNsg");
|
|
19
|
-
const SchaltanlageNSG_1 = require("./model/integral/SchaltanlageNSG");
|
|
20
|
-
const SchaltanlagenabschnittNsg_1 = require("./model/integral/SchaltanlagenabschnittNsg");
|
|
21
|
-
const Point_1 = require("./model/integral/Point");
|
|
22
|
-
const utils_schema_1 = require("./utils-schema");
|
|
23
17
|
const Schaltfeld_1 = require("./model/integral/Schaltfeld");
|
|
24
|
-
const SchaltfeldNsg_1 = require("./model/integral/SchaltfeldNsg");
|
|
25
18
|
const KnotenSo_1 = require("./model/integral/KnotenSo");
|
|
26
|
-
const KnotenSoNsg_1 = require("./model/integral/KnotenSoNsg");
|
|
27
19
|
const Leitung_1 = require("./model/integral/Leitung");
|
|
28
20
|
const TapChangerInfo_1 = require("../../model/assetinfo/TapChangerInfo");
|
|
29
21
|
const AMPRIONBay_1 = require("../../model/extensions/amprion/core/AMPRIONBay");
|
|
30
22
|
const AMPRIONConnectivityNode_1 = require("../../model/extensions/amprion/core/AMPRIONConnectivityNode");
|
|
31
23
|
const AMPRIONSeriesCompensator_1 = require("../../model/extensions/amprion/wires/AMPRIONSeriesCompensator");
|
|
24
|
+
const AMPRIONSubstation_1 = require("../../model/extensions/amprion/core/AMPRIONSubstation");
|
|
32
25
|
const CsConverter_1 = require("../../model/dc/CsConverter");
|
|
33
26
|
const DCConverterUnit_1 = require("../../model/dc/DCConverterUnit");
|
|
34
27
|
const DCNode_1 = require("../../model/dc/DCNode");
|
|
@@ -55,12 +48,17 @@ const EVPowerTransformerEndInfo_1 = require("../../model/extensions/enervance/as
|
|
|
55
48
|
const util_create_1 = require("../../util/util-create");
|
|
56
49
|
const EVPowerTransformerInfo_1 = require("../../model/extensions/enervance/assetinfo/EVPowerTransformerInfo");
|
|
57
50
|
const EVWireInfo_1 = require("../../model/extensions/enervance/assetinfo/EVWireInfo");
|
|
51
|
+
const SynchronousMachineTimeConstantReactance_1 = require("../../model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance");
|
|
52
|
+
const EquivalentInjection_1 = require("../../model/equivalents/EquivalentInjection");
|
|
53
|
+
const xml_serializer_1 = require("../../util/xml/xml.serializer");
|
|
58
54
|
class ConverterIntegral7 {
|
|
59
55
|
constructor() {
|
|
60
56
|
this.limit = 100;
|
|
57
|
+
this.i7SchemaID2UUID = new Map();
|
|
61
58
|
this.integralID2UUID = new Map();
|
|
62
|
-
this.
|
|
59
|
+
this.UUID2Integral7ID_ = new Map();
|
|
63
60
|
this.statcomRegulatingControls = new Map();
|
|
61
|
+
this.integralID2Type = new Map();
|
|
64
62
|
this.schaltfeldIDs = [];
|
|
65
63
|
this.querkupplungIDs = [];
|
|
66
64
|
this.laengskupplungIDs = [];
|
|
@@ -68,6 +66,9 @@ class ConverterIntegral7 {
|
|
|
68
66
|
this.knotenSfIDs = [];
|
|
69
67
|
this.leitungsIDs = [];
|
|
70
68
|
this.kdrosseltypen = new Map();
|
|
69
|
+
this.schemaIDSchemastandort = new Map();
|
|
70
|
+
this.schemaIDSchaltanlage = new Map();
|
|
71
|
+
this.schemaIDSchaltanlagenabschnitt = new Map();
|
|
71
72
|
this.integralStandorte = new Map();
|
|
72
73
|
this.integralSchaltanlagen = new Map();
|
|
73
74
|
this.integralSchaltanlagenAbschnitte = new Map();
|
|
@@ -91,12 +92,13 @@ class ConverterIntegral7 {
|
|
|
91
92
|
connectivityNodes: new Map(),
|
|
92
93
|
terminals: new Map()
|
|
93
94
|
};
|
|
95
|
+
this.knotenSpannungsband = new Map();
|
|
94
96
|
this.knotenSpannung = new Map();
|
|
95
97
|
this.substationVoltagelevels = new Map();
|
|
96
98
|
this.eqSpannungsBander = new Map();
|
|
97
99
|
this.substationNames = new Map();
|
|
98
100
|
this.coordinateSystemName = 'EPSG:4326';
|
|
99
|
-
this.
|
|
101
|
+
this.cimModelDefaultValues = new __1.Model();
|
|
100
102
|
this.availableTableNames = [];
|
|
101
103
|
}
|
|
102
104
|
init(mySqlConfig, logger) {
|
|
@@ -115,7 +117,9 @@ class ConverterIntegral7 {
|
|
|
115
117
|
this.laengskondensatorAnzahl = yield this.queryObjectCount(integral_sql_1.Integral7TableNames.LAENGSKONDENSATOR);
|
|
116
118
|
this.trafo2WAnzahl = yield this.queryObjectCount(integral_sql_1.Integral7TableNames.TRAFO2W);
|
|
117
119
|
this.trafo3WAnzahl = yield this.queryObjectCount(integral_sql_1.Integral7TableNames.TRAFO3W);
|
|
120
|
+
this.ukzDbNodes = yield this.queryFunctionWrapper(`SELECT DISTINCT ukz as name FROM (select DISTINCT ukz FROM netz_leitung UNION SELECT DISTINCT ukz FROM netz_standort) tab;`);
|
|
118
121
|
yield this.queryAnschlussIDs();
|
|
122
|
+
yield this.querySpGeregelteKnoten();
|
|
119
123
|
resolve({ status: 'successful', message: 'ok' });
|
|
120
124
|
}
|
|
121
125
|
catch (e) {
|
|
@@ -124,531 +128,16 @@ class ConverterIntegral7 {
|
|
|
124
128
|
}));
|
|
125
129
|
});
|
|
126
130
|
}
|
|
127
|
-
convert(defaultValuesConfig, energyTypesConfig, tempDirPath, gridName) {
|
|
128
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
129
|
-
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
130
|
-
try {
|
|
131
|
-
const eqProfileExportObjects = utils_1.createProfileExportObjects(tempDirPath, `${gridName}_eq.xml`);
|
|
132
|
-
this.writeHeaderStart(eqProfileExportObjects.xmlWriter);
|
|
133
|
-
const modelEQUUID = __1.generateUUID();
|
|
134
|
-
const profilesEQ = [__1.RDF_XML.EQ_CORE_PROFILE_URI, __1.RDF_XML.EQ_SC_PROFILE_URI, __1.RDF_XML.EQ_OPER_PROFILE_URI];
|
|
135
|
-
this.cimModel.toCIMXML(eqProfileExportObjects.xmlWriter, modelEQUUID, profilesEQ, undefined, __1.RDF_XML.AMP_MAS);
|
|
136
|
-
const dlProfileExportObjects = utils_1.createProfileExportObjects(tempDirPath, `${gridName}_dl.xml`);
|
|
137
|
-
this.writeHeaderStart(dlProfileExportObjects.xmlWriter);
|
|
138
|
-
const modelDLUUID = __1.generateUUID();
|
|
139
|
-
const profilesDl = [__1.RDF_XML.DL_OPER_PROFILE_URI];
|
|
140
|
-
this.cimModel.toCIMXML(dlProfileExportObjects.xmlWriter, modelDLUUID, profilesDl, [modelEQUUID], __1.RDF_XML.AMP_MAS);
|
|
141
|
-
const glProfileExportObjects = utils_1.createProfileExportObjects(tempDirPath, `${gridName}_gl.xml`);
|
|
142
|
-
this.writeHeaderStart(glProfileExportObjects.xmlWriter);
|
|
143
|
-
const modelGLUUID = __1.generateUUID();
|
|
144
|
-
const profilesGl = [__1.RDF_XML.GL_OPER_PROFILE_URI];
|
|
145
|
-
this.cimModel.toCIMXML(glProfileExportObjects.xmlWriter, modelGLUUID, profilesGl, [modelEQUUID], __1.RDF_XML.AMP_MAS);
|
|
146
|
-
const sshProfileExportObjects = utils_1.createProfileExportObjects(tempDirPath, `${gridName}_ssh.xml`);
|
|
147
|
-
this.writeHeaderStart(sshProfileExportObjects.xmlWriter);
|
|
148
|
-
const modelSSHUUID = __1.generateUUID();
|
|
149
|
-
const profilesSSH = [__1.RDF_XML.SSH_OPER_PROFILE_URI];
|
|
150
|
-
this.cimModel.toCIMXML(sshProfileExportObjects.xmlWriter, modelSSHUUID, profilesSSH, [modelEQUUID], __1.RDF_XML.AMP_MAS);
|
|
151
|
-
const svProfileExportObjects = utils_1.createProfileExportObjects(tempDirPath, `${gridName}_sv.xml`);
|
|
152
|
-
this.writeHeaderStart(svProfileExportObjects.xmlWriter);
|
|
153
|
-
const modelSVUUID = __1.generateUUID();
|
|
154
|
-
const profilesSV = [__1.RDF_XML.SV_OPER_PROFILE_URI];
|
|
155
|
-
this.cimModel.toCIMXML(svProfileExportObjects.xmlWriter, modelSVUUID, profilesSV, [modelEQUUID, modelSSHUUID], __1.RDF_XML.AMP_MAS);
|
|
156
|
-
const ampI7ProfileExportObjects = utils_1.createProfileExportObjects(tempDirPath, `${gridName}_nonstandard.xml`);
|
|
157
|
-
this.writeHeaderStart(ampI7ProfileExportObjects.xmlWriter, __1.RDF_XML.AMP_I7_PROFILE_URI);
|
|
158
|
-
const modelAmpI7UUID = __1.generateUUID();
|
|
159
|
-
const profilesAmpI7UUID = [__1.RDF_XML.AMP_I7_PROFILE_URI];
|
|
160
|
-
this.cimModel.toCIMXML(ampI7ProfileExportObjects.xmlWriter, modelAmpI7UUID, profilesAmpI7UUID, [modelEQUUID], __1.RDF_XML.AMP_MAS);
|
|
161
|
-
this.addDefaultObjects(defaultValuesConfig);
|
|
162
|
-
yield this.convertGeoRegionen(defaultValuesConfig);
|
|
163
|
-
yield this.convertSubGeoRegionen(defaultValuesConfig);
|
|
164
|
-
yield this.convertStromkreise();
|
|
165
|
-
yield this.convertBetriebsmitteltypenLeitung();
|
|
166
|
-
yield this.convertBetriebsmitteltypenTrafo();
|
|
167
|
-
yield this.convertBetriebsmitteltypenKdrossel();
|
|
168
|
-
yield this.convertNetzvarianten();
|
|
169
|
-
this.objectToCIMXML(glProfileExportObjects.xmlWriter, this.cimModel.coordinateSystems, __1.RDF_XML.PROFILE_GL, defaultValuesConfig);
|
|
170
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.geographicalRegions, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
171
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.subgeographicalRegions, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
172
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.lines, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
173
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.loadAreas, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
174
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.subLoadAreas, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
175
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.conformLoadGroups, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
176
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.diagrams, __1.RDF_XML.PROFILE_DL, defaultValuesConfig);
|
|
177
|
-
this.objectArrayToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.diagramStyles, __1.RDF_XML.PROFILE_DL);
|
|
178
|
-
const restCount = this.standortAnzahl < this.limit ? this.standortAnzahl : (this.standortAnzahl % this.limit);
|
|
179
|
-
const intervalCount = (this.standortAnzahl - restCount) / this.limit;
|
|
180
|
-
const numberOfIntervals = restCount > 0 ? intervalCount + 1 : intervalCount;
|
|
181
|
-
for (let i = 0; i < numberOfIntervals; i++) {
|
|
182
|
-
const offset = i * this.limit;
|
|
183
|
-
const currentLimit = (i + 1 === numberOfIntervals && restCount > 0) ? restCount : this.limit;
|
|
184
|
-
yield this.convertStandorte(currentLimit, offset, defaultValuesConfig);
|
|
185
|
-
const standortIDs = [...this.integralStandorte.keys()];
|
|
186
|
-
yield this.covertSchaltanlagen(standortIDs, defaultValuesConfig);
|
|
187
|
-
const schaltanlagenIDs = [...this.integralSchaltanlagen.keys()];
|
|
188
|
-
if (schaltanlagenIDs.length > 0) {
|
|
189
|
-
yield this.convertSchaltanlagenAbschnitte(schaltanlagenIDs);
|
|
190
|
-
}
|
|
191
|
-
const schaltanlagenAbschnittIDs = [...this.integralSchaltanlagenAbschnitte.keys()];
|
|
192
|
-
if (schaltanlagenAbschnittIDs.length > 0) {
|
|
193
|
-
yield this.convertSchaltfelder(schaltanlagenAbschnittIDs);
|
|
194
|
-
}
|
|
195
|
-
this.schaltfeldIDs = [...this.integralSchaltfelder.keys()];
|
|
196
|
-
const stpSchieneID = yield this.convertSternpunktSchienen(standortIDs);
|
|
197
|
-
yield this.convertKdrossel(stpSchieneID);
|
|
198
|
-
yield this.convertStpSchaltelemente(stpSchieneID);
|
|
199
|
-
if (schaltanlagenAbschnittIDs.length > 0) {
|
|
200
|
-
yield this.convertQuerkupplungen(schaltanlagenAbschnittIDs);
|
|
201
|
-
}
|
|
202
|
-
if (schaltanlagenIDs.length > 0) {
|
|
203
|
-
yield this.convertLaegskupplungen(schaltanlagenIDs);
|
|
204
|
-
}
|
|
205
|
-
yield this.convertKnotenSo(standortIDs, defaultValuesConfig);
|
|
206
|
-
const knotenSoIDs = [...this.integralKnotenSo.keys()];
|
|
207
|
-
if (this.schaltfeldIDs.length > 0) {
|
|
208
|
-
yield this.convertKnotenSf(this.schaltfeldIDs);
|
|
209
|
-
}
|
|
210
|
-
if (this.querkupplungIDs.length > 0) {
|
|
211
|
-
yield this.convertKnotenKf(this.querkupplungIDs);
|
|
212
|
-
}
|
|
213
|
-
if (this.laengskupplungIDs.length > 0) {
|
|
214
|
-
yield this.convertKnotenLk(this.laengskupplungIDs);
|
|
215
|
-
}
|
|
216
|
-
if (knotenSoIDs.length > 0) {
|
|
217
|
-
yield this.convertSchlaufen(knotenSoIDs);
|
|
218
|
-
}
|
|
219
|
-
if (schaltanlagenAbschnittIDs.length > 0) {
|
|
220
|
-
yield this.convertSammelschienenAbschnitte(schaltanlagenAbschnittIDs);
|
|
221
|
-
}
|
|
222
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
223
|
-
const querZweigID2ErgebnisLflID = yield this.convertBelastungen([...knotenSoIDs, ...this.knotenSfIDs], defaultValuesConfig, false);
|
|
224
|
-
yield this.convertQuerzweigErgebnisData(querZweigID2ErgebnisLflID, 1, 0);
|
|
225
|
-
}
|
|
226
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
227
|
-
yield this.convertEinspeisungen([...knotenSoIDs, ...this.knotenSfIDs]);
|
|
228
|
-
}
|
|
229
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
230
|
-
yield this.convertGeneratoren([...knotenSoIDs, ...this.knotenSfIDs], energyTypesConfig);
|
|
231
|
-
}
|
|
232
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
233
|
-
yield this.convertKraftwerksbloecke([...knotenSoIDs, ...this.knotenSfIDs], energyTypesConfig);
|
|
234
|
-
}
|
|
235
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
236
|
-
yield this.convertErsatzQuerweige([...knotenSoIDs, ...this.knotenSfIDs]);
|
|
237
|
-
}
|
|
238
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
239
|
-
yield this.convertBoundaryInjections([...knotenSoIDs, ...this.knotenSfIDs]);
|
|
240
|
-
}
|
|
241
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
242
|
-
yield this.convertAsynchronmotor([...knotenSoIDs, ...this.knotenSfIDs]);
|
|
243
|
-
}
|
|
244
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
245
|
-
yield this.convertKompensationsdrossel([...knotenSoIDs, ...this.knotenSfIDs]);
|
|
246
|
-
}
|
|
247
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
248
|
-
yield this.convertKompensationskondensatoren([...knotenSoIDs, ...this.knotenSfIDs]);
|
|
249
|
-
}
|
|
250
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
251
|
-
yield this.convertStatcom([...knotenSoIDs, ...this.knotenSfIDs]);
|
|
252
|
-
}
|
|
253
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
254
|
-
yield this.convertSVC([...knotenSoIDs, ...this.knotenSfIDs]);
|
|
255
|
-
}
|
|
256
|
-
const containerStarreVerbindungen = [...this.schaltfeldIDs, ...this.querkupplungIDs, ...this.laengskupplungIDs];
|
|
257
|
-
if (containerStarreVerbindungen.length > 0) {
|
|
258
|
-
yield this.convertStarreVerbindungen(containerStarreVerbindungen);
|
|
259
|
-
}
|
|
260
|
-
if (containerStarreVerbindungen.length > 0) {
|
|
261
|
-
yield this.convertTrenner3f(containerStarreVerbindungen);
|
|
262
|
-
}
|
|
263
|
-
if (containerStarreVerbindungen.length > 0) {
|
|
264
|
-
yield this.convertTrennerFi3f(containerStarreVerbindungen);
|
|
265
|
-
}
|
|
266
|
-
if (containerStarreVerbindungen.length > 0) {
|
|
267
|
-
yield this.convertLeistungsschalter(containerStarreVerbindungen);
|
|
268
|
-
}
|
|
269
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
270
|
-
yield this.convertCsConverterDC([...knotenSoIDs, ...this.knotenSfIDs]);
|
|
271
|
-
}
|
|
272
|
-
if (knotenSoIDs.length > 0 || this.knotenSfIDs.length > 0) {
|
|
273
|
-
yield this.convertVsConverterDC([...knotenSoIDs, ...this.knotenSfIDs]);
|
|
274
|
-
}
|
|
275
|
-
yield this.convertSchemaStandorte(standortIDs);
|
|
276
|
-
if (knotenSoIDs.length > 0) {
|
|
277
|
-
yield this.convertSchemaKnotenSo(knotenSoIDs);
|
|
278
|
-
}
|
|
279
|
-
if (schaltanlagenIDs.length > 0) {
|
|
280
|
-
yield this.convertSchemaSchaltanlage(schaltanlagenIDs);
|
|
281
|
-
}
|
|
282
|
-
if (schaltanlagenAbschnittIDs.length > 0) {
|
|
283
|
-
yield this.convertSchemaSchaltanlagenAbschnitte(schaltanlagenAbschnittIDs);
|
|
284
|
-
}
|
|
285
|
-
yield this.convertSchemaSammelschienenAbschnitte();
|
|
286
|
-
if (this.schaltfeldIDs.length > 0) {
|
|
287
|
-
yield this.convertSchemaSchaltfelder(this.schaltfeldIDs);
|
|
288
|
-
}
|
|
289
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.substations, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
290
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.voltageLevels, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
291
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.bays, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
292
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.busbarSections, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
293
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.junctions, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
294
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.energyConsumers, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
295
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.conformLoads, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
296
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.energySources, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
297
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.externalNetworkInjections, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
298
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.disconnectors, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
299
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.breakers, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
300
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.synchronousMachine, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
301
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.asynchronousMachine, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
302
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.generatingUnit, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
303
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.thermalGeneratingUnit, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
304
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.nuclearGeneratingUnit, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
305
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.hydroGeneratingUnit, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
306
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.windGeneratingUnit, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
307
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.solarGeneratingUnit, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
308
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.linearShuntCompensators, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
309
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.staticVarCompensator, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
310
|
-
validateRegulatingControls(this.cimModel.regulatingControl, this.logger, 'Allgemein');
|
|
311
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.regulatingControl, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
312
|
-
this.objectArrayToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.fossilFuel, __1.RDF_XML.PROFILE_EQ);
|
|
313
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.reactiveCapabilityCurve, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
314
|
-
this.objectArrayToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.curveData, __1.RDF_XML.PROFILE_EQ);
|
|
315
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.operationalLimitSets, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
316
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.currentLimits, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
317
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.connectivityNodes, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
318
|
-
const validTerminals = getValidTerminals(this.cimModel.terminals, this.inmemoryObjects);
|
|
319
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
320
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
321
|
-
this.objectToCIMXML(dlProfileExportObjects.xmlWriter, this.cimModel.diagramObjects, __1.RDF_XML.PROFILE_DL, defaultValuesConfig);
|
|
322
|
-
this.objectToCIMXML(glProfileExportObjects.xmlWriter, this.cimModel.locations, __1.RDF_XML.PROFILE_GL, defaultValuesConfig);
|
|
323
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, this.cimModel.energyConsumers, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
324
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, this.cimModel.conformLoads, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
325
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, this.cimModel.energySources, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
326
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, this.cimModel.disconnectors, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
327
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, this.cimModel.breakers, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
328
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, this.cimModel.staticVarCompensator, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
329
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, this.cimModel.regulatingControl, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
330
|
-
this.objectArrayToCIMXML(svProfileExportObjects.xmlWriter, this.cimModel.svStatus, __1.RDF_XML.PROFILE_SV);
|
|
331
|
-
this.objectArrayToCIMXML(svProfileExportObjects.xmlWriter, this.cimModel.svPowerFlow, __1.RDF_XML.PROFILE_SV);
|
|
332
|
-
this.objectArrayToCIMXML(svProfileExportObjects.xmlWriter, this.cimModel.svTapSteps, __1.RDF_XML.PROFILE_SV);
|
|
333
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.bays, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
334
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.connectivityNodes, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
335
|
-
this.cimModel.substations.clear();
|
|
336
|
-
this.cimModel.voltageLevels.clear();
|
|
337
|
-
this.cimModel.bays.clear();
|
|
338
|
-
this.cimModel.busbarSections.clear();
|
|
339
|
-
this.cimModel.disconnectors.clear();
|
|
340
|
-
this.cimModel.breakers.clear();
|
|
341
|
-
this.cimModel.energyConsumers.clear();
|
|
342
|
-
this.cimModel.conformLoads.clear();
|
|
343
|
-
this.cimModel.energySources.clear();
|
|
344
|
-
this.cimModel.externalNetworkInjections.clear();
|
|
345
|
-
this.cimModel.synchronousMachine.clear();
|
|
346
|
-
this.cimModel.asynchronousMachine.clear();
|
|
347
|
-
this.cimModel.generatingUnit.clear();
|
|
348
|
-
this.cimModel.thermalGeneratingUnit.clear();
|
|
349
|
-
this.cimModel.nuclearGeneratingUnit.clear();
|
|
350
|
-
this.cimModel.hydroGeneratingUnit.clear();
|
|
351
|
-
this.cimModel.windGeneratingUnit.clear();
|
|
352
|
-
this.cimModel.solarGeneratingUnit.clear();
|
|
353
|
-
this.cimModel.linearShuntCompensators.clear();
|
|
354
|
-
this.cimModel.staticVarCompensator.clear();
|
|
355
|
-
this.cimModel.regulatingControl.clear();
|
|
356
|
-
this.cimModel.reactiveCapabilityCurve.clear();
|
|
357
|
-
this.cimModel.junctions.clear();
|
|
358
|
-
this.cimModel.curveData.length = 0;
|
|
359
|
-
this.cimModel.fossilFuel.length = 0;
|
|
360
|
-
this.cimModel.connectivityNodes.clear();
|
|
361
|
-
this.cimModel.terminals.clear();
|
|
362
|
-
this.cimModel.diagramObjects.clear();
|
|
363
|
-
this.cimModel.locations.clear();
|
|
364
|
-
this.cimModel.objects.clear();
|
|
365
|
-
this.cimModel.svStatus.length = 0;
|
|
366
|
-
this.cimModel.svTapSteps.length = 0;
|
|
367
|
-
this.querkupplungIDs.length = 0;
|
|
368
|
-
this.laengskupplungIDs.length = 0;
|
|
369
|
-
this.knotenSoIDs.length = 0;
|
|
370
|
-
this.knotenSfIDs.length = 0;
|
|
371
|
-
this.knotenSfIDs.length = 0;
|
|
372
|
-
this.integralStandorte.clear();
|
|
373
|
-
this.integralSchaltanlagen.clear();
|
|
374
|
-
this.integralSchaltanlagenAbschnitte.clear();
|
|
375
|
-
this.integralSchaltfelder.clear();
|
|
376
|
-
this.integralKnotenSo.clear();
|
|
377
|
-
this.integralNsgStandort.clear();
|
|
378
|
-
this.integralNsgSchaltanlage.clear();
|
|
379
|
-
this.integralNsgSchaltanlagenabschnitt.clear();
|
|
380
|
-
this.integralNsgSchaltfelder.clear();
|
|
381
|
-
this.integralNsgKnotenSo.clear();
|
|
382
|
-
this.eqSpannungsBander.clear();
|
|
383
|
-
this.logger.info(`Offset ${offset} done`);
|
|
384
|
-
}
|
|
385
|
-
const restCountELZ = this.ersatzlaengszweigAnzahl < this.limit ? this.ersatzlaengszweigAnzahl : (this.ersatzlaengszweigAnzahl % this.limit);
|
|
386
|
-
const intervalCountELZ = (this.ersatzlaengszweigAnzahl - restCountELZ) / this.limit;
|
|
387
|
-
const numberOfIntervalsELZ = restCountELZ > 0 ? intervalCountELZ + 1 : intervalCountELZ;
|
|
388
|
-
this.logger.info('Convert Ersatzlaengszweige ' + this.ersatzlaengszweigAnzahl);
|
|
389
|
-
for (let i = 0; i < numberOfIntervalsELZ; i++) {
|
|
390
|
-
const offset = i * this.limit;
|
|
391
|
-
const currentLimit = (i + 1 === numberOfIntervalsELZ && restCountELZ > 0) ? restCountELZ : this.limit;
|
|
392
|
-
yield this.convertErsatzLaengszweige(currentLimit, offset, defaultValuesConfig);
|
|
393
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.equivalentBranches, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
394
|
-
const validTerminals = getValidTerminals(this.cimModel.terminals, this.inmemoryObjects);
|
|
395
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
396
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
397
|
-
this.cimModel.equivalentBranches.clear();
|
|
398
|
-
this.cimModel.connectivityNodes.clear();
|
|
399
|
-
this.cimModel.terminals.clear();
|
|
400
|
-
this.cimModel.objects.clear();
|
|
401
|
-
}
|
|
402
|
-
const restCountLeitung = this.leitungsAnzahl < this.limit ? this.leitungsAnzahl : (this.leitungsAnzahl % this.limit);
|
|
403
|
-
const intervalCountLeitung = (this.leitungsAnzahl - restCountLeitung) / this.limit;
|
|
404
|
-
const numberOfIntervalsLeitung = restCountLeitung > 0 ? intervalCountLeitung + 1 : intervalCountLeitung;
|
|
405
|
-
this.logger.info('Convert ACLineSegments ' + this.leitungsAnzahl);
|
|
406
|
-
for (let i = 0; i < numberOfIntervalsLeitung; i++) {
|
|
407
|
-
const offset = i * this.limit;
|
|
408
|
-
const currentLimit = (i + 1 === numberOfIntervalsLeitung && restCountLeitung > 0) ? restCountLeitung : this.limit;
|
|
409
|
-
yield this.convertLeitungen(currentLimit, offset);
|
|
410
|
-
this.leitungsIDs = [...this.integralLeitungen.keys()];
|
|
411
|
-
if (this.leitungsIDs.length > 0)
|
|
412
|
-
yield this.determineLeitungsTypen(this.leitungsIDs, defaultValuesConfig);
|
|
413
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.acLineSegments, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
414
|
-
const validTerminals = getValidTerminals(this.cimModel.terminals, this.inmemoryObjects);
|
|
415
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
416
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
417
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.acLineSegments, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
418
|
-
this.cimModel.acLineSegments.clear();
|
|
419
|
-
this.cimModel.connectivityNodes.clear();
|
|
420
|
-
this.cimModel.terminals.clear();
|
|
421
|
-
this.cimModel.diagramObjects.clear();
|
|
422
|
-
this.cimModel.objects.clear();
|
|
423
|
-
this.integralLeitungen.clear();
|
|
424
|
-
this.leitungsIDs.length = 0;
|
|
425
|
-
}
|
|
426
|
-
const restCountHgueLeitung = this.hgueLeitungsAnzahl < this.limit ? this.hgueLeitungsAnzahl : (this.hgueLeitungsAnzahl % this.limit);
|
|
427
|
-
const intervalCountHgueLeitung = (this.hgueLeitungsAnzahl - restCountHgueLeitung) / this.limit;
|
|
428
|
-
const numberOfIntervalsHgueLeitung = restCountHgueLeitung > 0 ? intervalCountHgueLeitung + 1 : intervalCountHgueLeitung;
|
|
429
|
-
this.logger.info('Convert ACLineSegments ' + this.hgueLeitungsAnzahl);
|
|
430
|
-
for (let i = 0; i < numberOfIntervalsHgueLeitung; i++) {
|
|
431
|
-
const offset = i * this.limit;
|
|
432
|
-
const currentLimit = (i + 1 === numberOfIntervalsHgueLeitung && restCountHgueLeitung > 0) ? restCountHgueLeitung : this.limit;
|
|
433
|
-
yield this.convertDCLines(currentLimit, offset);
|
|
434
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.dcLines, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
435
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.dcLineSegment, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
436
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.dcTerminals, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
437
|
-
this.cimModel.dcLines.clear();
|
|
438
|
-
this.cimModel.dcLineSegment.clear();
|
|
439
|
-
this.cimModel.dcTerminals.clear();
|
|
440
|
-
}
|
|
441
|
-
const restCountLD = this.laengsdrosselAnzahl < this.limit ? this.laengsdrosselAnzahl : (this.laengsdrosselAnzahl % this.limit);
|
|
442
|
-
const intervalCountLD = (this.laengsdrosselAnzahl - restCountLD) / this.limit;
|
|
443
|
-
const numberOfIntervalsLD = restCountLD > 0 ? intervalCountLD + 1 : intervalCountLD;
|
|
444
|
-
this.logger.info('Convert Längsdrossel ' + this.laengsdrosselAnzahl);
|
|
445
|
-
for (let i = 0; i < numberOfIntervalsLD; i++) {
|
|
446
|
-
const offset = i * this.limit;
|
|
447
|
-
const currentLimit = (i + 1 === numberOfIntervalsLD && restCountLD > 0) ? restCountLD : this.limit;
|
|
448
|
-
yield this.convertLaengsdrosseln(currentLimit, offset, defaultValuesConfig);
|
|
449
|
-
this.logger.info('Export Längsdrossel ' + this.cimModel.seriesCompensators.size);
|
|
450
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.seriesCompensators, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
451
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.operationalLimitSets, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
452
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.currentLimits, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
453
|
-
const validTerminals = getValidTerminals(this.cimModel.terminals, this.inmemoryObjects);
|
|
454
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
455
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
456
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.seriesCompensators, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
457
|
-
this.cimModel.seriesCompensators.clear();
|
|
458
|
-
this.cimModel.operationalLimitSets.clear();
|
|
459
|
-
this.cimModel.currentLimits.clear();
|
|
460
|
-
this.cimModel.terminals.clear();
|
|
461
|
-
this.cimModel.objects.clear();
|
|
462
|
-
}
|
|
463
|
-
const restCountLK = this.laengskondensatorAnzahl < this.limit ? this.laengskondensatorAnzahl : (this.laengskondensatorAnzahl % this.limit);
|
|
464
|
-
const intervalCountLK = (this.laengskondensatorAnzahl - restCountLK) / this.limit;
|
|
465
|
-
const numberOfIntervalsLK = restCountLK > 0 ? intervalCountLK + 1 : intervalCountLK;
|
|
466
|
-
this.logger.info('Convert Längskondensator ' + this.laengskondensatorAnzahl);
|
|
467
|
-
for (let i = 0; i < numberOfIntervalsLK; i++) {
|
|
468
|
-
const offset = i * this.limit;
|
|
469
|
-
const currentLimit = (i + 1 === numberOfIntervalsLK && restCountLK > 0) ? restCountLK : this.limit;
|
|
470
|
-
yield this.convertLaengskondensatoren(currentLimit, offset, defaultValuesConfig);
|
|
471
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.seriesCompensators, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
472
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.operationalLimitSets, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
473
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.currentLimits, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
474
|
-
const validTerminals = getValidTerminals(this.cimModel.terminals, this.inmemoryObjects);
|
|
475
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
476
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
477
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.seriesCompensators, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
478
|
-
this.cimModel.seriesCompensators.clear();
|
|
479
|
-
this.cimModel.operationalLimitSets.clear();
|
|
480
|
-
this.cimModel.currentLimits.clear();
|
|
481
|
-
this.cimModel.terminals.clear();
|
|
482
|
-
this.cimModel.objects.clear();
|
|
483
|
-
}
|
|
484
|
-
const restCountTrafo2W = this.trafo2WAnzahl < this.limit ? this.trafo2WAnzahl : (this.trafo2WAnzahl % this.limit);
|
|
485
|
-
const intervalCountTrafo2W = (this.trafo2WAnzahl - restCountTrafo2W) / this.limit;
|
|
486
|
-
const numberOfIntervalsTrafo2W = restCountTrafo2W > 0 ? intervalCountTrafo2W + 1 : intervalCountTrafo2W;
|
|
487
|
-
this.logger.info('Convert Transformers');
|
|
488
|
-
for (let i = 0; i < numberOfIntervalsTrafo2W; i++) {
|
|
489
|
-
const offset = i * this.limit;
|
|
490
|
-
const currentLimit = (i + 1 === numberOfIntervalsTrafo2W && restCountTrafo2W > 0) ? restCountTrafo2W : this.limit;
|
|
491
|
-
yield this.convertTrafo2W(currentLimit, offset);
|
|
492
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.powerTransformer, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
493
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.powerTransformerEnds, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
494
|
-
const validTerminals = getValidTerminals(this.cimModel.terminals, this.inmemoryObjects);
|
|
495
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
496
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
497
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.tapChangerControls, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
498
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.ratioTapChangers, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
499
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.ratioTapChangerTables, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
500
|
-
validateRegulatingControls(this.cimModel.regulatingControl, this.logger, '2W Trafo');
|
|
501
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.regulatingControl, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
502
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.operationalLimitSets, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
503
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.currentLimits, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
504
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, this.cimModel.regulatingControl, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
505
|
-
this.cimModel.powerTransformer.clear();
|
|
506
|
-
this.cimModel.powerTransformerEnds.clear();
|
|
507
|
-
this.cimModel.currentLimits.clear();
|
|
508
|
-
this.cimModel.operationalLimitSets.clear();
|
|
509
|
-
this.cimModel.regulatingControl.clear();
|
|
510
|
-
this.cimModel.tapChangerControls.clear();
|
|
511
|
-
this.cimModel.ratioTapChangers.clear();
|
|
512
|
-
for (const table of this.cimModel.ratioTapChangerTables.values()) {
|
|
513
|
-
table.ratioTapChangerTablePoints = [];
|
|
514
|
-
}
|
|
515
|
-
this.cimModel.ratioTapChangerTables.clear();
|
|
516
|
-
this.cimModel.svTapSteps.length = 0;
|
|
517
|
-
this.cimModel.terminals.clear();
|
|
518
|
-
this.cimModel.objects.clear();
|
|
519
|
-
}
|
|
520
|
-
const restCountTrafo3W = this.trafo2WAnzahl < this.limit ? this.trafo3WAnzahl : (this.trafo3WAnzahl % this.limit);
|
|
521
|
-
const intervalCountTrafo3W = (this.trafo3WAnzahl - restCountTrafo3W) / this.limit;
|
|
522
|
-
const numberOfIntervalsTrafo3W = restCountTrafo3W > 0 ? intervalCountTrafo3W + 1 : intervalCountTrafo3W;
|
|
523
|
-
this.logger.info('Convert Transformers3W');
|
|
524
|
-
for (let i = 0; i < numberOfIntervalsTrafo3W; i++) {
|
|
525
|
-
const offset = i * this.limit;
|
|
526
|
-
const currentLimit = (i + 1 === numberOfIntervalsTrafo3W && restCountTrafo3W > 0) ? restCountTrafo3W : this.limit;
|
|
527
|
-
yield this.convertTrafo3W(currentLimit, offset);
|
|
528
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.powerTransformer, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
529
|
-
this.cimModel.powerTransformer.clear();
|
|
530
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.powerTransformerEnds, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
531
|
-
this.cimModel.powerTransformerEnds.clear();
|
|
532
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.currentLimits, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
533
|
-
this.cimModel.currentLimits.clear();
|
|
534
|
-
const validTerminals = getValidTerminals(this.cimModel.terminals, this.inmemoryObjects);
|
|
535
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
536
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, validTerminals, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
537
|
-
this.cimModel.terminals.clear();
|
|
538
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.tapChangerControls, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
539
|
-
this.cimModel.tapChangerControls.clear();
|
|
540
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.ratioTapChangers, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
541
|
-
this.cimModel.ratioTapChangers.clear();
|
|
542
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.ratioTapChangerTables, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
543
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.operationalLimitSets, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
544
|
-
validateRegulatingControls(this.cimModel.regulatingControl, this.logger, '3W Trafo');
|
|
545
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.regulatingControl, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
546
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.regulatingControl, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
547
|
-
this.cimModel.regulatingControl.clear();
|
|
548
|
-
this.cimModel.operationalLimitSets.clear();
|
|
549
|
-
for (const table of this.cimModel.ratioTapChangerTables.values()) {
|
|
550
|
-
table.ratioTapChangerTablePoints = [];
|
|
551
|
-
}
|
|
552
|
-
this.cimModel.ratioTapChangerTables.clear();
|
|
553
|
-
this.cimModel.svTapSteps.length = 0;
|
|
554
|
-
this.cimModel.objects.clear();
|
|
555
|
-
}
|
|
556
|
-
const memoryTerminals = validateInMemoryObjects(this.inmemoryObjects);
|
|
557
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.operationalLimitTypes, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
558
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.baseVoltages, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
559
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, memoryTerminals, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
560
|
-
this.objectToCIMXML(sshProfileExportObjects.xmlWriter, memoryTerminals, __1.RDF_XML.PROFILE_SSH, defaultValuesConfig);
|
|
561
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.dcConverterUnit, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
562
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.vsConverter, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
563
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.csConverter, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
564
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.acDCConverterDCTerminals, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
565
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.dcNodes, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
566
|
-
for (const junction of this.stpImpModel.junctions.values()) {
|
|
567
|
-
if (junction.baseVoltageUUID && junction.equipmentContainerUUID) {
|
|
568
|
-
this.cimModel.addJunction(junction);
|
|
569
|
-
}
|
|
570
|
-
}
|
|
571
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.junctions, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
572
|
-
this.stpImpModel.junctions.clear();
|
|
573
|
-
this.cimModel.junctions.clear();
|
|
574
|
-
for (const cn of this.stpImpModel.connectivityNodes.values()) {
|
|
575
|
-
if (cn.connectivityNodeContainerUUID) {
|
|
576
|
-
this.cimModel.addConnectivityNode(cn);
|
|
577
|
-
}
|
|
578
|
-
}
|
|
579
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.connectivityNodes, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
580
|
-
this.stpImpModel.connectivityNodes.clear();
|
|
581
|
-
this.cimModel.connectivityNodes.clear();
|
|
582
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.stpImpModel.petersenCoils, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
583
|
-
this.stpImpModel.petersenCoils.clear();
|
|
584
|
-
for (const groundingImpedance of this.stpImpModel.groundingImpedances.values()) {
|
|
585
|
-
if (groundingImpedance.baseVoltageUUID && groundingImpedance.equipmentContainerUUID) {
|
|
586
|
-
this.cimModel.addGroundingImpedance(groundingImpedance);
|
|
587
|
-
}
|
|
588
|
-
}
|
|
589
|
-
this.objectToCIMXML(eqProfileExportObjects.xmlWriter, this.cimModel.groundingImpedances, __1.RDF_XML.PROFILE_EQ, defaultValuesConfig);
|
|
590
|
-
this.stpImpModel.groundingImpedances.clear();
|
|
591
|
-
this.cimModel.groundingImpedances.clear();
|
|
592
|
-
this.cimModel.dcConverterUnit.clear();
|
|
593
|
-
this.cimModel.vsConverter.clear();
|
|
594
|
-
this.cimModel.csConverter.clear();
|
|
595
|
-
this.cimModel.acDCConverterDCTerminals.clear();
|
|
596
|
-
this.cimModel.dcNodes.clear();
|
|
597
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.psrTypes, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
598
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.evWireInfos, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
599
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.cableInfos, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
600
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.overheadWireInfos, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
601
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.evPowerTransformerInfos, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
602
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.evPowerTransformerEndInfos, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
603
|
-
this.objectToCIMXML(ampI7ProfileExportObjects.xmlWriter, this.cimModel.evTapChangerInfo, __1.RDF_XML.PROFILE_AMPI7, defaultValuesConfig);
|
|
604
|
-
this.cimModel.operationalLimitTypes.clear();
|
|
605
|
-
this.cimModel.baseVoltages.clear();
|
|
606
|
-
memoryTerminals.clear();
|
|
607
|
-
this.writeHeaderEnd(eqProfileExportObjects.xmlWriter);
|
|
608
|
-
this.writeHeaderEnd(dlProfileExportObjects.xmlWriter);
|
|
609
|
-
this.writeHeaderEnd(glProfileExportObjects.xmlWriter);
|
|
610
|
-
this.writeHeaderEnd(sshProfileExportObjects.xmlWriter);
|
|
611
|
-
this.writeHeaderEnd(svProfileExportObjects.xmlWriter);
|
|
612
|
-
this.writeHeaderEnd(ampI7ProfileExportObjects.xmlWriter);
|
|
613
|
-
yield Promise.all([
|
|
614
|
-
utils_2.createWriteStreamPromise(eqProfileExportObjects.writeStream),
|
|
615
|
-
utils_2.createWriteStreamPromise(dlProfileExportObjects.writeStream),
|
|
616
|
-
utils_2.createWriteStreamPromise(glProfileExportObjects.writeStream),
|
|
617
|
-
utils_2.createWriteStreamPromise(sshProfileExportObjects.writeStream),
|
|
618
|
-
utils_2.createWriteStreamPromise(svProfileExportObjects.writeStream),
|
|
619
|
-
utils_2.createWriteStreamPromise(ampI7ProfileExportObjects.writeStream),
|
|
620
|
-
]);
|
|
621
|
-
const zip = new jszip_1.default();
|
|
622
|
-
const readStreamEq = fs_1.default.createReadStream(eqProfileExportObjects.filePath);
|
|
623
|
-
zip.file(`${gridName}_eq.xml`, readStreamEq);
|
|
624
|
-
const readStreamDl = fs_1.default.createReadStream(dlProfileExportObjects.filePath);
|
|
625
|
-
zip.file(`${gridName}_dl.xml`, readStreamDl);
|
|
626
|
-
const readStreamGl = fs_1.default.createReadStream(glProfileExportObjects.filePath);
|
|
627
|
-
zip.file(`${gridName}_gl.xml`, readStreamGl);
|
|
628
|
-
const readStreamSSH = fs_1.default.createReadStream(sshProfileExportObjects.filePath);
|
|
629
|
-
zip.file(`${gridName}_ssh.xml`, readStreamSSH);
|
|
630
|
-
const readStreamSV = fs_1.default.createReadStream(svProfileExportObjects.filePath);
|
|
631
|
-
zip.file(`${gridName}_sv.xml`, readStreamSV);
|
|
632
|
-
const readStreamAmpI7 = fs_1.default.createReadStream(ampI7ProfileExportObjects.filePath);
|
|
633
|
-
zip.file('nonstandard.xml', readStreamAmpI7);
|
|
634
|
-
resolve(yield utils_2.generateNodeStream(zip));
|
|
635
|
-
}
|
|
636
|
-
catch (e) {
|
|
637
|
-
reject({ status: 'error', message: e.toString() });
|
|
638
|
-
}
|
|
639
|
-
}));
|
|
640
|
-
});
|
|
641
|
-
}
|
|
642
131
|
release(tempDirPath) {
|
|
643
132
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
644
133
|
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
645
134
|
try {
|
|
646
135
|
this.closeConnection();
|
|
647
|
-
this.
|
|
136
|
+
this.cimModelDefaultValues.purgeData();
|
|
648
137
|
if (tempDirPath) {
|
|
649
138
|
try {
|
|
650
139
|
fs_1.default.rmdirSync(tempDirPath, { recursive: true });
|
|
651
|
-
this.logger.
|
|
140
|
+
this.logger.debug(`${path_1.default} is deleted!`);
|
|
652
141
|
}
|
|
653
142
|
catch (err) {
|
|
654
143
|
console.error(`Error while deleting ${path_1.default}.`);
|
|
@@ -679,7 +168,8 @@ class ConverterIntegral7 {
|
|
|
679
168
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
680
169
|
return new Promise((resolve, reject) => {
|
|
681
170
|
if (this.isTableAvailable(tableName)) {
|
|
682
|
-
this.queryFunctionWrapper(`SELECT COUNT(id)
|
|
171
|
+
this.queryFunctionWrapper(`SELECT COUNT(id)
|
|
172
|
+
FROM ${tableName}`).then(results => {
|
|
683
173
|
try {
|
|
684
174
|
for (const result of results) {
|
|
685
175
|
return resolve(Number(result[`COUNT(id)`]));
|
|
@@ -699,37 +189,44 @@ class ConverterIntegral7 {
|
|
|
699
189
|
queryAnschlussIDs() {
|
|
700
190
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
701
191
|
try {
|
|
702
|
-
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LEITUNG) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
192
|
+
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LEITUNG) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
193
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LEITUNG]}`) : [];
|
|
703
194
|
for (const result of results) {
|
|
704
195
|
this.leitungAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
705
196
|
this.leitungAnschlussKnotenIDs.add(result[`eknoten`]);
|
|
706
197
|
}
|
|
707
|
-
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.HGUE_LEITUNG) ? yield this.queryFunctionWrapper(`SELECT DISTINCT anetzobjekt, enetzobjekt
|
|
198
|
+
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.HGUE_LEITUNG) ? yield this.queryFunctionWrapper(`SELECT DISTINCT anetzobjekt, enetzobjekt
|
|
199
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.HGUE_LEITUNG]}`) : [];
|
|
708
200
|
for (const result of results) {
|
|
709
201
|
this.leitungAnschlussKnotenIDs.add(result[`anetzobjekt`]);
|
|
710
202
|
this.leitungAnschlussKnotenIDs.add(result[`enetzobjekt`]);
|
|
711
203
|
}
|
|
712
|
-
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO2W) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
204
|
+
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO2W) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
205
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRAFO2W]}`) : [];
|
|
713
206
|
for (const result of results) {
|
|
714
207
|
this.leitungAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
715
208
|
this.leitungAnschlussKnotenIDs.add(result[`eknoten`]);
|
|
716
209
|
}
|
|
717
|
-
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO3_WICKLUNG) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
210
|
+
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO3_WICKLUNG) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
211
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRAFO3_WICKLUNG]}`) : [];
|
|
718
212
|
for (const result of results) {
|
|
719
213
|
this.leitungAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
720
214
|
this.leitungAnschlussKnotenIDs.add(result[`eknoten`]);
|
|
721
215
|
}
|
|
722
|
-
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSDROSSEL) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
216
|
+
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSDROSSEL) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
217
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LAENGSDROSSEL]}`) : [];
|
|
723
218
|
for (const result of results) {
|
|
724
219
|
this.leitungAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
725
220
|
this.leitungAnschlussKnotenIDs.add(result[`eknoten`]);
|
|
726
221
|
}
|
|
727
|
-
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.ERSATZLAENGSZWEIG) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
222
|
+
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.ERSATZLAENGSZWEIG) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
223
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.ERSATZLAENGSZWEIG]}`) : [];
|
|
728
224
|
for (const result of results) {
|
|
729
225
|
this.leitungAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
730
226
|
this.leitungAnschlussKnotenIDs.add(result[`eknoten`]);
|
|
731
227
|
}
|
|
732
|
-
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSKONDENSATOR) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
228
|
+
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSKONDENSATOR) ? yield this.queryFunctionWrapper(`SELECT DISTINCT aknoten, eknoten
|
|
229
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LAENGSKONDENSATOR]}`) : [];
|
|
733
230
|
for (const result of results) {
|
|
734
231
|
this.leitungAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
735
232
|
this.leitungAnschlussKnotenIDs.add(result[`eknoten`]);
|
|
@@ -740,20 +237,31 @@ class ConverterIntegral7 {
|
|
|
740
237
|
}
|
|
741
238
|
});
|
|
742
239
|
}
|
|
240
|
+
querySpGeregelteKnoten() {
|
|
241
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
242
|
+
try {
|
|
243
|
+
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO2W) ? yield this.queryFunctionWrapper(`SELECT DISTINCT spgreg_knoten
|
|
244
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRAFO2W]}`) : [];
|
|
245
|
+
}
|
|
246
|
+
catch (e) {
|
|
247
|
+
console.error("ERROR:" + e);
|
|
248
|
+
}
|
|
249
|
+
});
|
|
250
|
+
}
|
|
743
251
|
convertGeoRegionen(defaultValuesConfig) {
|
|
744
252
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
745
253
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.REGION)) {
|
|
746
254
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.REGION, 0, 0, []));
|
|
747
255
|
for (const i7Data of result) {
|
|
748
256
|
const region = new __1.GeographicalRegion(__1.getUUID(i7Data.guid), i7Data.bezeichner, i7Data.kurzname);
|
|
749
|
-
this.
|
|
750
|
-
this.
|
|
257
|
+
this.cimModelDefaultValues.addGeographicalRegion(region);
|
|
258
|
+
this.addIdMapping(i7Data.id, region.mrid, integral_sql_1.Integral7TableNames.REGION);
|
|
751
259
|
}
|
|
752
260
|
}
|
|
753
261
|
else {
|
|
754
|
-
this.logger.
|
|
755
|
-
this.logger.
|
|
756
|
-
__1.createGeoregion(__1.generateUUID(), defaultValuesConfig.GeographicalRegion.name, undefined, defaultValuesConfig.GeographicalRegion.description, this.
|
|
262
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.REGION} ist nicht vorhanden.`);
|
|
263
|
+
this.logger.debug(`Erstelle Standard Georegion ${defaultValuesConfig.GeographicalRegion.name} .`);
|
|
264
|
+
__1.createGeoregion(__1.generateUUID(), defaultValuesConfig.GeographicalRegion.name, undefined, defaultValuesConfig.GeographicalRegion.description, this.cimModelDefaultValues);
|
|
757
265
|
}
|
|
758
266
|
});
|
|
759
267
|
}
|
|
@@ -763,21 +271,21 @@ class ConverterIntegral7 {
|
|
|
763
271
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.SUBREGION, 0, 0, []));
|
|
764
272
|
for (const i7Data of result) {
|
|
765
273
|
const subregion = new __1.SubGeographicalRegion(__1.getUUID(i7Data.guid), i7Data.bezeichner, i7Data.kurzname);
|
|
766
|
-
let region = this.
|
|
274
|
+
let region = this.cimModelDefaultValues.getGeographicalRegion(this.integralID2UUID.get(i7Data.georegion));
|
|
767
275
|
if (!region) {
|
|
768
|
-
region = utils_1.createIfNotExitsGeoregionByName(this.
|
|
276
|
+
region = utils_1.createIfNotExitsGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.GeographicalRegion.name);
|
|
769
277
|
}
|
|
770
278
|
subregion.region = region;
|
|
771
279
|
region.addSubGeographicalRegion(subregion);
|
|
772
|
-
this.
|
|
773
|
-
this.
|
|
280
|
+
this.cimModelDefaultValues.addSubGeographicalRegion(subregion);
|
|
281
|
+
this.addIdMapping(i7Data.id, subregion.mrid, integral_sql_1.Integral7TableNames.SUBREGION);
|
|
774
282
|
}
|
|
775
283
|
}
|
|
776
284
|
else {
|
|
777
|
-
this.logger.
|
|
778
|
-
this.logger.
|
|
779
|
-
const region = utils_1.createIfNotExitsGeoregionByName(this.
|
|
780
|
-
const subRegion = utils_1.createIfNotExitsSubGeoregionByName(this.
|
|
285
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.SUBREGION} ist nicht vorhanden.`);
|
|
286
|
+
this.logger.debug(`Erstelle Standard SubGeographicalRegion ${defaultValuesConfig.SubGeographicalRegion.name}.`);
|
|
287
|
+
const region = utils_1.createIfNotExitsGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.GeographicalRegion.name);
|
|
288
|
+
const subRegion = utils_1.createIfNotExitsSubGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.SubGeographicalRegion.name, region);
|
|
781
289
|
subRegion.shortName = defaultValuesConfig.SubGeographicalRegion.shortName;
|
|
782
290
|
subRegion.description = defaultValuesConfig.SubGeographicalRegion.description;
|
|
783
291
|
}
|
|
@@ -792,17 +300,17 @@ class ConverterIntegral7 {
|
|
|
792
300
|
utils_2.ueberpruefeZeichenkette(i7Data.ukz) +
|
|
793
301
|
integral_prefix_1.MITTIGER_PUNKT +
|
|
794
302
|
utils_2.ueberpruefeZeichenkette(i7Data.bezeichner);
|
|
795
|
-
const substation = new
|
|
303
|
+
const substation = new AMPRIONSubstation_1.AMPRIONSubstation(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.id + '', i7Schluessel, i7Data.stationsnummer);
|
|
796
304
|
this.substationNames.set(substation.mrid, substation.name);
|
|
797
|
-
let subregion = this.
|
|
305
|
+
let subregion = this.cimModelDefaultValues.getSubGeographicalRegion(this.integralID2UUID.get(i7Data.subgeoregion));
|
|
798
306
|
if (!subregion) {
|
|
799
|
-
const region = utils_1.createIfNotExitsGeoregionByName(this.
|
|
800
|
-
subregion = utils_1.createIfNotExitsSubGeoregionByName(this.
|
|
307
|
+
const region = utils_1.createIfNotExitsGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.GeographicalRegion.name);
|
|
308
|
+
subregion = utils_1.createIfNotExitsSubGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.SubGeographicalRegion.name, region);
|
|
801
309
|
}
|
|
802
310
|
substation.subGeographicalRegionUUID = subregion.mrid;
|
|
803
311
|
const coor = getGeoCoordinates(i7Data);
|
|
804
312
|
if ((coor === null || coor === void 0 ? void 0 : coor.length) === 2) {
|
|
805
|
-
const coordinateSystem = this.
|
|
313
|
+
const coordinateSystem = this.cimModelDefaultValues.getCoordinateSystemByName(this.coordinateSystemName);
|
|
806
314
|
const location = new __1.Location(__1.generateUUID(), `Location of ${substation.name}`);
|
|
807
315
|
location.addPowerSystemResource(substation);
|
|
808
316
|
substation.location = location;
|
|
@@ -812,18 +320,60 @@ class ConverterIntegral7 {
|
|
|
812
320
|
positionPoint.yPosition = coor[1];
|
|
813
321
|
positionPoint.location = location;
|
|
814
322
|
location.addPositionPoint(positionPoint);
|
|
815
|
-
this.
|
|
323
|
+
this.cimModelDefaultValues.addLocation(location);
|
|
816
324
|
}
|
|
817
325
|
this.substationVoltagelevels.set(i7Data.id, []);
|
|
818
|
-
this.
|
|
819
|
-
this.
|
|
820
|
-
|
|
326
|
+
this.cimModelDefaultValues.addSubstation(substation);
|
|
327
|
+
this.addIdMapping(i7Data.id, substation.mrid, integral_sql_1.Integral7TableNames.STANDORT);
|
|
328
|
+
this.addUUIDMapping(i7Data.id, substation.mrid);
|
|
329
|
+
const standort = new Standort_1.StandortImpl(i7Data);
|
|
330
|
+
this.integralStandorte.set(i7Data.id, standort);
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
else {
|
|
334
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.STANDORT} ist nicht vorhanden.`);
|
|
335
|
+
}
|
|
336
|
+
});
|
|
337
|
+
}
|
|
338
|
+
convertGrenzknoten(ukzNames, defaultValuesConfig) {
|
|
339
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
340
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.STANDORT)) {
|
|
341
|
+
const result = yield this.queryFunctionWrapper(`SELECT * FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.STANDORT]} WHERE ${integral_sql_1.getWhereIDs('ukz', ukzNames).join(' OR ')};`);
|
|
342
|
+
for (const i7Data of result) {
|
|
343
|
+
const i7Schluessel = integral_prefix_1.STANDORT_PRAEFIX +
|
|
344
|
+
utils_2.ueberpruefeZeichenkette(i7Data.ukz) +
|
|
345
|
+
integral_prefix_1.MITTIGER_PUNKT +
|
|
346
|
+
utils_2.ueberpruefeZeichenkette(i7Data.bezeichner);
|
|
347
|
+
const line = new __1.Line(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.id + '', i7Schluessel);
|
|
348
|
+
let subregion = this.cimModelDefaultValues.getSubGeographicalRegion(this.integralID2UUID.get(i7Data.subgeoregion));
|
|
349
|
+
if (!subregion) {
|
|
350
|
+
const region = utils_1.createIfNotExitsGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.GeographicalRegion.name);
|
|
351
|
+
subregion = utils_1.createIfNotExitsSubGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.SubGeographicalRegion.name, region);
|
|
352
|
+
}
|
|
353
|
+
line.subGeographicalRegion = subregion;
|
|
354
|
+
const coor = getGeoCoordinates(i7Data);
|
|
355
|
+
if ((coor === null || coor === void 0 ? void 0 : coor.length) === 2) {
|
|
356
|
+
const coordinateSystem = this.cimModelDefaultValues.getCoordinateSystemByName(this.coordinateSystemName);
|
|
357
|
+
const location = new __1.Location(__1.generateUUID(), `Location of ${line.name}`);
|
|
358
|
+
location.addPowerSystemResource(line);
|
|
359
|
+
line.location = location;
|
|
360
|
+
location.coordinateSystem = coordinateSystem;
|
|
361
|
+
const positionPoint = new __1.PositionPoint(__1.generateUUID());
|
|
362
|
+
positionPoint.xPosition = coor[0];
|
|
363
|
+
positionPoint.yPosition = coor[1];
|
|
364
|
+
positionPoint.location = location;
|
|
365
|
+
location.addPositionPoint(positionPoint);
|
|
366
|
+
this.cimModelDefaultValues.addLocation(location);
|
|
367
|
+
}
|
|
368
|
+
this.cimModelDefaultValues.addLine(line);
|
|
369
|
+
this.addIdMapping(i7Data.id, line.mrid, integral_sql_1.Integral7TableNames.STANDORT);
|
|
370
|
+
this.addUUIDMapping(i7Data.id, line.mrid);
|
|
821
371
|
const standort = new Standort_1.StandortImpl(i7Data);
|
|
822
372
|
this.integralStandorte.set(i7Data.id, standort);
|
|
823
373
|
}
|
|
824
374
|
}
|
|
825
375
|
else {
|
|
826
|
-
this.logger.
|
|
376
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.STANDORT} ist nicht vorhanden.`);
|
|
827
377
|
}
|
|
828
378
|
});
|
|
829
379
|
}
|
|
@@ -835,7 +385,7 @@ class ConverterIntegral7 {
|
|
|
835
385
|
const object = new KnotenSo_1.KnotenSoImpl(i7Data);
|
|
836
386
|
this.integralKnotenSo.set(i7Data.id, object);
|
|
837
387
|
object.standort = this.integralStandorte.get(object.standortid);
|
|
838
|
-
const substation = this.
|
|
388
|
+
const substation = this.cimModelDefaultValues.getSubstation(this.integralID2UUID.get(i7Data.standort));
|
|
839
389
|
const substationName = this.substationNames.get(substation.mrid);
|
|
840
390
|
const vl = new __1.VoltageLevel(__1.getUUID(i7Data.guid), substationName + "/" + utils_2.getName(i7Data), i7Data.kurzname);
|
|
841
391
|
const connectivityNode = new AMPRIONConnectivityNode_1.AMPRIONConnectivityNode(__1.generateUUID(), 'Abzweig', String(i7Data.id));
|
|
@@ -843,8 +393,17 @@ class ConverterIntegral7 {
|
|
|
843
393
|
connectivityNode.nodeNumber = i7Data.id_psse_cape;
|
|
844
394
|
vl.addConnectivityNode(connectivityNode);
|
|
845
395
|
const un = utils_2.getU(i7Data.un, defaultValuesConfig.DefaultVoltage);
|
|
846
|
-
const baseVoltage = __1.createBaseVoltageIfNotExists(this.
|
|
396
|
+
const baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, un);
|
|
847
397
|
vl.baseVoltage = baseVoltage;
|
|
398
|
+
if (utils_2.isNumericI7(i7Data.usoll) || (utils_2.isNumericI7(i7Data.umin)) && utils_2.isNumericI7(i7Data.umax)) {
|
|
399
|
+
this.knotenSpannungsband.set(i7Data.id, {
|
|
400
|
+
usoll: i7Data.usoll,
|
|
401
|
+
umin: i7Data.umin,
|
|
402
|
+
umax: i7Data.umax,
|
|
403
|
+
cnUUID: connectivityNode.mrid,
|
|
404
|
+
terminals: []
|
|
405
|
+
});
|
|
406
|
+
}
|
|
848
407
|
this.eqSpannungsBander.set(vl.mrid, [
|
|
849
408
|
{
|
|
850
409
|
usoll: i7Data.usoll,
|
|
@@ -864,20 +423,21 @@ class ConverterIntegral7 {
|
|
|
864
423
|
connectivityNode.description = i7Schluessel;
|
|
865
424
|
}
|
|
866
425
|
else {
|
|
867
|
-
this.logger.
|
|
426
|
+
this.logger.debug(`KnotenSo ${i7Data.id} ${vl.mrid} besitzt keine Substation.`);
|
|
868
427
|
}
|
|
869
|
-
const psrType = utils_2.getPSRType(this.
|
|
428
|
+
const psrType = utils_2.getPSRType(this.cimModelDefaultValues, 'Abzweigmast');
|
|
870
429
|
vl.psrTypeUUID = psrType === null || psrType === void 0 ? void 0 : psrType.mrid;
|
|
871
|
-
this.
|
|
430
|
+
this.addIdMapping(i7Data.id, connectivityNode.mrid, integral_sql_1.Integral7TableNames.KNOTEN_SO);
|
|
431
|
+
this.addUUIDMapping(i7Data.id, connectivityNode.mrid);
|
|
872
432
|
this.knotenSoIDs.push(i7Data.id);
|
|
873
|
-
this.
|
|
874
|
-
this.
|
|
433
|
+
this.cimModelDefaultValues.addVoltageLevel(vl);
|
|
434
|
+
this.cimModelDefaultValues.addConnectivityNode(connectivityNode);
|
|
875
435
|
this.knotenSpannung.set(connectivityNode.mrid, baseVoltage);
|
|
876
436
|
this.checkMemoryObject(i7Data.id, connectivityNode);
|
|
877
437
|
}
|
|
878
438
|
}
|
|
879
439
|
else {
|
|
880
|
-
this.logger.
|
|
440
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.KNOTEN_SO} ist nicht vorhanden.`);
|
|
881
441
|
}
|
|
882
442
|
});
|
|
883
443
|
}
|
|
@@ -891,20 +451,20 @@ class ConverterIntegral7 {
|
|
|
891
451
|
stpSchieneIDs.push(i7DataSchiene.id);
|
|
892
452
|
const connectivityNode = new __1.ConnectivityNode(__1.generateUUID(), utils_2.getName(i7DataSchiene), `StpSchiene_${i7DataSchiene.id}`);
|
|
893
453
|
const junction = new __1.Junction(__1.generateUUID(), `StpSchiene/${i7DataSchiene.id}`, `${i7DataSchiene.bezeichner}`);
|
|
894
|
-
const terminal = __1.createConnection(this.
|
|
454
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, junction, connectivityNode, __1.PhaseCode.N);
|
|
895
455
|
this.stpImpModel.connectivityNodes.set(connectivityNode.mrid, connectivityNode);
|
|
896
456
|
this.stpImpModel.junctions.set(junction.mrid, junction);
|
|
897
457
|
this.stpImpModel.stpSchieneJunctionUUIDs.set(i7DataSchiene.id, junction.mrid);
|
|
898
|
-
this.
|
|
458
|
+
this.addIdMapping(i7DataSchiene.id, connectivityNode.mrid, integral_sql_1.Integral7TableNames.STERNPUNKT_SCHIENE);
|
|
899
459
|
this.stpImpModel.stpSchieneTerminal.set(i7DataSchiene.id, terminal);
|
|
900
460
|
}
|
|
901
461
|
catch (e) {
|
|
902
|
-
this.logger.
|
|
462
|
+
this.logger.debug(e);
|
|
903
463
|
}
|
|
904
464
|
}
|
|
905
465
|
}
|
|
906
466
|
else {
|
|
907
|
-
this.logger.
|
|
467
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.STERNPUNKT_SCHIENE} ist nicht vorhanden.`);
|
|
908
468
|
}
|
|
909
469
|
resolve(stpSchieneIDs);
|
|
910
470
|
}));
|
|
@@ -925,31 +485,33 @@ class ConverterIntegral7 {
|
|
|
925
485
|
if (imax && imin) {
|
|
926
486
|
const petersenCoil = new PetersenCoil_1.PetersenCoil(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.id + '');
|
|
927
487
|
if (connectivityNode)
|
|
928
|
-
__1.createConnection(this.
|
|
488
|
+
__1.createConnection(this.cimModelDefaultValues, petersenCoil, connectivityNode, __1.PhaseCode.N);
|
|
929
489
|
this.stpImpModel.petersenCoils.set(petersenCoil.mrid, petersenCoil);
|
|
930
490
|
this.stpImpModel.junctionUUIDstpImp.set(junctionUUID, petersenCoil);
|
|
491
|
+
this.addIdMapping(i7Data.id, petersenCoil.mrid, integral_sql_1.Integral7TableNames.STERNPUNKT_IMPEDANZ);
|
|
931
492
|
}
|
|
932
493
|
else {
|
|
933
494
|
const groundingImpedance = new GroundingImpedance_1.GroundingImpedance(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.id + '');
|
|
934
495
|
groundingImpedance.r = utils_2.isNumericI7(i7Data.rne) ? i7Data.rne : (utils_2.isNumericI7(kdType === null || kdType === void 0 ? void 0 : kdType.rne) ? kdType === null || kdType === void 0 ? void 0 : kdType.rne : undefined);
|
|
935
496
|
groundingImpedance.x = utils_2.isNumericI7(i7Data.xne) ? i7Data.xne : (utils_2.isNumericI7(kdType === null || kdType === void 0 ? void 0 : kdType.xne) ? kdType === null || kdType === void 0 ? void 0 : kdType.xne : undefined);
|
|
936
497
|
if (connectivityNode)
|
|
937
|
-
__1.createConnection(this.
|
|
498
|
+
__1.createConnection(this.cimModelDefaultValues, groundingImpedance, connectivityNode, __1.PhaseCode.N);
|
|
938
499
|
this.stpImpModel.groundingImpedances.set(groundingImpedance.mrid, groundingImpedance);
|
|
939
500
|
this.stpImpModel.junctionUUIDstpImp.set(junctionUUID, groundingImpedance);
|
|
501
|
+
this.addIdMapping(i7Data.id, groundingImpedance.mrid, integral_sql_1.Integral7TableNames.STERNPUNKT_IMPEDANZ);
|
|
940
502
|
}
|
|
941
503
|
}
|
|
942
504
|
}
|
|
943
505
|
else {
|
|
944
|
-
this.logger.
|
|
506
|
+
this.logger.debug(`Kdrossel Keine Sternpunktschienen vorhanden.`);
|
|
945
507
|
}
|
|
946
508
|
}
|
|
947
509
|
else {
|
|
948
|
-
this.logger.
|
|
510
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.STERNPUNKT_IMPEDANZ} ist nicht vorhanden.`);
|
|
949
511
|
}
|
|
950
512
|
}
|
|
951
513
|
catch (e) {
|
|
952
|
-
this.logger.
|
|
514
|
+
this.logger.debug(e);
|
|
953
515
|
}
|
|
954
516
|
finally {
|
|
955
517
|
resolve('');
|
|
@@ -973,15 +535,15 @@ class ConverterIntegral7 {
|
|
|
973
535
|
}
|
|
974
536
|
}
|
|
975
537
|
else {
|
|
976
|
-
this.logger.
|
|
538
|
+
this.logger.debug(`StpSchaltelemente Keine Sternpunktschienen vorhanden.`);
|
|
977
539
|
}
|
|
978
540
|
}
|
|
979
541
|
else {
|
|
980
|
-
this.logger.
|
|
542
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.STERNPUNKT_SCHALTER} ist nicht vorhanden.`);
|
|
981
543
|
}
|
|
982
544
|
}
|
|
983
545
|
catch (e) {
|
|
984
|
-
this.logger.
|
|
546
|
+
this.logger.debug(e);
|
|
985
547
|
}
|
|
986
548
|
finally {
|
|
987
549
|
resolve('');
|
|
@@ -993,15 +555,16 @@ class ConverterIntegral7 {
|
|
|
993
555
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.SCHALTANLAGE)) {
|
|
994
556
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.SCHALTANLAGE, 0, 0, standortIDs));
|
|
995
557
|
for (const i7Data of result) {
|
|
996
|
-
const substation = this.
|
|
558
|
+
const substation = this.cimModelDefaultValues.getSubstation(this.integralID2UUID.get(i7Data.standort));
|
|
997
559
|
const substationName = this.substationNames.get(substation.mrid);
|
|
998
560
|
const vl = new __1.VoltageLevel(__1.getUUID(i7Data.guid), substationName + "/" + utils_2.getName(i7Data), i7Data.kurzname);
|
|
999
561
|
const un = utils_2.getU(i7Data.un, defaultValuesConfig.DefaultVoltage);
|
|
1000
|
-
const baseVoltage = __1.createBaseVoltageIfNotExists(this.
|
|
562
|
+
const baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, un);
|
|
1001
563
|
vl.baseVoltageUUID = baseVoltage.mrid;
|
|
1002
|
-
|
|
1003
|
-
this.
|
|
1004
|
-
|
|
564
|
+
vl.baseVoltage = baseVoltage;
|
|
565
|
+
this.cimModelDefaultValues.addVoltageLevel(vl);
|
|
566
|
+
this.addIdMapping(i7Data.id, vl.mrid, integral_sql_1.Integral7TableNames.SCHALTANLAGE);
|
|
567
|
+
this.addUUIDMapping(i7Data.id, vl.mrid);
|
|
1005
568
|
this.eqSpannungsBander.set(vl.mrid, []);
|
|
1006
569
|
if (substation) {
|
|
1007
570
|
vl.substationUUID = substation.mrid;
|
|
@@ -1022,12 +585,12 @@ class ConverterIntegral7 {
|
|
|
1022
585
|
});
|
|
1023
586
|
}
|
|
1024
587
|
else {
|
|
1025
|
-
this.logger.
|
|
588
|
+
this.logger.debug(`VoltageLevel ${i7Data.id} ${vl.mrid} besitzt keine Umspannanlage.`);
|
|
1026
589
|
}
|
|
1027
590
|
}
|
|
1028
591
|
}
|
|
1029
592
|
else {
|
|
1030
|
-
this.logger.
|
|
593
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.SCHALTANLAGE} ist nicht vorhanden.`);
|
|
1031
594
|
}
|
|
1032
595
|
});
|
|
1033
596
|
}
|
|
@@ -1036,16 +599,16 @@ class ConverterIntegral7 {
|
|
|
1036
599
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.SCHALTANLAGENABSCHNITT)) {
|
|
1037
600
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.SCHALTANLAGENABSCHNITT, 0, 0, schaltanlagenIDs));
|
|
1038
601
|
for (const i7Data of result) {
|
|
1039
|
-
const voltageLevel = this.
|
|
1040
|
-
this.
|
|
1041
|
-
|
|
602
|
+
const voltageLevel = this.cimModelDefaultValues.getVoltageLevel(this.integralID2UUID.get(i7Data.schaltanlage));
|
|
603
|
+
this.addIdMapping(i7Data.id, voltageLevel.mrid, integral_sql_1.Integral7TableNames.SCHALTANLAGENABSCHNITT);
|
|
604
|
+
this.addUUIDMapping(i7Data.id, voltageLevel.mrid);
|
|
1042
605
|
const schaltanlagenabschnitt = new Schaltanlagenabschnitt_1.SchaltanlagenabschnittImpl(i7Data);
|
|
1043
606
|
schaltanlagenabschnitt.addSchaltanlage(this.integralSchaltanlagen.get(schaltanlagenabschnitt.schaltanlageid));
|
|
1044
607
|
this.integralSchaltanlagenAbschnitte.set(i7Data.id, schaltanlagenabschnitt);
|
|
1045
608
|
}
|
|
1046
609
|
}
|
|
1047
610
|
else {
|
|
1048
|
-
this.logger.
|
|
611
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.SCHALTANLAGENABSCHNITT} ist nicht vorhanden.`);
|
|
1049
612
|
}
|
|
1050
613
|
});
|
|
1051
614
|
}
|
|
@@ -1058,8 +621,8 @@ class ConverterIntegral7 {
|
|
|
1058
621
|
busbarSection.ipMax = i7Data.limit_ip;
|
|
1059
622
|
busbarSection.aggregate = false;
|
|
1060
623
|
const connectivityNode = new AMPRIONConnectivityNode_1.AMPRIONConnectivityNode(__1.generateUUID(), 'ssab cn');
|
|
1061
|
-
__1.createConnection(this.
|
|
1062
|
-
const voltageLevel = this.
|
|
624
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, busbarSection, connectivityNode, __1.PhaseCode.ABC, 1);
|
|
625
|
+
const voltageLevel = this.cimModelDefaultValues.getVoltageLevel(this.integralID2UUID.get(i7Data.saabschnitt));
|
|
1063
626
|
connectivityNode.nodeNumber = i7Data.id_psse_cape;
|
|
1064
627
|
if (voltageLevel) {
|
|
1065
628
|
busbarSection.equipmentContainerUUID = voltageLevel.mrid;
|
|
@@ -1073,6 +636,15 @@ class ConverterIntegral7 {
|
|
|
1073
636
|
utils_2.ueberpruefeZeichenkette(i7Data.bezeichner);
|
|
1074
637
|
busbarSection.description = i7Schluessel;
|
|
1075
638
|
connectivityNode.description = i7Schluessel;
|
|
639
|
+
if (utils_2.isNumericI7(i7Data.usoll) || (utils_2.isNumericI7(i7Data.umin)) && utils_2.isNumericI7(i7Data.umax)) {
|
|
640
|
+
this.knotenSpannungsband.set(i7Data.id, {
|
|
641
|
+
usoll: i7Data.usoll,
|
|
642
|
+
umin: i7Data.umin,
|
|
643
|
+
umax: i7Data.umax,
|
|
644
|
+
cnUUID: connectivityNode.mrid,
|
|
645
|
+
terminals: [{ uuid: terminal.mrid, connected: terminal.connected }]
|
|
646
|
+
});
|
|
647
|
+
}
|
|
1076
648
|
const usollValues = this.eqSpannungsBander.get(voltageLevel.mrid);
|
|
1077
649
|
if (usollValues) {
|
|
1078
650
|
usollValues.push({
|
|
@@ -1082,23 +654,23 @@ class ConverterIntegral7 {
|
|
|
1082
654
|
});
|
|
1083
655
|
}
|
|
1084
656
|
else {
|
|
1085
|
-
this.logger.
|
|
657
|
+
this.logger.debug('Sammelschiene ' + i7Data.id + ' besitzt kein Objekt für Sollspannungen.');
|
|
1086
658
|
}
|
|
1087
659
|
}
|
|
1088
660
|
else {
|
|
1089
|
-
this.logger.
|
|
661
|
+
this.logger.debug('Sammelschiene ' + i7Data.id + ' besitzt keine Schaltanlage.');
|
|
1090
662
|
}
|
|
1091
|
-
this.
|
|
1092
|
-
|
|
1093
|
-
this.
|
|
1094
|
-
this.
|
|
663
|
+
this.addIdMapping(i7Data.id, connectivityNode.mrid, integral_sql_1.Integral7TableNames.SAMMELSCHIENE);
|
|
664
|
+
this.addUUIDMapping(i7Data.id, busbarSection.mrid);
|
|
665
|
+
this.cimModelDefaultValues.addConnectivityNode(connectivityNode);
|
|
666
|
+
this.cimModelDefaultValues.addBusbarSection(busbarSection);
|
|
1095
667
|
if (this.integralSchaltanlagenAbschnitte.has(i7Data.saabschnitt)) {
|
|
1096
668
|
this.integralSchaltanlagenAbschnitte.get(i7Data.saabschnitt).ssab.push(i7Data);
|
|
1097
669
|
}
|
|
1098
670
|
}
|
|
1099
671
|
}
|
|
1100
672
|
else {
|
|
1101
|
-
this.logger.
|
|
673
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.SAMMELSCHIENE} ist nicht vorhanden.`);
|
|
1102
674
|
}
|
|
1103
675
|
});
|
|
1104
676
|
}
|
|
@@ -1117,25 +689,25 @@ class ConverterIntegral7 {
|
|
|
1117
689
|
sfImpl.saabschnitt.schaltfelder.push(sfImpl);
|
|
1118
690
|
}
|
|
1119
691
|
else {
|
|
1120
|
-
this.logger.
|
|
692
|
+
this.logger.debug(`Schaltfeld ${i7Data.id} besitzt keine Anlage.`);
|
|
1121
693
|
}
|
|
1122
|
-
const voltageLevel = this.
|
|
694
|
+
const voltageLevel = this.cimModelDefaultValues.getVoltageLevel(this.integralID2UUID.get(i7Data.saabschnitt));
|
|
1123
695
|
if (voltageLevel) {
|
|
1124
|
-
bay.
|
|
696
|
+
bay.voltageLevel = voltageLevel;
|
|
1125
697
|
const i7Schluessel = voltageLevel.description +
|
|
1126
698
|
integral_prefix_1.SCHALTFELD_PRAEFIX +
|
|
1127
699
|
utils_2.ueberpruefeZeichenkette(i7Data.bezeichner);
|
|
1128
700
|
bay.description = i7Schluessel;
|
|
1129
701
|
}
|
|
1130
702
|
else {
|
|
1131
|
-
this.logger.
|
|
703
|
+
this.logger.debug(`Schaltfeld ${i7Data.id} besitzt keine Anlage.`);
|
|
1132
704
|
}
|
|
1133
|
-
this.
|
|
1134
|
-
this.
|
|
705
|
+
this.cimModelDefaultValues.addBay(bay);
|
|
706
|
+
this.addIdMapping(i7Data.id, bay.mrid, integral_sql_1.Integral7TableNames.SCHALTFELD);
|
|
1135
707
|
}
|
|
1136
708
|
}
|
|
1137
709
|
else {
|
|
1138
|
-
this.logger.
|
|
710
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.SCHALTFELD} ist nicht vorhanden.`);
|
|
1139
711
|
}
|
|
1140
712
|
});
|
|
1141
713
|
}
|
|
@@ -1147,24 +719,24 @@ class ConverterIntegral7 {
|
|
|
1147
719
|
const bay = new AMPRIONBay_1.AMPRIONBay(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), 'Querkupplung');
|
|
1148
720
|
bay.number = i7Data.feldnummer;
|
|
1149
721
|
bay.locationID = i7Data.ips_folder_id;
|
|
1150
|
-
const voltageLevel = this.
|
|
722
|
+
const voltageLevel = this.cimModelDefaultValues.getVoltageLevel(this.integralID2UUID.get(i7Data.saabschnitt));
|
|
1151
723
|
if (voltageLevel) {
|
|
1152
|
-
bay.
|
|
724
|
+
bay.voltageLevel = voltageLevel;
|
|
1153
725
|
const i7Schluessel = voltageLevel.description +
|
|
1154
726
|
'/QK-' +
|
|
1155
727
|
utils_2.ueberpruefeZeichenkette(i7Data.bezeichner);
|
|
1156
728
|
bay.description = i7Schluessel;
|
|
1157
729
|
}
|
|
1158
730
|
else {
|
|
1159
|
-
this.logger.
|
|
731
|
+
this.logger.debug(`Querkupplung ${i7Data.id} besitzt keine Anlage.`);
|
|
1160
732
|
}
|
|
1161
733
|
this.querkupplungIDs.push(i7Data.id);
|
|
1162
|
-
this.
|
|
1163
|
-
this.
|
|
734
|
+
this.cimModelDefaultValues.addBay(bay);
|
|
735
|
+
this.addIdMapping(i7Data.id, bay.mrid, integral_sql_1.Integral7TableNames.QUERKUPPLUNG);
|
|
1164
736
|
}
|
|
1165
737
|
}
|
|
1166
738
|
else {
|
|
1167
|
-
this.logger.
|
|
739
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.QUERKUPPLUNG} ist nicht vorhanden.`);
|
|
1168
740
|
}
|
|
1169
741
|
});
|
|
1170
742
|
}
|
|
@@ -1174,49 +746,49 @@ class ConverterIntegral7 {
|
|
|
1174
746
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.LAENGSKUPPLUNG, 0, 0, schaltanlagenIDs));
|
|
1175
747
|
for (const i7Data of result) {
|
|
1176
748
|
const bay = new AMPRIONBay_1.AMPRIONBay(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname, 'Laengskupplung');
|
|
1177
|
-
const voltageLevel = this.
|
|
749
|
+
const voltageLevel = this.cimModelDefaultValues.getVoltageLevel(this.integralID2UUID.get(i7Data.schaltanlage));
|
|
1178
750
|
bay.number = i7Data.feldnummer;
|
|
1179
751
|
bay.locationID = i7Data.ips_folder_id;
|
|
1180
752
|
if (voltageLevel) {
|
|
1181
|
-
bay.
|
|
753
|
+
bay.voltageLevel = voltageLevel;
|
|
1182
754
|
const i7Schluessel = voltageLevel.description +
|
|
1183
755
|
'/LK-' +
|
|
1184
756
|
utils_2.ueberpruefeZeichenkette(i7Data.bezeichner);
|
|
1185
757
|
bay.description = i7Schluessel;
|
|
1186
758
|
}
|
|
1187
759
|
else {
|
|
1188
|
-
this.logger.
|
|
760
|
+
this.logger.debug(`Laengskupplung ${i7Data.id} besitzt keine Anlage.`);
|
|
1189
761
|
}
|
|
1190
762
|
this.laengskupplungIDs.push(i7Data.id);
|
|
1191
|
-
this.
|
|
1192
|
-
this.
|
|
763
|
+
this.addIdMapping(i7Data.id, bay.mrid, integral_sql_1.Integral7TableNames.LAENGSKUPPLUNG);
|
|
764
|
+
this.cimModelDefaultValues.addBay(bay);
|
|
1193
765
|
}
|
|
1194
766
|
}
|
|
1195
767
|
else {
|
|
1196
|
-
this.logger.
|
|
768
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.LAENGSKUPPLUNG} ist nicht vorhanden.`);
|
|
1197
769
|
}
|
|
1198
770
|
});
|
|
1199
771
|
}
|
|
1200
|
-
convertBelastungen(knotenSfIDs, defaultValuesConfig,
|
|
772
|
+
convertBelastungen(knotenSfIDs, defaultValuesConfig, targetClass) {
|
|
1201
773
|
return new Promise((resolve) => {
|
|
1202
774
|
const querZweigID2LflID = new Map();
|
|
1203
775
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.BELASTUNG)) {
|
|
1204
776
|
this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.BELASTUNG, 0, 0, knotenSfIDs)).then((result) => {
|
|
1205
777
|
for (const i7Data of result) {
|
|
1206
|
-
const conformLoad =
|
|
1207
|
-
if (
|
|
1208
|
-
const conformLoadGroup = this.
|
|
778
|
+
const conformLoad = targetClass === __1.CIM_CLASS_NAMES.ConformLoad ? new ConformLoad_1.ConformLoad(__1.getUUID(i7Data.guid), utils_2.getName(i7Data)) : new __1.EnergyConsumer(__1.getUUID(i7Data.guid), utils_2.getName(i7Data));
|
|
779
|
+
if (targetClass === __1.CIM_CLASS_NAMES.ConformLoad) {
|
|
780
|
+
const conformLoadGroup = this.cimModelDefaultValues.getObjectByName(defaultValuesConfig.ConformLoadGroup.name, __1.CIM_CLASS_NAMES.ConformLoadGroup);
|
|
1209
781
|
conformLoad.loadGroupUUID = conformLoadGroup.mrid;
|
|
1210
782
|
}
|
|
1211
783
|
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
1212
|
-
__1.createSvStatus(this.
|
|
784
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, conformLoad);
|
|
1213
785
|
const powerData = utils_2.getActiveReactivePower(i7Data);
|
|
1214
786
|
conformLoad.p = powerData[0];
|
|
1215
787
|
conformLoad.q = powerData[1];
|
|
1216
|
-
const connectivityNode = this.
|
|
788
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
1217
789
|
if (connectivityNode) {
|
|
1218
|
-
__1.createConnection(this.
|
|
1219
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
790
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, conformLoad, connectivityNode, __1.PhaseCode.ABC);
|
|
791
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
1220
792
|
if (equipmentContainer) {
|
|
1221
793
|
conformLoad.equipmentContainerUUID = equipmentContainer.mrid;
|
|
1222
794
|
const i7Schluesel = utils_2.getDescription(equipmentContainer.getSubstation()) +
|
|
@@ -1224,19 +796,19 @@ class ConverterIntegral7 {
|
|
|
1224
796
|
conformLoad.description = i7Schluesel;
|
|
1225
797
|
}
|
|
1226
798
|
else {
|
|
1227
|
-
this.logger.
|
|
799
|
+
this.logger.debug(`EnergyConsumer ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
1228
800
|
}
|
|
1229
801
|
}
|
|
1230
802
|
else {
|
|
1231
|
-
this.logger.
|
|
803
|
+
this.logger.debug(`EnergyConsumer ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
1232
804
|
}
|
|
1233
|
-
if (
|
|
1234
|
-
this.
|
|
805
|
+
if (targetClass === __1.CIM_CLASS_NAMES.ConformLoad) {
|
|
806
|
+
this.cimModelDefaultValues.addConformLoad(conformLoad);
|
|
1235
807
|
}
|
|
1236
808
|
else {
|
|
1237
|
-
this.
|
|
809
|
+
this.cimModelDefaultValues.addEnergyConsumer(conformLoad);
|
|
1238
810
|
}
|
|
1239
|
-
this.
|
|
811
|
+
this.addIdMapping(i7Data.id, conformLoad.mrid, integral_sql_1.Integral7TableNames.BELASTUNG);
|
|
1240
812
|
querZweigID2LflID.set(i7Data.flussinfo3p, i7Data.id);
|
|
1241
813
|
}
|
|
1242
814
|
resolve(querZweigID2LflID);
|
|
@@ -1253,9 +825,9 @@ class ConverterIntegral7 {
|
|
|
1253
825
|
.then((result) => {
|
|
1254
826
|
for (const i7Data of result) {
|
|
1255
827
|
const conductingEquipmentUUID = this.integralID2UUID.get(pfResultID2querZweigID.get(i7Data.id));
|
|
1256
|
-
const conductingEquipment = this.
|
|
828
|
+
const conductingEquipment = this.cimModelDefaultValues.getObject(conductingEquipmentUUID);
|
|
1257
829
|
if (conductingEquipment.terminalsUUIDs.length) {
|
|
1258
|
-
util_create_1.createSvPowerFlow(this.
|
|
830
|
+
util_create_1.createSvPowerFlow(this.cimModelDefaultValues, i7Data.p, i7Data.q, conductingEquipment.terminalsUUIDs[0]);
|
|
1259
831
|
}
|
|
1260
832
|
}
|
|
1261
833
|
pfResultID2querZweigID.clear();
|
|
@@ -1266,45 +838,151 @@ class ConverterIntegral7 {
|
|
|
1266
838
|
resolve();
|
|
1267
839
|
});
|
|
1268
840
|
}
|
|
1269
|
-
convertEinspeisungen(knotenSfIDs) {
|
|
1270
|
-
var _a, _b, _c;
|
|
841
|
+
convertEinspeisungen(knotenSfIDs, targetClass) {
|
|
1271
842
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
1272
843
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.EINSPEISUNG)) {
|
|
1273
844
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.EINSPEISUNG, 0, 0, knotenSfIDs));
|
|
845
|
+
switch (targetClass) {
|
|
846
|
+
case __1.CIM_CLASS_NAMES.EquivalentInjection: {
|
|
847
|
+
yield this.convertEinspeisungen2EquivalentInjection(result);
|
|
848
|
+
break;
|
|
849
|
+
}
|
|
850
|
+
case __1.CIM_CLASS_NAMES.ExternalNetworkInjection: {
|
|
851
|
+
yield this.convertEinspeisungen2ExternalNetworkInjection(result);
|
|
852
|
+
break;
|
|
853
|
+
}
|
|
854
|
+
default: {
|
|
855
|
+
yield this.convertEinspeisungen2EnergySource(result);
|
|
856
|
+
}
|
|
857
|
+
}
|
|
858
|
+
}
|
|
859
|
+
else {
|
|
860
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.EINSPEISUNG} ist nicht vorhanden.`);
|
|
861
|
+
}
|
|
862
|
+
});
|
|
863
|
+
}
|
|
864
|
+
convertEinspeisungen2EnergySource(result) {
|
|
865
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
866
|
+
return new Promise((resolve) => {
|
|
867
|
+
var _a, _b, _c;
|
|
1274
868
|
for (const i7Data of result) {
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
|
|
869
|
+
try {
|
|
870
|
+
const energySource = new __1.EnergySource(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname);
|
|
871
|
+
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
872
|
+
const prio = i7Data.einspprio;
|
|
873
|
+
const usoll = i7Data.usoll;
|
|
874
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, energySource);
|
|
875
|
+
const spannungsgeregelt = utils_2.convertToBooleanI7(i7Data.spannungsgeregelt);
|
|
876
|
+
const powerData = utils_2.getActiveReactivePower(i7Data);
|
|
877
|
+
energySource.activePower = powerData[0];
|
|
878
|
+
energySource.reactivePower = powerData[1];
|
|
879
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
880
|
+
if (connectivityNode) {
|
|
881
|
+
__1.createConnection(this.cimModelDefaultValues, energySource, connectivityNode, __1.PhaseCode.ABC);
|
|
882
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
883
|
+
if (equipmentContainer) {
|
|
884
|
+
energySource.nominalVoltage = (_c = (_b = (_a = equipmentContainer) === null || _a === void 0 ? void 0 : _a.baseVoltage) === null || _b === void 0 ? void 0 : _b.nominalVoltage) === null || _c === void 0 ? void 0 : _c.value;
|
|
885
|
+
energySource.equipmentContainerUUID = equipmentContainer.mrid;
|
|
886
|
+
const i7Schluesel = integral_prefix_1.EINSPEISUNG_PRAEFIX + i7Data.bezeichner;
|
|
887
|
+
energySource.description = i7Schluesel;
|
|
888
|
+
}
|
|
889
|
+
else {
|
|
890
|
+
this.logger.debug(`EnergySource ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
891
|
+
}
|
|
1293
892
|
}
|
|
1294
893
|
else {
|
|
1295
|
-
this.logger.
|
|
894
|
+
this.logger.debug(`EnergySource ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
1296
895
|
}
|
|
896
|
+
this.cimModelDefaultValues.addEnergySource(energySource);
|
|
897
|
+
this.addIdMapping(i7Data.id, energySource.mrid, integral_sql_1.Integral7TableNames.EINSPEISUNG);
|
|
1297
898
|
}
|
|
1298
|
-
|
|
1299
|
-
this.logger.
|
|
899
|
+
catch (err) {
|
|
900
|
+
this.logger.error(`Err convertEinspeisungen2EnergySource ${i7Data.id} ${err}`);
|
|
1300
901
|
}
|
|
1301
|
-
this.cimModel.addEnergySource(energySource);
|
|
1302
|
-
this.integralID2UUID.set(i7Data.id, energySource.mrid);
|
|
1303
902
|
}
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
903
|
+
resolve();
|
|
904
|
+
});
|
|
905
|
+
});
|
|
906
|
+
}
|
|
907
|
+
convertEinspeisungen2EquivalentInjection(result) {
|
|
908
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
909
|
+
return new Promise((resolve) => {
|
|
910
|
+
for (const i7Data of result) {
|
|
911
|
+
try {
|
|
912
|
+
const equivalentInjection = new EquivalentInjection_1.EquivalentInjection(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname);
|
|
913
|
+
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
914
|
+
const prio = i7Data.einspprio;
|
|
915
|
+
const usoll = i7Data.usoll;
|
|
916
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, equivalentInjection);
|
|
917
|
+
const powerData = utils_2.getActiveReactivePower(i7Data);
|
|
918
|
+
equivalentInjection.p = powerData[0];
|
|
919
|
+
equivalentInjection.q = powerData[1];
|
|
920
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
921
|
+
if (connectivityNode) {
|
|
922
|
+
__1.createConnection(this.cimModelDefaultValues, equivalentInjection, connectivityNode, __1.PhaseCode.ABC);
|
|
923
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
924
|
+
if (equipmentContainer) {
|
|
925
|
+
equivalentInjection.equipmentContainerUUID = equipmentContainer.mrid;
|
|
926
|
+
const i7Schluesel = integral_prefix_1.EINSPEISUNG_PRAEFIX + i7Data.bezeichner;
|
|
927
|
+
equivalentInjection.description = i7Schluesel;
|
|
928
|
+
}
|
|
929
|
+
else {
|
|
930
|
+
this.logger.debug(`EquivalentInjection ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
931
|
+
}
|
|
932
|
+
}
|
|
933
|
+
else {
|
|
934
|
+
this.logger.debug(`EquivalentInjection ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
935
|
+
}
|
|
936
|
+
this.cimModelDefaultValues.addEquivalentInjection(equivalentInjection);
|
|
937
|
+
this.addIdMapping(i7Data.id, equivalentInjection.mrid, integral_sql_1.Integral7TableNames.EINSPEISUNG);
|
|
938
|
+
}
|
|
939
|
+
catch (err) {
|
|
940
|
+
this.logger.error(`Err convertEinspeisungen2EquivalentInjection ${i7Data.id} ${err}`);
|
|
941
|
+
}
|
|
942
|
+
}
|
|
943
|
+
resolve();
|
|
944
|
+
});
|
|
945
|
+
});
|
|
946
|
+
}
|
|
947
|
+
convertEinspeisungen2ExternalNetworkInjection(result) {
|
|
948
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
949
|
+
return new Promise((resolve) => {
|
|
950
|
+
for (const i7Data of result) {
|
|
951
|
+
try {
|
|
952
|
+
const externalNetworkInjection = new __1.ExternalNetworkInjection(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname);
|
|
953
|
+
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
954
|
+
const prio = i7Data.einspprio;
|
|
955
|
+
externalNetworkInjection.referencePriority = prio;
|
|
956
|
+
const usoll = i7Data.usoll;
|
|
957
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, externalNetworkInjection);
|
|
958
|
+
const powerData = utils_2.getActiveReactivePower(i7Data);
|
|
959
|
+
externalNetworkInjection.p = powerData[0];
|
|
960
|
+
externalNetworkInjection.q = powerData[1];
|
|
961
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
962
|
+
if (connectivityNode) {
|
|
963
|
+
__1.createConnection(this.cimModelDefaultValues, externalNetworkInjection, connectivityNode, __1.PhaseCode.ABC);
|
|
964
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
965
|
+
if (equipmentContainer) {
|
|
966
|
+
externalNetworkInjection.equipmentContainerUUID = equipmentContainer.mrid;
|
|
967
|
+
const i7Schluesel = integral_prefix_1.EINSPEISUNG_PRAEFIX + i7Data.bezeichner;
|
|
968
|
+
externalNetworkInjection.description = i7Schluesel;
|
|
969
|
+
}
|
|
970
|
+
else {
|
|
971
|
+
this.logger.debug(`EquivalentInjection ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
972
|
+
}
|
|
973
|
+
}
|
|
974
|
+
else {
|
|
975
|
+
this.logger.debug(`EquivalentInjection ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
976
|
+
}
|
|
977
|
+
this.cimModelDefaultValues.addExternalNetworkInjection(externalNetworkInjection);
|
|
978
|
+
this.addIdMapping(i7Data.id, externalNetworkInjection.mrid, integral_sql_1.I7Objects.EINSPEISUNG);
|
|
979
|
+
}
|
|
980
|
+
catch (err) {
|
|
981
|
+
this.logger.error(`Err convertEinspeisungen2EquivalentInjection ${i7Data.id} ${err}`);
|
|
982
|
+
}
|
|
983
|
+
}
|
|
984
|
+
resolve();
|
|
985
|
+
});
|
|
1308
986
|
});
|
|
1309
987
|
}
|
|
1310
988
|
convertGeneratoren(knotenSfIDs, energyTypesConfig) {
|
|
@@ -1312,21 +990,38 @@ class ConverterIntegral7 {
|
|
|
1312
990
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.GENERATOR)) {
|
|
1313
991
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.GENERATOR, 0, 0, knotenSfIDs));
|
|
1314
992
|
for (const i7Data of result) {
|
|
1315
|
-
const synchronousMachine = new __1.SynchronousMachine(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname);
|
|
993
|
+
const synchronousMachine = new __1.SynchronousMachine(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname, i7Data.nameprimaertyp);
|
|
1316
994
|
synchronousMachine.type = __1.SynchronousMachineKind.generator;
|
|
1317
995
|
synchronousMachine.operatingMode = SynchronousMachineOperatingMode_1.SynchronousMachineOperatingMode.generator;
|
|
1318
996
|
synchronousMachine.referencePriority = utils_2.isNumericI7(i7Data.einspprio) ? utils_2.convertToNumberI7(i7Data.einspprio) : undefined;
|
|
997
|
+
const maxP = utils_2.isNumericI7(i7Data.p_max) ? utils_2.convertToNumberI7(i7Data.p_max) : 0;
|
|
1319
998
|
const maxQ = utils_2.isNumericI7(i7Data.q_max) ? utils_2.convertToNumberI7(i7Data.q_max) : undefined;
|
|
1320
999
|
const minQ = utils_2.isNumericI7(i7Data.q_min) ? utils_2.convertToNumberI7(i7Data.q_min) : undefined;
|
|
1321
1000
|
const maxQvonPmax = utils_2.isNumericI7(i7Data.qmax_von_pmax) ? utils_2.convertToNumberI7(i7Data.qmax_von_pmax) : undefined;
|
|
1322
1001
|
const minQvonPmin = utils_2.isNumericI7(i7Data.qmin_von_pmin) ? utils_2.convertToNumberI7(i7Data.qmin_von_pmin) : undefined;
|
|
1323
1002
|
synchronousMachine.maxQ = maxQ ? maxQ : maxQvonPmax;
|
|
1324
1003
|
synchronousMachine.minQ = minQ ? minQ : minQvonPmin;
|
|
1004
|
+
const powerData = utils_2.getActiveReactivePower(i7Data);
|
|
1005
|
+
const p = powerData[0];
|
|
1006
|
+
const q = powerData[1];
|
|
1007
|
+
synchronousMachine.p = p;
|
|
1008
|
+
synchronousMachine.q = q;
|
|
1325
1009
|
const sr = utils_2.isNumericI7(i7Data.sr) ? utils_2.convertToNumberI7(i7Data.sr) : undefined;
|
|
1326
|
-
|
|
1010
|
+
if (sr && sr >= 0) {
|
|
1011
|
+
synchronousMachine.ratedS = sr;
|
|
1012
|
+
}
|
|
1013
|
+
else {
|
|
1014
|
+
synchronousMachine.ratedS = Math.sqrt(Math.pow(maxP, 2) + Math.pow(maxQvonPmax, 2));
|
|
1015
|
+
}
|
|
1016
|
+
if (!utils_2.isNumericI7(synchronousMachine.ratedS)) {
|
|
1017
|
+
console.log();
|
|
1018
|
+
}
|
|
1327
1019
|
const ur = utils_2.isNumericI7(i7Data.ur) ? utils_2.convertToNumberI7(i7Data.ur) : undefined;
|
|
1328
|
-
|
|
1020
|
+
const usoll = utils_2.isNumericI7(i7Data.usoll) ? utils_2.convertToNumberI7(i7Data.usoll) : undefined;
|
|
1021
|
+
synchronousMachine.ratedU = usoll ? usoll : ur;
|
|
1329
1022
|
synchronousMachine.aggregate = true;
|
|
1023
|
+
synchronousMachine.ratedPowerFactor = utils_2.isNumericI7(i7Data.cosphir) ? utils_2.convertToNumberI7(i7Data.cosphir) : undefined;
|
|
1024
|
+
synchronousMachine.r = utils_2.isNumericI7(i7Data.rg) ? utils_2.convertToNumberI7(i7Data.rg) : undefined;
|
|
1330
1025
|
const reactiveCapabilityCurve = new __1.ReactiveCapabilityCurve(__1.generateUUID(), 'CurveData');
|
|
1331
1026
|
reactiveCapabilityCurve.curveStyle = __1.CurveStyle.straightLineYValues;
|
|
1332
1027
|
reactiveCapabilityCurve.xUnit = __1.UnitSymbol.W;
|
|
@@ -1337,25 +1032,27 @@ class ConverterIntegral7 {
|
|
|
1337
1032
|
curveData1.xvalue = i7Data.p_min;
|
|
1338
1033
|
curveData1.y1value = i7Data.qmin_von_pmin;
|
|
1339
1034
|
curveData1.y2value = i7Data.qmax_von_pmin;
|
|
1340
|
-
this.
|
|
1035
|
+
this.cimModelDefaultValues.addCurveData(curveData1);
|
|
1341
1036
|
const curveData2 = new __1.CurveData(__1.generateUUID());
|
|
1342
1037
|
curveData2.curve = reactiveCapabilityCurve;
|
|
1343
1038
|
curveData2.xvalue = i7Data.p_max;
|
|
1344
1039
|
curveData2.y1value = i7Data.qmin_von_pmax;
|
|
1345
1040
|
curveData2.y2value = i7Data.qmax_von_pmax;
|
|
1346
|
-
this.
|
|
1347
|
-
this.
|
|
1041
|
+
this.cimModelDefaultValues.addCurveData(curveData2);
|
|
1042
|
+
this.cimModelDefaultValues.addReactiveCapabilityCurve(reactiveCapabilityCurve);
|
|
1348
1043
|
synchronousMachine.initialReactiveCapabilityCurveUUID = reactiveCapabilityCurve.mrid;
|
|
1349
1044
|
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
1350
|
-
__1.createSvStatus(this.
|
|
1351
|
-
const regulatingControl = new __1.RegulatingControl(__1.generateUUID(), `
|
|
1045
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, synchronousMachine);
|
|
1046
|
+
const regulatingControl = new __1.RegulatingControl(__1.generateUUID(), `RG_Gen_${i7Data.id}`);
|
|
1047
|
+
regulatingControl.enabled = inBetrieb;
|
|
1048
|
+
regulatingControl.targetValue = usoll;
|
|
1352
1049
|
switch (i7Data.spannungsgeregelt) {
|
|
1353
1050
|
case 1: {
|
|
1354
1051
|
regulatingControl.mode = __1.RegulatingControlModeKind.voltage;
|
|
1355
1052
|
break;
|
|
1356
1053
|
}
|
|
1357
1054
|
default: {
|
|
1358
|
-
regulatingControl.mode = __1.RegulatingControlModeKind.
|
|
1055
|
+
regulatingControl.mode = __1.RegulatingControlModeKind.voltage;
|
|
1359
1056
|
}
|
|
1360
1057
|
}
|
|
1361
1058
|
synchronousMachine.regulatingControlUUID = regulatingControl.mrid;
|
|
@@ -1366,7 +1063,7 @@ class ConverterIntegral7 {
|
|
|
1366
1063
|
case 'ThermalGeneratingUnit': {
|
|
1367
1064
|
generatingUnit = new __1.ThermalGeneratingUnit(__1.getUUID(''), 'Generator_' + i7Data.bezeichner, i7Data.kurzname, i7Data.nameprimaertyp);
|
|
1368
1065
|
if (generatingUnitConfig.fuelType) {
|
|
1369
|
-
utils_2.generateFuelType(i7Data.nameprimaertyp, generatingUnitConfig.fuelType, generatingUnit, this.
|
|
1066
|
+
utils_2.generateFuelType(i7Data.nameprimaertyp, generatingUnitConfig.fuelType, generatingUnit, this.cimModelDefaultValues);
|
|
1370
1067
|
}
|
|
1371
1068
|
break;
|
|
1372
1069
|
}
|
|
@@ -1396,6 +1093,11 @@ class ConverterIntegral7 {
|
|
|
1396
1093
|
generatingUnit = new __1.NuclearGeneratingUnit(__1.getUUID(''), 'Generator_' + i7Data.bezeichner, i7Data.kurzname);
|
|
1397
1094
|
break;
|
|
1398
1095
|
}
|
|
1096
|
+
case 'HydroGeneratingUnit': {
|
|
1097
|
+
generatingUnit = new __1.HydroGeneratingUnit(__1.getUUID(''), 'Generator_' + i7Data.bezeichner, i7Data.kurzname);
|
|
1098
|
+
generatingUnit.energyConversionCapability = __1.HydroEnergyConversionKind.pumpAndGenerator;
|
|
1099
|
+
break;
|
|
1100
|
+
}
|
|
1399
1101
|
}
|
|
1400
1102
|
}
|
|
1401
1103
|
if (!generatingUnit) {
|
|
@@ -1405,14 +1107,18 @@ class ConverterIntegral7 {
|
|
|
1405
1107
|
generatingUnit.initialP = utils_2.isNumericI7(i7Data.p0) ? utils_2.convertToNumberI7(i7Data.p0) : undefined;
|
|
1406
1108
|
generatingUnit.maxOperatingP = utils_2.isNumericI7(i7Data.p_max) ? utils_2.convertToNumberI7(i7Data.p_max) : undefined;
|
|
1407
1109
|
generatingUnit.minOperatingP = utils_2.isNumericI7(i7Data.p_min) ? utils_2.convertToNumberI7(i7Data.p_min) : undefined;
|
|
1408
|
-
generatingUnit.nominalP =
|
|
1110
|
+
generatingUnit.nominalP = generatingUnit.maxOperatingP;
|
|
1111
|
+
const kr = utils_2.isNumericI7(i7Data.kr) ? utils_2.convertToNumberI7(i7Data.kr) : undefined;
|
|
1112
|
+
const fn = 50;
|
|
1113
|
+
const pn = generatingUnit.maxOperatingP;
|
|
1114
|
+
generatingUnit.governorSCD = (utils_2.isNumericI7(kr) && utils_2.isNumericI7(generatingUnit.nominalP)) ? utils_2.calculateSigma(fn, pn, kr) : undefined;
|
|
1409
1115
|
generatingUnit.addRotatingMachine(synchronousMachine);
|
|
1410
1116
|
synchronousMachine.generatingUnitUUID = generatingUnit.mrid;
|
|
1411
|
-
const connectivityNode = this.
|
|
1117
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
1412
1118
|
if (connectivityNode) {
|
|
1413
|
-
const terminal = __1.createConnection(this.
|
|
1119
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, synchronousMachine, connectivityNode, __1.PhaseCode.ABC);
|
|
1414
1120
|
regulatingControl.terminalUUID = terminal.mrid;
|
|
1415
|
-
const equipmentContainerEquip = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
1121
|
+
const equipmentContainerEquip = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
1416
1122
|
if (equipmentContainerEquip) {
|
|
1417
1123
|
synchronousMachine.equipmentContainerUUID = equipmentContainerEquip.mrid;
|
|
1418
1124
|
const i7Schluesel = integral_prefix_1.GENERATOR_PRAEFIX + i7Data.bezeichner;
|
|
@@ -1423,20 +1129,35 @@ class ConverterIntegral7 {
|
|
|
1423
1129
|
generatingUnit.equipmentContainerUUID = equipmentContainergenUnitUUID;
|
|
1424
1130
|
}
|
|
1425
1131
|
else {
|
|
1426
|
-
this.logger.
|
|
1132
|
+
this.logger.debug(`GeneratingUnit ${i7Data.id} besitzt keinen EquipmentContainer/Substation.`);
|
|
1427
1133
|
}
|
|
1428
1134
|
}
|
|
1429
1135
|
else {
|
|
1430
|
-
this.logger.
|
|
1136
|
+
this.logger.debug(`SynchronousMachine ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
1431
1137
|
}
|
|
1432
1138
|
}
|
|
1433
1139
|
else {
|
|
1434
|
-
this.logger.
|
|
1140
|
+
this.logger.debug(`Generator ${i7Data.id} besitzt keinen ConnectivityNode/Terminal Instanz.`);
|
|
1435
1141
|
}
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
|
|
1142
|
+
const smtcr = new SynchronousMachineTimeConstantReactance_1.SynchronousMachineTimeConstantReactance(__1.generateUUID(), `smtcr_${synchronousMachine.name}`);
|
|
1143
|
+
smtcr.enabled = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
1144
|
+
smtcr.tpdo = utils_2.isNumericI7(i7Data.td1s) ? utils_2.convertToNumberI7(i7Data.td1s) : undefined;
|
|
1145
|
+
smtcr.tppdo = utils_2.isNumericI7(i7Data.td2s) ? utils_2.convertToNumberI7(i7Data.td2s) : undefined;
|
|
1146
|
+
smtcr.tpqo = utils_2.isNumericI7(i7Data.tq1s) ? utils_2.convertToNumberI7(i7Data.tq1s) : undefined;
|
|
1147
|
+
smtcr.tppqo = utils_2.isNumericI7(i7Data.tq2s) ? utils_2.convertToNumberI7(i7Data.tq2s) : undefined;
|
|
1148
|
+
smtcr.xDirectSync = utils_2.isNumericI7(i7Data.xdu) ? utils_2.convertToNumberI7(i7Data.xdu) : undefined;
|
|
1149
|
+
smtcr.xDirectTrans = utils_2.isNumericI7(i7Data.xdu1s) ? utils_2.convertToNumberI7(i7Data.xdu1s) : undefined;
|
|
1150
|
+
smtcr.xDirectSubtrans = utils_2.isNumericI7(i7Data.xdu2s) ? utils_2.convertToNumberI7(i7Data.xdu2s) : undefined;
|
|
1151
|
+
smtcr.xQuadSync = utils_2.isNumericI7(i7Data.xqu) ? utils_2.convertToNumberI7(i7Data.xqu) : undefined;
|
|
1152
|
+
smtcr.xQuadTrans = utils_2.isNumericI7(i7Data.xqu1s) ? utils_2.convertToNumberI7(i7Data.xqu1s) : undefined;
|
|
1153
|
+
smtcr.xQuadSubtrans = utils_2.isNumericI7(i7Data.xqu2s) ? utils_2.convertToNumberI7(i7Data.xqu2s) : undefined;
|
|
1154
|
+
smtcr.synchronousMachine = synchronousMachine;
|
|
1155
|
+
synchronousMachine.synchronousMachineDynamics = smtcr;
|
|
1156
|
+
this.cimModelDefaultValues.addRegulatingControl(regulatingControl);
|
|
1157
|
+
this.cimModelDefaultValues.addGeneratingUnit(generatingUnit);
|
|
1158
|
+
this.cimModelDefaultValues.addSynchronousMachine(synchronousMachine);
|
|
1159
|
+
this.cimModelDefaultValues.addSynchronousMachineTimeConstantReactance(smtcr);
|
|
1160
|
+
this.addIdMapping(i7Data.id, synchronousMachine.mrid, integral_sql_1.Integral7TableNames.GENERATOR);
|
|
1440
1161
|
}
|
|
1441
1162
|
}
|
|
1442
1163
|
});
|
|
@@ -1450,6 +1171,7 @@ class ConverterIntegral7 {
|
|
|
1450
1171
|
synchronousMachine.type = __1.SynchronousMachineKind.generator;
|
|
1451
1172
|
synchronousMachine.operatingMode = SynchronousMachineOperatingMode_1.SynchronousMachineOperatingMode.generator;
|
|
1452
1173
|
synchronousMachine.referencePriority = utils_2.isNumericI7(i7Data.einspprio) ? utils_2.convertToNumberI7(i7Data.einspprio) : undefined;
|
|
1174
|
+
const maxP = utils_2.isNumericI7(i7Data.p_max) ? utils_2.convertToNumberI7(i7Data.p_max) : 0;
|
|
1453
1175
|
const maxQ = utils_2.isNumericI7(i7Data.q_max) ? utils_2.convertToNumberI7(i7Data.q_max) : undefined;
|
|
1454
1176
|
const minQ = utils_2.isNumericI7(i7Data.q_min) ? utils_2.convertToNumberI7(i7Data.q_min) : undefined;
|
|
1455
1177
|
synchronousMachine.maxQ = maxQ;
|
|
@@ -1460,7 +1182,7 @@ class ConverterIntegral7 {
|
|
|
1460
1182
|
synchronousMachine.ratedU = ur;
|
|
1461
1183
|
synchronousMachine.aggregate = true;
|
|
1462
1184
|
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
1463
|
-
__1.createSvStatus(this.
|
|
1185
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, synchronousMachine);
|
|
1464
1186
|
const regulatingControl = new __1.RegulatingControl(__1.generateUUID(), `RG_KWBlock ${i7Data.id}`);
|
|
1465
1187
|
switch (i7Data.spannungsgeregelt) {
|
|
1466
1188
|
case 1: {
|
|
@@ -1479,7 +1201,7 @@ class ConverterIntegral7 {
|
|
|
1479
1201
|
case 'ThermalGeneratingUnit': {
|
|
1480
1202
|
generatingUnit = new __1.ThermalGeneratingUnit(__1.getUUID(''), 'Generator_' + i7Data.bezeichner, i7Data.kurzname, i7Data.nameprimaertyp);
|
|
1481
1203
|
if (generatingUnitConfig.fuelType) {
|
|
1482
|
-
utils_2.generateFuelType(i7Data.nameprimaertyp, generatingUnitConfig.fuelType, generatingUnit, this.
|
|
1204
|
+
utils_2.generateFuelType(i7Data.nameprimaertyp, generatingUnitConfig.fuelType, generatingUnit, this.cimModelDefaultValues);
|
|
1483
1205
|
}
|
|
1484
1206
|
break;
|
|
1485
1207
|
}
|
|
@@ -1518,14 +1240,18 @@ class ConverterIntegral7 {
|
|
|
1518
1240
|
generatingUnit.initialP = utils_2.isNumericI7(i7Data.p0) ? utils_2.convertToNumberI7(i7Data.p0) : undefined;
|
|
1519
1241
|
generatingUnit.maxOperatingP = utils_2.isNumericI7(i7Data.p_max) ? utils_2.convertToNumberI7(i7Data.p_max) : undefined;
|
|
1520
1242
|
generatingUnit.minOperatingP = utils_2.isNumericI7(i7Data.p_min) ? utils_2.convertToNumberI7(i7Data.p_min) : undefined;
|
|
1521
|
-
generatingUnit.nominalP =
|
|
1243
|
+
generatingUnit.nominalP = generatingUnit.maxOperatingP;
|
|
1244
|
+
const kr = utils_2.isNumericI7(i7Data.kr) ? utils_2.convertToNumberI7(i7Data.kr) : undefined;
|
|
1245
|
+
const fn = 50;
|
|
1246
|
+
const pn = generatingUnit.maxOperatingP;
|
|
1247
|
+
generatingUnit.governorSCD = (utils_2.isNumericI7(kr) && utils_2.isNumericI7(generatingUnit.nominalP)) ? utils_2.calculateSigma(fn, pn, kr) : undefined;
|
|
1522
1248
|
generatingUnit.addRotatingMachine(synchronousMachine);
|
|
1523
1249
|
synchronousMachine.generatingUnitUUID = generatingUnit.mrid;
|
|
1524
|
-
const connectivityNode = this.
|
|
1250
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
1525
1251
|
if (connectivityNode) {
|
|
1526
|
-
const terminal = __1.createConnection(this.
|
|
1252
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, synchronousMachine, connectivityNode, __1.PhaseCode.ABC);
|
|
1527
1253
|
regulatingControl.terminalUUID = terminal.mrid;
|
|
1528
|
-
const equipmentContainerEquip = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
1254
|
+
const equipmentContainerEquip = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
1529
1255
|
if (equipmentContainerEquip) {
|
|
1530
1256
|
synchronousMachine.equipmentContainerUUID = equipmentContainerEquip.mrid;
|
|
1531
1257
|
const i7Schluesel = integral_prefix_1.GENERATOR_PRAEFIX + i7Data.bezeichner;
|
|
@@ -1536,20 +1262,20 @@ class ConverterIntegral7 {
|
|
|
1536
1262
|
generatingUnit.equipmentContainerUUID = equipmentContainergenUnitUUID;
|
|
1537
1263
|
}
|
|
1538
1264
|
else {
|
|
1539
|
-
this.logger.
|
|
1265
|
+
this.logger.debug(`GeneratingUnit ${i7Data.id} besitzt keinen EquipmentContainer/Substation.`);
|
|
1540
1266
|
}
|
|
1541
1267
|
}
|
|
1542
1268
|
else {
|
|
1543
|
-
this.logger.
|
|
1269
|
+
this.logger.debug(`SynchronousMachine ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
1544
1270
|
}
|
|
1545
1271
|
}
|
|
1546
1272
|
else {
|
|
1547
|
-
this.logger.
|
|
1273
|
+
this.logger.debug(`Kraftwerksblock/SynchronousMachine ${i7Data.id} besitzt keinen ConnectivityNode/Terminal`);
|
|
1548
1274
|
}
|
|
1549
|
-
this.
|
|
1550
|
-
this.
|
|
1551
|
-
this.
|
|
1552
|
-
this.
|
|
1275
|
+
this.cimModelDefaultValues.addRegulatingControl(regulatingControl);
|
|
1276
|
+
this.cimModelDefaultValues.addGeneratingUnit(generatingUnit);
|
|
1277
|
+
this.cimModelDefaultValues.addSynchronousMachine(synchronousMachine);
|
|
1278
|
+
this.addIdMapping(i7Data.id, synchronousMachine.mrid, integral_sql_1.Integral7TableNames.KWBLOCK);
|
|
1553
1279
|
}
|
|
1554
1280
|
}
|
|
1555
1281
|
});
|
|
@@ -1561,36 +1287,36 @@ class ConverterIntegral7 {
|
|
|
1561
1287
|
for (const i7Data of result) {
|
|
1562
1288
|
const externalNetworkInjection = new __1.ExternalNetworkInjection(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname);
|
|
1563
1289
|
const usoll = utils_2.isNumericI7(i7Data.usoll) ? utils_2.convertToNumberI7(i7Data.usoll) : undefined;
|
|
1564
|
-
const kr =
|
|
1290
|
+
const kr = 0;
|
|
1565
1291
|
externalNetworkInjection.governorSCD = kr;
|
|
1566
1292
|
const prio = utils_2.isNumericI7(i7Data.einspprio) ? utils_2.convertToNumberI7(i7Data.einspprio) : undefined;
|
|
1567
1293
|
externalNetworkInjection.referencePriority = prio;
|
|
1568
1294
|
externalNetworkInjection.aggregate = true;
|
|
1569
1295
|
externalNetworkInjection.ikSecond = true;
|
|
1570
1296
|
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
1571
|
-
__1.createSvStatus(this.
|
|
1572
|
-
const connectivityNode = this.
|
|
1297
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, externalNetworkInjection);
|
|
1298
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
1573
1299
|
if (connectivityNode) {
|
|
1574
|
-
__1.createConnection(this.
|
|
1575
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
1300
|
+
__1.createConnection(this.cimModelDefaultValues, externalNetworkInjection, connectivityNode, __1.PhaseCode.ABC);
|
|
1301
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
1576
1302
|
if (equipmentContainer) {
|
|
1577
1303
|
externalNetworkInjection.equipmentContainerUUID = equipmentContainer.mrid;
|
|
1578
1304
|
const i7Schluesel = integral_prefix_1.EINSPEISUNG_PRAEFIX + i7Data.bezeichner;
|
|
1579
1305
|
externalNetworkInjection.description = i7Schluesel;
|
|
1580
1306
|
}
|
|
1581
1307
|
else {
|
|
1582
|
-
this.logger.
|
|
1308
|
+
this.logger.debug(`ExternalNetworkInjection ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
1583
1309
|
}
|
|
1584
1310
|
}
|
|
1585
1311
|
else {
|
|
1586
|
-
this.logger.
|
|
1312
|
+
this.logger.debug(`ExternalNetworkInjection ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
1587
1313
|
}
|
|
1588
|
-
this.
|
|
1589
|
-
this.
|
|
1314
|
+
this.cimModelDefaultValues.addExternalNetworkInjection(externalNetworkInjection);
|
|
1315
|
+
this.addIdMapping(i7Data.id, externalNetworkInjection.mrid, integral_sql_1.Integral7TableNames.ERSATZQUERZWEIG);
|
|
1590
1316
|
}
|
|
1591
1317
|
}
|
|
1592
1318
|
else {
|
|
1593
|
-
this.logger.
|
|
1319
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.EINSPEISUNG} ist nicht vorhanden.`);
|
|
1594
1320
|
}
|
|
1595
1321
|
});
|
|
1596
1322
|
}
|
|
@@ -1601,44 +1327,44 @@ class ConverterIntegral7 {
|
|
|
1601
1327
|
for (const i7Data of result) {
|
|
1602
1328
|
const statVarCom = new StaticVarCompensator_1.StaticVarCompensator(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname);
|
|
1603
1329
|
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
1604
|
-
__1.createSvStatus(this.
|
|
1605
|
-
const connectivityNode = this.
|
|
1330
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, statVarCom);
|
|
1331
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
1606
1332
|
let terminal;
|
|
1607
1333
|
if (connectivityNode) {
|
|
1608
|
-
terminal = __1.createConnection(this.
|
|
1609
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
1334
|
+
terminal = __1.createConnection(this.cimModelDefaultValues, statVarCom, connectivityNode, __1.PhaseCode.ABC);
|
|
1335
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
1610
1336
|
if (equipmentContainer) {
|
|
1611
1337
|
statVarCom.equipmentContainerUUID = equipmentContainer.mrid;
|
|
1612
1338
|
}
|
|
1613
1339
|
else {
|
|
1614
|
-
this.logger.
|
|
1340
|
+
this.logger.debug(`Statcom ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
1615
1341
|
}
|
|
1616
1342
|
}
|
|
1617
1343
|
else {
|
|
1618
|
-
this.logger.
|
|
1344
|
+
this.logger.debug(`Statcom ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
1619
1345
|
}
|
|
1620
|
-
const regulatingControl = utils_2.createRegulatingControl(`RG_Statcom ${i7Data.id}`, inBetrieb, __1.UnitMultiplier.k, __1.RegulatingControlModeKind.voltage, this.
|
|
1346
|
+
const regulatingControl = utils_2.createRegulatingControl(`RG_Statcom ${i7Data.id}`, inBetrieb, __1.UnitMultiplier.k, __1.RegulatingControlModeKind.voltage, this.cimModelDefaultValues, statVarCom);
|
|
1621
1347
|
const uref = utils_2.isNumericI7(i7Data.uref) ? utils_2.convertToNumberI7(i7Data.uref) : undefined;
|
|
1622
1348
|
regulatingControl.targetValue = uref;
|
|
1623
1349
|
statVarCom.voltageSetPoint = uref;
|
|
1624
1350
|
const flagOS = utils_2.convertToBooleanI7(i7Data.flag_os);
|
|
1625
1351
|
if (flagOS && i7Data.trafo) {
|
|
1626
1352
|
this.statcomRegulatingControls.set(i7Data.trafo, regulatingControl);
|
|
1627
|
-
this.
|
|
1353
|
+
this.cimModelDefaultValues.regulatingControl.delete(regulatingControl.mrid);
|
|
1628
1354
|
}
|
|
1629
1355
|
else if (terminal) {
|
|
1630
1356
|
regulatingControl.terminalUUID = terminal.mrid;
|
|
1631
1357
|
}
|
|
1632
1358
|
else {
|
|
1633
|
-
this.logger.
|
|
1634
|
-
this.logger.
|
|
1359
|
+
this.logger.debug(`Statcom RegulatingControl ${i7Data.id} besitzt keinen Anschluss.`);
|
|
1360
|
+
this.logger.debug(`Statcom RegulatingControl ${i7Data.id} besitzt keinen Anschluss.`);
|
|
1635
1361
|
}
|
|
1636
|
-
this.
|
|
1637
|
-
this.
|
|
1362
|
+
this.cimModelDefaultValues.addStaticVarCompensator(statVarCom);
|
|
1363
|
+
this.addIdMapping(i7Data.id, statVarCom.mrid, integral_sql_1.Integral7TableNames.STATCOM);
|
|
1638
1364
|
}
|
|
1639
1365
|
}
|
|
1640
1366
|
else {
|
|
1641
|
-
this.logger.
|
|
1367
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.STATCOM} ist nicht vorhanden.`);
|
|
1642
1368
|
}
|
|
1643
1369
|
});
|
|
1644
1370
|
}
|
|
@@ -1649,68 +1375,68 @@ class ConverterIntegral7 {
|
|
|
1649
1375
|
for (const i7Data of result) {
|
|
1650
1376
|
const statVarCom = new StaticVarCompensator_1.StaticVarCompensator(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname);
|
|
1651
1377
|
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
1652
|
-
__1.createSvStatus(this.
|
|
1653
|
-
const connectivityNode = this.
|
|
1378
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, statVarCom);
|
|
1379
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
1654
1380
|
let terminal;
|
|
1655
1381
|
if (connectivityNode) {
|
|
1656
|
-
terminal = __1.createConnection(this.
|
|
1657
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
1382
|
+
terminal = __1.createConnection(this.cimModelDefaultValues, statVarCom, connectivityNode, __1.PhaseCode.ABC);
|
|
1383
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
1658
1384
|
if (equipmentContainer) {
|
|
1659
1385
|
statVarCom.equipmentContainerUUID = equipmentContainer.mrid;
|
|
1660
1386
|
}
|
|
1661
1387
|
else {
|
|
1662
|
-
this.logger.
|
|
1388
|
+
this.logger.debug(`SVC ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
1663
1389
|
}
|
|
1664
1390
|
}
|
|
1665
1391
|
else {
|
|
1666
|
-
this.logger.
|
|
1392
|
+
this.logger.debug(`SVC ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
1667
1393
|
}
|
|
1668
|
-
const regulatingControl = utils_2.createRegulatingControl(`RG_SVC ${i7Data.id}`, inBetrieb, __1.UnitMultiplier.k, __1.RegulatingControlModeKind.voltage, this.
|
|
1394
|
+
const regulatingControl = utils_2.createRegulatingControl(`RG_SVC ${i7Data.id}`, inBetrieb, __1.UnitMultiplier.k, __1.RegulatingControlModeKind.voltage, this.cimModelDefaultValues, statVarCom);
|
|
1669
1395
|
const uref = utils_2.isNumericI7(i7Data.uref) ? utils_2.convertToNumberI7(i7Data.uref) : undefined;
|
|
1670
1396
|
regulatingControl.targetValue = uref;
|
|
1671
1397
|
statVarCom.voltageSetPoint = uref;
|
|
1672
1398
|
const flagOS = utils_2.convertToBooleanI7(i7Data.flag_os);
|
|
1673
1399
|
if (flagOS && i7Data.trafo) {
|
|
1674
1400
|
this.statcomRegulatingControls.set(i7Data.trafo, regulatingControl);
|
|
1675
|
-
this.
|
|
1401
|
+
this.cimModelDefaultValues.regulatingControl.delete(regulatingControl.mrid);
|
|
1676
1402
|
}
|
|
1677
1403
|
else if (terminal) {
|
|
1678
1404
|
regulatingControl.terminalUUID = terminal.mrid;
|
|
1679
1405
|
}
|
|
1680
1406
|
else {
|
|
1681
|
-
this.logger.
|
|
1407
|
+
this.logger.debug(`SVC RegulatingControl ${i7Data.id} besitzt keinen Anschluss.`);
|
|
1682
1408
|
}
|
|
1683
|
-
this.
|
|
1684
|
-
this.
|
|
1409
|
+
this.cimModelDefaultValues.addStaticVarCompensator(statVarCom);
|
|
1410
|
+
this.addIdMapping(i7Data.id, statVarCom.mrid, integral_sql_1.Integral7TableNames.SVC);
|
|
1685
1411
|
}
|
|
1686
1412
|
}
|
|
1687
1413
|
else {
|
|
1688
|
-
this.logger.
|
|
1414
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.STATCOM} ist nicht vorhanden.`);
|
|
1689
1415
|
}
|
|
1690
1416
|
});
|
|
1691
1417
|
}
|
|
1692
1418
|
addTerminal2StatcomRegulatingControl(i7TrafoID, powerTransformer) {
|
|
1693
|
-
var _a;
|
|
1419
|
+
var _a, _b;
|
|
1694
1420
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
1695
1421
|
if (this.statcomRegulatingControls.has(i7TrafoID)) {
|
|
1696
|
-
if (powerTransformer === null || powerTransformer === void 0 ? void 0 : powerTransformer.powerTransformerEnds.length) {
|
|
1422
|
+
if ((_a = powerTransformer === null || powerTransformer === void 0 ? void 0 : powerTransformer.powerTransformerEnds) === null || _a === void 0 ? void 0 : _a.length) {
|
|
1697
1423
|
let voltage = 0;
|
|
1698
1424
|
let powertransfomerEnd = powerTransformer.powerTransformerEnds[0];
|
|
1699
1425
|
for (const pEnd of powerTransformer.powerTransformerEnds) {
|
|
1700
|
-
const baseVoltage = this.
|
|
1426
|
+
const baseVoltage = this.cimModelDefaultValues.baseVoltages.get(pEnd.getBaseVoltageUUID());
|
|
1701
1427
|
if (!baseVoltage)
|
|
1702
1428
|
continue;
|
|
1703
|
-
const v = (
|
|
1429
|
+
const v = (_b = baseVoltage.nominalVoltage) === null || _b === void 0 ? void 0 : _b.value;
|
|
1704
1430
|
if (v > voltage) {
|
|
1705
1431
|
voltage = v;
|
|
1706
1432
|
powertransfomerEnd = pEnd;
|
|
1707
1433
|
}
|
|
1708
1434
|
}
|
|
1709
|
-
const terminalUUID = powertransfomerEnd.
|
|
1435
|
+
const terminalUUID = powertransfomerEnd.getTerminalUUID();
|
|
1710
1436
|
const regulatingControl = this.statcomRegulatingControls.get(i7TrafoID);
|
|
1711
1437
|
regulatingControl.terminalUUID = terminalUUID;
|
|
1712
1438
|
this.statcomRegulatingControls.delete(i7TrafoID);
|
|
1713
|
-
this.
|
|
1439
|
+
this.cimModelDefaultValues.addRegulatingControl(regulatingControl);
|
|
1714
1440
|
}
|
|
1715
1441
|
}
|
|
1716
1442
|
});
|
|
@@ -1722,37 +1448,40 @@ class ConverterIntegral7 {
|
|
|
1722
1448
|
for (const i7Data of result) {
|
|
1723
1449
|
const connectivityNode = new __1.ConnectivityNode(__1.getUUID(i7Data.guid), 'knotensf cn', 'knotensf');
|
|
1724
1450
|
const isInmemory = this.checkMemoryObject(i7Data.id, connectivityNode);
|
|
1725
|
-
const bay = this.
|
|
1451
|
+
const bay = this.cimModelDefaultValues.getBay(this.integralID2UUID.get(i7Data.schaltfeld));
|
|
1726
1452
|
if (bay) {
|
|
1727
1453
|
if (isInmemory) {
|
|
1728
|
-
connectivityNode.connectivityNodeContainerUUID = bay.
|
|
1454
|
+
connectivityNode.connectivityNodeContainerUUID = bay.getVoltageLevelUUID();
|
|
1729
1455
|
}
|
|
1730
1456
|
else {
|
|
1731
1457
|
connectivityNode.connectivityNodeContainerUUID = bay.mrid;
|
|
1732
1458
|
}
|
|
1733
1459
|
}
|
|
1734
1460
|
else {
|
|
1735
|
-
this.logger.
|
|
1461
|
+
this.logger.debug(`KnotenSf ${i7Data.id} besitzt kein Schaltfeld.`);
|
|
1736
1462
|
}
|
|
1737
1463
|
this.knotenSfIDs.push(i7Data.id);
|
|
1738
|
-
this.
|
|
1739
|
-
this.
|
|
1740
|
-
const connectivityNodeContainer = this.
|
|
1464
|
+
this.cimModelDefaultValues.addConnectivityNode(connectivityNode);
|
|
1465
|
+
this.addIdMapping(i7Data.id, connectivityNode.mrid, integral_sql_1.Integral7TableNames.KNOTEN_SF);
|
|
1466
|
+
const connectivityNodeContainer = this.cimModelDefaultValues.getObject(connectivityNode.connectivityNodeContainerUUID);
|
|
1741
1467
|
if (connectivityNodeContainer) {
|
|
1742
1468
|
let baseVoltage;
|
|
1743
1469
|
if (connectivityNodeContainer instanceof __1.VoltageLevel) {
|
|
1744
|
-
baseVoltage = this.
|
|
1470
|
+
baseVoltage = (connectivityNodeContainer === null || connectivityNodeContainer === void 0 ? void 0 : connectivityNodeContainer.baseVoltage) ? connectivityNodeContainer.baseVoltage : this.cimModelDefaultValues.getObject(connectivityNodeContainer.baseVoltageUUID);
|
|
1745
1471
|
}
|
|
1746
1472
|
else if (connectivityNodeContainer instanceof __1.Bay) {
|
|
1747
|
-
const vl = this.
|
|
1748
|
-
baseVoltage = this.
|
|
1473
|
+
const vl = this.cimModelDefaultValues.getObject(connectivityNodeContainer.getVoltageLevelUUID());
|
|
1474
|
+
baseVoltage = (vl === null || vl === void 0 ? void 0 : vl.baseVoltage) ? vl.baseVoltage : this.cimModelDefaultValues.getObject(vl === null || vl === void 0 ? void 0 : vl.baseVoltageUUID);
|
|
1749
1475
|
}
|
|
1750
1476
|
this.knotenSpannung.set(connectivityNode.mrid, baseVoltage);
|
|
1751
1477
|
}
|
|
1478
|
+
else {
|
|
1479
|
+
console.log();
|
|
1480
|
+
}
|
|
1752
1481
|
}
|
|
1753
1482
|
}
|
|
1754
1483
|
else {
|
|
1755
|
-
this.logger.
|
|
1484
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.KNOTEN_SF} ist nicht vorhanden.`);
|
|
1756
1485
|
}
|
|
1757
1486
|
});
|
|
1758
1487
|
}
|
|
@@ -1762,19 +1491,19 @@ class ConverterIntegral7 {
|
|
|
1762
1491
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.KNOTEN_KF, 0, 0, querkupplungIDs));
|
|
1763
1492
|
for (const i7Data of result) {
|
|
1764
1493
|
const connectivityNode = new __1.ConnectivityNode(__1.getUUID(i7Data.guid), 'knotenkf cn', 'knotenkf');
|
|
1765
|
-
const bay = this.
|
|
1494
|
+
const bay = this.cimModelDefaultValues.getBay(this.integralID2UUID.get(i7Data.kpfeld));
|
|
1766
1495
|
if (bay) {
|
|
1767
1496
|
connectivityNode.connectivityNodeContainerUUID = bay.mrid;
|
|
1768
1497
|
}
|
|
1769
1498
|
else {
|
|
1770
|
-
this.logger.
|
|
1499
|
+
this.logger.debug(`KnotenKf ${i7Data.id} besitzt kein Schaltfeld.`);
|
|
1771
1500
|
}
|
|
1772
|
-
this.
|
|
1773
|
-
this.
|
|
1501
|
+
this.addIdMapping(i7Data.id, connectivityNode.mrid, integral_sql_1.Integral7TableNames.KNOTEN_KF);
|
|
1502
|
+
this.cimModelDefaultValues.addConnectivityNode(connectivityNode);
|
|
1774
1503
|
}
|
|
1775
1504
|
}
|
|
1776
1505
|
else {
|
|
1777
|
-
this.logger.
|
|
1506
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.KNOTEN_KF} ist nicht vorhanden.`);
|
|
1778
1507
|
}
|
|
1779
1508
|
});
|
|
1780
1509
|
}
|
|
@@ -1784,19 +1513,19 @@ class ConverterIntegral7 {
|
|
|
1784
1513
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.KNOTEN_LK, 0, 0, laengskupplungIDs));
|
|
1785
1514
|
for (const i7Data of result) {
|
|
1786
1515
|
const connectivityNode = new __1.ConnectivityNode(__1.generateUUID(), utils_2.getName(i7Data), 'KnotenLk');
|
|
1787
|
-
const bay = this.
|
|
1516
|
+
const bay = this.cimModelDefaultValues.getBay(this.integralID2UUID.get(i7Data.lkupplung));
|
|
1788
1517
|
if (bay) {
|
|
1789
1518
|
connectivityNode.connectivityNodeContainerUUID = bay.mrid;
|
|
1790
1519
|
}
|
|
1791
1520
|
else {
|
|
1792
|
-
this.logger.
|
|
1521
|
+
this.logger.debug(`KnotenLk ${i7Data.id} besitzt kein Schaltfeld.`);
|
|
1793
1522
|
}
|
|
1794
|
-
this.
|
|
1795
|
-
this.
|
|
1523
|
+
this.addIdMapping(i7Data.id, connectivityNode.mrid, integral_sql_1.Integral7TableNames.KNOTEN_LK);
|
|
1524
|
+
this.cimModelDefaultValues.addConnectivityNode(connectivityNode);
|
|
1796
1525
|
}
|
|
1797
1526
|
}
|
|
1798
1527
|
else {
|
|
1799
|
-
this.logger.
|
|
1528
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.KNOTEN_LK} ist nicht vorhanden.`);
|
|
1800
1529
|
}
|
|
1801
1530
|
});
|
|
1802
1531
|
}
|
|
@@ -1808,23 +1537,23 @@ class ConverterIntegral7 {
|
|
|
1808
1537
|
const terminal = new __1.Terminal(__1.generateUUID(), 'T_Schlaufe', String(i7Data.id));
|
|
1809
1538
|
terminal.connected = utils_2.convertToBooleanI7(i7Data.schaltzustand);
|
|
1810
1539
|
terminal.phases = __1.PhaseCode.ABC;
|
|
1811
|
-
this.
|
|
1812
|
-
this.
|
|
1540
|
+
this.addIdMapping(i7Data.id, terminal.mrid, integral_sql_1.Integral7TableNames.SCHLAUFE);
|
|
1541
|
+
this.addIdMapping(i7Data.knotenzw, terminal.mrid, integral_sql_1.Integral7TableNames.SCHLAUFE);
|
|
1813
1542
|
this.inmemoryObjects.set(i7Data.id, terminal);
|
|
1814
1543
|
this.inmemoryObjects.set(i7Data.knotenzw, terminal);
|
|
1815
1544
|
const eknotenUUID = this.integralID2UUID.get(i7Data.eknoten);
|
|
1816
1545
|
if (eknotenUUID) {
|
|
1817
1546
|
terminal.connectivityNodeUUID = eknotenUUID;
|
|
1818
|
-
const connectivityNode = this.
|
|
1547
|
+
const connectivityNode = this.cimModelDefaultValues.getConnectivityNode(eknotenUUID);
|
|
1819
1548
|
this.knotenSpannung.set(connectivityNode === null || connectivityNode === void 0 ? void 0 : connectivityNode.mrid, connectivityNode === null || connectivityNode === void 0 ? void 0 : connectivityNode.getBaseVoltage());
|
|
1820
1549
|
}
|
|
1821
1550
|
else {
|
|
1822
|
-
this.logger.
|
|
1551
|
+
this.logger.debug(`Schlaufe ${i7Data.id} besitzt kein KnotenSO).`);
|
|
1823
1552
|
}
|
|
1824
1553
|
}
|
|
1825
1554
|
}
|
|
1826
1555
|
else {
|
|
1827
|
-
this.logger.
|
|
1556
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.SCHLAUFE} ist nicht vorhanden.`);
|
|
1828
1557
|
}
|
|
1829
1558
|
});
|
|
1830
1559
|
}
|
|
@@ -1833,19 +1562,19 @@ class ConverterIntegral7 {
|
|
|
1833
1562
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_STANDORT)) {
|
|
1834
1563
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.NSG_STANDORT, 0, 0, standortIDs));
|
|
1835
1564
|
for (const i7Data of result) {
|
|
1836
|
-
const
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
}
|
|
1565
|
+
const schema = {
|
|
1566
|
+
netzId: i7Data.standort,
|
|
1567
|
+
variantenNr: i7Data.variantennr,
|
|
1568
|
+
schemaId: i7Data.id,
|
|
1569
|
+
schemaIdParent: undefined,
|
|
1570
|
+
x: i7Data.xrel,
|
|
1571
|
+
y: i7Data.yrel
|
|
1572
|
+
};
|
|
1573
|
+
this.schemaIDSchemastandort.set({ variantenNr: i7Data.variantennr, schemaId: i7Data.id }, schema);
|
|
1845
1574
|
}
|
|
1846
1575
|
}
|
|
1847
1576
|
else {
|
|
1848
|
-
this.logger.
|
|
1577
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_STANDORT} ist nicht vorhanden.`);
|
|
1849
1578
|
}
|
|
1850
1579
|
});
|
|
1851
1580
|
}
|
|
@@ -1854,42 +1583,36 @@ class ConverterIntegral7 {
|
|
|
1854
1583
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO)) {
|
|
1855
1584
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.NSG_KNOTEN_SO, 0, 0, knotenSoIDs));
|
|
1856
1585
|
for (const i7Data of result) {
|
|
1857
|
-
const
|
|
1858
|
-
|
|
1859
|
-
if (
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
this.
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
const diagramUUID = this.integralID2UUID.get(i7Data.variantennr);
|
|
1880
|
-
const diagram = this.cimModel.getDiagram(diagramUUID);
|
|
1881
|
-
if (diagram) {
|
|
1882
|
-
diagramObject.diagramUUID = diagram.mrid;
|
|
1883
|
-
}
|
|
1884
|
-
else {
|
|
1885
|
-
}
|
|
1586
|
+
const diagramUUID = this.i7SchemaID2UUID.get(i7Data.variantennr);
|
|
1587
|
+
const schemaStandordObject = utils_2.getSchemaValue(i7Data.variantennr, i7Data.nsgso, this.schemaIDSchemastandort);
|
|
1588
|
+
if (!diagramUUID || !schemaStandordObject) {
|
|
1589
|
+
continue;
|
|
1590
|
+
}
|
|
1591
|
+
const diagramObject = new __1.DiagramObject(__1.generateUUID(), 'Abzweig');
|
|
1592
|
+
diagramObject.diagramUUID = diagramUUID;
|
|
1593
|
+
if (!this.cimModelDefaultValues.diagrams.has(diagramUUID)) {
|
|
1594
|
+
const d = this.cimModelDefaultValues.getObject(diagramUUID);
|
|
1595
|
+
console.log();
|
|
1596
|
+
}
|
|
1597
|
+
diagramObject.setDiagram(this.cimModelDefaultValues.getDiagram(diagramUUID));
|
|
1598
|
+
const diagramObjectPoint = new __1.DiagramObjectPoint(schemaStandordObject.x + i7Data.xrel, schemaStandordObject.y + i7Data.yrel);
|
|
1599
|
+
diagramObjectPoint.mrid = __1.generateUUID();
|
|
1600
|
+
diagramObjectPoint.diagramObject = diagramObject;
|
|
1601
|
+
diagramObject.addDiagramObjectPoint(diagramObjectPoint);
|
|
1602
|
+
this.cimModelDefaultValues.addDiagramObject(diagramObject);
|
|
1603
|
+
this.cimModelDefaultValues.addDiagramObjectPoint(diagramObjectPoint);
|
|
1604
|
+
const cnUUID = this.integralID2UUID.get(i7Data.knotenso);
|
|
1605
|
+
const cn = this.cimModelDefaultValues.getObject(cnUUID);
|
|
1606
|
+
if (cn) {
|
|
1607
|
+
diagramObject.identifiedObjectUUID = cn.mrid;
|
|
1886
1608
|
}
|
|
1887
1609
|
else {
|
|
1610
|
+
this.logger.debug(`KnotenSo/DiagramObject ${diagramObject.mrid} hat kein PSR-Objekt.`);
|
|
1888
1611
|
}
|
|
1889
1612
|
}
|
|
1890
1613
|
}
|
|
1891
1614
|
else {
|
|
1892
|
-
this.logger.
|
|
1615
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO} ist nicht vorhanden.`);
|
|
1893
1616
|
}
|
|
1894
1617
|
});
|
|
1895
1618
|
}
|
|
@@ -1898,26 +1621,19 @@ class ConverterIntegral7 {
|
|
|
1898
1621
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGE)) {
|
|
1899
1622
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.NSG_SCHALTANLAGE, 0, 0, saIDs));
|
|
1900
1623
|
for (const i7Data of result) {
|
|
1901
|
-
const
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
}
|
|
1910
|
-
if (this.integralNsgStandort.has(saNsgImpl.nsgsoid)) {
|
|
1911
|
-
saNsgImpl.nsgso = this.integralNsgStandort.get(saNsgImpl.nsgsoid);
|
|
1912
|
-
saNsgImpl.nsgso.schaltanlagenNsg.push(saNsgImpl);
|
|
1913
|
-
}
|
|
1914
|
-
else {
|
|
1915
|
-
this.logger.info(`SchaltanlageNSG ${i7Data.id} hat keine standortNsg Instanz.`);
|
|
1916
|
-
}
|
|
1624
|
+
const schema = {
|
|
1625
|
+
netzId: i7Data.schaltanlage,
|
|
1626
|
+
variantenNr: i7Data.variantennr,
|
|
1627
|
+
schemaId: i7Data.id,
|
|
1628
|
+
schemaIdParent: i7Data.nsgso,
|
|
1629
|
+
x: i7Data.xrel,
|
|
1630
|
+
y: i7Data.yrel
|
|
1631
|
+
};
|
|
1632
|
+
this.schemaIDSchaltanlage.set({ variantenNr: i7Data.variantennr, schemaId: i7Data.id }, schema);
|
|
1917
1633
|
}
|
|
1918
1634
|
}
|
|
1919
1635
|
else {
|
|
1920
|
-
this.logger.
|
|
1636
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGE} ist nicht vorhanden.`);
|
|
1921
1637
|
}
|
|
1922
1638
|
});
|
|
1923
1639
|
}
|
|
@@ -1926,160 +1642,19 @@ class ConverterIntegral7 {
|
|
|
1926
1642
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT)) {
|
|
1927
1643
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.NSG_SCHALTANLAGENABSCHNITT, 0, 0, schaltanlagenabschnittIDs));
|
|
1928
1644
|
for (const i7Data of result) {
|
|
1929
|
-
const
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
}
|
|
1938
|
-
if (saabNsgImpl.saabschnitt && saabNsgImpl.saabschnitt.schaltanlage) {
|
|
1939
|
-
if (saabNsgImpl.saabschnitt.schaltanlage.schaltanlageNsg) {
|
|
1940
|
-
saabNsgImpl.saabschnitt.schaltanlage.schaltanlageNsg.saabNsg.push(saabNsgImpl);
|
|
1941
|
-
saabNsgImpl.nsgsa = saabNsgImpl.saabschnitt.schaltanlage.schaltanlageNsg;
|
|
1942
|
-
}
|
|
1943
|
-
}
|
|
1944
|
-
}
|
|
1945
|
-
}
|
|
1946
|
-
else {
|
|
1947
|
-
this.logger.info(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO} ist nicht vorhanden.`);
|
|
1948
|
-
}
|
|
1949
|
-
});
|
|
1950
|
-
}
|
|
1951
|
-
convertSchemaSammelschienenAbschnitte() {
|
|
1952
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
1953
|
-
for (const sa of this.integralSchaltanlagen.values()) {
|
|
1954
|
-
const totalSlots = sa.getTotalSlots();
|
|
1955
|
-
if (sa.schaltanlageNsg) {
|
|
1956
|
-
const saAusrichtung = sa.schaltanlageNsg.ausrichtung;
|
|
1957
|
-
for (const saab of sa.saab) {
|
|
1958
|
-
for (const ssab of saab.ssab) {
|
|
1959
|
-
const cnUUID = this.integralID2UUID.get(ssab.id);
|
|
1960
|
-
const connectivityNode = this.cimModel.getConnectivityNode(cnUUID);
|
|
1961
|
-
const standortPoint = sa.standort.getPoint();
|
|
1962
|
-
const saPoint = sa.getPoint();
|
|
1963
|
-
const ssabPoint = standortPoint.translate(saPoint.x, saPoint.y);
|
|
1964
|
-
const offset = saab.schaltanlagenabschnittNsg.nslots;
|
|
1965
|
-
const laenge = saab.schaltanlagenabschnittNsg.laenge;
|
|
1966
|
-
const delta = sa.getDelta(saab);
|
|
1967
|
-
const hoehe = saab.ssab.length * 8;
|
|
1968
|
-
const diagramObject = new __1.DiagramObject(__1.getUUID(''), 'SSAB Diagram');
|
|
1969
|
-
const points = [];
|
|
1970
|
-
if (saAusrichtung === 0) {
|
|
1971
|
-
points.push(new Point_1.Point(ssabPoint.x - 8 + (offset * 16), ssabPoint.y + 4 - hoehe + ssab.pos * 8 + delta));
|
|
1972
|
-
points.push(new Point_1.Point(ssabPoint.x - 8 + (offset * 16) + (laenge * 16), ssabPoint.y + 4 - hoehe + ssab.pos * 8 + delta));
|
|
1973
|
-
}
|
|
1974
|
-
else if (saAusrichtung === 1) {
|
|
1975
|
-
points.push(new Point_1.Point(ssabPoint.x + 4 - hoehe + ssab.pos * 8 + delta, ssabPoint.y - 8 + (offset * 16)));
|
|
1976
|
-
points.push(new Point_1.Point(ssabPoint.x + 4 - hoehe + ssab.pos * 8 + delta, ssabPoint.y - 8 + (offset * 16) + (laenge * 16)));
|
|
1977
|
-
}
|
|
1978
|
-
else if (saAusrichtung === 2) {
|
|
1979
|
-
points.push(new Point_1.Point(ssabPoint.x - 8 + (offset * 16), ssabPoint.y + 4 - hoehe + ssab.pos * 8 + delta));
|
|
1980
|
-
points.push(new Point_1.Point(ssabPoint.x - 8 + (offset * 16) + (laenge * 16), ssabPoint.y + 4 - hoehe + ssab.pos * 8 + delta));
|
|
1981
|
-
}
|
|
1982
|
-
else if (saAusrichtung === 3) {
|
|
1983
|
-
points.push(new Point_1.Point(ssabPoint.x + 4 - hoehe + ssab.pos * 8 + delta, ssabPoint.y - 8 + (totalSlots * 16) - (offset * 16)));
|
|
1984
|
-
points.push(new Point_1.Point(ssabPoint.x + 4 - hoehe + ssab.pos * 8 + delta, ssabPoint.y - 8 + (totalSlots * 16) - (offset * 16 + laenge * 16)));
|
|
1985
|
-
}
|
|
1986
|
-
utils_schema_1.createDiagramObjectPoints(diagramObject, points);
|
|
1987
|
-
diagramObject.identifiedObjectUUID = connectivityNode.mrid;
|
|
1988
|
-
this.cimModel.addDiagramObject(diagramObject);
|
|
1989
|
-
const diagramUUID = this.integralID2UUID.get(sa.schaltanlageNsg.variantennr);
|
|
1990
|
-
const diagram = this.cimModel.getDiagram(diagramUUID);
|
|
1991
|
-
if (diagram) {
|
|
1992
|
-
diagramObject.diagramUUID = diagram.mrid;
|
|
1993
|
-
}
|
|
1994
|
-
else {
|
|
1995
|
-
}
|
|
1996
|
-
}
|
|
1997
|
-
}
|
|
1998
|
-
}
|
|
1999
|
-
}
|
|
2000
|
-
});
|
|
2001
|
-
}
|
|
2002
|
-
convertSchemaSchaltfelder(schaltfeldIDs) {
|
|
2003
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
2004
|
-
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_SCHALTFELD)) {
|
|
2005
|
-
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.NSG_SCHALTFELD, 0, 0, schaltfeldIDs));
|
|
2006
|
-
for (const i7Data of result) {
|
|
2007
|
-
const sfNSG = new SchaltfeldNsg_1.SchaltfeldNsgImpl(i7Data);
|
|
2008
|
-
sfNSG.schaltfeld = this.integralSchaltfelder.get(sfNSG.schaltfeldid);
|
|
2009
|
-
if (sfNSG.schaltfeld) {
|
|
2010
|
-
sfNSG.schaltfeld.schaltfeldNsg = sfNSG;
|
|
2011
|
-
}
|
|
2012
|
-
sfNSG.nsgsaa = this.integralNsgSchaltanlagenabschnitt.get(sfNSG.nsgsaaid);
|
|
2013
|
-
this.integralNsgSchaltfelder.set(i7Data.id, sfNSG);
|
|
2014
|
-
const sf = sfNSG.schaltfeld;
|
|
2015
|
-
if (sf) {
|
|
2016
|
-
const standort = sf.getStandort();
|
|
2017
|
-
const sa = sf.getSA();
|
|
2018
|
-
const saab = sf.getSAAB();
|
|
2019
|
-
if (standort && sa && saab) {
|
|
2020
|
-
const pointSt = standort.getPoint();
|
|
2021
|
-
const pointSaRel = sa.getPoint();
|
|
2022
|
-
const pointSa = pointSt.translate(pointSaRel.x, pointSaRel.y);
|
|
2023
|
-
const slotOffset = saab.getSlotOffset();
|
|
2024
|
-
const saAusrichtung = sa.schaltanlageNsg.ausrichtung;
|
|
2025
|
-
const deltaAusrichtung = sfNSG.deltaausrichtung;
|
|
2026
|
-
const slotnummer = sfNSG.slotnummer;
|
|
2027
|
-
const d = 4;
|
|
2028
|
-
const deltaSSAB = sa.getDelta(saab);
|
|
2029
|
-
const posSSAB = sfNSG.schaltfeld.getPosSSAB(saAusrichtung, deltaAusrichtung);
|
|
2030
|
-
let pointLinksOben, pointRechtsUnten;
|
|
2031
|
-
if (saAusrichtung === 0) {
|
|
2032
|
-
const pointSf = pointSa.translate(16 * (slotnummer + slotOffset) - 16, 0);
|
|
2033
|
-
if (deltaAusrichtung === 1) {
|
|
2034
|
-
pointSf.y = pointSf.y + 65 + deltaSSAB;
|
|
2035
|
-
pointRechtsUnten = pointSf.translate(32, 0);
|
|
2036
|
-
pointLinksOben = pointSf.translate(0, -sfNSG.hoehe);
|
|
2037
|
-
}
|
|
2038
|
-
else {
|
|
2039
|
-
pointSf.y = pointSf.y - sfNSG.hoehe + deltaSSAB;
|
|
2040
|
-
pointLinksOben = pointSf.translate(0, 0);
|
|
2041
|
-
pointRechtsUnten = pointSf.translate(32, sfNSG.hoehe);
|
|
2042
|
-
}
|
|
2043
|
-
}
|
|
2044
|
-
else if (saAusrichtung === 1) {
|
|
2045
|
-
}
|
|
2046
|
-
else if (saAusrichtung === 2) {
|
|
2047
|
-
}
|
|
2048
|
-
else if (saAusrichtung === 3) {
|
|
2049
|
-
}
|
|
2050
|
-
if (pointLinksOben && pointRechtsUnten) {
|
|
2051
|
-
const points = [];
|
|
2052
|
-
points.push(new Point_1.Point(pointLinksOben.x, pointLinksOben.y));
|
|
2053
|
-
points.push(new Point_1.Point(pointRechtsUnten.x, pointLinksOben.y));
|
|
2054
|
-
points.push(new Point_1.Point(pointRechtsUnten.x, pointRechtsUnten.y));
|
|
2055
|
-
points.push(new Point_1.Point(pointLinksOben.x, pointRechtsUnten.y));
|
|
2056
|
-
points.push(new Point_1.Point(pointLinksOben.x, pointLinksOben.y));
|
|
2057
|
-
points.push(new Point_1.Point(pointLinksOben.x + 16, pointLinksOben.y));
|
|
2058
|
-
points.push(new Point_1.Point(pointLinksOben.x + 16, pointRechtsUnten.y));
|
|
2059
|
-
const diagramObject = new __1.DiagramObject(__1.getUUID(''), 'Schaltfeld');
|
|
2060
|
-
const bayUUID = this.integralID2UUID.get(sf.id);
|
|
2061
|
-
const bay = this.cimModel.getBay(bayUUID);
|
|
2062
|
-
if (bay) {
|
|
2063
|
-
utils_schema_1.createDiagramObjectPoints(diagramObject, points);
|
|
2064
|
-
diagramObject.identifiedObjectUUID = bay.mrid;
|
|
2065
|
-
const diagramUUID = this.integralID2UUID.get(sa.schaltanlageNsg.variantennr);
|
|
2066
|
-
const diagram = this.cimModel.getDiagram(diagramUUID);
|
|
2067
|
-
if (diagram) {
|
|
2068
|
-
diagramObject.diagramUUID = diagram.mrid;
|
|
2069
|
-
}
|
|
2070
|
-
else {
|
|
2071
|
-
}
|
|
2072
|
-
}
|
|
2073
|
-
else {
|
|
2074
|
-
this.logger.info(`DiagramObject Schaltfeld ${diagramObject.mrid} mit der VariantenNr ${sa.schaltanlageNsg.variantennr} hat kein CIM Schaltfeld ${sf.id} ${bayUUID}.`);
|
|
2075
|
-
}
|
|
2076
|
-
}
|
|
2077
|
-
}
|
|
2078
|
-
}
|
|
1645
|
+
const schema = {
|
|
1646
|
+
netzId: i7Data.saabschnitt,
|
|
1647
|
+
variantenNr: i7Data.variantennr,
|
|
1648
|
+
schemaId: i7Data.id,
|
|
1649
|
+
schemaIdParent: i7Data.nsgsa,
|
|
1650
|
+
x: i7Data.xrel,
|
|
1651
|
+
y: i7Data.yrel
|
|
1652
|
+
};
|
|
1653
|
+
this.schemaIDSchaltanlagenabschnitt.set({ variantenNr: i7Data.variantennr, schemaId: i7Data.id }, schema);
|
|
2079
1654
|
}
|
|
2080
1655
|
}
|
|
2081
1656
|
else {
|
|
2082
|
-
this.logger.
|
|
1657
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT} ist nicht vorhanden.`);
|
|
2083
1658
|
}
|
|
2084
1659
|
});
|
|
2085
1660
|
}
|
|
@@ -2090,43 +1665,43 @@ class ConverterIntegral7 {
|
|
|
2090
1665
|
for (const i7Data of result) {
|
|
2091
1666
|
const junction = new __1.Junction(__1.getUUID(i7Data.guid), `${i7Data.bezeichner}/${i7Data.id}`, 'JNCT', 'starre Verbindung');
|
|
2092
1667
|
const schaltzustand = utils_2.convertToBooleanI7(i7Data.schaltzustand);
|
|
2093
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
2094
|
-
const cnStart = this.
|
|
2095
|
-
const cnZiel = this.
|
|
1668
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(this.integralID2UUID.get(i7Data.seliste)));
|
|
1669
|
+
const cnStart = this.cimModelDefaultValues.getConnectivityNode(this.integralID2UUID.get(i7Data.aknoten));
|
|
1670
|
+
const cnZiel = this.cimModelDefaultValues.getConnectivityNode(this.integralID2UUID.get(i7Data.eknoten));
|
|
2096
1671
|
if (equipmentContainer) {
|
|
2097
1672
|
junction.equipmentContainerUUID = equipmentContainer.mrid;
|
|
2098
1673
|
}
|
|
2099
1674
|
else {
|
|
2100
|
-
this.logger.
|
|
1675
|
+
this.logger.debug(`Starre verbindung ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
2101
1676
|
}
|
|
2102
1677
|
if (cnStart) {
|
|
2103
|
-
const terminal = __1.createConnection(this.
|
|
1678
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, junction, cnStart, __1.PhaseCode.ABC, 1);
|
|
2104
1679
|
if (schaltzustand === false) {
|
|
2105
1680
|
terminal.connected = schaltzustand;
|
|
2106
1681
|
}
|
|
2107
1682
|
}
|
|
2108
1683
|
else {
|
|
2109
|
-
this.logger.
|
|
1684
|
+
this.logger.debug(`Starre verbindung ${i7Data.id} besitzt keinen Anfangsknoten.`);
|
|
2110
1685
|
}
|
|
2111
1686
|
if (cnZiel) {
|
|
2112
|
-
const terminal = __1.createConnection(this.
|
|
1687
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, junction, cnZiel, __1.PhaseCode.ABC, 2);
|
|
2113
1688
|
if (schaltzustand === false) {
|
|
2114
1689
|
terminal.connected = schaltzustand;
|
|
2115
1690
|
}
|
|
2116
1691
|
}
|
|
2117
1692
|
else {
|
|
2118
|
-
this.logger.
|
|
1693
|
+
this.logger.debug(`Starre verbindung ${i7Data.id} besitzt keinen Zielknoten.`);
|
|
2119
1694
|
}
|
|
2120
|
-
const baseVoltage = utils_2.getTerminalUn(this.
|
|
1695
|
+
const baseVoltage = utils_2.getTerminalUn(this.cimModelDefaultValues, junction);
|
|
2121
1696
|
if (baseVoltage) {
|
|
2122
1697
|
junction.baseVoltageUUID = baseVoltage.mrid;
|
|
2123
1698
|
}
|
|
2124
|
-
this.
|
|
2125
|
-
this.
|
|
1699
|
+
this.addIdMapping(i7Data.id, junction.mrid, integral_sql_1.Integral7TableNames.KNOTEN_STARR);
|
|
1700
|
+
this.cimModelDefaultValues.addJunction(junction);
|
|
2126
1701
|
}
|
|
2127
1702
|
}
|
|
2128
1703
|
else {
|
|
2129
|
-
this.logger.
|
|
1704
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.KNOTEN_STARR} ist nicht vorhanden.`);
|
|
2130
1705
|
}
|
|
2131
1706
|
});
|
|
2132
1707
|
}
|
|
@@ -2146,8 +1721,8 @@ class ConverterIntegral7 {
|
|
|
2146
1721
|
const equivalentBranch = new __1.EquivalentBranch(__1.getUUID(i7Data.guid), i7Data.bezeichner, i7Data.kurzname, i7Schluessel);
|
|
2147
1722
|
const ur1 = utils_2.getU(i7Data.ur1, defaultValuesConfig.DefaultVoltage);
|
|
2148
1723
|
const ur2 = utils_2.getU(i7Data.ur2, defaultValuesConfig.DefaultVoltage);
|
|
2149
|
-
const baseVoltageUr1 = __1.createBaseVoltageIfNotExists(this.
|
|
2150
|
-
const baseVoltageUr2 = __1.createBaseVoltageIfNotExists(this.
|
|
1724
|
+
const baseVoltageUr1 = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, ur1);
|
|
1725
|
+
const baseVoltageUr2 = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, ur2);
|
|
2151
1726
|
if (baseVoltageUr1) {
|
|
2152
1727
|
equivalentBranch.baseVoltage = baseVoltageUr1;
|
|
2153
1728
|
}
|
|
@@ -2156,53 +1731,24 @@ class ConverterIntegral7 {
|
|
|
2156
1731
|
}
|
|
2157
1732
|
const start = this.inmemoryObjects.get(i7Data.aknoten);
|
|
2158
1733
|
if (start) {
|
|
2159
|
-
__1.createConnection(this.
|
|
1734
|
+
__1.createConnection(this.cimModelDefaultValues, equivalentBranch, start, __1.PhaseCode.ABC, 1);
|
|
2160
1735
|
}
|
|
2161
1736
|
else {
|
|
2162
|
-
this.logger.
|
|
1737
|
+
this.logger.debug(`Leitung ${i7Data.id} ${equivalentBranch.mrid} besitzt keinen Anfangsknoten. ${i7Data.aknoten} ${this.integralID2UUID.get(i7Data.aknoten)}`);
|
|
2163
1738
|
}
|
|
2164
1739
|
const target = this.inmemoryObjects.get(i7Data.eknoten);
|
|
2165
1740
|
if (target) {
|
|
2166
|
-
__1.createConnection(this.
|
|
1741
|
+
__1.createConnection(this.cimModelDefaultValues, equivalentBranch, target, __1.PhaseCode.ABC, 2);
|
|
2167
1742
|
}
|
|
2168
1743
|
else {
|
|
2169
|
-
this.logger.
|
|
1744
|
+
this.logger.debug(`Leitung ${i7Data.id} ${equivalentBranch.mrid} besitzt keinen Zielknoten.`);
|
|
2170
1745
|
}
|
|
2171
|
-
this.
|
|
2172
|
-
this.
|
|
1746
|
+
this.cimModelDefaultValues.addEquivalentBranch(equivalentBranch);
|
|
1747
|
+
this.addIdMapping(i7Data.id, equivalentBranch.mrid, integral_sql_1.Integral7TableNames.ERSATZLAENGSZWEIG);
|
|
2173
1748
|
}
|
|
2174
1749
|
}
|
|
2175
1750
|
else {
|
|
2176
|
-
this.logger.
|
|
2177
|
-
}
|
|
2178
|
-
});
|
|
2179
|
-
}
|
|
2180
|
-
convertStromkreise() {
|
|
2181
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
2182
|
-
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.LEITUNG)) {
|
|
2183
|
-
const result = yield this.queryFunctionWrapper(`SELECT DISTINCT kurzname, bezeichner FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LEITUNG]}`);
|
|
2184
|
-
for (const i7Data of result) {
|
|
2185
|
-
let line = utils_2.getLineByAttribute(this.cimModel, 'name', i7Data.bezeichner);
|
|
2186
|
-
if (!line) {
|
|
2187
|
-
line = new __1.Line(__1.generateUUID());
|
|
2188
|
-
line.name = i7Data.bezeichner ? i7Data.bezeichner : 'Stromkreis_' + i7Data.kurzname;
|
|
2189
|
-
line.shortName = i7Data.kurzname;
|
|
2190
|
-
const region = utils_1.createIfNotExitsGeoregionByName(this.cimModel, 'ENTSO-E');
|
|
2191
|
-
const subregion = utils_1.createIfNotExitsSubGeoregionByName(this.cimModel, 'Deutschland', region);
|
|
2192
|
-
line.regionUUID = subregion.mrid;
|
|
2193
|
-
const i7Schluessel = integral_prefix_1.LEITUNG_PRAEFIX +
|
|
2194
|
-
utils_2.ueberpruefeZeichenkette(i7Data.ukz) +
|
|
2195
|
-
integral_prefix_1.MITTIGER_PUNKT +
|
|
2196
|
-
utils_2.ueberpruefeZeichenkette(i7Data.kurzname) +
|
|
2197
|
-
integral_prefix_1.MITTIGER_PUNKT +
|
|
2198
|
-
utils_2.ueberpruefeZeichenkette(i7Data.bezeichner);
|
|
2199
|
-
line.description = i7Schluessel;
|
|
2200
|
-
this.cimModel.addLine(line);
|
|
2201
|
-
}
|
|
2202
|
-
}
|
|
2203
|
-
}
|
|
2204
|
-
else {
|
|
2205
|
-
this.logger.info(`Tabelle ${integral_sql_1.Integral7TableNames.LEITUNG} ist nicht vorhanden.`);
|
|
1751
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.ERSATZLAENGSZWEIG} ist nicht vorhanden.`);
|
|
2206
1752
|
}
|
|
2207
1753
|
});
|
|
2208
1754
|
}
|
|
@@ -2213,30 +1759,35 @@ class ConverterIntegral7 {
|
|
|
2213
1759
|
for (const i7Data of result) {
|
|
2214
1760
|
const typ = new EVWireInfo_1.EVWireInfo(__1.generateUUID(), i7Data.name);
|
|
2215
1761
|
this.setWireInfoProperties(typ, i7Data, 'Freileitung');
|
|
2216
|
-
this.
|
|
1762
|
+
this.cimModelDefaultValues.addEVWireInfo(typ);
|
|
2217
1763
|
}
|
|
2218
1764
|
}
|
|
2219
1765
|
else {
|
|
2220
|
-
this.logger.
|
|
1766
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TYP_FREILEITUNG} ist nicht vorhanden.`);
|
|
2221
1767
|
}
|
|
2222
1768
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TYP_KABEL)) {
|
|
2223
1769
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.TYP_KABEL, 0, 0, []));
|
|
2224
1770
|
for (const i7Data of result) {
|
|
2225
1771
|
const typ = new EVWireInfo_1.EVWireInfo(__1.generateUUID(), i7Data.name);
|
|
2226
1772
|
this.setWireInfoProperties(typ, i7Data, 'Kabel');
|
|
2227
|
-
this.
|
|
1773
|
+
this.cimModelDefaultValues.addEVWireInfo(typ);
|
|
2228
1774
|
}
|
|
2229
1775
|
}
|
|
2230
1776
|
else {
|
|
2231
|
-
this.logger.
|
|
1777
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TYP_KABEL} ist nicht vorhanden.`);
|
|
2232
1778
|
}
|
|
2233
1779
|
});
|
|
2234
1780
|
}
|
|
2235
|
-
convertLeitungen(limit, offset) {
|
|
1781
|
+
convertLeitungen(limit, offset, defaultValuesConfig) {
|
|
2236
1782
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
2237
1783
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.LEITUNG)) {
|
|
2238
1784
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.LEITUNG, limit, offset, []));
|
|
1785
|
+
const leitungIDs = result.map(elem => elem.id);
|
|
1786
|
+
const leitungStromkreisabschnitt = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.STROMKREISABSCHNITT, limit, offset, leitungIDs));
|
|
2239
1787
|
for (const i7Data of result) {
|
|
1788
|
+
const stromkreisabschnitte = leitungStromkreisabschnitt.filter(elem => elem.leitung === i7Data.id);
|
|
1789
|
+
if (!(stromkreisabschnitte === null || stromkreisabschnitte === void 0 ? void 0 : stromkreisabschnitte.length))
|
|
1790
|
+
continue;
|
|
2240
1791
|
const leitung = new Leitung_1.LeitungImpl(i7Data);
|
|
2241
1792
|
this.integralLeitungen.set(i7Data.id, leitung);
|
|
2242
1793
|
const i7Schluessel = integral_prefix_1.LEITUNG_PRAEFIX +
|
|
@@ -2253,42 +1804,79 @@ class ConverterIntegral7 {
|
|
|
2253
1804
|
utils_2.ueberpruefeZeichenkette(i7Data.bezeichner) +
|
|
2254
1805
|
integral_prefix_1.MITTIGER_PUNKT +
|
|
2255
1806
|
utils_2.ueberpruefeZeichenkette(i7Data.stkabname);
|
|
2256
|
-
const
|
|
2257
|
-
this.
|
|
2258
|
-
this.
|
|
2259
|
-
|
|
2260
|
-
|
|
1807
|
+
const line = new __1.Line(__1.getUUID(i7Data.guid), name);
|
|
1808
|
+
const region = utils_1.createIfNotExitsGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.GeographicalRegion.name);
|
|
1809
|
+
const subregion = utils_1.createIfNotExitsSubGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.SubGeographicalRegion.name, region);
|
|
1810
|
+
line.regionUUID = subregion.mrid;
|
|
1811
|
+
const acLineSegments = [];
|
|
1812
|
+
for (const stk of stromkreisabschnitte) {
|
|
1813
|
+
const acLineSegment = new __1.ACLineSegment(__1.generateUUID(), name, i7Data.stkabname, i7Schluessel);
|
|
1814
|
+
this.setACLineSegmentProperties(acLineSegment, stk, stk.nametyp, defaultValuesConfig);
|
|
1815
|
+
acLineSegment.description = stk.nametyp;
|
|
2261
1816
|
acLineSegment.equipmentContainerUUID = line.mrid;
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
this.
|
|
1817
|
+
line.equipmentsUUIDS.push(acLineSegment.mrid);
|
|
1818
|
+
acLineSegments.push(acLineSegment);
|
|
1819
|
+
this.addIdMapping(stk.id, acLineSegment.mrid, integral_sql_1.Integral7TableNames.LEITUNG);
|
|
1820
|
+
this.cimModelDefaultValues.addACLineSegment(acLineSegment);
|
|
1821
|
+
}
|
|
1822
|
+
this.cimModelDefaultValues.addLine(line);
|
|
1823
|
+
const anzahl = acLineSegments.length;
|
|
1824
|
+
for (let i = 0; i < anzahl - 1; i++) {
|
|
1825
|
+
const cn = new __1.ConnectivityNode(__1.generateUUID(), 'CN_Lt');
|
|
1826
|
+
const acLineSegment1 = acLineSegments[i];
|
|
1827
|
+
const t1 = __1.createConnection(this.cimModelDefaultValues, acLineSegment1, cn, __1.PhaseCode.ABC);
|
|
1828
|
+
this.setACLineSegmentCurrentLimt(acLineSegment1, acLineSegment1.description, t1.mrid);
|
|
1829
|
+
const acLineSegment2 = acLineSegments[i + 1];
|
|
1830
|
+
const t2 = __1.createConnection(this.cimModelDefaultValues, acLineSegment2, cn, __1.PhaseCode.ABC);
|
|
1831
|
+
this.setACLineSegmentCurrentLimt(acLineSegment2, acLineSegment2.description, t2.mrid);
|
|
1832
|
+
cn.connectivityNodeContainerUUID = acLineSegment1.equipmentContainerUUID;
|
|
1833
|
+
this.cimModelDefaultValues.addConnectivityNode(cn);
|
|
2265
1834
|
}
|
|
2266
1835
|
const start = this.inmemoryObjects.get(i7Data.aknoten);
|
|
1836
|
+
const acLineSegmentStart = acLineSegments[0];
|
|
2267
1837
|
if (start) {
|
|
2268
|
-
const terminal = __1.createConnection(this.
|
|
2269
|
-
|
|
1838
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, acLineSegmentStart, start, __1.PhaseCode.ABC, acLineSegmentStart.terminalsUUIDs.length + 1);
|
|
1839
|
+
this.setACLineSegmentCurrentLimt(acLineSegmentStart, acLineSegmentStart.description, terminal.mrid);
|
|
1840
|
+
if (!acLineSegmentStart.baseVoltage) {
|
|
2270
1841
|
const baseVoltage = this.knotenSpannung.get(terminal.connectivityNodeUUID);
|
|
2271
|
-
|
|
1842
|
+
acLineSegmentStart.baseVoltage = baseVoltage;
|
|
2272
1843
|
}
|
|
2273
1844
|
}
|
|
2274
1845
|
else {
|
|
2275
|
-
this.logger.
|
|
1846
|
+
this.logger.debug(`Leitung ${i7Data.id} ${acLineSegmentStart.mrid} besitzt keinen Anfangsknoten. ${i7Data.aknoten} ${this.integralID2UUID.get(i7Data.aknoten)}`);
|
|
2276
1847
|
}
|
|
2277
1848
|
const target = this.inmemoryObjects.get(i7Data.eknoten);
|
|
1849
|
+
const acLineSegmentZiel = acLineSegments[anzahl - 1];
|
|
2278
1850
|
if (target) {
|
|
2279
|
-
const terminal = __1.createConnection(this.
|
|
2280
|
-
|
|
1851
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, acLineSegmentZiel, target, __1.PhaseCode.ABC, acLineSegmentStart.terminalsUUIDs.length + 2);
|
|
1852
|
+
this.setACLineSegmentCurrentLimt(acLineSegmentZiel, acLineSegmentZiel.description, terminal.mrid);
|
|
1853
|
+
if (!acLineSegmentZiel.baseVoltage) {
|
|
2281
1854
|
const baseVoltage = this.knotenSpannung.get(terminal.connectivityNodeUUID);
|
|
2282
|
-
|
|
1855
|
+
acLineSegmentZiel.baseVoltage = baseVoltage;
|
|
2283
1856
|
}
|
|
2284
1857
|
}
|
|
2285
1858
|
else {
|
|
2286
|
-
this.logger.
|
|
1859
|
+
this.logger.debug(`Leitung ${i7Data.id} ${acLineSegmentZiel.mrid} besitzt keinen Zielknoten.`);
|
|
1860
|
+
}
|
|
1861
|
+
const stkBaseVoltage = acLineSegments.find(elem => elem.baseVoltage !== undefined);
|
|
1862
|
+
if (!stkBaseVoltage) {
|
|
1863
|
+
this.logger.error(`Leitung ${i7Data.id}: Spannung konnte nicht bestimmt werden.`);
|
|
1864
|
+
continue;
|
|
1865
|
+
}
|
|
1866
|
+
for (const acLineSegment of acLineSegments) {
|
|
1867
|
+
acLineSegment.baseVoltage = stkBaseVoltage.baseVoltage;
|
|
1868
|
+
for (let i = 0; i < acLineSegment.terminalsUUIDs.length; i++) {
|
|
1869
|
+
let terminal = this.cimModelDefaultValues.getTerminal(acLineSegment.terminalsUUIDs[i]);
|
|
1870
|
+
if (!terminal)
|
|
1871
|
+
terminal = this.inmemoryObjects.get(i7Data.aknoten);
|
|
1872
|
+
if (terminal)
|
|
1873
|
+
terminal.sequenceNumber = i + 1;
|
|
1874
|
+
}
|
|
2287
1875
|
}
|
|
2288
1876
|
}
|
|
2289
1877
|
}
|
|
2290
1878
|
else {
|
|
2291
|
-
this.logger.
|
|
1879
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.LEITUNG} ist nicht vorhanden.`);
|
|
2292
1880
|
}
|
|
2293
1881
|
});
|
|
2294
1882
|
}
|
|
@@ -2297,32 +1885,32 @@ class ConverterIntegral7 {
|
|
|
2297
1885
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.FREILEITUNG)) {
|
|
2298
1886
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.FREILEITUNG, 0, 0, leitungsIDs));
|
|
2299
1887
|
for (const i7Data of result) {
|
|
2300
|
-
const acLineSegment = this.
|
|
1888
|
+
const acLineSegment = this.cimModelDefaultValues.getACLineSegment(this.integralID2UUID.get(i7Data.leitung));
|
|
2301
1889
|
if (acLineSegment) {
|
|
2302
1890
|
this.setACLineSegmentProperties(acLineSegment, i7Data, 'Freileitung', defaultValuesConfig);
|
|
2303
1891
|
}
|
|
2304
1892
|
else {
|
|
2305
|
-
this.logger.
|
|
1893
|
+
this.logger.debug(`Freileitung ${i7Data.id} besitzt kein Leitungsobjekt.`);
|
|
2306
1894
|
}
|
|
2307
1895
|
}
|
|
2308
1896
|
}
|
|
2309
1897
|
else {
|
|
2310
|
-
this.logger.
|
|
1898
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TYP_FREILEITUNG} ist nicht vorhanden.`);
|
|
2311
1899
|
}
|
|
2312
1900
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.KABEL)) {
|
|
2313
1901
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.KABEL, 0, 0, leitungsIDs));
|
|
2314
1902
|
for (const i7Data of result) {
|
|
2315
|
-
const acLineSegment = this.
|
|
1903
|
+
const acLineSegment = this.cimModelDefaultValues.getACLineSegment(this.integralID2UUID.get(i7Data.leitung));
|
|
2316
1904
|
if (acLineSegment) {
|
|
2317
1905
|
this.setACLineSegmentProperties(acLineSegment, i7Data, 'Kabel', defaultValuesConfig);
|
|
2318
1906
|
}
|
|
2319
1907
|
else {
|
|
2320
|
-
this.logger.
|
|
1908
|
+
this.logger.debug(`Kabel ${i7Data.id} besitzt kein Leitungsobjekt.`);
|
|
2321
1909
|
}
|
|
2322
1910
|
}
|
|
2323
1911
|
}
|
|
2324
1912
|
else {
|
|
2325
|
-
this.logger.
|
|
1913
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TYP_FREILEITUNG} ist nicht vorhanden.`);
|
|
2326
1914
|
}
|
|
2327
1915
|
});
|
|
2328
1916
|
}
|
|
@@ -2346,13 +1934,13 @@ class ConverterIntegral7 {
|
|
|
2346
1934
|
this.setTransformerEndInfoProperties(typWicklung2, i7Data, 2);
|
|
2347
1935
|
typWicklung2.powerTransformerInfo = typTrafo;
|
|
2348
1936
|
typTrafo.addTransformerEndInfo(typWicklung2);
|
|
2349
|
-
this.
|
|
2350
|
-
this.
|
|
2351
|
-
this.
|
|
1937
|
+
this.cimModelDefaultValues.addEvPowerTransformerInfo(typTrafo);
|
|
1938
|
+
this.cimModelDefaultValues.addEvPowerTransformerEndInfo(typWicklung1);
|
|
1939
|
+
this.cimModelDefaultValues.addEvPowerTransformerEndInfo(typWicklung2);
|
|
2352
1940
|
}
|
|
2353
1941
|
}
|
|
2354
1942
|
else {
|
|
2355
|
-
this.logger.
|
|
1943
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TYP_TRAFO2W} ist nicht vorhanden.`);
|
|
2356
1944
|
}
|
|
2357
1945
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TYP_TRAFO3W)) {
|
|
2358
1946
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.TYP_TRAFO3W, 0, 0, []));
|
|
@@ -2381,18 +1969,18 @@ class ConverterIntegral7 {
|
|
|
2381
1969
|
this.setTransformerEndInfoProperties(typWicklung3, i7Data, 3);
|
|
2382
1970
|
typWicklung3.powerTransformerInfo = typTrafo;
|
|
2383
1971
|
typTrafo.addTransformerEndInfo(typWicklung3);
|
|
2384
|
-
this.
|
|
2385
|
-
this.
|
|
2386
|
-
this.
|
|
2387
|
-
this.
|
|
1972
|
+
this.cimModelDefaultValues.addEvPowerTransformerInfo(typTrafo);
|
|
1973
|
+
this.cimModelDefaultValues.addEvPowerTransformerEndInfo(typWicklung1);
|
|
1974
|
+
this.cimModelDefaultValues.addEvPowerTransformerEndInfo(typWicklung2);
|
|
1975
|
+
this.cimModelDefaultValues.addEvPowerTransformerEndInfo(typWicklung3);
|
|
2388
1976
|
}
|
|
2389
1977
|
}
|
|
2390
1978
|
else {
|
|
2391
|
-
this.logger.
|
|
1979
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TYP_TRAFO3W} ist nicht vorhanden.`);
|
|
2392
1980
|
}
|
|
2393
1981
|
});
|
|
2394
1982
|
}
|
|
2395
|
-
convertTrafo2W(limit, offset) {
|
|
1983
|
+
convertTrafo2W(limit, offset, defaultValuesConfig) {
|
|
2396
1984
|
var _a;
|
|
2397
1985
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
2398
1986
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO2W)) {
|
|
@@ -2411,33 +1999,21 @@ class ConverterIntegral7 {
|
|
|
2411
1999
|
for (const i7Data of result) {
|
|
2412
2000
|
const substationName = this.substationNames.get(this.integralID2UUID.get(i7Data.standort));
|
|
2413
2001
|
const powerTransformer = new __1.PowerTransformer(__1.getUUID(i7Data.guid), substationName + "/" + utils_2.getName(i7Data), i7Data.id + '', i7Data.bezeichner);
|
|
2414
|
-
const powerTransformerInfo = this.
|
|
2415
|
-
const
|
|
2416
|
-
|
|
2417
|
-
|
|
2418
|
-
|
|
2419
|
-
|
|
2420
|
-
|
|
2421
|
-
this.logger.info(`PowerTransformer2W ${i7Data.id} ${powerTransformer.mrid} besitzt keinen Anfangsknoten.`);
|
|
2422
|
-
}
|
|
2423
|
-
const target = this.inmemoryObjects.get(i7Data.eknoten);
|
|
2424
|
-
let targetTerminal;
|
|
2425
|
-
if (target) {
|
|
2426
|
-
targetTerminal = __1.createConnection(this.cimModel, powerTransformer, target, __1.PhaseCode.ABC, 2);
|
|
2427
|
-
}
|
|
2428
|
-
else {
|
|
2429
|
-
this.logger.info(`PowerTransformer2W ${i7Data.id} ${powerTransformer.mrid} besitzt keinen Zielknoten.`);
|
|
2430
|
-
}
|
|
2002
|
+
const powerTransformerInfo = this.cimModelDefaultValues.getPowerTransformerInfoByName(i7Data.nametyp);
|
|
2003
|
+
const startTerminal = util_create_1.getConnectedTerminal(this.cimModelDefaultValues, powerTransformer, this.inmemoryObjects.get(i7Data.aknoten), __1.PhaseCode.ABC, 1);
|
|
2004
|
+
if (!startTerminal)
|
|
2005
|
+
this.logger.debug(`PowerTransformer2W ${i7Data.id} ${powerTransformer.mrid} besitzt keinen Anfangsknoten.`);
|
|
2006
|
+
const targetTerminal = util_create_1.getConnectedTerminal(this.cimModelDefaultValues, powerTransformer, this.inmemoryObjects.get(i7Data.eknoten), __1.PhaseCode.ABC, 2);
|
|
2007
|
+
if (!targetTerminal)
|
|
2008
|
+
this.logger.debug(`PowerTransformer2W ${i7Data.id} ${powerTransformer.mrid} besitzt keinen Zielknoten.`);
|
|
2431
2009
|
const schaltgruppe = i7Data.schaltgr;
|
|
2432
2010
|
const powerTransformerEnd1 = new __1.PowerTransformerEnd(__1.getUUID(i7Data.guid_w1), `W1${powerTransformer.name}`);
|
|
2433
2011
|
powerTransformerEnd1.endNumber = 1;
|
|
2434
|
-
powerTransformerEnd1.connectionKind = utils_2.getSchaltgruppe(schaltgruppe, powerTransformerEnd1.endNumber);
|
|
2435
|
-
powerTransformerEnd1.phaseAngleClock = utils_2.getSchaltgruppeAngleClock(schaltgruppe, powerTransformerEnd1.endNumber);
|
|
2436
2012
|
const pkr = utils_2.getPkrTrafo(i7Data, powerTransformerInfo, '');
|
|
2437
2013
|
const ukr = utils_2.getUkrTrafo(i7Data, powerTransformerInfo, '') / 100;
|
|
2438
2014
|
const sr = utils_2.getSrTrafo(i7Data, powerTransformerInfo, powerTransformerEnd1.endNumber, false);
|
|
2439
2015
|
const ur = utils_2.getUrTrafo(i7Data, powerTransformerInfo, powerTransformerEnd1.endNumber);
|
|
2440
|
-
const ir1 =
|
|
2016
|
+
const ir1 = sr * 1000000 / (ur * 1000 * Math.sqrt(3));
|
|
2441
2017
|
const p0 = utils_2.isNumericI7(i7Data.p_leer) ? utils_2.convertToNumberI7(i7Data.p_leer) : 0;
|
|
2442
2018
|
const iLeer = utils_2.isNumericI7(i7Data.i_leer) ? utils_2.convertToNumberI7(i7Data.i_leer) : 0;
|
|
2443
2019
|
powerTransformerEnd1.r = utils_2.calculateR(ur, pkr, sr);
|
|
@@ -2447,36 +2023,30 @@ class ConverterIntegral7 {
|
|
|
2447
2023
|
powerTransformerEnd1.ratedU = ur;
|
|
2448
2024
|
powerTransformerEnd1.ratedS = sr;
|
|
2449
2025
|
if (powerTransformerEnd1.ratedU) {
|
|
2450
|
-
|
|
2451
|
-
if (!baseVoltage) {
|
|
2452
|
-
baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModel, powerTransformerEnd1.ratedU);
|
|
2453
|
-
}
|
|
2026
|
+
const baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, powerTransformerEnd1.ratedU);
|
|
2454
2027
|
powerTransformerEnd1.baseVoltageUUID = baseVoltage.mrid;
|
|
2455
2028
|
}
|
|
2456
2029
|
else {
|
|
2457
|
-
this.logger.
|
|
2030
|
+
this.logger.debug(`Wicklung2W ${i7Data.id} ${powerTransformerEnd1.endNumber} ${powerTransformerEnd1.mrid} besitzt keine Spannungsangabe.`);
|
|
2458
2031
|
}
|
|
2459
2032
|
const terminal = startTerminal;
|
|
2460
|
-
if (
|
|
2461
|
-
powerTransformerEnd1.terminalUUID =
|
|
2462
|
-
this.setConductingEquipmentCurrentLimit('W1 ' + powerTransformer.name,
|
|
2033
|
+
if (startTerminal) {
|
|
2034
|
+
powerTransformerEnd1.terminalUUID = startTerminal.mrid;
|
|
2035
|
+
this.setConductingEquipmentCurrentLimit('W1 ' + powerTransformer.name, startTerminal.mrid, ir1);
|
|
2463
2036
|
if (sternpunktKnotenMap.has(i7Data.id)) {
|
|
2464
2037
|
if (sternpunktKnotenMap.get(i7Data.id).has(i7Data.aknknoten1p)) {
|
|
2465
|
-
this.convertTrafoGrounding(i7Data.id, powerTransformerEnd1,
|
|
2038
|
+
this.convertTrafoGrounding(i7Data.id, powerTransformerEnd1, startTerminal.connectivityNodeUUID, sternpunktKnotenMap.get(i7Data.id).get(i7Data.aknknoten1p), i7Data.standort, defaultValuesConfig);
|
|
2466
2039
|
}
|
|
2467
2040
|
}
|
|
2468
2041
|
}
|
|
2469
2042
|
else {
|
|
2470
|
-
this.logger.
|
|
2043
|
+
this.logger.debug(`Wicklung2W ${i7Data.id} ${powerTransformerEnd1.endNumber} ${powerTransformerEnd1.mrid} besitzt keine Terminalinstanz.`);
|
|
2471
2044
|
}
|
|
2472
2045
|
powerTransformerEnd1.powerTransformerUUID = powerTransformer.mrid;
|
|
2473
2046
|
powerTransformer.addPowerTransformerEnd(powerTransformerEnd1);
|
|
2474
|
-
this.
|
|
2475
|
-
utils_2.createTapChanger(i7Data, powerTransformerEnd1, this.cimModel, powerTransformerEnd1.ratedU);
|
|
2047
|
+
this.cimModelDefaultValues.addPowerTransformerEnd(powerTransformerEnd1);
|
|
2476
2048
|
const powerTransformerEnd2 = new __1.PowerTransformerEnd(__1.getUUID(i7Data.guid_w2), `W2${powerTransformer.name}`);
|
|
2477
2049
|
powerTransformerEnd2.endNumber = 2;
|
|
2478
|
-
powerTransformerEnd2.connectionKind = utils_2.getSchaltgruppe(schaltgruppe, powerTransformerEnd2.endNumber);
|
|
2479
|
-
powerTransformerEnd2.phaseAngleClock = utils_2.getSchaltgruppeAngleClock(schaltgruppe, powerTransformerEnd2.endNumber);
|
|
2480
2050
|
const sr2 = utils_2.getSrTrafo(i7Data, powerTransformerInfo, powerTransformerEnd2.endNumber, false);
|
|
2481
2051
|
const ur2 = utils_2.getUrTrafo(i7Data, powerTransformerInfo, powerTransformerEnd2.endNumber);
|
|
2482
2052
|
powerTransformerEnd2.r = 0;
|
|
@@ -2485,55 +2055,80 @@ class ConverterIntegral7 {
|
|
|
2485
2055
|
powerTransformerEnd2.ratedU = ur2;
|
|
2486
2056
|
const ir2 = (sr * Math.pow(10, 6) / ur * 1000) / Math.sqrt(3);
|
|
2487
2057
|
if (powerTransformerEnd2.ratedU) {
|
|
2488
|
-
|
|
2489
|
-
if (!baseVoltage) {
|
|
2490
|
-
baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModel, powerTransformerEnd2.ratedU);
|
|
2491
|
-
}
|
|
2058
|
+
const baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, powerTransformerEnd2.ratedU);
|
|
2492
2059
|
powerTransformerEnd2.baseVoltageUUID = baseVoltage.mrid;
|
|
2493
2060
|
}
|
|
2494
2061
|
else {
|
|
2495
|
-
this.logger.
|
|
2062
|
+
this.logger.debug(`Wicklung ${i7Data.id} ${powerTransformerEnd2.endNumber} ${powerTransformerEnd2.mrid} besitzt keine Spannungsangabe.`);
|
|
2496
2063
|
}
|
|
2497
|
-
|
|
2498
|
-
|
|
2499
|
-
|
|
2500
|
-
this.setConductingEquipmentCurrentLimit('W2 ' + powerTransformer.name, terminal.mrid, ir2);
|
|
2064
|
+
if (targetTerminal) {
|
|
2065
|
+
powerTransformerEnd2.terminalUUID = targetTerminal.mrid;
|
|
2066
|
+
this.setConductingEquipmentCurrentLimit('W2 ' + powerTransformer.name, targetTerminal.mrid, ir2);
|
|
2501
2067
|
if (sternpunktKnotenMap.has(i7Data.id)) {
|
|
2502
2068
|
if (sternpunktKnotenMap.get(i7Data.id).has(i7Data.eknknoten1p)) {
|
|
2503
|
-
this.convertTrafoGrounding(i7Data.id, powerTransformerEnd2,
|
|
2069
|
+
this.convertTrafoGrounding(i7Data.id, powerTransformerEnd2, targetTerminal.connectivityNodeUUID, sternpunktKnotenMap.get(i7Data.id).get(i7Data.eknknoten1p), i7Data.standort, defaultValuesConfig);
|
|
2504
2070
|
}
|
|
2505
2071
|
}
|
|
2506
2072
|
}
|
|
2507
2073
|
else {
|
|
2508
|
-
this.logger.
|
|
2509
|
-
this.logger.info(`TargetTerminal created ` + (targetTerminal === undefined));
|
|
2074
|
+
this.logger.debug(`Wicklung2W ${i7Data.id} ${powerTransformerEnd2.endNumber} ${powerTransformerEnd2.mrid} besitzt keine Terminalinstanz.`);
|
|
2510
2075
|
}
|
|
2511
2076
|
powerTransformerEnd2.powerTransformerUUID = powerTransformer.mrid;
|
|
2512
2077
|
powerTransformer.addPowerTransformerEnd(powerTransformerEnd2);
|
|
2513
|
-
this.
|
|
2078
|
+
this.cimModelDefaultValues.addPowerTransformerEnd(powerTransformerEnd2);
|
|
2079
|
+
powerTransformerEnd1.connectionKind = utils_2.getSchaltgruppe(schaltgruppe, powerTransformerEnd1.endNumber, [powerTransformerEnd1.ratedU, powerTransformerEnd2.ratedU]);
|
|
2080
|
+
powerTransformerEnd1.phaseAngleClock = utils_2.getSchaltgruppeAngleClock(schaltgruppe, powerTransformerEnd1.endNumber, [powerTransformerEnd1.ratedU, powerTransformerEnd2.ratedU]);
|
|
2081
|
+
powerTransformerEnd2.connectionKind = utils_2.getSchaltgruppe(schaltgruppe, powerTransformerEnd1.endNumber, [powerTransformerEnd1.ratedU, powerTransformerEnd2.ratedU]);
|
|
2082
|
+
powerTransformerEnd2.phaseAngleClock = utils_2.getSchaltgruppeAngleClock(schaltgruppe, powerTransformerEnd1.endNumber, [powerTransformerEnd1.ratedU, powerTransformerEnd2.ratedU]);
|
|
2514
2083
|
powerTransformer.sortTransformerEnd('ratedU', 'desc');
|
|
2084
|
+
const wicklungen = [1, 2];
|
|
2085
|
+
const terminals = [startTerminal, targetTerminal];
|
|
2086
|
+
const spannungsband = yield this.getSpannungsbandTrafo2W(i7Data);
|
|
2087
|
+
for (const wicklung of wicklungen) {
|
|
2088
|
+
const powerTransformerEnd = powerTransformer.powerTransformerEnds[wicklung - 1];
|
|
2089
|
+
const winkel = utils_2.convertToNumberI7(i7Data[`uzus_winkel_s${wicklung}`]);
|
|
2090
|
+
switch (i7Data.trafo_spezial) {
|
|
2091
|
+
case (1): {
|
|
2092
|
+
utils_2.createPhaseTapChanger(i7Data, powerTransformerEnd, this.cimModelDefaultValues, powerTransformerEnd.ratedU, terminals, this.knotenSpannungsband.get(spannungsband === null || spannungsband === void 0 ? void 0 : spannungsband.id));
|
|
2093
|
+
break;
|
|
2094
|
+
}
|
|
2095
|
+
case (2): {
|
|
2096
|
+
utils_2.createPhaseTapChanger(i7Data, powerTransformerEnd, this.cimModelDefaultValues, powerTransformerEnd.ratedU, terminals, this.knotenSpannungsband.get(spannungsband === null || spannungsband === void 0 ? void 0 : spannungsband.id));
|
|
2097
|
+
break;
|
|
2098
|
+
}
|
|
2099
|
+
default: {
|
|
2100
|
+
if (winkel !== 0) {
|
|
2101
|
+
utils_2.createPhaseTapChanger(i7Data, powerTransformerEnd, this.cimModelDefaultValues, powerTransformerEnd.ratedU, terminals, this.knotenSpannungsband.get(spannungsband === null || spannungsband === void 0 ? void 0 : spannungsband.id));
|
|
2102
|
+
}
|
|
2103
|
+
else {
|
|
2104
|
+
utils_2.createRatioTapChanger(i7Data, powerTransformerEnd, this.cimModelDefaultValues, powerTransformerEnd.ratedU, terminals, this.knotenSpannungsband.get(spannungsband === null || spannungsband === void 0 ? void 0 : spannungsband.id));
|
|
2105
|
+
}
|
|
2106
|
+
break;
|
|
2107
|
+
}
|
|
2108
|
+
}
|
|
2109
|
+
}
|
|
2515
2110
|
for (let i = 0; i < powerTransformer.powerTransformerEnds.length; i++) {
|
|
2516
|
-
powerTransformer.powerTransformerEnds[i]
|
|
2111
|
+
const powerTransformerEnd = powerTransformer.powerTransformerEnds[i];
|
|
2112
|
+
powerTransformerEnd.endNumber = i + 1;
|
|
2517
2113
|
}
|
|
2518
|
-
utils_2.createTapChanger(i7Data, powerTransformerEnd2, this.cimModel, powerTransformerEnd2.ratedU);
|
|
2519
2114
|
const substationUUID = this.integralID2UUID.get(i7Data.standort);
|
|
2520
2115
|
if (substationUUID) {
|
|
2521
2116
|
powerTransformer.equipmentContainerUUID = substationUUID;
|
|
2522
2117
|
}
|
|
2523
2118
|
else {
|
|
2524
|
-
this.logger.
|
|
2119
|
+
this.logger.debug(`Trafo2W ${i7Data.id} besitzt keine Umspannanlage.`);
|
|
2525
2120
|
}
|
|
2526
|
-
this.
|
|
2527
|
-
this.
|
|
2121
|
+
this.cimModelDefaultValues.addPowerTransformer(powerTransformer);
|
|
2122
|
+
this.addIdMapping(i7Data.id, powerTransformer.mrid, integral_sql_1.Integral7TableNames.TRAFO2W);
|
|
2528
2123
|
this.addTerminal2StatcomRegulatingControl(+i7Data.id, powerTransformer);
|
|
2529
2124
|
}
|
|
2530
2125
|
}
|
|
2531
2126
|
else {
|
|
2532
|
-
this.logger.
|
|
2127
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TRAFO2W} ist nicht vorhanden.`);
|
|
2533
2128
|
}
|
|
2534
2129
|
});
|
|
2535
2130
|
}
|
|
2536
|
-
convertTrafo3W(limit, offset) {
|
|
2131
|
+
convertTrafo3W(limit, offset, defaultValuesConfig) {
|
|
2537
2132
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
2538
2133
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO3W)) {
|
|
2539
2134
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.TRAFO3W, limit, offset, []));
|
|
@@ -2548,7 +2143,7 @@ class ConverterIntegral7 {
|
|
|
2548
2143
|
}
|
|
2549
2144
|
}
|
|
2550
2145
|
else {
|
|
2551
|
-
this.logger.
|
|
2146
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TRAFO3_WICKLUNG} ist nicht vorhanden.`);
|
|
2552
2147
|
}
|
|
2553
2148
|
const sternpunktKnotenMap = new Map();
|
|
2554
2149
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.STERNPUNKT_KNOTEN) && trafoWicklungIDs.length) {
|
|
@@ -2560,7 +2155,7 @@ class ConverterIntegral7 {
|
|
|
2560
2155
|
for (const i7Data of result) {
|
|
2561
2156
|
const substationName = this.substationNames.get(this.integralID2UUID.get(i7Data.standort));
|
|
2562
2157
|
const powerTransformer = new __1.PowerTransformer(__1.getUUID(i7Data.guid), substationName + "/" + utils_2.getName(i7Data), i7Data.id + '', i7Data.bezeichner);
|
|
2563
|
-
const powerTransformerInfo = this.
|
|
2158
|
+
const powerTransformerInfo = this.cimModelDefaultValues.getPowerTransformerInfoByName(i7Data.nametyp);
|
|
2564
2159
|
const schaltgruppe = i7Data.schaltgr;
|
|
2565
2160
|
const pkr12 = utils_2.getPkrTrafo(i7Data, powerTransformerInfo, '12');
|
|
2566
2161
|
const pkr13 = utils_2.getPkrTrafo(i7Data, powerTransformerInfo, '13');
|
|
@@ -2574,9 +2169,9 @@ class ConverterIntegral7 {
|
|
|
2574
2169
|
const ur1 = utils_2.getUrTrafo(i7Data, powerTransformerInfo, 1);
|
|
2575
2170
|
const ur2 = utils_2.getUrTrafo(i7Data, powerTransformerInfo, 2);
|
|
2576
2171
|
const ur3 = utils_2.getUrTrafo(i7Data, powerTransformerInfo, 3);
|
|
2577
|
-
const ir1 =
|
|
2578
|
-
const ir2 =
|
|
2579
|
-
const ir3 =
|
|
2172
|
+
const ir1 = sr1 * 1000000 / ((ur1 * 1000) * Math.sqrt(3));
|
|
2173
|
+
const ir2 = sr2 * 1000000 / ((ur2 * 1000) * Math.sqrt(3));
|
|
2174
|
+
const ir3 = sr3 * 1000000 / ((ur3 * 1000) * Math.sqrt(3));
|
|
2580
2175
|
const pLeer = utils_2.getTrafoPleer(i7Data, powerTransformerInfo);
|
|
2581
2176
|
const iLeer = utils_2.getTrafoIleer(i7Data, powerTransformerInfo);
|
|
2582
2177
|
const impedanzW1 = utils_trafo3w_1.calculateImpedanzenTrafo3W(1, ur1, ur2, ur3, sr1, sr2, sr3, pkr12, pkr13, pkr23, ukr12, ukr13, ukr23, pLeer, iLeer);
|
|
@@ -2587,19 +2182,17 @@ class ConverterIntegral7 {
|
|
|
2587
2182
|
if (wicklung1) {
|
|
2588
2183
|
const start = this.inmemoryObjects.get(wicklung1.aknoten);
|
|
2589
2184
|
if (start) {
|
|
2590
|
-
terminal1 = __1.createConnection(this.
|
|
2185
|
+
terminal1 = __1.createConnection(this.cimModelDefaultValues, powerTransformer, start, __1.PhaseCode.ABC, 1);
|
|
2591
2186
|
}
|
|
2592
2187
|
else {
|
|
2593
|
-
this.logger.
|
|
2188
|
+
this.logger.debug(`PowerTransformer ${i7Data.id} ${powerTransformer.mrid} besitzt keinen Anfangsknoten.`);
|
|
2594
2189
|
}
|
|
2595
2190
|
}
|
|
2596
2191
|
else {
|
|
2597
|
-
this.logger.
|
|
2192
|
+
this.logger.debug(`Trafo ${i7Data.id} Wicklung 1 ${i7Data.trafowicklung3w1} ist nicht vorhanden.`);
|
|
2598
2193
|
}
|
|
2599
2194
|
const powerTransformerEnd1 = new __1.PowerTransformerEnd(__1.getUUID(i7Data.guid_w1), `W1 ${powerTransformer.name}`);
|
|
2600
2195
|
powerTransformerEnd1.endNumber = 1;
|
|
2601
|
-
powerTransformerEnd1.connectionKind = utils_2.getSchaltgruppe(schaltgruppe, powerTransformerEnd1.endNumber);
|
|
2602
|
-
powerTransformerEnd1.phaseAngleClock = utils_2.getSchaltgruppeAngleClock(schaltgruppe, powerTransformerEnd1.endNumber);
|
|
2603
2196
|
powerTransformerEnd1.r = impedanzW1.r;
|
|
2604
2197
|
powerTransformerEnd1.x = impedanzW1.x;
|
|
2605
2198
|
powerTransformerEnd1.g = impedanzW1.g * 1000000;
|
|
@@ -2607,45 +2200,43 @@ class ConverterIntegral7 {
|
|
|
2607
2200
|
powerTransformerEnd1.ratedU = ur1;
|
|
2608
2201
|
powerTransformerEnd1.ratedS = sr1;
|
|
2609
2202
|
if (powerTransformerEnd1.ratedU) {
|
|
2610
|
-
let baseVoltage = this.
|
|
2203
|
+
let baseVoltage = this.cimModelDefaultValues.getBaseVoltage(powerTransformerEnd1.ratedU);
|
|
2611
2204
|
if (!baseVoltage) {
|
|
2612
|
-
baseVoltage = __1.createBaseVoltageIfNotExists(this.
|
|
2205
|
+
baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, powerTransformerEnd1.ratedU);
|
|
2613
2206
|
}
|
|
2614
2207
|
powerTransformerEnd1.baseVoltageUUID = baseVoltage.mrid;
|
|
2615
2208
|
}
|
|
2616
2209
|
else {
|
|
2617
|
-
this.logger.
|
|
2210
|
+
this.logger.debug(`Wicklung ${i7Data.id} ${powerTransformerEnd1.endNumber} ${powerTransformerEnd1.mrid} besitzt keine Spannungsangabe.`);
|
|
2618
2211
|
}
|
|
2619
2212
|
powerTransformerEnd1.powerTransformerUUID = powerTransformer.mrid;
|
|
2620
2213
|
powerTransformer.addPowerTransformerEnd(powerTransformerEnd1);
|
|
2621
|
-
this.
|
|
2214
|
+
this.cimModelDefaultValues.addPowerTransformerEnd(powerTransformerEnd1);
|
|
2622
2215
|
if (terminal1) {
|
|
2623
2216
|
powerTransformerEnd1.terminalUUID = terminal1.mrid;
|
|
2624
2217
|
this.setConductingEquipmentCurrentLimit('W1 ' + powerTransformer.name, terminal1.mrid, ir1);
|
|
2625
2218
|
if (sternpunktKnotenMap.has(wicklung1.id)) {
|
|
2626
|
-
this.convertTrafoGrounding(wicklung1.id, powerTransformerEnd1, terminal1.connectivityNodeUUID, sternpunktKnotenMap.get(wicklung1.id), i7Data.standort);
|
|
2219
|
+
this.convertTrafoGrounding(wicklung1.id, powerTransformerEnd1, terminal1.connectivityNodeUUID, sternpunktKnotenMap.get(wicklung1.id), i7Data.standort, defaultValuesConfig);
|
|
2627
2220
|
}
|
|
2628
2221
|
}
|
|
2629
2222
|
else {
|
|
2630
|
-
this.logger.
|
|
2223
|
+
this.logger.debug(`Wicklung3W ${i7Data.id} ${powerTransformerEnd1.endNumber} ${powerTransformerEnd1.mrid} besitzt keine Terminalinstanz.`);
|
|
2631
2224
|
}
|
|
2632
2225
|
const wicklung2 = trafoWicklungen.get(i7Data.trafowicklung3w2);
|
|
2633
2226
|
if (wicklung2) {
|
|
2634
2227
|
const start = this.inmemoryObjects.get(wicklung2.aknoten);
|
|
2635
2228
|
if (start) {
|
|
2636
|
-
terminal2 = __1.createConnection(this.
|
|
2229
|
+
terminal2 = __1.createConnection(this.cimModelDefaultValues, powerTransformer, start, __1.PhaseCode.ABC, 2);
|
|
2637
2230
|
}
|
|
2638
2231
|
else {
|
|
2639
|
-
this.logger.
|
|
2232
|
+
this.logger.debug(`PowerTransformer ${i7Data.id} ${powerTransformer.mrid} besitzt keinen Anfangsknoten.`);
|
|
2640
2233
|
}
|
|
2641
2234
|
}
|
|
2642
2235
|
else {
|
|
2643
|
-
this.logger.
|
|
2236
|
+
this.logger.debug(`Trafo ${i7Data.id} Wicklung 2 ${i7Data.trafowicklung3w2} ist nicht vorhanden.`);
|
|
2644
2237
|
}
|
|
2645
2238
|
const powerTransformerEnd2 = new __1.PowerTransformerEnd(__1.getUUID(i7Data.guid_w2), `W2 ${powerTransformer.name}`);
|
|
2646
2239
|
powerTransformerEnd2.endNumber = 2;
|
|
2647
|
-
powerTransformerEnd2.connectionKind = utils_2.getSchaltgruppe(schaltgruppe, powerTransformerEnd2.endNumber);
|
|
2648
|
-
powerTransformerEnd2.phaseAngleClock = utils_2.getSchaltgruppeAngleClock(schaltgruppe, powerTransformerEnd2.endNumber);
|
|
2649
2240
|
powerTransformerEnd2.r = impedanzW2.r;
|
|
2650
2241
|
powerTransformerEnd2.x = impedanzW2.x;
|
|
2651
2242
|
powerTransformerEnd2.g = impedanzW2.g * 1000000;
|
|
@@ -2653,77 +2244,105 @@ class ConverterIntegral7 {
|
|
|
2653
2244
|
powerTransformerEnd2.ratedS = sr2;
|
|
2654
2245
|
powerTransformerEnd2.ratedU = ur2;
|
|
2655
2246
|
if (powerTransformerEnd2.ratedU) {
|
|
2656
|
-
let baseVoltage = this.
|
|
2247
|
+
let baseVoltage = this.cimModelDefaultValues.getBaseVoltage(powerTransformerEnd2.ratedU);
|
|
2657
2248
|
if (!baseVoltage) {
|
|
2658
|
-
baseVoltage = __1.createBaseVoltageIfNotExists(this.
|
|
2249
|
+
baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, powerTransformerEnd2.ratedU);
|
|
2659
2250
|
}
|
|
2660
2251
|
powerTransformerEnd2.baseVoltageUUID = baseVoltage.mrid;
|
|
2661
2252
|
}
|
|
2662
2253
|
else {
|
|
2663
|
-
this.logger.
|
|
2254
|
+
this.logger.debug(`Wicklung ${i7Data.id} ${powerTransformerEnd2.endNumber} ${powerTransformerEnd2.mrid} besitzt keine Spannungsangabe.`);
|
|
2664
2255
|
}
|
|
2665
2256
|
powerTransformerEnd2.powerTransformerUUID = powerTransformer.mrid;
|
|
2666
2257
|
powerTransformer.addPowerTransformerEnd(powerTransformerEnd2);
|
|
2667
|
-
this.
|
|
2258
|
+
this.cimModelDefaultValues.addPowerTransformerEnd(powerTransformerEnd2);
|
|
2668
2259
|
if (terminal2) {
|
|
2669
2260
|
powerTransformerEnd2.terminalUUID = terminal2.mrid;
|
|
2670
2261
|
this.setConductingEquipmentCurrentLimit('W2 ' + powerTransformer.name, terminal2.mrid, ir2);
|
|
2671
2262
|
if (sternpunktKnotenMap.has(wicklung2.id)) {
|
|
2672
|
-
this.convertTrafoGrounding(wicklung2.id, powerTransformerEnd2, terminal2.connectivityNodeUUID, sternpunktKnotenMap.get(wicklung2.id), i7Data.standort);
|
|
2263
|
+
this.convertTrafoGrounding(wicklung2.id, powerTransformerEnd2, terminal2.connectivityNodeUUID, sternpunktKnotenMap.get(wicklung2.id), i7Data.standort, defaultValuesConfig);
|
|
2673
2264
|
}
|
|
2674
2265
|
}
|
|
2675
2266
|
else {
|
|
2676
|
-
this.logger.
|
|
2267
|
+
this.logger.debug(`Wicklung3W ${i7Data.id} ${powerTransformerEnd2.endNumber} ${powerTransformerEnd2.mrid} besitzt keine Terminalinstanz.`);
|
|
2677
2268
|
}
|
|
2678
2269
|
const wicklung3 = trafoWicklungen.get(i7Data.trafowicklung3w3);
|
|
2679
2270
|
if (wicklung3) {
|
|
2680
2271
|
const start = this.inmemoryObjects.get(wicklung3.aknoten);
|
|
2681
2272
|
if (start) {
|
|
2682
|
-
terminal3 = __1.createConnection(this.
|
|
2273
|
+
terminal3 = __1.createConnection(this.cimModelDefaultValues, powerTransformer, start, __1.PhaseCode.ABC, 3);
|
|
2683
2274
|
}
|
|
2684
2275
|
else {
|
|
2685
|
-
this.logger.
|
|
2276
|
+
this.logger.debug(`PowerTransformer ${i7Data.id} ${powerTransformer.mrid} besitzt keinen Anfangsknoten.`);
|
|
2686
2277
|
}
|
|
2687
2278
|
}
|
|
2688
2279
|
else {
|
|
2689
|
-
this.logger.
|
|
2280
|
+
this.logger.debug(`Trafo ${i7Data.id} Wicklung 3 ${i7Data.trafowicklung3w2} ist nicht vorhanden.`);
|
|
2690
2281
|
}
|
|
2691
2282
|
const powerTransformerEnd3 = new __1.PowerTransformerEnd(__1.getUUID(i7Data.guid_w3), `Wicklung 3 ${powerTransformer.name}`);
|
|
2692
2283
|
powerTransformerEnd3.endNumber = 3;
|
|
2693
|
-
powerTransformerEnd3.connectionKind = utils_2.getSchaltgruppe(schaltgruppe, powerTransformerEnd3.endNumber);
|
|
2694
|
-
powerTransformerEnd3.phaseAngleClock = utils_2.getSchaltgruppeAngleClock(schaltgruppe, powerTransformerEnd3.endNumber);
|
|
2695
2284
|
powerTransformerEnd3.r = impedanzW3.r;
|
|
2696
2285
|
powerTransformerEnd3.x = impedanzW3.x;
|
|
2697
2286
|
powerTransformerEnd2.g = impedanzW3.g * 1000000;
|
|
2698
|
-
;
|
|
2699
2287
|
powerTransformerEnd2.b = impedanzW3.b * 1000000;
|
|
2700
|
-
;
|
|
2701
2288
|
powerTransformerEnd3.ratedS = sr3;
|
|
2702
2289
|
powerTransformerEnd3.ratedU = ur3;
|
|
2703
2290
|
if (powerTransformerEnd3.ratedU) {
|
|
2704
|
-
let baseVoltage = this.
|
|
2291
|
+
let baseVoltage = this.cimModelDefaultValues.getBaseVoltage(powerTransformerEnd3.ratedU);
|
|
2705
2292
|
if (!baseVoltage) {
|
|
2706
|
-
baseVoltage = __1.createBaseVoltageIfNotExists(this.
|
|
2293
|
+
baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, powerTransformerEnd3.ratedU);
|
|
2707
2294
|
}
|
|
2708
2295
|
powerTransformerEnd3.baseVoltageUUID = baseVoltage.mrid;
|
|
2709
2296
|
}
|
|
2710
2297
|
else {
|
|
2711
|
-
this.logger.
|
|
2298
|
+
this.logger.debug(`Wicklung3W ${i7Data.id} ${powerTransformerEnd3.endNumber} ${powerTransformerEnd3.mrid} besitzt keine Spannungsangabe.`);
|
|
2712
2299
|
}
|
|
2713
2300
|
powerTransformerEnd3.powerTransformerUUID = powerTransformer.mrid;
|
|
2714
2301
|
powerTransformer.addPowerTransformerEnd(powerTransformerEnd3);
|
|
2715
|
-
this.
|
|
2302
|
+
this.cimModelDefaultValues.addPowerTransformerEnd(powerTransformerEnd3);
|
|
2716
2303
|
if (terminal3) {
|
|
2717
2304
|
powerTransformerEnd3.terminalUUID = terminal3.mrid;
|
|
2718
2305
|
this.setConductingEquipmentCurrentLimit('W3 ' + powerTransformer.name, terminal3.mrid, ir3);
|
|
2719
2306
|
if (sternpunktKnotenMap.has(wicklung3.id)) {
|
|
2720
|
-
this.convertTrafoGrounding(wicklung3.id, powerTransformerEnd3, terminal3.connectivityNodeUUID, sternpunktKnotenMap.get(wicklung3.id), i7Data.standort);
|
|
2307
|
+
this.convertTrafoGrounding(wicklung3.id, powerTransformerEnd3, terminal3.connectivityNodeUUID, sternpunktKnotenMap.get(wicklung3.id), i7Data.standort, defaultValuesConfig);
|
|
2721
2308
|
}
|
|
2722
2309
|
}
|
|
2723
2310
|
else {
|
|
2724
|
-
this.logger.
|
|
2311
|
+
this.logger.debug(`Wicklung ${i7Data.id} ${powerTransformerEnd3.endNumber} ${powerTransformerEnd3.mrid} besitzt keine Terminalinstanz.`);
|
|
2725
2312
|
}
|
|
2313
|
+
powerTransformerEnd1.connectionKind = utils_2.getSchaltgruppe(schaltgruppe, powerTransformerEnd1.endNumber, [powerTransformerEnd1.ratedU, powerTransformerEnd2.ratedU, powerTransformerEnd3.ratedU]);
|
|
2314
|
+
powerTransformerEnd1.phaseAngleClock = utils_2.getSchaltgruppeAngleClock(schaltgruppe, powerTransformerEnd1.endNumber, [powerTransformerEnd1.ratedU, powerTransformerEnd2.ratedU, powerTransformerEnd3.ratedU]);
|
|
2315
|
+
powerTransformerEnd2.connectionKind = utils_2.getSchaltgruppe(schaltgruppe, powerTransformerEnd1.endNumber, [powerTransformerEnd1.ratedU, powerTransformerEnd2.ratedU, powerTransformerEnd3.ratedU]);
|
|
2316
|
+
powerTransformerEnd2.phaseAngleClock = utils_2.getSchaltgruppeAngleClock(schaltgruppe, powerTransformerEnd1.endNumber, [powerTransformerEnd1.ratedU, powerTransformerEnd2.ratedU, powerTransformerEnd3.ratedU]);
|
|
2317
|
+
powerTransformerEnd3.connectionKind = utils_2.getSchaltgruppe(schaltgruppe, powerTransformerEnd1.endNumber, [powerTransformerEnd1.ratedU, powerTransformerEnd2.ratedU, powerTransformerEnd3.ratedU]);
|
|
2318
|
+
powerTransformerEnd3.phaseAngleClock = utils_2.getSchaltgruppeAngleClock(schaltgruppe, powerTransformerEnd1.endNumber, [powerTransformerEnd1.ratedU, powerTransformerEnd2.ratedU, powerTransformerEnd3.ratedU]);
|
|
2726
2319
|
powerTransformer.sortTransformerEnd('ratedU', 'desc');
|
|
2320
|
+
const wicklungen = powerTransformer.powerTransformerEnds.map(elem => elem.endNumber);
|
|
2321
|
+
const terminals = [terminal1, terminal2, terminal3];
|
|
2322
|
+
const spannungsband = yield this.getSpannungsbandTrafo2W(i7Data);
|
|
2323
|
+
for (const wicklung of wicklungen) {
|
|
2324
|
+
const powerTransformerEnd = powerTransformer.powerTransformerEnds[wicklung - 1];
|
|
2325
|
+
const winkel = utils_2.convertToNumberI7(i7Data[`uzus_winkel_s${wicklung}`]);
|
|
2326
|
+
switch (i7Data.trafo_spezial) {
|
|
2327
|
+
case (1): {
|
|
2328
|
+
utils_2.createPhaseTapChanger(i7Data, powerTransformerEnd, this.cimModelDefaultValues, powerTransformerEnd.ratedU, terminals, this.knotenSpannungsband.get(spannungsband === null || spannungsband === void 0 ? void 0 : spannungsband.id));
|
|
2329
|
+
break;
|
|
2330
|
+
}
|
|
2331
|
+
case (2): {
|
|
2332
|
+
utils_2.createPhaseTapChanger(i7Data, powerTransformerEnd, this.cimModelDefaultValues, powerTransformerEnd.ratedU, terminals, this.knotenSpannungsband.get(spannungsband === null || spannungsband === void 0 ? void 0 : spannungsband.id));
|
|
2333
|
+
break;
|
|
2334
|
+
}
|
|
2335
|
+
default: {
|
|
2336
|
+
if (winkel !== 0) {
|
|
2337
|
+
utils_2.createPhaseTapChanger(i7Data, powerTransformerEnd, this.cimModelDefaultValues, powerTransformerEnd.ratedU, terminals, this.knotenSpannungsband.get(spannungsband === null || spannungsband === void 0 ? void 0 : spannungsband.id));
|
|
2338
|
+
}
|
|
2339
|
+
else {
|
|
2340
|
+
utils_2.createRatioTapChanger(i7Data, powerTransformerEnd, this.cimModelDefaultValues, powerTransformerEnd.ratedU, terminals, this.knotenSpannungsband.get(spannungsband === null || spannungsband === void 0 ? void 0 : spannungsband.id));
|
|
2341
|
+
}
|
|
2342
|
+
break;
|
|
2343
|
+
}
|
|
2344
|
+
}
|
|
2345
|
+
}
|
|
2727
2346
|
for (let i = 0; i < powerTransformer.powerTransformerEnds.length; i++) {
|
|
2728
2347
|
powerTransformer.powerTransformerEnds[i].endNumber = i + 1;
|
|
2729
2348
|
}
|
|
@@ -2735,22 +2354,81 @@ class ConverterIntegral7 {
|
|
|
2735
2354
|
powerTransformer.description = i7Schluessel;
|
|
2736
2355
|
}
|
|
2737
2356
|
else {
|
|
2738
|
-
this.logger.
|
|
2357
|
+
this.logger.debug(`Trafo2W ${i7Data.id} besitzt keine Umspannanlage.`);
|
|
2739
2358
|
}
|
|
2740
|
-
this.
|
|
2741
|
-
this.
|
|
2359
|
+
this.cimModelDefaultValues.addPowerTransformer(powerTransformer);
|
|
2360
|
+
this.addIdMapping(i7Data.id, powerTransformer.mrid, integral_sql_1.Integral7TableNames.TRAFO3W);
|
|
2742
2361
|
this.addTerminal2StatcomRegulatingControl(+i7Data.id, powerTransformer);
|
|
2743
2362
|
}
|
|
2744
2363
|
}
|
|
2745
2364
|
else {
|
|
2746
|
-
this.logger.
|
|
2365
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TRAFO3W} ist nicht vorhanden.`);
|
|
2747
2366
|
}
|
|
2748
2367
|
});
|
|
2749
2368
|
}
|
|
2750
|
-
|
|
2369
|
+
getSpannungsbandTrafo2W(i7Data) {
|
|
2370
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
2371
|
+
return new Promise((resolve) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
2372
|
+
let minMaxSollResult;
|
|
2373
|
+
const spgKnotenId = i7Data.spgreg_knoten;
|
|
2374
|
+
let tempKnotenId = i7Data.spgreg_anschluss === 0 ? i7Data.aknoten :
|
|
2375
|
+
(i7Data.spgreg_anschluss === 1 ? i7Data.eknoten : undefined);
|
|
2376
|
+
if (tempKnotenId !== undefined) {
|
|
2377
|
+
let queryResult = yield this.queryFunctionWrapper(`SELECT id FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SF]} WHERE id = ${tempKnotenId};`);
|
|
2378
|
+
if (queryResult.length === 1) {
|
|
2379
|
+
const tabName_NetzSSAB = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.SAMMELSCHIENE];
|
|
2380
|
+
const tabName_NetzSchaltfeld = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.SCHALTFELD];
|
|
2381
|
+
const tabName_NetzKnotenSf = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SF];
|
|
2382
|
+
const sqlStatement = `SELECT ${tabName_NetzSSAB}.id, ${tabName_NetzSSAB}.umin, ${tabName_NetzSSAB}.umax, ${tabName_NetzSSAB}.usoll
|
|
2383
|
+
FROM ${tabName_NetzSSAB}
|
|
2384
|
+
LEFT JOIN ${tabName_NetzSchaltfeld} ON ${tabName_NetzSSAB}.saabschnitt = ${tabName_NetzSchaltfeld}.saabschnitt
|
|
2385
|
+
LEFT JOIN ${tabName_NetzKnotenSf} ON ${tabName_NetzKnotenSf}.schaltfeld = ${tabName_NetzSchaltfeld}.id
|
|
2386
|
+
WHERE ${tabName_NetzKnotenSf}.id = ${tempKnotenId}`;
|
|
2387
|
+
minMaxSollResult = yield this.queryFunctionWrapper(sqlStatement);
|
|
2388
|
+
}
|
|
2389
|
+
else {
|
|
2390
|
+
queryResult = yield this.queryFunctionWrapper(`SELECT id FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_ZW]} WHERE id = ${tempKnotenId};`);
|
|
2391
|
+
if (queryResult.length === 1) {
|
|
2392
|
+
const tabName_NetzSo = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SO];
|
|
2393
|
+
const tabName_NetzSchlaufe = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.SCHLAUFE];
|
|
2394
|
+
const tabName_NetzKnotenZw = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_ZW];
|
|
2395
|
+
minMaxSollResult = yield this.queryFunctionWrapper(`SELECT ${tabName_NetzSo}.id, ${tabName_NetzSo}.umin, ${tabName_NetzSo}.umax, ${tabName_NetzSo}.usoll
|
|
2396
|
+
FROM ${tabName_NetzKnotenZw}
|
|
2397
|
+
LEFT JOIN ${tabName_NetzSchlaufe} ON
|
|
2398
|
+
${tabName_NetzSchlaufe}.id = ${tabName_NetzKnotenZw}.schlaufe
|
|
2399
|
+
LEFT JOIN ${tabName_NetzSo} ON
|
|
2400
|
+
${tabName_NetzSchlaufe}.eknoten = ${tabName_NetzSo}.id
|
|
2401
|
+
WHERE ${tabName_NetzKnotenZw}.id = ${tempKnotenId};`);
|
|
2402
|
+
}
|
|
2403
|
+
else {
|
|
2404
|
+
minMaxSollResult = yield this.queryFunctionWrapper(`SELECT id, umin, umax, usoll FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SO]} where id = ${tempKnotenId};`);
|
|
2405
|
+
}
|
|
2406
|
+
}
|
|
2407
|
+
}
|
|
2408
|
+
else if (spgKnotenId !== undefined) {
|
|
2409
|
+
const tabName_NetzSo = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SO];
|
|
2410
|
+
const tabName_NetzSSAB = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.SAMMELSCHIENE];
|
|
2411
|
+
const query = ` SELECT Voltage.id, Voltage.umin, Voltage.umax, Voltage.usoll
|
|
2412
|
+
FROM (
|
|
2413
|
+
SELECT id, umin, umax, usoll FROM ${tabName_NetzSo} WHERE ${tabName_NetzSo}.id = ${spgKnotenId}
|
|
2414
|
+
UNION
|
|
2415
|
+
SELECT id, umin, umax, usoll FROM ${tabName_NetzSSAB} WHERE ${tabName_NetzSSAB}.id = ${spgKnotenId}) as Voltage`;
|
|
2416
|
+
minMaxSollResult = yield this.queryFunctionWrapper(query);
|
|
2417
|
+
}
|
|
2418
|
+
if (minMaxSollResult && minMaxSollResult.length) {
|
|
2419
|
+
resolve(minMaxSollResult[0]);
|
|
2420
|
+
}
|
|
2421
|
+
else {
|
|
2422
|
+
resolve({ id: 0, usoll: 0, umin: 0, umax: 0 });
|
|
2423
|
+
}
|
|
2424
|
+
}));
|
|
2425
|
+
});
|
|
2426
|
+
}
|
|
2427
|
+
convertTrafoGrounding(trafoObjektID, powerTransformerEnd, cnUUID, stpKnoten, standortID, defaultValuesConfig) {
|
|
2751
2428
|
if (stpKnoten) {
|
|
2752
2429
|
const junctionUUID = this.stpImpModel.stpSchieneJunctionUUIDs.get(stpKnoten.schaltelement1pelem);
|
|
2753
2430
|
powerTransformerEnd.grounded = true;
|
|
2431
|
+
powerTransformerEnd.rground = defaultValuesConfig.TransformerEnd.rground;
|
|
2754
2432
|
if (!junctionUUID) {
|
|
2755
2433
|
}
|
|
2756
2434
|
else {
|
|
@@ -2759,7 +2437,7 @@ class ConverterIntegral7 {
|
|
|
2759
2437
|
terminal.conductingEquipmentUUID = junctionUUID;
|
|
2760
2438
|
terminal.connected = true;
|
|
2761
2439
|
terminal.phases = __1.PhaseCode.N;
|
|
2762
|
-
this.
|
|
2440
|
+
this.cimModelDefaultValues.addTerminal(terminal);
|
|
2763
2441
|
const junction = this.stpImpModel.junctions.get(junctionUUID);
|
|
2764
2442
|
if (junction)
|
|
2765
2443
|
junction.name = (junction === null || junction === void 0 ? void 0 : junction.name) + '/Trafo';
|
|
@@ -2767,21 +2445,21 @@ class ConverterIntegral7 {
|
|
|
2767
2445
|
const subVlData = this.substationVoltagelevels.get(standortID);
|
|
2768
2446
|
const vlObject = getVoltageLevelByVoltage(subVlData, powerTransformerEnd.ratedU);
|
|
2769
2447
|
if (!vlObject) {
|
|
2770
|
-
this.logger.
|
|
2448
|
+
this.logger.debug(`TrafoObjektID ${trafoObjektID} hat kein EquipmentContainer`);
|
|
2771
2449
|
}
|
|
2772
2450
|
if (junction) {
|
|
2773
2451
|
junction.baseVoltageUUID = (vlObject === null || vlObject === void 0 ? void 0 : vlObject.baseVoltageUUID) ? vlObject === null || vlObject === void 0 ? void 0 : vlObject.baseVoltageUUID : powerTransformerEnd.baseVoltageUUID;
|
|
2774
2452
|
junction.equipmentContainerUUID = vlObject === null || vlObject === void 0 ? void 0 : vlObject.vlUUID;
|
|
2775
2453
|
}
|
|
2776
2454
|
else {
|
|
2777
|
-
this.logger.
|
|
2455
|
+
this.logger.debug(`TrafoObjektID ${trafoObjektID} hat keine Junction ${junctionUUID}`);
|
|
2778
2456
|
}
|
|
2779
2457
|
if (pSpuleGroundImpedance) {
|
|
2780
2458
|
pSpuleGroundImpedance.baseVoltageUUID = (vlObject === null || vlObject === void 0 ? void 0 : vlObject.baseVoltageUUID) ? vlObject === null || vlObject === void 0 ? void 0 : vlObject.baseVoltageUUID : powerTransformerEnd.baseVoltageUUID;
|
|
2781
2459
|
pSpuleGroundImpedance.equipmentContainerUUID = vlObject === null || vlObject === void 0 ? void 0 : vlObject.vlUUID;
|
|
2782
2460
|
}
|
|
2783
2461
|
else {
|
|
2784
|
-
this.logger.
|
|
2462
|
+
this.logger.debug(`TrafoObjektID ${trafoObjektID} hat keine pSpuleGroundImpedance`);
|
|
2785
2463
|
}
|
|
2786
2464
|
}
|
|
2787
2465
|
}
|
|
@@ -2795,7 +2473,7 @@ class ConverterIntegral7 {
|
|
|
2795
2473
|
}
|
|
2796
2474
|
}
|
|
2797
2475
|
else {
|
|
2798
|
-
this.logger.
|
|
2476
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TYP_KDROSSEL} ist nicht vorhanden.`);
|
|
2799
2477
|
}
|
|
2800
2478
|
});
|
|
2801
2479
|
}
|
|
@@ -2808,21 +2486,21 @@ class ConverterIntegral7 {
|
|
|
2808
2486
|
const start = this.inmemoryObjects.get(i7Data.aknoten);
|
|
2809
2487
|
let startTerminal;
|
|
2810
2488
|
if (start) {
|
|
2811
|
-
startTerminal = __1.createConnection(this.
|
|
2489
|
+
startTerminal = __1.createConnection(this.cimModelDefaultValues, seriesCompensator, start, __1.PhaseCode.ABC, 1);
|
|
2812
2490
|
}
|
|
2813
2491
|
else {
|
|
2814
|
-
this.logger.
|
|
2492
|
+
this.logger.debug(`Längsdrossel ${i7Data.id} ${seriesCompensator.mrid} besitzt keinen Anfangsknoten.`);
|
|
2815
2493
|
}
|
|
2816
2494
|
const target = this.inmemoryObjects.get(i7Data.eknoten);
|
|
2817
2495
|
let targetTerminal;
|
|
2818
2496
|
if (target) {
|
|
2819
|
-
targetTerminal = __1.createConnection(this.
|
|
2497
|
+
targetTerminal = __1.createConnection(this.cimModelDefaultValues, seriesCompensator, target, __1.PhaseCode.ABC, 2);
|
|
2820
2498
|
}
|
|
2821
2499
|
else {
|
|
2822
|
-
this.logger.
|
|
2500
|
+
this.logger.debug(`Längsdrossel ${i7Data.id} ${seriesCompensator.mrid} besitzt keinen Zielknoten.`);
|
|
2823
2501
|
}
|
|
2824
2502
|
const ur = utils_2.getU(i7Data.ur, defaultValuesConfig.DefaultVoltage);
|
|
2825
|
-
const baseVoltage = __1.createBaseVoltageIfNotExists(this.
|
|
2503
|
+
const baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, ur);
|
|
2826
2504
|
const i = utils_2.isNumericI7(i7Data.ir) ? utils_2.convertToNumberI7(i7Data.ir) : defaultValuesConfig.SeriesCompensator.varistorRatedCurrent;
|
|
2827
2505
|
const ukr = utils_2.isNumericI7(i7Data.ukr) ? utils_2.convertToNumberI7(i7Data.ukr) : 0;
|
|
2828
2506
|
if (i > 0 && ukr > 0) {
|
|
@@ -2836,7 +2514,7 @@ class ConverterIntegral7 {
|
|
|
2836
2514
|
this.setConductingEquipmentCurrentLimit('Rating ' + seriesCompensator.name, terminal.mrid, i);
|
|
2837
2515
|
}
|
|
2838
2516
|
else {
|
|
2839
|
-
this.logger.
|
|
2517
|
+
this.logger.debug(`Längsdrossel ${i7Data.id} ${seriesCompensator.mrid} besitzt keine Terminalinstanz.`);
|
|
2840
2518
|
}
|
|
2841
2519
|
const subVlData = this.substationVoltagelevels.get(i7Data.standort);
|
|
2842
2520
|
const vlObject = getVoltageLevelByVoltage(subVlData, ur);
|
|
@@ -2845,16 +2523,16 @@ class ConverterIntegral7 {
|
|
|
2845
2523
|
seriesCompensator.baseVoltageUUID = vlObject.baseVoltageUUID;
|
|
2846
2524
|
}
|
|
2847
2525
|
else {
|
|
2848
|
-
this.logger.
|
|
2526
|
+
this.logger.debug(`Längsdrossel ${i7Data.id} besitzt kein VoltageLevel Ur ${i7Data.ur}.`);
|
|
2849
2527
|
}
|
|
2850
|
-
const psrType = utils_1.createIfNotExitsPSRType(this.
|
|
2528
|
+
const psrType = utils_1.createIfNotExitsPSRType(this.cimModelDefaultValues, 'Längsdrossel');
|
|
2851
2529
|
seriesCompensator.psrTypeUUID = psrType.mrid;
|
|
2852
|
-
this.
|
|
2853
|
-
this.
|
|
2530
|
+
this.cimModelDefaultValues.addSeriesCompensator(seriesCompensator);
|
|
2531
|
+
this.addIdMapping(i7Data.id, seriesCompensator.mrid, integral_sql_1.Integral7TableNames.LAENGSDROSSEL);
|
|
2854
2532
|
}
|
|
2855
2533
|
}
|
|
2856
2534
|
else {
|
|
2857
|
-
this.logger.
|
|
2535
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.LAENGSDROSSEL} ist nicht vorhanden.`);
|
|
2858
2536
|
}
|
|
2859
2537
|
});
|
|
2860
2538
|
}
|
|
@@ -2867,21 +2545,21 @@ class ConverterIntegral7 {
|
|
|
2867
2545
|
const start = this.inmemoryObjects.get(i7Data.aknoten);
|
|
2868
2546
|
let startTerminal;
|
|
2869
2547
|
if (start) {
|
|
2870
|
-
startTerminal = __1.createConnection(this.
|
|
2548
|
+
startTerminal = __1.createConnection(this.cimModelDefaultValues, seriesCompensator, start, __1.PhaseCode.ABC, 1);
|
|
2871
2549
|
}
|
|
2872
2550
|
else {
|
|
2873
|
-
this.logger.
|
|
2551
|
+
this.logger.debug(`Längskondensator ${i7Data.id} ${seriesCompensator.mrid} besitzt keinen Anfangsknoten.`);
|
|
2874
2552
|
}
|
|
2875
2553
|
const target = this.inmemoryObjects.get(i7Data.eknoten);
|
|
2876
2554
|
let targetTerminal;
|
|
2877
2555
|
if (target) {
|
|
2878
|
-
targetTerminal = __1.createConnection(this.
|
|
2556
|
+
targetTerminal = __1.createConnection(this.cimModelDefaultValues, seriesCompensator, target, __1.PhaseCode.ABC, 2);
|
|
2879
2557
|
}
|
|
2880
2558
|
else {
|
|
2881
|
-
this.logger.
|
|
2559
|
+
this.logger.debug(`Längskondensator ${i7Data.id} ${seriesCompensator.mrid} besitzt keinen Zielknoten.`);
|
|
2882
2560
|
}
|
|
2883
2561
|
const ur = utils_2.getU(i7Data.ur, defaultValuesConfig.DefaultVoltage);
|
|
2884
|
-
const baseVoltage = __1.createBaseVoltageIfNotExists(this.
|
|
2562
|
+
const baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, ur);
|
|
2885
2563
|
const i = utils_2.isNumericI7(i7Data.ir) ? utils_2.convertToNumberI7(i7Data.ir) : undefined;
|
|
2886
2564
|
const ukr = utils_2.isNumericI7(i7Data.ukr) ? utils_2.convertToNumberI7(i7Data.ukr) : undefined;
|
|
2887
2565
|
if (i > 0 && ukr > 0) {
|
|
@@ -2895,7 +2573,7 @@ class ConverterIntegral7 {
|
|
|
2895
2573
|
this.setConductingEquipmentCurrentLimit('Rating ' + seriesCompensator.name, terminal.mrid, i);
|
|
2896
2574
|
}
|
|
2897
2575
|
else {
|
|
2898
|
-
this.logger.
|
|
2576
|
+
this.logger.debug(`Längsdrossel ${i7Data.id} ${seriesCompensator.mrid} besitzt keine Terminalinstanz.`);
|
|
2899
2577
|
}
|
|
2900
2578
|
const substationUUID = this.integralID2UUID.get(i7Data.standort);
|
|
2901
2579
|
const subVlData = this.substationVoltagelevels.get(i7Data.standort);
|
|
@@ -2905,16 +2583,16 @@ class ConverterIntegral7 {
|
|
|
2905
2583
|
seriesCompensator.baseVoltageUUID = vlObject.baseVoltageUUID;
|
|
2906
2584
|
}
|
|
2907
2585
|
else {
|
|
2908
|
-
this.logger.
|
|
2586
|
+
this.logger.debug(`Längskondensator ${i7Data.id} besitzt kein VoltageLevel Ur ${i7Data.ur}.`);
|
|
2909
2587
|
}
|
|
2910
|
-
const psrType = utils_1.createIfNotExitsPSRType(this.
|
|
2588
|
+
const psrType = utils_1.createIfNotExitsPSRType(this.cimModelDefaultValues, 'Längskondensator');
|
|
2911
2589
|
seriesCompensator.psrTypeUUID = psrType.mrid;
|
|
2912
|
-
this.
|
|
2913
|
-
this.
|
|
2590
|
+
this.cimModelDefaultValues.addSeriesCompensator(seriesCompensator);
|
|
2591
|
+
this.addIdMapping(i7Data.id, seriesCompensator.mrid, integral_sql_1.Integral7TableNames.LAENGSKONDENSATOR);
|
|
2914
2592
|
}
|
|
2915
2593
|
}
|
|
2916
2594
|
else {
|
|
2917
|
-
this.logger.
|
|
2595
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.LAENGSKONDENSATOR} ist nicht vorhanden.`);
|
|
2918
2596
|
}
|
|
2919
2597
|
});
|
|
2920
2598
|
}
|
|
@@ -2927,38 +2605,38 @@ class ConverterIntegral7 {
|
|
|
2927
2605
|
const disconnector = new __1.Disconnector(__1.getUUID(i7Data.guid), i7Data.bezeichner);
|
|
2928
2606
|
disconnector.normalOpen = !utils_2.convertToBooleanI7(i7Data.schaltzustand);
|
|
2929
2607
|
disconnector.open = !utils_2.convertToBooleanI7(i7Data.schaltzustand);
|
|
2930
|
-
const equipmentContainer = this.
|
|
2931
|
-
const cnStart = this.
|
|
2932
|
-
const cnZiel = this.
|
|
2608
|
+
const equipmentContainer = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.seliste));
|
|
2609
|
+
const cnStart = this.cimModelDefaultValues.getConnectivityNode(this.integralID2UUID.get(i7Data.aknoten));
|
|
2610
|
+
const cnZiel = this.cimModelDefaultValues.getConnectivityNode(this.integralID2UUID.get(i7Data.eknoten));
|
|
2933
2611
|
if (equipmentContainer) {
|
|
2934
2612
|
disconnector.equipmentContainerUUID = equipmentContainer.mrid;
|
|
2935
2613
|
}
|
|
2936
2614
|
else {
|
|
2937
|
-
this.logger.
|
|
2615
|
+
this.logger.debug(`Disconnector ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
2938
2616
|
}
|
|
2939
2617
|
if (cnStart) {
|
|
2940
|
-
__1.createConnection(this.
|
|
2618
|
+
__1.createConnection(this.cimModelDefaultValues, disconnector, cnStart, __1.PhaseCode.ABC, 1);
|
|
2941
2619
|
}
|
|
2942
2620
|
else {
|
|
2943
|
-
this.logger.
|
|
2621
|
+
this.logger.debug(`Disconnector ${i7Data.id} besitzt keinen Anfangsknoten.`);
|
|
2944
2622
|
}
|
|
2945
2623
|
if (cnZiel) {
|
|
2946
|
-
__1.createConnection(this.
|
|
2624
|
+
__1.createConnection(this.cimModelDefaultValues, disconnector, cnZiel, __1.PhaseCode.ABC, 2);
|
|
2947
2625
|
}
|
|
2948
2626
|
else {
|
|
2949
|
-
this.logger.
|
|
2627
|
+
this.logger.debug(`Disconnector ${i7Data.id} besitzt keinen Zielknoten.`);
|
|
2950
2628
|
}
|
|
2951
|
-
const vl = this.
|
|
2952
|
-
const baseVoltage = this.
|
|
2629
|
+
const vl = this.cimModelDefaultValues.objects.get((_a = equipmentContainer) === null || _a === void 0 ? void 0 : _a.getVoltageLevelUUID());
|
|
2630
|
+
const baseVoltage = this.cimModelDefaultValues.getBaseVoltageByUUID(vl === null || vl === void 0 ? void 0 : vl.baseVoltageUUID);
|
|
2953
2631
|
if (baseVoltage) {
|
|
2954
2632
|
disconnector.baseVoltageUUID = baseVoltage.mrid;
|
|
2955
2633
|
}
|
|
2956
|
-
this.
|
|
2957
|
-
this.
|
|
2634
|
+
this.cimModelDefaultValues.addDisconnector(disconnector);
|
|
2635
|
+
this.addIdMapping(i7Data.id, disconnector.mrid, integral_sql_1.Integral7TableNames.TRENNER_3P);
|
|
2958
2636
|
}
|
|
2959
2637
|
}
|
|
2960
2638
|
else {
|
|
2961
|
-
this.logger.
|
|
2639
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TRENNER_3P} ist nicht vorhanden.`);
|
|
2962
2640
|
}
|
|
2963
2641
|
});
|
|
2964
2642
|
}
|
|
@@ -2971,38 +2649,38 @@ class ConverterIntegral7 {
|
|
|
2971
2649
|
const disconnector = new __1.Disconnector(__1.generateUUID(), i7Data.bezeichner);
|
|
2972
2650
|
disconnector.normalOpen = !utils_2.convertToBooleanI7(i7Data.schaltzustand);
|
|
2973
2651
|
disconnector.open = !utils_2.convertToBooleanI7(i7Data.schaltzustand);
|
|
2974
|
-
const equipmentContainer = this.
|
|
2975
|
-
const cnStart = this.
|
|
2976
|
-
const cnZiel = this.
|
|
2652
|
+
const equipmentContainer = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.seliste));
|
|
2653
|
+
const cnStart = this.cimModelDefaultValues.getConnectivityNode(this.integralID2UUID.get(i7Data.aknoten));
|
|
2654
|
+
const cnZiel = this.cimModelDefaultValues.getConnectivityNode(this.integralID2UUID.get(i7Data.eknoten));
|
|
2977
2655
|
if (equipmentContainer) {
|
|
2978
2656
|
disconnector.equipmentContainerUUID = equipmentContainer.mrid;
|
|
2979
2657
|
}
|
|
2980
2658
|
else {
|
|
2981
|
-
this.logger.
|
|
2659
|
+
this.logger.debug(`Disconnector Fi3 ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
2982
2660
|
}
|
|
2983
2661
|
if (cnStart) {
|
|
2984
|
-
__1.createConnection(this.
|
|
2662
|
+
__1.createConnection(this.cimModelDefaultValues, disconnector, cnStart, __1.PhaseCode.ABC, 1);
|
|
2985
2663
|
}
|
|
2986
2664
|
else {
|
|
2987
|
-
this.logger.
|
|
2665
|
+
this.logger.debug(`Disconnector Fi3 ${i7Data.id} besitzt keinen Anfangsknoten.`);
|
|
2988
2666
|
}
|
|
2989
2667
|
if (cnZiel) {
|
|
2990
|
-
__1.createConnection(this.
|
|
2668
|
+
__1.createConnection(this.cimModelDefaultValues, disconnector, cnZiel, __1.PhaseCode.ABC, 2);
|
|
2991
2669
|
}
|
|
2992
2670
|
else {
|
|
2993
|
-
this.logger.
|
|
2671
|
+
this.logger.debug(`Disconnector Fi3 ${i7Data.id} besitzt keinen Zielknoten.`);
|
|
2994
2672
|
}
|
|
2995
|
-
const vl = this.
|
|
2996
|
-
const baseVoltage = this.
|
|
2673
|
+
const vl = this.cimModelDefaultValues.objects.get((_a = equipmentContainer) === null || _a === void 0 ? void 0 : _a.getVoltageLevelUUID());
|
|
2674
|
+
const baseVoltage = this.cimModelDefaultValues.getBaseVoltageByUUID(vl === null || vl === void 0 ? void 0 : vl.baseVoltageUUID);
|
|
2997
2675
|
if (baseVoltage) {
|
|
2998
2676
|
disconnector.baseVoltageUUID = baseVoltage.mrid;
|
|
2999
2677
|
}
|
|
3000
|
-
this.
|
|
3001
|
-
this.
|
|
2678
|
+
this.cimModelDefaultValues.addDisconnector(disconnector);
|
|
2679
|
+
this.addIdMapping(i7Data.id, disconnector.mrid, integral_sql_1.Integral7TableNames.TRENNERFI_3P);
|
|
3002
2680
|
}
|
|
3003
2681
|
}
|
|
3004
2682
|
else {
|
|
3005
|
-
this.logger.
|
|
2683
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.TRENNERFI_3P} ist nicht vorhanden.`);
|
|
3006
2684
|
}
|
|
3007
2685
|
});
|
|
3008
2686
|
}
|
|
@@ -3015,38 +2693,38 @@ class ConverterIntegral7 {
|
|
|
3015
2693
|
const breaker = new __1.Breaker(__1.generateUUID(), i7Data.bezeichner);
|
|
3016
2694
|
breaker.normalOpen = !utils_2.convertToBooleanI7(i7Data.schaltzustand);
|
|
3017
2695
|
breaker.open = !utils_2.convertToBooleanI7(i7Data.schaltzustand);
|
|
3018
|
-
const equipmentContainer = this.
|
|
3019
|
-
const cnStart = this.
|
|
3020
|
-
const cnZiel = this.
|
|
2696
|
+
const equipmentContainer = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.seliste));
|
|
2697
|
+
const cnStart = this.cimModelDefaultValues.getConnectivityNode(this.integralID2UUID.get(i7Data.aknoten));
|
|
2698
|
+
const cnZiel = this.cimModelDefaultValues.getConnectivityNode(this.integralID2UUID.get(i7Data.eknoten));
|
|
3021
2699
|
if (equipmentContainer) {
|
|
3022
2700
|
breaker.equipmentContainerUUID = equipmentContainer.mrid;
|
|
3023
2701
|
}
|
|
3024
2702
|
else {
|
|
3025
|
-
this.logger.
|
|
2703
|
+
this.logger.debug(`LS ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
3026
2704
|
}
|
|
3027
2705
|
if (cnStart) {
|
|
3028
|
-
__1.createConnection(this.
|
|
2706
|
+
__1.createConnection(this.cimModelDefaultValues, breaker, cnStart, __1.PhaseCode.ABC, 1);
|
|
3029
2707
|
}
|
|
3030
2708
|
else {
|
|
3031
|
-
this.logger.
|
|
2709
|
+
this.logger.debug(`LS ${i7Data.id} besitzt keinen Anfangsknoten.`);
|
|
3032
2710
|
}
|
|
3033
2711
|
if (cnZiel) {
|
|
3034
|
-
__1.createConnection(this.
|
|
2712
|
+
__1.createConnection(this.cimModelDefaultValues, breaker, cnZiel, __1.PhaseCode.ABC, 2);
|
|
3035
2713
|
}
|
|
3036
2714
|
else {
|
|
3037
|
-
this.logger.
|
|
2715
|
+
this.logger.debug(`LS ${i7Data.id} besitzt keinen Zielknoten.`);
|
|
3038
2716
|
}
|
|
3039
|
-
const vl = this.
|
|
3040
|
-
const baseVoltage = this.
|
|
2717
|
+
const vl = this.cimModelDefaultValues.objects.get((_a = equipmentContainer) === null || _a === void 0 ? void 0 : _a.getVoltageLevelUUID());
|
|
2718
|
+
const baseVoltage = this.cimModelDefaultValues.getBaseVoltageByUUID(vl === null || vl === void 0 ? void 0 : vl.baseVoltageUUID);
|
|
3041
2719
|
if (baseVoltage) {
|
|
3042
2720
|
breaker.baseVoltageUUID = baseVoltage.mrid;
|
|
3043
2721
|
}
|
|
3044
|
-
this.
|
|
3045
|
-
this.
|
|
2722
|
+
this.cimModelDefaultValues.addBreaker(breaker);
|
|
2723
|
+
this.addIdMapping(i7Data.id, breaker.mrid, integral_sql_1.Integral7TableNames.LEISTUNGSSCHALTER);
|
|
3046
2724
|
}
|
|
3047
2725
|
}
|
|
3048
2726
|
else {
|
|
3049
|
-
this.logger.
|
|
2727
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.LEISTUNGSSCHALTER} ist nicht vorhanden.`);
|
|
3050
2728
|
}
|
|
3051
2729
|
});
|
|
3052
2730
|
}
|
|
@@ -3056,19 +2734,19 @@ class ConverterIntegral7 {
|
|
|
3056
2734
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.HGUE_KOPFSTATION_KLASSISCH, 0, 0, knotenSfIDs));
|
|
3057
2735
|
for (const i7Data of result) {
|
|
3058
2736
|
const dcConverterUnit = new DCConverterUnit_1.DCConverterUnit(__1.generateUUID(), 'DCConverterUnit');
|
|
3059
|
-
const acConnectivityNode = this.
|
|
2737
|
+
const acConnectivityNode = this.cimModelDefaultValues.connectivityNodes.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
3060
2738
|
if (acConnectivityNode) {
|
|
3061
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('Substation', this.
|
|
2739
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('Substation', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(acConnectivityNode.getConnectivityNodeContainerUUID()));
|
|
3062
2740
|
if (equipmentContainer) {
|
|
3063
2741
|
dcConverterUnit.name = `DCConverterUnit ${equipmentContainer.name}`;
|
|
3064
2742
|
dcConverterUnit.setSubstation(equipmentContainer);
|
|
3065
2743
|
}
|
|
3066
2744
|
else {
|
|
3067
|
-
this.logger.
|
|
2745
|
+
this.logger.debug(`DCConverterUnit ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
3068
2746
|
}
|
|
3069
2747
|
}
|
|
3070
2748
|
else {
|
|
3071
|
-
this.logger.
|
|
2749
|
+
this.logger.debug(`DCConverterUnit ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
3072
2750
|
}
|
|
3073
2751
|
const csConverter = new CsConverter_1.CsConverter(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname);
|
|
3074
2752
|
csConverter.equipmentContainer = dcConverterUnit;
|
|
@@ -3092,12 +2770,12 @@ class ConverterIntegral7 {
|
|
|
3092
2770
|
csConverter.operatingMode = CsOperatingModeKind_1.CsOperatingModeKind.rectifier;
|
|
3093
2771
|
}
|
|
3094
2772
|
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
3095
|
-
__1.createSvStatus(this.
|
|
2773
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, csConverter);
|
|
3096
2774
|
if (acConnectivityNode) {
|
|
3097
|
-
__1.createConnection(this.
|
|
2775
|
+
__1.createConnection(this.cimModelDefaultValues, csConverter, acConnectivityNode, __1.PhaseCode.ABC, 1);
|
|
3098
2776
|
}
|
|
3099
2777
|
else {
|
|
3100
|
-
this.logger.
|
|
2778
|
+
this.logger.debug(`CsConverter ${i7Data.id} ${csConverter.mrid} besitzt keinen AC Anschluss.`);
|
|
3101
2779
|
}
|
|
3102
2780
|
const dcNode = new DCNode_1.DCNode(__1.generateUUID(), 'DCNode');
|
|
3103
2781
|
dcNode.dcEquipmentContainerUUID = dcConverterUnit.mrid;
|
|
@@ -3106,11 +2784,11 @@ class ConverterIntegral7 {
|
|
|
3106
2784
|
acDCConverterDCTerminal.dCConductingEquipmentUUID = csConverter.mrid;
|
|
3107
2785
|
acDCConverterDCTerminal.dcNodeUUID = dcNode.mrid;
|
|
3108
2786
|
this.checkMemoryObject(i7Data.id, dcNode);
|
|
3109
|
-
this.
|
|
3110
|
-
this.
|
|
3111
|
-
this.
|
|
3112
|
-
this.
|
|
3113
|
-
this.
|
|
2787
|
+
this.cimModelDefaultValues.addDCConverterUnit(dcConverterUnit);
|
|
2788
|
+
this.cimModelDefaultValues.addCSConverter(csConverter);
|
|
2789
|
+
this.cimModelDefaultValues.addDCNode(dcNode);
|
|
2790
|
+
this.cimModelDefaultValues.addACDCConverterDCTerminal(acDCConverterDCTerminal);
|
|
2791
|
+
this.addIdMapping(i7Data.id, csConverter.mrid, integral_sql_1.Integral7TableNames.HGUE_KOPFSTATION_KLASSISCH);
|
|
3114
2792
|
}
|
|
3115
2793
|
}
|
|
3116
2794
|
});
|
|
@@ -3121,19 +2799,19 @@ class ConverterIntegral7 {
|
|
|
3121
2799
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.HGUE_KOPFSTATION_VSC, 0, 0, knotenSfIDs));
|
|
3122
2800
|
for (const i7Data of result) {
|
|
3123
2801
|
const dcConverterUnit = new DCConverterUnit_1.DCConverterUnit(__1.generateUUID(), 'DCConverterUnit');
|
|
3124
|
-
const acConnectivityNode = this.
|
|
2802
|
+
const acConnectivityNode = this.cimModelDefaultValues.connectivityNodes.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
3125
2803
|
if (acConnectivityNode) {
|
|
3126
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('Substation', this.
|
|
2804
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('Substation', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(acConnectivityNode.getConnectivityNodeContainerUUID()));
|
|
3127
2805
|
if (equipmentContainer) {
|
|
3128
2806
|
dcConverterUnit.name = `DCConverterUnit ${equipmentContainer.name}`;
|
|
3129
2807
|
dcConverterUnit.setSubstation(equipmentContainer);
|
|
3130
2808
|
}
|
|
3131
2809
|
else {
|
|
3132
|
-
this.logger.
|
|
2810
|
+
this.logger.debug(`DCConverterUnit ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
3133
2811
|
}
|
|
3134
2812
|
}
|
|
3135
2813
|
else {
|
|
3136
|
-
this.logger.
|
|
2814
|
+
this.logger.debug(`DCConverterUnit ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
3137
2815
|
}
|
|
3138
2816
|
const vsConverter = new VsConverter_1.VsConverter(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname);
|
|
3139
2817
|
vsConverter.equipmentContainer = dcConverterUnit;
|
|
@@ -3160,12 +2838,12 @@ class ConverterIntegral7 {
|
|
|
3160
2838
|
vsConverter.qPccControl = VsQpccControlKind_1.VsQpccControlKind.powerFactorPcc;
|
|
3161
2839
|
}
|
|
3162
2840
|
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
3163
|
-
__1.createSvStatus(this.
|
|
2841
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, vsConverter);
|
|
3164
2842
|
if (acConnectivityNode) {
|
|
3165
|
-
__1.createConnection(this.
|
|
2843
|
+
__1.createConnection(this.cimModelDefaultValues, vsConverter, acConnectivityNode, __1.PhaseCode.ABC, 1);
|
|
3166
2844
|
}
|
|
3167
2845
|
else {
|
|
3168
|
-
this.logger.
|
|
2846
|
+
this.logger.debug(`VsConverter ${i7Data.id} ${vsConverter.mrid} besitzt keinen AC Anschluss.`);
|
|
3169
2847
|
}
|
|
3170
2848
|
const dcNode = new DCNode_1.DCNode(__1.generateUUID(), 'DCNode');
|
|
3171
2849
|
dcNode.dcEquipmentContainerUUID = dcConverterUnit.mrid;
|
|
@@ -3174,11 +2852,11 @@ class ConverterIntegral7 {
|
|
|
3174
2852
|
acDCConverterDCTerminal.dCConductingEquipmentUUID = vsConverter.mrid;
|
|
3175
2853
|
acDCConverterDCTerminal.dcNodeUUID = dcNode.mrid;
|
|
3176
2854
|
this.checkMemoryObject(i7Data.id, dcNode);
|
|
3177
|
-
this.
|
|
3178
|
-
this.
|
|
3179
|
-
this.
|
|
3180
|
-
this.
|
|
3181
|
-
this.
|
|
2855
|
+
this.cimModelDefaultValues.addDCConverterUnit(dcConverterUnit);
|
|
2856
|
+
this.cimModelDefaultValues.addVSConverter(vsConverter);
|
|
2857
|
+
this.cimModelDefaultValues.addDCNode(dcNode);
|
|
2858
|
+
this.cimModelDefaultValues.addACDCConverterDCTerminal(acDCConverterDCTerminal);
|
|
2859
|
+
this.addIdMapping(i7Data.id, vsConverter.mrid, integral_sql_1.Integral7TableNames.HGUE_KOPFSTATION_VSC);
|
|
3182
2860
|
}
|
|
3183
2861
|
}
|
|
3184
2862
|
});
|
|
@@ -3200,8 +2878,8 @@ class ConverterIntegral7 {
|
|
|
3200
2878
|
dcLineSegment.resistance = i7Data.rdc;
|
|
3201
2879
|
dcLineSegment.equipmentContainerUUID = dcLine.mrid;
|
|
3202
2880
|
const bipol = utils_2.convertToBooleanI7(i7Data.bipol);
|
|
3203
|
-
const acDCConverterStart = this.
|
|
3204
|
-
const acDCConverterTarget = this.
|
|
2881
|
+
const acDCConverterStart = this.cimModelDefaultValues.getObject(this.integralID2UUID.get(i7Data.anetzobjekt));
|
|
2882
|
+
const acDCConverterTarget = this.cimModelDefaultValues.getObject(this.integralID2UUID.get(i7Data.enetzobjekt));
|
|
3205
2883
|
const converterUnitStart = (_a = acDCConverterStart) === null || _a === void 0 ? void 0 : _a.equipmentContainer;
|
|
3206
2884
|
const converterUnitTarget = (_b = acDCConverterTarget) === null || _b === void 0 ? void 0 : _b.equipmentContainer;
|
|
3207
2885
|
switch (bipol) {
|
|
@@ -3217,32 +2895,34 @@ class ConverterIntegral7 {
|
|
|
3217
2895
|
const startDCNode = this.inmemoryObjects.get(i7Data.anetzobjekt);
|
|
3218
2896
|
if (startDCNode) {
|
|
3219
2897
|
const dcTerminal = new DCTerminal_1.DCTerminal(__1.generateUUID(), 'DCTerminal_HGÜ_Leitung');
|
|
3220
|
-
dcTerminal.
|
|
2898
|
+
dcTerminal.connected = true;
|
|
2899
|
+
dcTerminal.sequenceNumber = 1;
|
|
3221
2900
|
dcTerminal.dCConductingEquipmentUUID = dcLineSegment.mrid;
|
|
3222
2901
|
dcTerminal.dcNodeUUID = startDCNode.mrid;
|
|
3223
|
-
this.
|
|
2902
|
+
this.cimModelDefaultValues.addDCTerminal(dcTerminal);
|
|
3224
2903
|
}
|
|
3225
2904
|
else {
|
|
3226
|
-
this.logger.
|
|
2905
|
+
this.logger.debug(`HGÜ-Leitung ${i7Data.id} ${dcLineSegment.mrid} besitzt keinen Anfangsknoten. ${i7Data.anetzobjekt} ${this.integralID2UUID.get(i7Data.anetzobjekt)}`);
|
|
3227
2906
|
}
|
|
3228
2907
|
const tartgetDCNode = this.inmemoryObjects.get(i7Data.enetzobjekt);
|
|
3229
2908
|
if (tartgetDCNode) {
|
|
3230
2909
|
const dcTerminal = new DCTerminal_1.DCTerminal(__1.generateUUID(), 'DCTerminal_HGÜ_Leitung');
|
|
2910
|
+
dcTerminal.connected = true;
|
|
3231
2911
|
dcTerminal.sequenceNumber = 2;
|
|
3232
2912
|
dcTerminal.dCConductingEquipmentUUID = dcLineSegment.mrid;
|
|
3233
2913
|
dcTerminal.dcNodeUUID = tartgetDCNode.mrid;
|
|
3234
|
-
this.
|
|
2914
|
+
this.cimModelDefaultValues.addDCTerminal(dcTerminal);
|
|
3235
2915
|
}
|
|
3236
2916
|
else {
|
|
3237
|
-
this.logger.
|
|
2917
|
+
this.logger.debug(`HGÜ-Leitung ${i7Data.id} ${dcLineSegment.mrid} besitzt keinen Zielknoten. ${i7Data.enetzobjekt} ${this.integralID2UUID.get(i7Data.enetzobjekt)}`);
|
|
3238
2918
|
}
|
|
3239
|
-
this.
|
|
3240
|
-
this.
|
|
3241
|
-
this.
|
|
2919
|
+
this.cimModelDefaultValues.addDCLine(dcLine);
|
|
2920
|
+
this.cimModelDefaultValues.addDCLineSegment(dcLineSegment);
|
|
2921
|
+
this.addIdMapping(i7Data.id, dcLineSegment.mrid, integral_sql_1.Integral7TableNames.HGUE_LEITUNG);
|
|
3242
2922
|
}
|
|
3243
2923
|
}
|
|
3244
2924
|
else {
|
|
3245
|
-
this.logger.
|
|
2925
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.HGUE_LEITUNG} ist nicht vorhanden.`);
|
|
3246
2926
|
}
|
|
3247
2927
|
});
|
|
3248
2928
|
}
|
|
@@ -3253,11 +2933,12 @@ class ConverterIntegral7 {
|
|
|
3253
2933
|
for (const i7Data of result) {
|
|
3254
2934
|
const externalNetworkInjection = new __1.ExternalNetworkInjection(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname);
|
|
3255
2935
|
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
3256
|
-
__1.createSvStatus(this.
|
|
2936
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, externalNetworkInjection);
|
|
3257
2937
|
const einspeisePrio = utils_2.convertToNumberI7(i7Data.einspprio);
|
|
3258
2938
|
externalNetworkInjection.p = utils_2.convertToNumberI7(i7Data.p_ersatznetz) + utils_2.convertToNumberI7(i7Data.p_restnetz);
|
|
3259
2939
|
externalNetworkInjection.q = utils_2.convertToNumberI7(i7Data.q_ersatznetz) + utils_2.convertToNumberI7(i7Data.q_restnetz);
|
|
3260
|
-
|
|
2940
|
+
const kr = 0;
|
|
2941
|
+
externalNetworkInjection.governorSCD = kr;
|
|
3261
2942
|
externalNetworkInjection.referencePriority = einspeisePrio;
|
|
3262
2943
|
externalNetworkInjection.maxZ0ToZ1Ratio = utils_2.convertToNumberI7(i7Data.z0_z1);
|
|
3263
2944
|
const regulatingControl = new __1.RegulatingControl(__1.generateUUID(), `RG_BI_${i7Data.id}`);
|
|
@@ -3266,12 +2947,12 @@ class ConverterIntegral7 {
|
|
|
3266
2947
|
regulatingControl.enabled = inBetrieb;
|
|
3267
2948
|
regulatingControl.targetValueUnitMultiplier = __1.UnitMultiplier.k;
|
|
3268
2949
|
externalNetworkInjection.regulatingControl = regulatingControl;
|
|
3269
|
-
const connectivityNode = this.
|
|
2950
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
3270
2951
|
if (connectivityNode) {
|
|
3271
|
-
const terminal = __1.createConnection(this.
|
|
2952
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, externalNetworkInjection, connectivityNode, __1.PhaseCode.ABC);
|
|
3272
2953
|
regulatingControl.terminal = terminal;
|
|
3273
2954
|
terminal.addRegulatingControl(regulatingControl);
|
|
3274
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
2955
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
3275
2956
|
if (equipmentContainer) {
|
|
3276
2957
|
externalNetworkInjection.equipmentContainerUUID = equipmentContainer.mrid;
|
|
3277
2958
|
const sollSpanungen = this.eqSpannungsBander.get(equipmentContainer.mrid);
|
|
@@ -3289,19 +2970,19 @@ class ConverterIntegral7 {
|
|
|
3289
2970
|
}
|
|
3290
2971
|
}
|
|
3291
2972
|
else {
|
|
3292
|
-
this.logger.
|
|
2973
|
+
this.logger.debug(`BoundaryInjection ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
3293
2974
|
}
|
|
3294
2975
|
}
|
|
3295
2976
|
else {
|
|
3296
|
-
this.logger.
|
|
2977
|
+
this.logger.debug(`BoundaryInjection ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
3297
2978
|
}
|
|
3298
|
-
this.
|
|
3299
|
-
this.
|
|
3300
|
-
this.
|
|
2979
|
+
this.cimModelDefaultValues.addExternalNetworkInjection(externalNetworkInjection);
|
|
2980
|
+
this.cimModelDefaultValues.addRegulatingControl(regulatingControl);
|
|
2981
|
+
this.addIdMapping(i7Data.id, externalNetworkInjection.mrid, integral_sql_1.Integral7TableNames.BOUNDARYINJECTION);
|
|
3301
2982
|
}
|
|
3302
2983
|
}
|
|
3303
2984
|
else {
|
|
3304
|
-
this.logger.
|
|
2985
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.EINSPEISUNG} ist nicht vorhanden.`);
|
|
3305
2986
|
}
|
|
3306
2987
|
});
|
|
3307
2988
|
}
|
|
@@ -3322,27 +3003,27 @@ class ConverterIntegral7 {
|
|
|
3322
3003
|
asynchronousMachine.q = i7Data.flag_ind === 1 ? i7Data.q0_ind : i7Data.q0_kap;
|
|
3323
3004
|
asynchronousMachine.controlEnabled = false;
|
|
3324
3005
|
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
3325
|
-
__1.createSvStatus(this.
|
|
3326
|
-
const connectivityNode = this.
|
|
3006
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, asynchronousMachine);
|
|
3007
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
3327
3008
|
if (connectivityNode) {
|
|
3328
|
-
__1.createConnection(this.
|
|
3329
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
3009
|
+
__1.createConnection(this.cimModelDefaultValues, asynchronousMachine, connectivityNode, __1.PhaseCode.ABC);
|
|
3010
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
3330
3011
|
if (equipmentContainer) {
|
|
3331
3012
|
asynchronousMachine.equipmentContainerUUID = equipmentContainer === null || equipmentContainer === void 0 ? void 0 : equipmentContainer.mrid;
|
|
3332
|
-
this.
|
|
3333
|
-
this.
|
|
3013
|
+
this.cimModelDefaultValues.addAsynchronousMachine(asynchronousMachine);
|
|
3014
|
+
this.addIdMapping(i7Data.id, asynchronousMachine.mrid, integral_sql_1.Integral7TableNames.ASYNCHRONMOTOR);
|
|
3334
3015
|
}
|
|
3335
3016
|
else {
|
|
3336
|
-
this.logger.
|
|
3017
|
+
this.logger.debug(`AsynchronousMachine ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
3337
3018
|
}
|
|
3338
3019
|
}
|
|
3339
3020
|
else {
|
|
3340
|
-
this.logger.
|
|
3021
|
+
this.logger.debug(`AsynchronousMachine ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
3341
3022
|
}
|
|
3342
3023
|
}
|
|
3343
3024
|
}
|
|
3344
3025
|
else {
|
|
3345
|
-
this.logger.
|
|
3026
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.ASYNCHRONMOTOR} ist nicht vorhanden.`);
|
|
3346
3027
|
}
|
|
3347
3028
|
});
|
|
3348
3029
|
}
|
|
@@ -3352,9 +3033,15 @@ class ConverterIntegral7 {
|
|
|
3352
3033
|
const result = yield this.queryFunctionWrapper(integral_sql_1.getNetzQuery(integral_sql_1.I7Objects.KOMPENSATIONSDROSSEL, 0, 0, knotenIDs));
|
|
3353
3034
|
for (const i7Data of result) {
|
|
3354
3035
|
const shunt = new LinearShuntCompensator_1.LinearShuntCompensator(__1.getUUID(i7Data.guid), utils_2.getName(i7Data), i7Data.kurzname, i7Data.kommentar);
|
|
3036
|
+
if (shunt.mrid === '2e35adfe3cd04707b24e4c1df705c086') {
|
|
3037
|
+
console.log();
|
|
3038
|
+
}
|
|
3355
3039
|
shunt.normalSections = i7Data.aktstufe;
|
|
3356
3040
|
shunt.maximumSections = i7Data.maxstufe;
|
|
3357
3041
|
shunt.nomU = i7Data.ur;
|
|
3042
|
+
shunt.gPerSection = i7Data.pr / Math.pow(i7Data.ur, 2);
|
|
3043
|
+
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
3044
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, shunt);
|
|
3358
3045
|
const spannungsregelungLokal = utils_2.isBooleanI7(i7Data.flag_lf) ? utils_2.convertToBooleanI7(i7Data.flag_lf) : false;
|
|
3359
3046
|
const spannungsregelungRemote = utils_2.isBooleanI7(i7Data.rpv_geregelt) ? utils_2.convertToBooleanI7(i7Data.rpv_geregelt) : false;
|
|
3360
3047
|
if (spannungsregelungLokal || spannungsregelungRemote) {
|
|
@@ -3363,34 +3050,33 @@ class ConverterIntegral7 {
|
|
|
3363
3050
|
regulatingControl.discrete = true;
|
|
3364
3051
|
regulatingControl.targetDeadband = i7Data.uband;
|
|
3365
3052
|
regulatingControl.targetValueUnitMultiplier = __1.UnitMultiplier.k;
|
|
3053
|
+
regulatingControl.enabled = inBetrieb;
|
|
3366
3054
|
shunt.regulatingControl = regulatingControl;
|
|
3367
3055
|
}
|
|
3368
|
-
const
|
|
3369
|
-
__1.createSvStatus(this.cimModel, inBetrieb, shunt);
|
|
3370
|
-
const connectivityNode = this.cimModel.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
3056
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
3371
3057
|
if (connectivityNode) {
|
|
3372
|
-
const terminal = __1.createConnection(this.
|
|
3058
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, shunt, connectivityNode, __1.PhaseCode.ABC);
|
|
3373
3059
|
if (shunt.regulatingControl && (spannungsregelungLokal || spannungsregelungRemote)) {
|
|
3374
3060
|
shunt.regulatingControl.terminalUUID = terminal.mrid;
|
|
3375
|
-
this.
|
|
3061
|
+
this.cimModelDefaultValues.addRegulatingControl(shunt.regulatingControl);
|
|
3376
3062
|
}
|
|
3377
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
3063
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
3378
3064
|
if (equipmentContainer) {
|
|
3379
3065
|
shunt.equipmentContainerUUID = equipmentContainer === null || equipmentContainer === void 0 ? void 0 : equipmentContainer.mrid;
|
|
3380
|
-
this.
|
|
3381
|
-
this.
|
|
3066
|
+
this.cimModelDefaultValues.addLinearShuntCompensator(shunt);
|
|
3067
|
+
this.addIdMapping(i7Data.id, shunt.mrid, integral_sql_1.Integral7TableNames.KOMPENSATIONSDROSSEL);
|
|
3382
3068
|
}
|
|
3383
3069
|
else {
|
|
3384
|
-
this.logger.
|
|
3070
|
+
this.logger.debug(`LinearShuntCompensator ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
3385
3071
|
}
|
|
3386
3072
|
}
|
|
3387
3073
|
else {
|
|
3388
|
-
this.logger.
|
|
3074
|
+
this.logger.debug(`LinearShuntCompensator ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
3389
3075
|
}
|
|
3390
3076
|
}
|
|
3391
3077
|
}
|
|
3392
3078
|
else {
|
|
3393
|
-
this.logger.
|
|
3079
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.KOMPENSATIONSDROSSEL} ist nicht vorhanden.`);
|
|
3394
3080
|
}
|
|
3395
3081
|
});
|
|
3396
3082
|
}
|
|
@@ -3403,39 +3089,44 @@ class ConverterIntegral7 {
|
|
|
3403
3089
|
shunt.normalSections = i7Data.aktstufe;
|
|
3404
3090
|
shunt.maximumSections = i7Data.maxstufe;
|
|
3405
3091
|
shunt.nomU = i7Data.ur;
|
|
3092
|
+
shunt.gPerSection = i7Data.pr / Math.pow(i7Data.ur, 2);
|
|
3093
|
+
const inBetrieb = utils_2.convertToBooleanI7(i7Data.betrieb);
|
|
3094
|
+
__1.createSvStatus(this.cimModelDefaultValues, inBetrieb, shunt);
|
|
3406
3095
|
const spannungsregelungLokal = utils_2.isBooleanI7(i7Data.flag_lf) ? utils_2.convertToBooleanI7(i7Data.flag_lf) : false;
|
|
3407
3096
|
const spannungsregelungRemote = utils_2.isBooleanI7(i7Data.rpv_geregelt) ? utils_2.convertToBooleanI7(i7Data.rpv_geregelt) : false;
|
|
3408
3097
|
if (spannungsregelungLokal || spannungsregelungRemote) {
|
|
3409
|
-
const regulatingControl = new __1.RegulatingControl(__1.generateUUID(), `
|
|
3098
|
+
const regulatingControl = new __1.RegulatingControl(__1.generateUUID(), `RG_Kompkond ${i7Data.id}`);
|
|
3410
3099
|
regulatingControl.mode = __1.RegulatingControlModeKind.voltage;
|
|
3100
|
+
regulatingControl.discrete = true;
|
|
3101
|
+
regulatingControl.enabled = inBetrieb;
|
|
3102
|
+
regulatingControl.targetDeadband = i7Data.uband;
|
|
3103
|
+
regulatingControl.targetValueUnitMultiplier = __1.UnitMultiplier.k;
|
|
3411
3104
|
shunt.regulatingControl = regulatingControl;
|
|
3412
|
-
this.
|
|
3105
|
+
this.cimModelDefaultValues.addRegulatingControl(shunt.regulatingControl);
|
|
3413
3106
|
}
|
|
3414
|
-
const
|
|
3415
|
-
__1.createSvStatus(this.cimModel, inBetrieb, shunt);
|
|
3416
|
-
const connectivityNode = this.cimModel.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
3107
|
+
const connectivityNode = this.cimModelDefaultValues.objects.get(this.integralID2UUID.get(i7Data.anschluss));
|
|
3417
3108
|
if (connectivityNode) {
|
|
3418
|
-
const terminal = __1.createConnection(this.
|
|
3109
|
+
const terminal = __1.createConnection(this.cimModelDefaultValues, shunt, connectivityNode, __1.PhaseCode.ABC);
|
|
3419
3110
|
if (shunt.regulatingControl && (spannungsregelungLokal || spannungsregelungRemote)) {
|
|
3420
3111
|
shunt.regulatingControl.terminalUUID = terminal.mrid;
|
|
3421
3112
|
}
|
|
3422
|
-
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.
|
|
3113
|
+
const equipmentContainer = utils_2.determineEquipmentContainer('VoltageLevel', this.cimModelDefaultValues, this.cimModelDefaultValues.getObject(connectivityNode.getConnectivityNodeContainerUUID()));
|
|
3423
3114
|
if (equipmentContainer) {
|
|
3424
3115
|
shunt.equipmentContainerUUID = equipmentContainer === null || equipmentContainer === void 0 ? void 0 : equipmentContainer.mrid;
|
|
3425
|
-
this.
|
|
3426
|
-
this.
|
|
3116
|
+
this.cimModelDefaultValues.addLinearShuntCompensator(shunt);
|
|
3117
|
+
this.addIdMapping(i7Data.id, shunt.mrid, integral_sql_1.Integral7TableNames.KOMPENSATIONSDROSSEL);
|
|
3427
3118
|
}
|
|
3428
3119
|
else {
|
|
3429
|
-
this.logger.
|
|
3120
|
+
this.logger.debug(`LinearShuntCompensator ${i7Data.id} besitzt keinen EquipmentContainer.`);
|
|
3430
3121
|
}
|
|
3431
3122
|
}
|
|
3432
3123
|
else {
|
|
3433
|
-
this.logger.
|
|
3124
|
+
this.logger.debug(`LinearShuntCompensator ${i7Data.id} besitzt keinen ConnectivityNode.`);
|
|
3434
3125
|
}
|
|
3435
3126
|
}
|
|
3436
3127
|
}
|
|
3437
3128
|
else {
|
|
3438
|
-
this.logger.
|
|
3129
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.KOMPENSATIONSDROSSEL} ist nicht vorhanden.`);
|
|
3439
3130
|
}
|
|
3440
3131
|
});
|
|
3441
3132
|
}
|
|
@@ -3447,14 +3138,14 @@ class ConverterIntegral7 {
|
|
|
3447
3138
|
if (i7Data.art === 2) {
|
|
3448
3139
|
const diagram = new __1.Diagram(__1.getUUID(i7Data.guid), i7Data.name, String(i7Data.id));
|
|
3449
3140
|
diagram.orientation = __1.OrientationKind.negative;
|
|
3450
|
-
diagram.diagramStyle = this.
|
|
3451
|
-
this.
|
|
3452
|
-
this.
|
|
3141
|
+
diagram.diagramStyle = this.cimModelDefaultValues.getDiagramStyle(__1.DIAGRAM_LAYOUT_TYPES.NODE_BREAKER);
|
|
3142
|
+
this.cimModelDefaultValues.addDiagram(diagram);
|
|
3143
|
+
this.i7SchemaID2UUID.set(i7Data.id, diagram.mrid);
|
|
3453
3144
|
}
|
|
3454
3145
|
}
|
|
3455
3146
|
}
|
|
3456
3147
|
else {
|
|
3457
|
-
this.logger.
|
|
3148
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NETZVARIANTEN} ist nicht vorhanden.`);
|
|
3458
3149
|
}
|
|
3459
3150
|
});
|
|
3460
3151
|
}
|
|
@@ -3470,18 +3161,31 @@ class ConverterIntegral7 {
|
|
|
3470
3161
|
object.c0 = +data.c0;
|
|
3471
3162
|
object.ratedCurrent = +data.ir;
|
|
3472
3163
|
}
|
|
3164
|
+
queryFunctionWrapper(query) {
|
|
3165
|
+
return new Promise((resolve, reject) => {
|
|
3166
|
+
this.queryFunction(query, (successResponse) => {
|
|
3167
|
+
resolve(successResponse);
|
|
3168
|
+
}, (errorResponse) => {
|
|
3169
|
+
reject(errorResponse);
|
|
3170
|
+
});
|
|
3171
|
+
});
|
|
3172
|
+
}
|
|
3473
3173
|
setACLineSegmentProperties(acLineSegment, data, psrTypeName, defaultValuesConfig) {
|
|
3174
|
+
const assetType = this.cimModelDefaultValues.getWireInfoByName(data.nametyp);
|
|
3175
|
+
let voltage = defaultValuesConfig.DefaultVoltage;
|
|
3474
3176
|
if (!acLineSegment.baseVoltage) {
|
|
3475
|
-
|
|
3476
|
-
|
|
3177
|
+
if (data.un && data.un > 0) {
|
|
3178
|
+
voltage = data.un;
|
|
3179
|
+
}
|
|
3180
|
+
else if (assetType === null || assetType === void 0 ? void 0 : assetType.voltage) {
|
|
3181
|
+
voltage = assetType.voltage;
|
|
3182
|
+
}
|
|
3183
|
+
const baseVoltage = __1.createBaseVoltageIfNotExists(this.cimModelDefaultValues, voltage);
|
|
3477
3184
|
acLineSegment.baseVoltage = baseVoltage;
|
|
3478
3185
|
}
|
|
3479
3186
|
if (data.laenge) {
|
|
3480
3187
|
acLineSegment.length = data.laenge;
|
|
3481
3188
|
}
|
|
3482
|
-
else {
|
|
3483
|
-
}
|
|
3484
|
-
const assetType = this.cimModel.getWireInfoByName(data.nametyp);
|
|
3485
3189
|
if (data.r0 && data.r0 !== 0) {
|
|
3486
3190
|
acLineSegment.r0 = data.laenge <= 0 ? data.r0 : data.r0;
|
|
3487
3191
|
}
|
|
@@ -3521,30 +3225,34 @@ class ConverterIntegral7 {
|
|
|
3521
3225
|
else if (assetType && assetType.ratedCurrent && assetType.ratedCurrent !== 0) {
|
|
3522
3226
|
this.setConductingEquipmentCurrentLimit(acLineSegment.name, terminalUUID, assetType.ratedCurrent);
|
|
3523
3227
|
}
|
|
3524
|
-
else {
|
|
3525
|
-
}
|
|
3526
3228
|
}
|
|
3527
|
-
const psrType = utils_1.createIfNotExitsPSRType(this.
|
|
3229
|
+
const psrType = utils_1.createIfNotExitsPSRType(this.cimModelDefaultValues, data.typ);
|
|
3528
3230
|
acLineSegment.psrTypeUUID = psrType.mrid;
|
|
3529
3231
|
}
|
|
3232
|
+
setACLineSegmentCurrentLimt(acLineSegment, nametyp, terminalUUID) {
|
|
3233
|
+
const assetType = this.cimModelDefaultValues.getWireInfoByName(nametyp);
|
|
3234
|
+
if (assetType && assetType.ratedCurrent && assetType.ratedCurrent !== 0) {
|
|
3235
|
+
this.setConductingEquipmentCurrentLimit(acLineSegment.name, terminalUUID, assetType.ratedCurrent);
|
|
3236
|
+
}
|
|
3237
|
+
}
|
|
3530
3238
|
setConductingEquipmentCurrentLimit(name, terminalUUID, ir) {
|
|
3531
3239
|
const currentLimit = new __1.CurrentLimit(__1.generateUUID(), `${name}`);
|
|
3532
|
-
this.
|
|
3240
|
+
this.cimModelDefaultValues.addCurrentLimit(currentLimit);
|
|
3533
3241
|
currentLimit.value = new __1.CurrentFlow(ir, __1.UnitMultiplier.none, __1.UnitSymbol.A);
|
|
3534
3242
|
const operationalLimitSet = new __1.OperationalLimitSet(__1.generateUUID(), `${name}`);
|
|
3535
|
-
this.
|
|
3243
|
+
this.cimModelDefaultValues.addOperationalLimitSet(operationalLimitSet);
|
|
3536
3244
|
currentLimit.operationalLimitSetUUID = operationalLimitSet.mrid;
|
|
3537
3245
|
const operationalLimitType = this.getOperationalLimitType('patl');
|
|
3538
3246
|
currentLimit.operationalLimitTypeUUID = operationalLimitType.mrid;
|
|
3539
3247
|
operationalLimitSet.terminalUUID = terminalUUID;
|
|
3540
3248
|
}
|
|
3541
3249
|
getOperationalLimitType(name) {
|
|
3542
|
-
let operationalLimitType = this.
|
|
3250
|
+
let operationalLimitType = this.cimModelDefaultValues.getOperationalLimitTypeByName(name);
|
|
3543
3251
|
if (!operationalLimitType) {
|
|
3544
3252
|
operationalLimitType = new __1.OperationalLimitType(__1.generateUUID(), name);
|
|
3545
3253
|
operationalLimitType.direction = __1.OperationalLimitDirectionKind.absoluteValue;
|
|
3546
3254
|
operationalLimitType.limitType = __1.LimitTypeKind.patl;
|
|
3547
|
-
this.
|
|
3255
|
+
this.cimModelDefaultValues.addOperationalLimitType(operationalLimitType);
|
|
3548
3256
|
}
|
|
3549
3257
|
return operationalLimitType;
|
|
3550
3258
|
}
|
|
@@ -3566,59 +3274,28 @@ class ConverterIntegral7 {
|
|
|
3566
3274
|
wicklung.uMax = data[umax];
|
|
3567
3275
|
wicklung.uMin = data[umin];
|
|
3568
3276
|
}
|
|
3569
|
-
convertSchemaBayElements(bay, diagram, saAusrichtung, deltaAusrichtung) {
|
|
3570
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
3571
|
-
for (const eqiup of bay.equipments) {
|
|
3572
|
-
if (eqiup instanceof __1.Disconnector) {
|
|
3573
|
-
const disconnector = eqiup;
|
|
3574
|
-
for (const terminal of disconnector.terminals.values()) {
|
|
3575
|
-
const connectedCE = utils_schema_1.isConnectedTo(terminal.connectivityNode, 'BusbarSection');
|
|
3576
|
-
if (connectedCE && terminal.connectivityNode.diagramObjects.length > 0) {
|
|
3577
|
-
const diagramObjectSSAB = utils_schema_1.getDiagramObjectBelonginToDiagram(terminal.connectivityNode.diagramObjects, diagram.mrid);
|
|
3578
|
-
const diagramObjectBay = utils_schema_1.getDiagramObjectBelonginToDiagram(bay.diagramObjects, diagram.mrid);
|
|
3579
|
-
if (diagramObjectSSAB && diagramObjectBay) {
|
|
3580
|
-
const diagramObject = new __1.DiagramObject(__1.getUUID(''), 'SSAB Trenner');
|
|
3581
|
-
if (saAusrichtung === 0) {
|
|
3582
|
-
const x = diagramObjectBay.diagramObjectPoints[0].xPosition + 16;
|
|
3583
|
-
const y = diagramObjectSSAB.diagramObjectPoints[0].yPosition + 0.5;
|
|
3584
|
-
const points = [new Point_1.Point(x, y)];
|
|
3585
|
-
utils_schema_1.createDiagramObjectPoints(diagramObject, points);
|
|
3586
|
-
eqiup.addDiagramObject(diagramObject);
|
|
3587
|
-
diagramObject.identifiedObject = eqiup;
|
|
3588
|
-
diagram.addDiagramObject(diagramObject);
|
|
3589
|
-
diagramObject.diagram = diagram;
|
|
3590
|
-
}
|
|
3591
|
-
}
|
|
3592
|
-
}
|
|
3593
|
-
else {
|
|
3594
|
-
}
|
|
3595
|
-
}
|
|
3596
|
-
}
|
|
3597
|
-
}
|
|
3598
|
-
});
|
|
3599
|
-
}
|
|
3600
3277
|
writeHeaderStart(xmlWriter, profileURI) {
|
|
3601
3278
|
xmlWriter.startDocument('1.0', 'UTF-8');
|
|
3602
3279
|
xmlWriter.startElementNS(__1.RDF_XML.RDF_NS_PREFIX, 'RDF', __1.RDF_XML.RDF_NS);
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3280
|
+
xml_serializer_1.writeElementAttribute(xmlWriter, `xmlns:${__1.RDF_XML.RDF_NS_PREFIX}`, __1.RDF_XML.RDF_NS);
|
|
3281
|
+
xml_serializer_1.writeElementAttribute(xmlWriter, `xmlns:${__1.RDF_XML.CIM_NS_PREFIX}`, __1.RDF_XML.CIM_NS_16);
|
|
3282
|
+
xml_serializer_1.writeElementAttribute(xmlWriter, `xmlns:${__1.RDF_XML.ENTSOE_NS_PREFIX}`, __1.RDF_XML.ENTSOE_NS);
|
|
3283
|
+
xml_serializer_1.writeElementAttribute(xmlWriter, `xmlns:${__1.RDF_XML.MD_NS_PREFIX}`, __1.RDF_XML.MD_NS);
|
|
3607
3284
|
if (profileURI === __1.RDF_XML.AMP_I7_PROFILE_URI) {
|
|
3608
|
-
|
|
3609
|
-
|
|
3610
|
-
|
|
3611
|
-
|
|
3285
|
+
xml_serializer_1.writeElementAttribute(xmlWriter, `xmlns:${__1.RDF_XML.AMPRION_NS_PREFIX}`, __1.RDF_XML.AMPRION_NS);
|
|
3286
|
+
xml_serializer_1.writeElementAttribute(xmlWriter, `xmlns:${__1.RDF_XML.IPS_NS_PREFIX}`, __1.RDF_XML.IPS_NS);
|
|
3287
|
+
xml_serializer_1.writeElementAttribute(xmlWriter, `xmlns:${__1.RDF_XML.CAPE_NS_PREFIX}`, __1.RDF_XML.CAPE_NS);
|
|
3288
|
+
xml_serializer_1.writeElementAttribute(xmlWriter, `xmlns:${__1.RDF_XML.EV_NS_PREFIX}`, __1.RDF_XML.ENERVANCE_NS);
|
|
3612
3289
|
}
|
|
3613
3290
|
}
|
|
3614
3291
|
writeHeaderEnd(xmlWriter) {
|
|
3615
3292
|
xmlWriter.endElement();
|
|
3616
3293
|
xmlWriter.endDocument();
|
|
3617
3294
|
}
|
|
3618
|
-
objectToCIMXML(xmlWriter, values, profileName, defaultValuesConfig) {
|
|
3295
|
+
objectToCIMXML(xmlWriter, values, profileName, defaultValuesConfig, logger) {
|
|
3619
3296
|
cgmes_validator_1.validateCGMESData(values, defaultValuesConfig);
|
|
3620
3297
|
for (const object of values.values()) {
|
|
3621
|
-
object.toCIMXML(xmlWriter, profileName);
|
|
3298
|
+
object.toCIMXML(xmlWriter, profileName, logger);
|
|
3622
3299
|
}
|
|
3623
3300
|
}
|
|
3624
3301
|
objectArrayToCIMXML(xmlWriter, values, profileName) {
|
|
@@ -3633,15 +3310,6 @@ class ConverterIntegral7 {
|
|
|
3633
3310
|
}
|
|
3634
3311
|
return false;
|
|
3635
3312
|
}
|
|
3636
|
-
queryFunctionWrapper(query) {
|
|
3637
|
-
return new Promise((resolve, reject) => {
|
|
3638
|
-
this.queryFunction(query, (successResponse) => {
|
|
3639
|
-
resolve(successResponse);
|
|
3640
|
-
}, (errorResponse) => {
|
|
3641
|
-
reject(errorResponse);
|
|
3642
|
-
});
|
|
3643
|
-
});
|
|
3644
|
-
}
|
|
3645
3313
|
queryFunction(query, successCallback, errorCallback) {
|
|
3646
3314
|
this.mysqlConnection.query(query, (error, results, fields) => {
|
|
3647
3315
|
if (error)
|
|
@@ -3649,6 +3317,9 @@ class ConverterIntegral7 {
|
|
|
3649
3317
|
successCallback(results);
|
|
3650
3318
|
});
|
|
3651
3319
|
}
|
|
3320
|
+
openConnection() {
|
|
3321
|
+
this.mysqlConnection.connect();
|
|
3322
|
+
}
|
|
3652
3323
|
isTableAvailable(tableName) {
|
|
3653
3324
|
return this.availableTableNames.indexOf(tableName) > -1 ? true : false;
|
|
3654
3325
|
}
|
|
@@ -3661,25 +3332,55 @@ class ConverterIntegral7 {
|
|
|
3661
3332
|
password: mySqlConfig.password,
|
|
3662
3333
|
});
|
|
3663
3334
|
}
|
|
3664
|
-
openConnection() {
|
|
3665
|
-
this.mysqlConnection.connect();
|
|
3666
|
-
}
|
|
3667
3335
|
closeConnection() {
|
|
3668
3336
|
this.mysqlConnection.end();
|
|
3669
3337
|
}
|
|
3338
|
+
checkRegelungsknotenTerminals(schlaufenTerminals) {
|
|
3339
|
+
for (const terminal of schlaufenTerminals) {
|
|
3340
|
+
const cnI7IDs = this.UUID2Integral7ID_.get(terminal.connectivityNodeUUID);
|
|
3341
|
+
if (!cnI7IDs)
|
|
3342
|
+
continue;
|
|
3343
|
+
const spData = this.knotenSpannungsband.get(cnI7IDs.find(elem => elem));
|
|
3344
|
+
if (spData) {
|
|
3345
|
+
spData.terminals.push({ uuid: terminal.mrid, connected: terminal.connected });
|
|
3346
|
+
}
|
|
3347
|
+
}
|
|
3348
|
+
}
|
|
3670
3349
|
addDefaultObjects(defaultValuesConfig) {
|
|
3350
|
+
const region = utils_1.createIfNotExitsGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.GeographicalRegion.name);
|
|
3351
|
+
region.description = defaultValuesConfig.GeographicalRegion.description;
|
|
3352
|
+
const subregion = utils_1.createIfNotExitsSubGeoregionByName(this.cimModelDefaultValues, defaultValuesConfig.SubGeographicalRegion.name, region);
|
|
3353
|
+
subregion.shortName = defaultValuesConfig.SubGeographicalRegion.shortName;
|
|
3354
|
+
subregion.description = defaultValuesConfig.SubGeographicalRegion.description;
|
|
3671
3355
|
const loadArea = new LoadArea_1.LoadArea(__1.generateUUID(), defaultValuesConfig.LoadArea.name);
|
|
3672
|
-
this.
|
|
3356
|
+
this.cimModelDefaultValues.addLoadArea(loadArea);
|
|
3673
3357
|
const subLoadArea = new SubLoadArea_1.SubLoadArea(__1.generateUUID(), defaultValuesConfig.SubLoadArea.name);
|
|
3674
3358
|
subLoadArea.loadArea = loadArea;
|
|
3675
|
-
this.
|
|
3359
|
+
this.cimModelDefaultValues.addSubLoadArea(subLoadArea);
|
|
3676
3360
|
const conformLoadGroup = new ConformLoadGroup_1.ConformLoadGroup(__1.generateUUID(), defaultValuesConfig.ConformLoadGroup.name);
|
|
3677
3361
|
conformLoadGroup.subLoadArea = subLoadArea;
|
|
3678
|
-
this.
|
|
3362
|
+
this.cimModelDefaultValues.addConformLoadGroup(conformLoadGroup);
|
|
3679
3363
|
const crsUrn = 'urn:ogc:def:crs:EPSG::4326';
|
|
3680
3364
|
const coordinateSystem = new __1.CoordinateSystem(__1.generateUUID(), this.coordinateSystemName);
|
|
3681
3365
|
coordinateSystem.crsUrn = crsUrn;
|
|
3682
|
-
this.
|
|
3366
|
+
this.cimModelDefaultValues.addCoordinateSystem(coordinateSystem);
|
|
3367
|
+
}
|
|
3368
|
+
addIdMapping(i7ID, uuid, type) {
|
|
3369
|
+
if (this.integralID2UUID.has(i7ID)) {
|
|
3370
|
+
console.log(`ID ${i7ID} existiert bereits. Typ ${this.integralID2Type.get(i7ID)} neuer Typ ${type}`);
|
|
3371
|
+
}
|
|
3372
|
+
else {
|
|
3373
|
+
this.integralID2UUID.set(i7ID, uuid);
|
|
3374
|
+
this.integralID2Type.set(i7ID, type);
|
|
3375
|
+
}
|
|
3376
|
+
}
|
|
3377
|
+
addUUIDMapping(i7ID, uuid) {
|
|
3378
|
+
if (this.UUID2Integral7ID_.has(uuid)) {
|
|
3379
|
+
this.UUID2Integral7ID_.get(uuid).push(i7ID);
|
|
3380
|
+
}
|
|
3381
|
+
else {
|
|
3382
|
+
this.UUID2Integral7ID_.set(uuid, [i7ID]);
|
|
3383
|
+
}
|
|
3683
3384
|
}
|
|
3684
3385
|
}
|
|
3685
3386
|
exports.ConverterIntegral7 = ConverterIntegral7;
|
|
@@ -3701,20 +3402,21 @@ exports.getVoltageLevelByVoltage = getVoltageLevelByVoltage;
|
|
|
3701
3402
|
function validateRegulatingControls(regulatingControls, logger, type) {
|
|
3702
3403
|
for (const rg of regulatingControls.values()) {
|
|
3703
3404
|
if (!rg.name)
|
|
3704
|
-
logger.
|
|
3405
|
+
logger.debug(`RegulatingControl ohne Namen | ${type}`);
|
|
3705
3406
|
const terminalUUID = rg.terminal ? rg.terminal.mrid : rg.terminalUUID;
|
|
3706
3407
|
if (!terminalUUID)
|
|
3707
|
-
logger.
|
|
3408
|
+
logger.debug(`RegulatingControl ohne Terminal ${rg.name} | ${type}`);
|
|
3708
3409
|
}
|
|
3709
3410
|
}
|
|
3710
3411
|
function getGeoCoordinates(i7Data) {
|
|
3711
|
-
if (i7Data.geokoor_pl_breite_h && i7Data.geokoor_pl_breite_m && i7Data.geokoor_pl_breite_s
|
|
3412
|
+
if (i7Data.geokoor_pl_breite_h && i7Data.geokoor_pl_breite_m && i7Data.geokoor_pl_breite_s &&
|
|
3413
|
+
i7Data.geokoor_pl_laenge_h && i7Data.geokoor_pl_laenge_m && i7Data.geokoor_pl_laenge_s) {
|
|
3712
3414
|
const lon = (((i7Data.geokoor_pl_laenge_s / 60) + i7Data.geokoor_pl_laenge_m) / 60) + i7Data.geokoor_pl_laenge_h;
|
|
3713
3415
|
const lat = (((i7Data.geokoor_pl_breite_s / 60) + i7Data.geokoor_pl_breite_m) / 60) + i7Data.geokoor_pl_breite_h;
|
|
3714
3416
|
return [String(lon), String(lat)];
|
|
3715
3417
|
}
|
|
3716
|
-
if (i7Data.geokoor_pl_breite_h && i7Data.
|
|
3717
|
-
return [String(i7Data.
|
|
3418
|
+
if (i7Data.geokoor_pl_breite_h && i7Data.geokoor_pl_laenge_h) {
|
|
3419
|
+
return [String(i7Data.geokoor_pl_laenge_h), String(i7Data.geokoor_pl_breite_h)];
|
|
3718
3420
|
}
|
|
3719
3421
|
return undefined;
|
|
3720
3422
|
}
|
|
@@ -3736,7 +3438,17 @@ function getValidTerminals(objects, inMemoryObjects) {
|
|
|
3736
3438
|
return exportTerminals;
|
|
3737
3439
|
}
|
|
3738
3440
|
exports.getValidTerminals = getValidTerminals;
|
|
3739
|
-
function
|
|
3441
|
+
function getValidTapChangerControls(objects) {
|
|
3442
|
+
const exportInstances = new Map();
|
|
3443
|
+
for (const value of objects.values()) {
|
|
3444
|
+
if (value.terminal || value.terminalUUID) {
|
|
3445
|
+
exportInstances.set(value.mrid, value);
|
|
3446
|
+
}
|
|
3447
|
+
}
|
|
3448
|
+
return exportInstances;
|
|
3449
|
+
}
|
|
3450
|
+
exports.getValidTapChangerControls = getValidTapChangerControls;
|
|
3451
|
+
function validateInMemoryObjects(objects, logger) {
|
|
3740
3452
|
const exportTerminals = new Map();
|
|
3741
3453
|
for (const entry of objects.entries()) {
|
|
3742
3454
|
const value = entry[1];
|
|
@@ -3746,11 +3458,11 @@ function validateInMemoryObjects(objects) {
|
|
|
3746
3458
|
(terminal.connectivityNode || terminal.connectivityNodeUUID)) {
|
|
3747
3459
|
exportTerminals.set(value.mrid, value);
|
|
3748
3460
|
}
|
|
3749
|
-
if (terminal.conductingEquipment && terminal.conductingEquipmentUUID) {
|
|
3750
|
-
|
|
3461
|
+
if (!terminal.conductingEquipment && !terminal.conductingEquipmentUUID) {
|
|
3462
|
+
logger.debug(`Terminal ohne conductingEquipment UUID ${terminal.mrid} shortName ${terminal.shortName} ID | ${entry[0]}`);
|
|
3751
3463
|
}
|
|
3752
|
-
if (terminal.connectivityNode && terminal.connectivityNodeUUID) {
|
|
3753
|
-
|
|
3464
|
+
if (!terminal.connectivityNode && !terminal.connectivityNodeUUID) {
|
|
3465
|
+
logger.debug(`Terminal ohne connectivityNode UUID ${terminal.mrid} shortName ${terminal.shortName} ID | ${entry[0]}`);
|
|
3754
3466
|
}
|
|
3755
3467
|
}
|
|
3756
3468
|
}
|