There are several possibilities for CSV Export of Energy data:
Workflow | Job |
---|---|
CSV Export | Data export of one OBIS Measurement of one Meteringpoint as CSV File. |
CSV Export (Cost Center/Energy Benefits) | Data export of one OBIS Measurement of one Cost Center as CSV File. |
CSV Datenexport (XML) | Data export of several OBIS Measurements and/or several Meteringpoints in one or more CSV File(s). |
The workflows ‘CSV Export’ and ‘CSV Export (Cost Centers / Energy Benefits)’ can be quickly applied without major configuration in order to output the data for each measurement. However, if the data of several meteringpoints and / or measurements should be exported, an XML file must be used for the configuration. For this cases see the following description.
The XML file acts as a configuration template and is simply stored in the document archive. Then, the XML document is assigned the CSV Data Export (XML) workflow.
Example
<?xml version="1.0" encoding="utf-8"?> <configuration version="3.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="configuration.xsd"> <readings id="Strom"> <reading id="P+" obis-code="001-001:001.029.000*255" function="SUM" /> <reading id="Q+" obis-code="001-001:003.029.000*255" function="SUM" /> </readings> <columns id="Standard"> <column id="MPID" header="ZP-ID" ref="MP.ID" /> <column id="MPNAME" header="ZP-Name" ref="MP.Name" /> <column id="MPIP" header="Installationsort" ref="MP.InstallationPoint" /> <column id="LOCALEND" header="Enddatum" ref="LOCALEND" index="0" format="dd.MM.yyyy HH:mm" /> <column id="VALUE1" header="P+" ref="VALUE" index="0" format="N3" /> <column id ="UNIT1" header="Einheit" ref="UNIT" index="0"/> <column id="STATUS1" header="Status (P+)" ref="STATUS" index="0" /> <column id="VALUE2" header="Q+" ref="VALUE" index="1" format="N3" /> <column id ="UNIT2" header="Einheit" ref="UNIT" index="1"/> <column id="STATUS2" header="Status (Q+)" ref="STATUS" index="1" /> </columns> <files delimiter=";" column-headers="true" force-export="true" export-start="C" export-offset="0M" export-duration="2D" export-interval="D" header="Header Example" footer="Footer Example" min-status="1"> <file filename-pattern="E:\_CSVEport(XML)\TagesWerteExport-${YYYY}${MM}${DD}-${HH}${mm}${ss}.csv" readings-id="Strom" columns-id="Standard"> <export tag="9 - EVU Bezug" mpid="DE0005819112600009054000000000001" last-export="18.05.2019 00:00:00"/> <export tag="KBR Buchenbach gesamt" mpid="DE99999979256KBRBB000000000000001" last-export="18.05.2019 00:00:00"/> </file> </files> </configuration>
Result
Header Example | |||||||||
ZP-ID; | ZP-Name; | Location; | End date; | P+; | Unit; | State (P+); | Q+; | Unit; | State (Q+) |
DE0005819112600009054000000000001 | 9 – EVU Bezug;Hauptverteilung | Hauptverteilung | 19.05.2019 00:00 | 390,878 | kWh | 0 | 85,949 | kvarh | 0 |
DE0005819112600009054000000000001 | 9 – EVU Bezug | Hauptverteilung | 20.05.2019 00:00 | 430,864 | kWh | 0 | 72,638 | kvarh | 0 |
DE99999979256KBRBB000000000000001 | KBR Buchenbach gesamt | Technikraum | 19.05.2019 00:00 | 35,395 | kWh | 0 | 0,000 | kvarh | 0 |
DE99999979256KBRBB000000000000001 | KBR Buchenbach gesamt | Technikraum | 20.05.2019 00:00 | 31,042 | kWh | 0 | 0,000 | kvarh | 0 |
Footer Example |
Description of Elements
<configuration> | Base element | ||
<readings> | Base element for Measurement | Must contain at least one element. In a readings ID, all OBIS tags and their aggregation function are specified that exist in a point of delivery, that have the same export columns and are to be exported to a file. | |
id | Unique ID on Element level <readings> | ||
<reading> | Element for a Measurement | ||
id | Unique ID on Element level <reading> | ||
obis-code | Valid OBIS tag | ||
function | Defines which aggregate function should be used for the measured values. Gültige Intervalle: SUM: Summe MIN: Minimum value MAX: Maximum value AVG: Average |
||
<columns> | Base element for Column | Must contain at least one element column. In it, the columns to be exported are specified for all OBIS tags of a readings-id. | |
id | Unique ID on Element level <columns> | ||
<column> | Element for a Column | ||
id | Unique ID on Element level <column> | ||
header | Column header | ||
ref (optional) | |||
index (optional) | |||
format (optional) | |||
const (optional) | |||
<files> | Base element for File output | Defines the export periods and the skeleton of the CSV file.
Must contain at least one element file. It defines which metering point with which OBIS (readings-IDs) and which columns (columns-IDs) are exported to which Excel file (filename-pattern). |
|
delimiter | Separator ‘,’ or ‘;’ | ||
column-headers | Specifies whether column headings are to be output, “true” or “false”. | ||
force-export | “true” oder “false” | ||
export-start | Example for current time 18.05.2018 14:25: C Continuous export H Start of current hour: 18.05.2018 14:00 D Start of current day: 18.05.2018 00:00 M Start des aktuellen Monats: 01.05.2018 00:00 Y Start of current Year: 01.01.2018 00:00 |
||
export-offset | Specifies the period of time (number of time intervals) to move the actual start date of the export from the initial start time (export-start). This period can be positive and negative (- sign before the value). This setting is ignored if the value “C” has been set for the initial start time (export-start)! Gültige Intervalle: H: Hour – The start date is set to the start of the current hour. D: Day – The start date is set to the start of the current day. M: Month – The start date is set to the start of the current month. Y: Year – The start date is set to the start of the current year. Example: -1M = Offset 1 Month in the past -10D = Offset 10 Days in the past 4H = Offset 4 hours in the future |
||
export-duration | Specifies for which period of time (number of time intervals) the export is to be executed. The export then starts from the actual start date for the specified duration. This period should not be negative. Valid Intervals: C: Continual – Exported to the current time. H: Hour – The start date is set to the start of the current hour. D: Day – The start date is set to the start of the current day. M: Month – The start date is set to the start of the current month. Beispiele: C = Continual Export (It is exported to the current time.) 1M = Export of one month 10D = Export of 10 days 4H = Export of 4 hours |
||
export-interval | Defines the interval at which the data should be processed. For each interval, a line is created in the CSV file. Valid Intervals: P: Periodically – The start date is set to the start of the current period. H: Hourly – The start date is set to the start of the current hour. D: Daily – The start date is set to the start of the current day. M: Monthly – The start date is set to the start of the current month. Beispiele: P = Export of period values D = Export von dayly values M = Export von monthly values |
||
header | Text-Const before table | ||
footer | Text-Const after table | ||
min-state | Defines up to which status (inclusive) the export should be considered successful.
Gültige Intervalle: 0: Orinalwerte |
||
custom-status-chars (optional) | |||
culture (optional) | |||
<file> | Element for a File | ||
filename-pattern | Filename. Wildcards are allowed. Beispiel: “C:\csvexport\00302-UV2-${YYYY}${MM}${DD}-${HH}${mm}${ss}.csv” DThe storage location must be accessible from the (visual energy) server. The user “Network Service” must have sufficient rights. |
||
delimiter (optional) | Separator ‘,’ or ‘;’ | ||
column-headers (optional) | Angabe ob Spaltenüberschriften ausgegeben werden sollen, “true” oder “false”. | ||
force-export (optional) | Bei “true” werden Dateien auch dann exportiert, wenn der Status dies eigentlich nicht zulässt. Obwohl die Dateien exportiert werden, wird das Datum des letzten Exports nicht verändert, so dass die Daten bei der nächsten Ausführung erneut exportiert werden. So kann man die Dateien prüfen und ggf. nach Fehlern suchen. |
||
export-start (optional) | Example for current time 18.05.2018 14:25: C Continuous export H Start of current hour: 18.05.2018 14:00 D Start of current day: 18.05.2018 00:00 M Start des aktuellen Monats: 01.05.2018 00:00 Y Start of current Year: 01.01.2018 00:00 |
||
export-offset (optional) | Specifies the period of time (number of time intervals) to move the actual start date of the export from the initial start time (export-start). This period can be positive and negative (- sign before the value). This setting is ignored if the value “C” has been set for the initial start time (export-start)! Gültige Intervalle: H: Hour – The start date is set to the start of the current hour. D: Day – The start date is set to the start of the current day. M: Month – The start date is set to the start of the current month. Y: Year – The start date is set to the start of the current year. Example: -1M = Offset 1 Month in the past -10D = Offset 10 Days in the past 4H = Offset 4 hours in the future |
||
export-duration (optional) | Specifies for which period of time (number of time intervals) the export is to be executed. The export then starts from the actual start date for the specified duration. This period should not be negative. Valid Intervals: C: Continual – Exported to the current time. H: Hour – The start date is set to the start of the current hour. D: Day – The start date is set to the start of the current day. M: Month – The start date is set to the start of the current month. Beispiele: C = Continual Export (It is exported to the current time.) 1M = Export of one month 10D = Export of 10 days 4H = Export of 4 hours |
||
export-interval (optional) | Defines the interval at which the data should be processed. For each interval, a line is created in the CSV file. Valid Intervals: P: Periodically – The start date is set to the start of the current period. H: Hourly – The start date is set to the start of the current hour. D: Daily – The start date is set to the start of the current day. M: Monthly – The start date is set to the start of the current month. Beispiele: P = Export of period values D = Export von dayly values M = Export von monthly values |
||
header (optional) | Text-Const before the table | ||
footer (optional) | Text-Const after the table | ||
min-status (optional) | Defines up to which status (inclusive) the export should be considered successful.
Gültige Intervalle: 0: Orinalwerte |
||
readings-id | |||
columns-id |