Check identifier 25001 — Calculation formula
Check identifier 25001 · EDIFACT message type UTILTS · Format version 202610
Data structure
| Structure (BO4E) | Description | Format | 25001 | Condition |
|---|---|---|---|---|
| stammdaten * | — | object | Must | — |
| BERECHNUNGSFORMEL [ ] | — | object[] | May | — |
| notwendigkeit 00010 | Describes whether a calculation formula is necessary | Enum BerechnungsformelNotwendigkeit | X | — |
BERECHNUNGSFORMEL_NOTWENDIG | — | — | X | — |
BERECHNUNGSFORMEL_MUSS_ANGEFRAGT_WERDEN | — | — | X | — |
BERECHNUNGSFORMEL_TRIVIAL | — | — | X | — |
BERECHNUNGSFORMEL_NICHT_NOTWENDIG | — | — | X | — |
| rechenschrittId 00020 | ID of the calculation step [1 - 99999] | integer | X | — |
| gueltigkeitszeitraum | — | object | May | — |
| zeitraumId 00030 | zeitraumId | integer | X | — |
| rechenschritte [ ] | — | object[] | May | — |
| aufteilungsfaktorEnergiemenge 00040 | aufteilungsfaktorEnergiemenge | number (float) | X | — |
| energieflussrichtung 00050 | Specifies the energy direction of a market location and/or metering location | Enum Energierichtung | Must | — |
AUSSP | — | — | Must | — |
EINSP | — | — | Must | — |
| messlokationsId 00060 | messlokationsId | string | X | — |
| operation 00070 | This enumeration defines arithmetic operations | Enum ArithmetischeOperation | Must | — |
ADDITION | — | — | Must | — |
SUBTRAKTION | — | — | Must | — |
DIVISION | — | — | Must | — |
DIVIDEND | — | — | Must | — |
MULTIPLIKATION | — | — | Must | — |
POSITIVWERT | — | — | Must | — |
| rechenschrittBestandteilId 00080 | rechenschrittBestandteilId | integer | X | — |
| referenzRechenschrittId 00090 | referenzRechenschrittId | integer | X | — |
| verlustfaktorLeitung 00100 | verlustfaktorLeitung | number (float) | X | — |
| verlustfaktorTrafo 00110 | verlustfaktorTrafo | number (float) | X | — |
| VERWENDUNGSZEITRAUM [ ] * | — | object[] | Must | — |
| datenqualitaet * 00120 | Data quality | Enum Datenqualitaet | Must | — |
ERWARTETE_DATEN | — | — | Must | — |
IM_SYSTEM_VORHANDENE_DATEN | — | — | Must | — |
INFORMATIVE_DATEN | — | — | Must | — |
GUELTIGE_DATEN | — | — | Must | — |
KEINE_DATEN | — | — | Must | — |
IM_SYSTEM_KEINE_DATEN_VORHANDEN | — | — | Must | — |
KEINE_DATEN_ERWARTET | — | — | Must | — |
DIFFERENZ_DATEN | — | — | Must | — |
DIFFERENZ_ERWARTETE_DATEN | — | — | Must | — |
DIFFERENZ_IM_SYSTEM_VORHANDENE_DATEN | — | — | Must | — |
| verwendungAb * 00130 | verwendungAb | string (date-time) | X | — |
| verwendungBis 00140 | verwendungBis | string (date-time) | X | — |
| zeitraumId * 00150 | zeitraumId | integer | Must | — |
| transaktionsdaten * | — | object | Must | — |
| dokumentennummer * 00160 | EDIFACT reference from the BGM segment / BGM | string | X | — |
| lokationsId * 00170 | Reference to the location / LOC | string | X | — |
| nachrichtendatum * 00180 | Creation date of the EDIFact / DTM+137 | string (date-time) | X | — |
| nachrichtenreferenznummer * 00190 | EDIFACT reference from the UNT segment / UTILMD UNT+21 | string | Must | — |
| pruefidentifikator * 00200 | Contains the check identifier from the EDIFact communication / RFF+Z13 | string | X | — |
| vorgangsnummer * 00210 | Number of the transaction / UTILMD UTILTS IDE+24 / INSRPT INVOIC DOC | string | X | — |
| absender * | — | object | Must | — |
| rollencodenummer * 00220 | Specifies the code value of the market role. | string | X | — |
| rollencodetyp * 00230 | Indicates the type of the code. | Enum Rollencodetyp | X | — |
BDEW | — | — | X | — |
GS1 | — | — | X | — |
GLN | — | — | X | — |
DVGW | — | — | X | — |
| ansprechpartner | — | object | May | — |
| eMailAdresse 00240 | Email address | string | Must | — |
| nachname 00250 | Surname (family name) of the contact person | string | X | — |
| rufnummern [ ] | — | object[] | May | — |
| nummerntyp 00260 | Phone number type | Enum Rufnummernart | Must | — |
RUF_ZENTRALE | — | — | Must | — |
FAX_ZENTRALE | — | — | Must | — |
SAMMELRUF | — | — | Must | — |
SAMMELFAX | — | — | Must | — |
ABTEILUNGRUF | — | — | Must | — |
ABTEILUNGFAX | — | — | Must | — |
RUF_DURCHWAHL | — | — | Must | — |
FAX_DURCHWAHL | — | — | Must | — |
MOBIL_NUMMER | — | — | Must | — |
| rufnummer 00270 | rufnummer | string | Must | — |
| empfaenger * | — | object | Must | — |
| rollencodenummer * 00280 | Specifies the code value of the market role. | string | X | — |
| rollencodetyp * 00290 | Indicates the type of the code. | Enum Rollencodetyp | X | — |
BDEW | — | — | X | — |
GS1 | — | — | X | — |
GLN | — | — | X | — |
DVGW | — | — | X | — |
Application handbook (AHB)
| Structure (EDIFACT) | Description | Format | 25001 | Condition |
|---|---|---|---|---|
| UNH | — | — | Must | — |
006200010 | Message reference number | — | X | — |
0065 UTILTS00020 | Grid usage times message | — | X | — |
0052 D00030 | Draft version | — | X | — |
0054 18A00040 | Edition 2018 - A | — | X | — |
0051 UN00050 | UN/CEFACT | — | X | — |
0057 1.1e00060 | Version number of the underlying BDEW message description | — | X | — |
| BGM | — | — | Must | — |
1001 Z3600070 | Calculation formula | — | X | — |
100400080 | Document number | — | X | — |
| DTM | — | — | Must | — |
2005 13700090 | Document-/message date/time | — | X | — |
238000100 | Date or time or time span, value | — | X | [931][494] |
2379 30300110 | CCYYMMDDHHMMZZZ | — | X | — |
| SG2.NAD | — | — | Must | — |
3035 MS00120 | Document-/message sender or sender | — | X | — |
303900130 | MP-ID | — | X | [1] |
3055 900140 | GS1 | — | X | — |
3055 29300150 | DE, BDEW (Bundesverband der Energie- und Wasserwirtschaft e.V.) | — | X | — |
| SG3.CTA | — | — | Must | — |
3139 IC00160 | Information contact | — | X | — |
341200170 | Name of the contact person | — | X | — |
| SG3.COM | — | — | Must | — |
314800180 | Number / address | — | X | (([939][53]) ⊻ ([940][54])) ∧ [530] |
3155 EM00190 | Electronic mail | — | X | [1P0..1] |
3155 FX00200 | Fax number | — | X | [1P0..1] |
3155 TE00210 | Telephone | — | X | [1P0..1] |
3155 AJ00220 | further telephone | — | X | [1P0..1] |
3155 AL00230 | Mobile phone | — | X | [1P0..1] |
| SG2.NAD | — | — | Must | — |
3035 MR00240 | Message recipient | — | X | — |
303900250 | MP-ID | — | X | [1] |
3055 900260 | GS1 | — | X | — |
3055 29300270 | DE, BDEW (Bundesverband der Energie- und Wasserwirtschaft e.V.) | — | X | — |
| SG5.IDE | — | — | Must | — |
7495 2400280 | Transaction | — | X | — |
740200290 | Transaction number | — | X | — |
| SG5.LOC | — | — | Must | — |
3227 17200300 | Reporting point | — | X | — |
322500310 | Identifier | — | X | [950] [501] ⊻ [960] [529] |
| SG5.STS | — | — | Must | [2004] |
9015 Z2300320 | Status of the calculation formula | — | X | — |
4405 Z3300330 | Calculation formula attached | — | X | [2P0..9] |
4405 Z3400340 | Calculation formula must be requested from the sender | — | X | [2P0..9] |
4405 Z4000350 | Calculation formula has no arithmetic operation | — | X | [2P0..9] |
4405 Z4100360 | Calculation formula not required | — | X | [3P0..9] |
901300370 | Reference to time period ID | — | X | — |
| SG6.RFF | — | — | Must | — |
1153 Z1300380 | Check identifier | — | X | — |
1154 2500100390 | Calculation formula | — | X | — |
| SG6.RFF | — | — | Must | — |
1153 Z4900400 | Valid data | — | X | — |
1153 Z5300410 | No data | — | X | — |
115600420 | Time period ID | — | X | [914] ∧ [937] [55] |
| SG6.DTM | — | — | Must | — |
2005 Z2500430 | Data used from | — | X | — |
238000440 | Date or time or time span, value | — | X | [UB1] ∧ ( [56] ⊻ [57]) |
2379 30300450 | CCYYMMDDHHMMZZZ | — | X | — |
| SG6.DTM | — | — | Must | [58] |
2005 Z2600460 | Data used until | — | X | — |
238000470 | Date or time or time span, value | — | X | [UB1] |
2379 30300480 | CCYYMMDDHHMMZZZ | — | X | — |
| SG8.SEQ | — | — | Must | — |
1229 Z3600490 | Energy quantity of the market or grid location | — | X | — |
| SG8.RFF | — | — | Must | — |
1153 Z4600500 | Reference to time period ID | — | X | — |
115400510 | Reference to time period ID | — | X | [914] ∧ [937] [59] |
| SG8.RFF | — | — | Must | — |
1153 Z2300520 | Calculation step | — | X | — |
115400530 | Calculation step identifier | — | X | [913] [8] |
| SG8.SEQ | — | — | Must | — |
1229 Z3700540 | Part of the calculation step | — | X | — |
105000550 | Calculation step identifier | — | X | [913] |
| SG8.RFF | — | — | Must | — |
1153 Z4600560 | Reference to time period ID | — | X | — |
115400570 | Reference to time period ID | — | X | [914] ∧ [937] [59] |
| SG8.RFF | — | — | Must | [6] |
1153 Z1900580 | Metering location | — | X | — |
115400590 | ID of a metering location | — | X | [951] [502] |
| SG8.RFF | — | — | Must | [5] |
1153 Z2300600 | Calculation step | — | X | — |
115400610 | Calculation step identifier | — | X | [913] [8] ∧ [9] |
| SG9.CCI | — | — | Must | — |
7037 Z8600620 | Mathematical operator | — | X | — |
| SG9.CAV | — | — | Must | — |
7111 Z6900630 | Addition | — | X | [4P0..1] |
7111 Z7000640 | Subtraction | — | X | [5P0..1] |
7111 Z8000650 | Divisor | — | X | [6P0..1] |
7111 Z8100660 | Dividend | — | X | [6P0..1] |
7111 Z8200670 | Factor | — | X | [7P0..1] |
7111 Z8300680 | Positive value | — | X | [8P0..1] |
| SG9.CCI | — | — | Must | — |
7037 Z8700690 | Energy flow direction | — | X | — |
| SG9.CAV | — | — | Must | — |
7111 Z7100700 | Consumption | — | X | — |
7111 Z7200710 | Generation | — | X | — |
| SG9.CCI | — | — | Must | — |
7037 Z1600720 | Loss factor transformer | — | X | — |
| SG9.CAV | — | — | Must | — |
7111 Z2800730 | Loss factor | — | X | — |
711000740 | Loss factor transformer | — | X | [912] ∧ [914] ∧ [915] |
| SG9.CCI | — | — | Must | — |
7037 ZB200750 | Loss factor line | — | X | — |
| SG9.CAV | — | — | Must | — |
7111 Z2800760 | Loss factor | — | X | — |
711000770 | Loss factor line | — | X | [912] ∧ [914] ∧ [915] |
| SG9.CCI | — | — | Must | — |
7037 ZG600780 | Allocation factor energy quantity | — | X | — |
| SG9.CAV | — | — | Must | — |
7111 ZH600790 | Allocation factor energy quantity | — | X | — |
711000800 | Allocation factor energy quantity | — | X | [914] ∧ [969] ∧ [912] |
| UNT | — | — | Must | — |
007400810 | Number of segments in a message | — | X | — |
006200820 | Message reference number | — | X | — |
Conditions of this table
The free text of the 39 conditions referenced by the rows above. All conditions of the message type are listed in the condition index UTILTS.
| Marker | Condition |
|---|---|
| [1] | Only MP-ID from the electricity division |
| [5] | If the SG8 RFF+Z19 (reference to a metering location) is not present in the same SG8 SEQ+Z37 |
| [6] | If the SG8 RFF+Z23 (reference to a calculation step) is not present in the same SG8 SEQ+Z37 |
| [8] | Calculation step identifier from a SG8 SEQ+Z37 (part of the calculation step) DE1050 of the same SG5 IDE+24 and the same time period ID as for this SG8 |
| [9] | The calculation step identifier specified here must not be identical to the calculation step identifier from this SG8 SEQ+Z37 DE1050 |
| [53] | If code EM is present in DE3155 in the same COM |
| [54] | If code TE / FX / AJ / AL is present in DE3155 in the same COM |
| [55] | The value resulting from the number of repetitions of the SG6 RFF+Z49/Z53 (usage period of the data: valid data/no data) must be entered. This means: the first SG6 RFF+Z49/Z53 thus has the „1“, the second the „2“, the third the „3“, etc. |
| [56] | If this DTM+Z25 (use of the data from) in SG6 RFF (usage period of the data) has the time period ID "1" in DE1156, the date must correspond to the following day or an earlier day at 0:00 German time relative to DTM+137 DE2380 (message date) |
| [57] | If this DTM+Z25 (use of data from) is not in the SG6 RFF+Z49/Z53 (usage period of the data: valid data/no data) with time period ID "1" in DE1156, the date must correspond to the DTM+Z26 (use of data until) of the SG6 RFF+Z49/Z53 (usage period of the data: valid data/no data) with the next lower time period ID in DE1156 |
| [58] | If a time period ID is named in DE1156 (time period ID) in the same SG6 RFF+Z49/Z53 (usage period of the data: valid data/no data) which is lower than in another SG6 RFF+Z49/Z53 (usage period of the data: valid data/no data) DE1156 (time period ID) |
| [59] | The time period ID from DE1156 of a matching SG6 RFF+Z49 (usage period of the data) must be entered |
| [494] | The date stated here must be the point in time at which the document was created, or a point in time before that. |
| [501] | Note: Use of the ID of the market location |
| [502] | Note: Use of the ID of the metering location |
| [529] | Note: Use of the ID of the grid location |
| [530] | Note: Only one piece of information may be transmitted in DE3148 |
| [912] | Format: Value can be given with a maximum of 6 decimal places |
| [913] | Format: possible values: 1 to 99999 |
| [914] | Format: Possible value: > 0 |
| [915] | Format: Possible value: ≠ 1 |
| [931] | Format: ZZZ = +00 |
| [937] | Format: no decimal places |
| [939] | Format: the character string must contain the characters @ and . |
| [940] | Format: the character string must begin with the character + and may only be followed by digits |
| [950] | Format: market location ID |
| [951] | Format: Metering point identifier |
| [960] | Format: Grid location ID |
| [969] | Format: Possible value: ≤ 1 |
| [2004] | Segment must be specified exactly once for each time period ID from DE1156 of the SG6 RFF+Z49 (usage period of the data: "Valid data") |
| [1P0..1] | Note: This is the standard package if no condition applies, e.g. in the COM segment. |
| [2P0..9] | [25] If MP-ID in SG2 NAD+MR (message recipient) in the role LF [62] If MP-ID in SG2 NAD+MR (message recipient) in the role MSB [6 3 ] If MP-ID in SG2 NAD+MR (message recipient) in the role NB |
| [3P0..9] | [25] If MP-ID in SG2 NAD+MR (message recipient) in the role LF [6 3 ] If MP-ID in SG2 NAD+MR (message recipient) in the role NB |
| [UB1] | ([931] ∧ [932] [490]) ⊻ ([931] ∧ [933] [491]) |
| [4P0..1] | [11] If in SG8 SEQ+Z37 SG9 CCI+++Z86 CAV+Z69/Z70 (addition / subtraction) is present, the transaction may contain any number of further SG8 SEQ+Z37 with the identical calculation step identifier and the same time period ID, which however may contain only the operators Z69/Z70 [15] If in a SG5 IDE+24 only one SEQ+Z37 with a SG8 RFF+Z19 (metering location) and the same time period ID is present |
| [5P0..1] | [11] If in SG8 SEQ+Z37 SG9 CCI+++Z86 CAV+Z69/Z70 (addition / subtraction) is present, the transaction may contain any number of further SG8 SEQ+Z37 with the identical calculation step identifier and the same time period ID, which however may contain only the operators Z69/Z70 |
| [6P0..1] | [13] If in SG8 SEQ+Z37 SG9 CCI+++Z86 CAV+Z80/Z81 (divisor / dividend) is present, exactly one second SG8 SEQ+Z37 with the identical calculation step identifier and the same time period ID must be present in this transaction, such that the one SG8 SEQ+Z37 contains the operator Z80 (divisor) and the other SG8 SEQ+Z37 contains the operator Z81 (dividend) |
| [7P0..1] | [14] If in SG8 SEQ+Z37 SG9 CCI+++Z86 CAV+Z82 (factor) is present, the transaction may contain any number of further SG8 SEQ+Z37 with the identical calculation step identifier and the same time period ID, which however contain only CAV+Z82 |
| [8P0..1] | [12] If in SG8 SEQ+Z37 SG9 CCI+++Z86 CAV+Z83 (positive value) is present, the transaction may not contain any further SG8 SEQ+Z37 with the identical calculation step identifier and the same time period ID |
Example message
Example 1
UNA:+.? '
UNB+UNOC:3+9900259000002:500+9903790000002:500+{{date}}:{{time}}+M4ZWC6JL'
UNH+UNHM57NAHY1+UTILTS:D:18A:UN:1.1e'
BGM+Z36+BGMM4WYD0FU'
DTM+137:202610011100?+00:303'
NAD+MS+9900259000002::293'
NAD+MR+9903790000002::293'
IDE+24+123456778'
LOC+172+55123678945'
STS+Z23+Z33+1'
RFF+Z13:25001'
RFF+Z49::1'
DTM+Z25:202504032300?+00:303'
SEQ+Z36'
RFF+Z46:1'
RFF+Z23:1'
SEQ+Z37+1'
RFF+Z46:1'
RFF+Z19:DE00014545768S0000000000000003054'
CCI+++Z86'
CAV+Z69'
CCI+++Z87'
CAV+Z71'
UNT+22+UNHM57NAHY1'
UNZ+1+M4ZWC6JL'[1 item
{6 fields
"data": {3 fields
"stammdaten": {2 fields
"VERWENDUNGSZEITRAUM": [1 item
{5 fields
"BERECHNUNGSFORMEL": [1 item
{6 fields
"gueltigkeitszeitraum": {2 fields
"rechenschritte": [1 item
{4 fields
"transaktionsdaten": {12 fields
"absender": {5 fields
"empfaenger": {5 fields
Download: EDIFACT file · BO4E JSON
Example 2
UNA:+.? '
UNB+UNOC:3+9900321000005:500+9903790000002:500+{{date}}:{{time}}+M75AY4RC'
UNH+UNHM6L23KUM+UTILTS:D:18A:UN:1.1e'
BGM+Z36+BGMM6CSTIGY'
DTM+137:202610011100?+00:303'
NAD+MS+9900321000005::293'
NAD+MR+9903790000002::293'
IDE+24+123456778'
LOC+172+10017211334'
STS+Z23+Z41+1'
RFF+Z13:25001'
RFF+Z49::1'
DTM+Z25:202502282300?+00:303'
UNT+12+UNHM6L23KUM'
UNZ+1+M75AY4RC'[1 item
{6 fields
"data": {3 fields
"stammdaten": {2 fields
"VERWENDUNGSZEITRAUM": [1 item
{5 fields
"BERECHNUNGSFORMEL": [1 item
{4 fields
"gueltigkeitszeitraum": {2 fields
"transaktionsdaten": {12 fields
"absender": {4 fields
"empfaenger": {4 fields
Download: EDIFACT file · BO4E JSON
Belongs to these role views
The check identifier itself carries no market role. This assignment is derived back from the role views in whose process steps it occurs — affected are LF, NB and MSB.
| Role | Party involved | Process | Rulebook | Division | Step |
|---|---|---|---|---|---|
| LF | LF | Transmission of the calculation formula | WiM electricity part 2 | Electricity | Step 1 |
| LF | LF | Transmission of the calculation formula | WiM electricity part 2 | Electricity | Step 4 |
| NB | NB | Transmission of the calculation formula | WiM electricity part 2 | Electricity | Step 1 |
| NB | NB | Transmission of the calculation formula | WiM electricity part 2 | Electricity | Step 4 |
| NB | NBA | Supplementary data on the location bundle from NBA to NBN | AWH grid operator change | Electricity | Step 1 |
| NB | NBN | Supplementary data on the location bundle from NBA to NBN | AWH grid operator change | Electricity | Step 1 |
| MSB | MSB-MELO | Transmission of the calculation formula | WiM electricity part 2 | Electricity | Step 1 |
| MSB | MSB-MELO | Transmission of the calculation formula | WiM electricity part 2 | Electricity | Step 4 |
Business classification
| Attribute | Value |
|---|---|
| Use case (AHB) | Calculation formula |
| AHB | UTILTS AHB |
| Transmission channel | AS4 |
This check identifier is used in 3 contexts
Regulatory determination and communication direction depend on the process in which the message is sent. A single entry would be misleading — all placements are therefore listed here.
| Process description / rulebook | Process step | Communication | Action |
|---|---|---|---|
| WiM electricity part 2 | Transmission of the calculation formula | NB → MSB (corresponds to the MSB on the metering location object) | Calculation formula |
| WiM electricity part 2 | Transmission of the calculation formula | NB → LF | Calculation formula |
| AWH grid operator change | Supplementary data on the location bundle from NBA to NBN | NB (corresponds to NBA) → NB (corresponds to NBN) | supplementary data on the location bundle |
Transaction and responses
Role of this check identifier: request. Basis: the transaction data carry neither antwortstatus nor antwortstatusCodeliste, and neither the title nor the action of the Prüfi table begins with “response” or “response message”.
Which messages respond to this
| Role | Check identifier | Use case | Message type | Origin of supply |
|---|---|---|---|---|
| Response | 25010 | Response to calculation formula | UTILTS | from the step sequence |
This column is the inverse of the assignment on the response pages — not the next step of a list. The process source says of its own steps that they are »possible messages, not a sequence«.
Check identifiers of the same AHB table: No other check identifier of message type UTILTS has the same row structure in this version.
Notes on this page
An * after a field or group name marks a mandatory field or a mandatory group. The type is beside it; where the value ends up in the EDIFACT segment is shown by the info icon next to the field name.
The status column carries two vocabularies because the manual answers two questions: on a group row, Muss, Soll or Kann states whether the EDIFACT segment must be present; on a field row, X states that this qualifier is used in this check identifier. Both are kept exactly as the source records them.
For this check identifier, the application handbook lists 114 rows. They appear in the order of the handbook, indented by segment: a row without a data element opens a segment, the rows below it are its data elements.
The Condition column names the markers under which the handbook ties a row to a prerequisite; their free text is below the table.
The test data contains 2 transactions for this check identifier under the message type utilts. Each is stored twice — as a EDIFACT message and as a BO4E JSON. That both representations show the same transaction has been recalculated, not assumed: interchange control reference, message reference number, document number, message date, sender and recipient match in all 517 pairs of the format version; check identifier, transaction number and location ID wherever both representations carry them. Not a single attribute contradicts.
Placeholder from the test data set
The test data set carries placeholders instead of valid values: {{date}} and {{time}} in the UNB interchange envelope of every EDIFACT file. The page replaces these on call with the current date and the current time — in the format that applies at the respective position: in the envelope year, month and day as well as hour and minute, two digits each.
<businessKey> stays in place. It is not a time value, and an invented key would look like a valid one.