ParseConsumptionRecord@1
Der Node ParseConsumptionRecord@1 wertet EDA-Verbrauchsdaten (DATEN_CRMSG, Schema ConsumptionRecord 01.41) zu einer Liste von EnergyData-Objekten mit den einzelnen Energiemengen aus. Anders als bei AggregateConsumptionRecord@1 werden die Mengen nicht aggregiert und alle Zählwerke (Meter Codes) der Nachricht bleiben erhalten.
Adapter-Voraussetzungen
Node-Konfiguration
Zu den Feldern path, targetPath, targetValueWriteMode und targetValueKind siehe Überblick.
transformations:
- type: ParseConsumptionRecord@1
path: $.message.RawMessage # raw XML of the consumption record
meteringPointRtIdPath: $.meteringPoint.RtId # RtId of the metering point entity
targetPath: $.energyData
| Property | Typ | Erforderlich | Standard | Beschreibung |
|---|---|---|---|---|
path | string | Nein | $ | Pfad zum rohen XML der Verbrauchsdaten |
meteringPointRtIdPath | string | Ja¹ | - | Pfad zur RtId des Zählpunkts, zu dem die Mengen gehören |
targetPath | string | Nein | $ | Pfad, an den die Liste der EnergyData-Objekte geschrieben wird |
¹ Im Schema nicht als erforderlich gekennzeichnet, aber zur Laufzeit erzwungen: Ohne meteringPointRtIdPath schlägt der Node mit MeteringPointRtIdPath must be set in the configuration. fehl.
Verhalten
- Ist das rohe XML leer oder fehlt es, oder wird unter
meteringPointRtIdPathkeine RtId gefunden, schreibt der Node nichts und die Pipeline läuft weiter. - Für jeden
Energy-Block und jedesEnergyData(Zählwerk) der Nachricht wird einEnergyData-Objekt geschrieben. - Eine andere Einheit als kWh oder MWh lässt den Node fehlschlagen.
Ausgabe
Eine Liste von EnergyData-Objekten (Property-Namen im Datenkontext in PascalCase):
| Property | Beschreibung |
|---|---|
MeteringPointRtId | Aus meteringPointRtIdPath gelesene RtId |
MeteringPointNumber | Zählpunkt der Nachricht |
CreationTime | DocumentCreationDateTime der Nachricht; eine Korrektur hat einen späteren Wert als die korrigierte Nachricht |
PeriodStart | Beginn des Messzeitraums |
PeriodEnd | Ende des Messzeitraums |
MeterCode | Zählwerk (OBIS-Code), z. B. 1-1:2.9.0 G.03 |
QuantityUnit | kWh oder MWh |
EnergyQuantities | Energiemengen mit MeteringPointRtId, MeteringPointNumber, From, To, Quantity und Quality (0 unbekannt, 1 L1, 2 L2, 3 L3) |
Die Konfigurations-Properties sind in der API-Referenz dokumentiert, die Ausgabe unter EnergyData.
Vollständiges Beispiel einer Pipeline-Konfiguration
Dieses Beispiel wertet Verbrauchsdaten aus, die zusammen mit der RtId ihres Zählpunkts an die Pipeline übergeben werden, und behält je Zeitraum die neuesten Daten.
triggers:
- type: FromPipelineDataEvent@1
transformations:
- type: ParseConsumptionRecord@1
path: $.message.RawMessage
meteringPointRtIdPath: $.meteringPoint.RtId
targetPath: $.energyData
- type: FilterEnergyData@1
path: $.energyData
targetPath: $.energyData