PD_FCAS_REQ_CONSTRAINT
The constraint level FCAS cost / price details for constraint FCAS processor runs. This enhanced output table format is established for the constraint FCAS processor release required for the Frequency Performance Payments (FPP) release. This enhanced output is hierarchical in nature, with the parent *_FCAS_REQ_RUN table holding the details about the triggering case run and time, and the child *_FCAS_REQ_CONSTRAINT table holding the constraint level details of FCAS costs / prices.
Column Schema
BIDTYPE
DUID offered type
The SQL type is VARCHAR2(10).
This is actually a factor/enum, with values:
-
ENERGY -
LOWERREG -
LOWER60SEC -
RAISE5MIN -
LOWER5MIN -
LOWER6SEC -
RAISE60SEC -
RAISE6SEC -
RAISEREG -
RAISE1SEC -
LOWER1SEC
This column is mandatory, and a primary key.
CONSTRAINTID
ConstraintID join to table GenConData
SQL Type: VARCHAR2(20)
Polars Type: pl.Categorical
This column is mandatory, and a primary key.
Examples:
D_I+BIP_ML2_L1D_I+NIL_MG2_R1D_Q+BIP_ML_L1D_Q+BIP_ML_L6D_T+NIL_BB_TG_R1D_T+NIL_MG_R1D_T+NIL_ML_L1D_T+NIL_ML_RECL_L1D_T+NIL_WF_TG_R1F_I+BIP_ML_L1
INTERVAL_DATETIME
The 30 minute interval date and time of the 30 minute predispatch interval that was processed by the constraint FCAS processor
SQL Type: DATE
Polars Type: pl.Datetime()
This column is mandatory, and a primary key.
Example: 2026/09/24 13:00:00
PREDISPATCHSEQNO
Predispatch sequence number for the 30 minute predispatch case that triggers the constraint FCAS processor run
SQL Type: VARCHAR2(20)
Polars Type: str
This column is mandatory, and a primary key.
Examples:
20260924172026092418
REGIONID
Region identifier
For more information, see the dedicated documentation page.
The SQL type is VARCHAR2(20).
This is actually a factor/enum, with values:
-
QLD1 -
VIC1 -
TAS1 -
NSW1 -
SA1 -
SNOWY1
This column is mandatory, and a primary key.
RUN_DATETIME
The run date and time of the 30 minute predispatch case that triggers the constraint FCAS processor run
SQL Type: DATE
Polars Type: pl.Datetime()
This column is mandatory, and a primary key.
Example: 2026/09/24 12:30:00
RUNNO
The 30 minute predispatch case run number that has triggers the constraint FCAS processor run
SQL Type: NUMBER(5)
Polars Type: pl.UInt32
This column is mandatory, and a primary key.
Example: 1
ADJUSTED_COST
The adjusted cost of the constraint for this service, after the regulation/contingency split
SQL Type: NUMBER(18,8)
Polars Type: pl.Float64
This column is not mandatory.
Examples:
0.189, 0, 78, 203.15
BASE_COST
The base cost of the constraint, before the regulation/contingency split
SQL Type: NUMBER(18,8)
Polars Type: pl.Float64
This column is not mandatory.
Examples:
0.189, 0, 78, 203.15
CONSTRAINT_ENABLEMENT
MW enabled for this bid type within the constraint
SQL Type: NUMBER(15,5)
Polars Type: pl.Float64
This column is not mandatory.
Examples:
22.48, 0, 35, 437
LHS
Constraints summed LHS - aggregate LHS Solution values from the physical run from the PREDISPATCHCONSTRAINT table
SQL Type: NUMBER(15,5)
Polars Type: pl.Float64
This column is not mandatory.
Examples:
-0.2657, 21.68445, 0, 815
MARGINALVALUE
Shadow price of constraint from the PREDISPATCHCONSTRAINT table from the physical run.
SQL Type: NUMBER(15,5)
Polars Type: pl.Float64
This column is not mandatory.
Examples:
0.01, 0, 3.12
P_REGULATION
The adjusted marginal value of the constraint for FPP recovery (blank for constraints without REG terms)
SQL Type: NUMBER(18,8)
Polars Type: pl.Float64
This column is not mandatory.
Examples:
0.34, 0, 3.12
REGION_BASE_COST
The regional payment allocated to the constraint for the interval pro-rated based on marginal value ratios over the binding constraints for that service in that region (this is an intermediate calculation to get to the base cost)
SQL Type: NUMBER(18,8)
Polars Type: pl.Float64
This column is not mandatory.
Examples:
0.01, 0, 78, 101.575
REGIONAL_ENABLEMENT
The dispatched MW for the bid type inside the region from the physical run of the PREDISPATCHREGIONSUM table
SQL Type: NUMBER(15,5)
Polars Type: pl.Float64
This column is not mandatory.
Examples:
0.27, 0, 1, 281
RHS
Constraints RHS value used in the solution - may be either dynamic (calculated) or static from the physical run from the PREDISPATCHCONSTRAINT table
SQL Type: NUMBER(15,5)
Polars Type: pl.Float64
This column is not mandatory.
Examples:
-0.0001, 8.47886, 0, 1390
RRP
Bid type prices for the region coming from the pricing run of the PREDISPATCHREGIONSUM table
For more information, see the dedicated documentation page.
SQL Type: NUMBER(15,5)
Polars Type: pl.Float64
This column is not mandatory.
Examples:
0.01, 0, 1, 3
New Data Timing
Public at the completion of a constraint FCAS processor run for a 30 minute predispatch run
Code Examples
Polars
This table is so large that you should explicitly enumerate and cast every column, which will speed things up and prevents some errors.
Although some of the datatypes are inferred, so they may be wrong. In particular, UInt16 vs UInt8 vs Int16 etc. If you get errors, you can swap these for just int.
This code deduplicates for you. Deduplication is normally only required across multiple months.
This code assumes that all columns are present, which may not be true for older files.
import polars as pl
import polars.selectors as cs
# e.g. "2029/03/15 00:05:00"
dt_s_fmt = "%Y/%m/%d %H:%M:%S"
csv_paths = ["SOMEFILE.CSV", "OTHERFILE.CSV"]
lf = (
pl.concat(
[
pl.scan_csv(
csv_path, # must be unzipped beforehand
skip_rows=1, # skip the header
infer_schema=False, # much faster
)
.filter(cs.by_index(0) == "D") # drop the footer
.select(~cs.by_index(range(4))) # drop metadata columns
for csv_path in csv_paths
],
how="diagonal_relaxed",
)
.with_columns(
pl.col("INTERVAL_DATETIME", "RUN_DATETIME").str.strptime(pl.Datetime, dt_s_fmt),
)
.cast(
{
"BIDTYPE": pl.Enum(
[
"ENERGY",
"LOWERREG",
"LOWER60SEC",
"RAISE5MIN",
"LOWER5MIN",
"LOWER6SEC",
"RAISE60SEC",
"RAISE6SEC",
"RAISEREG",
"RAISE1SEC",
"LOWER1SEC",
]
),
"CONSTRAINTID": pl.Categorical,
"PREDISPATCHSEQNO": str,
"REGIONID": pl.Enum(["QLD1", "VIC1", "TAS1", "NSW1", "SA1", "SNOWY1"]),
"RUNNO": pl.UInt32,
"ADJUSTED_COST": pl.Float64,
"BASE_COST": pl.Float64,
"CONSTRAINT_ENABLEMENT": pl.Float64,
"LHS": pl.Float64,
"MARGINALVALUE": pl.Float64,
"P_REGULATION": pl.Float64,
"REGION_BASE_COST": pl.Float64,
"REGIONAL_ENABLEMENT": pl.Float64,
"RHS": pl.Float64,
"RRP": pl.Float64,
}
)
# Deduplicate
# These files are so large that this step may cause your laptop to run out of memory.
# We want one row per ['BIDTYPE', 'CONSTRAINTID', 'INTERVAL_DATETIME', 'PREDISPATCHSEQNO', 'REGIONID', 'RUN_DATETIME', 'RUNNO']
.unique(
subset=[
"BIDTYPE",
"CONSTRAINTID",
"INTERVAL_DATETIME",
"PREDISPATCHSEQNO",
"REGIONID",
"RUN_DATETIME",
"RUNNO",
],
keep="any",
)
)
Nemosis
This table is not yet available in Nemosis.
Example File
From PUBLIC_ARCHIVE_PD_FCAS_REQ_CONSTRAINT_FILE02_202609010000.zip
| PREDISPATCHSEQNO | RUN_DATETIME | RUNNO | INTERVAL_DATETIME | CONSTRAINTID | REGIONID | BIDTYPE | LHS | RHS | MARGINALVALUE | RRP | REGIONAL_ENABLEMENT | CONSTRAINT_ENABLEMENT | REGION_BASE_COST | BASE_COST | ADJUSTED_COST | P_REGULATION |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L1 | SA1 | LOWER1SEC | 22.47572 | -10000 | 0 | 0 | 0 | 22.48 | 0 | 0 | 0 | 0 |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L1 | VIC1 | LOWER1SEC | 22.47572 | -10000 | 0 | 0 | 1 | 22.48 | 0 | 0 | 0 | 0 |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | NSW1 | LOWER5MIN | 642.07987 | -10029.91984 | 0 | 0 | 88 | 275.08 | 0 | 0 | 0 | 0 |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | NSW1 | LOWERREG | 642.07987 | -10029.91984 | 0 | 1 | 11 | 160 | 0 | 0 | 0 | 0 |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | QLD1 | LOWER5MIN | 642.07987 | -10029.91984 | 0 | 0 | 36 | 275.08 | 0 | 0 | 0 | 0 |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | QLD1 | LOWERREG | 642.07987 | -10029.91984 | 0 | 1 | 104 | 160 | 0 | 0 | 0 | 0 |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | SA1 | LOWER5MIN | 642.07987 | -10029.91984 | 0 | 0 | 97 | 275.08 | 0 | 0 | 0 | 0 |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | SA1 | LOWERREG | 642.07987 | -10029.91984 | 0 | 1 | 20 | 160 | 0 | 0 | 0 | 0 |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | VIC1 | LOWER5MIN | 642.07987 | -10029.91984 | 0 | 0 | 54.08 | 275.08 | 0 | 0 | 0 | 0 |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 01:00:00 | F_I+NIL_MG_R60 | SA1 | RAISE60SEC | 634.92576 | 634.92576 | 0.09 | 0.09 | 50 | 634.93 | 2.25 | 28.57185 | 28.57185 | 0 |
| 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 01:00:00 | F_I+NIL_MG_R60 | TAS1 | RAISE60SEC | 634.92576 | 634.92576 | 0.09 | 0.09 | 0 | 634.93 | 0 | 28.57185 | 28.57185 | 0 |
| ... |
| C | SETP.WORLD | DVD_PD_FCAS_REQ_CONSTRAINT | AEMO | PUBLIC | 2026/10/09 | 18:43:52 | 001791535432585 | MONTHLY_ARCHIVE | 001791535432585 | |||||||||||
| I | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | PREDISPATCHSEQNO | RUN_DATETIME | RUNNO | INTERVAL_DATETIME | CONSTRAINTID | REGIONID | BIDTYPE | LHS | RHS | MARGINALVALUE | RRP | REGIONAL_ENABLEMENT | CONSTRAINT_ENABLEMENT | REGION_BASE_COST | BASE_COST | ADJUSTED_COST | P_REGULATION |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L1 | SA1 | LOWER1SEC | 22.47572 | -10000 | 0 | 0 | 0 | 22.48 | 0 | 0 | 0 | 0 |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L1 | VIC1 | LOWER1SEC | 22.47572 | -10000 | 0 | 0 | 1 | 22.48 | 0 | 0 | 0 | 0 |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | NSW1 | LOWER5MIN | 642.07987 | -10029.91984 | 0 | 0 | 88 | 275.08 | 0 | 0 | 0 | 0 |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | NSW1 | LOWERREG | 642.07987 | -10029.91984 | 0 | 1 | 11 | 160 | 0 | 0 | 0 | 0 |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | QLD1 | LOWER5MIN | 642.07987 | -10029.91984 | 0 | 0 | 36 | 275.08 | 0 | 0 | 0 | 0 |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | QLD1 | LOWERREG | 642.07987 | -10029.91984 | 0 | 1 | 104 | 160 | 0 | 0 | 0 | 0 |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | SA1 | LOWER5MIN | 642.07987 | -10029.91984 | 0 | 0 | 97 | 275.08 | 0 | 0 | 0 | 0 |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | SA1 | LOWERREG | 642.07987 | -10029.91984 | 0 | 1 | 20 | 160 | 0 | 0 | 0 | 0 |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 00:00:00 | F_MAIN+MREH_TL_L5 | VIC1 | LOWER5MIN | 642.07987 | -10029.91984 | 0 | 0 | 54.08 | 275.08 | 0 | 0 | 0 | 0 |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 01:00:00 | F_I+NIL_MG_R60 | SA1 | RAISE60SEC | 634.92576 | 634.92576 | 0.09 | 0.09 | 50 | 634.93 | 2.25 | 28.57185 | 28.57185 | 0 |
| D | PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 | 2026092417 | 2026/09/24 12:30:00 | 1 | 2026/09/25 01:00:00 | F_I+NIL_MG_R60 | TAS1 | RAISE60SEC | 634.92576 | 634.92576 | 0.09 | 0.09 | 0 | 634.93 | 0 | 28.57185 | 28.57185 | 0 |
| ... | ||||||||||||||||||||
| C | END OF REPORT | 1003 |
PREDISPATCHSEQNO,RUN_DATETIME,RUNNO,INTERVAL_DATETIME,CONSTRAINTID,REGIONID,BIDTYPE,LHS,RHS,MARGINALVALUE,RRP,REGIONAL_ENABLEMENT,CONSTRAINT_ENABLEMENT,REGION_BASE_COST,BASE_COST,ADJUSTED_COST,P_REGULATION
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L1,SA1,LOWER1SEC,22.47572,-10000,0,0,0,22.48,0,0,0,0
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L1,VIC1,LOWER1SEC,22.47572,-10000,0,0,1,22.48,0,0,0,0
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,NSW1,LOWER5MIN,642.07987,-10029.91984,0,0,88,275.08,0,0,0,0
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,NSW1,LOWERREG,642.07987,-10029.91984,0,1,11,160,0,0,0,0
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,QLD1,LOWER5MIN,642.07987,-10029.91984,0,0,36,275.08,0,0,0,0
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,QLD1,LOWERREG,642.07987,-10029.91984,0,1,104,160,0,0,0,0
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,SA1,LOWER5MIN,642.07987,-10029.91984,0,0,97,275.08,0,0,0,0
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,SA1,LOWERREG,642.07987,-10029.91984,0,1,20,160,0,0,0,0
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,VIC1,LOWER5MIN,642.07987,-10029.91984,0,0,54.08,275.08,0,0,0,0
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 01:00:00",F_I+NIL_MG_R60,SA1,RAISE60SEC,634.92576,634.92576,0.09,0.09,50,634.93,2.25,28.57185,28.57185,0
2026092417,"2026/09/24 12:30:00",1,"2026/09/25 01:00:00",F_I+NIL_MG_R60,TAS1,RAISE60SEC,634.92576,634.92576,0.09,0.09,0,634.93,0,28.57185,28.57185,0
...
C,SETP.WORLD,DVD_PD_FCAS_REQ_CONSTRAINT,AEMO,PUBLIC,2026/10/09,18:43:52,001791535432585,MONTHLY_ARCHIVE,001791535432585
I,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,PREDISPATCHSEQNO,RUN_DATETIME,RUNNO,INTERVAL_DATETIME,CONSTRAINTID,REGIONID,BIDTYPE,LHS,RHS,MARGINALVALUE,RRP,REGIONAL_ENABLEMENT,CONSTRAINT_ENABLEMENT,REGION_BASE_COST,BASE_COST,ADJUSTED_COST,P_REGULATION
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L1,SA1,LOWER1SEC,22.47572,-10000,0,0,0,22.48,0,0,0,0
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L1,VIC1,LOWER1SEC,22.47572,-10000,0,0,1,22.48,0,0,0,0
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,NSW1,LOWER5MIN,642.07987,-10029.91984,0,0,88,275.08,0,0,0,0
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,NSW1,LOWERREG,642.07987,-10029.91984,0,1,11,160,0,0,0,0
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,QLD1,LOWER5MIN,642.07987,-10029.91984,0,0,36,275.08,0,0,0,0
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,QLD1,LOWERREG,642.07987,-10029.91984,0,1,104,160,0,0,0,0
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,SA1,LOWER5MIN,642.07987,-10029.91984,0,0,97,275.08,0,0,0,0
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,SA1,LOWERREG,642.07987,-10029.91984,0,1,20,160,0,0,0,0
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 00:00:00",F_MAIN+MREH_TL_L5,VIC1,LOWER5MIN,642.07987,-10029.91984,0,0,54.08,275.08,0,0,0,0
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 01:00:00",F_I+NIL_MG_R60,SA1,RAISE60SEC,634.92576,634.92576,0.09,0.09,50,634.93,2.25,28.57185,28.57185,0
D,PREDISPATCH,FCAS_REQ_CONSTRAINT,1,2026092417,"2026/09/24 12:30:00",1,"2026/09/25 01:00:00",F_I+NIL_MG_R60,TAS1,RAISE60SEC,634.92576,634.92576,0.09,0.09,0,634.93,0,28.57185,28.57185,0
...
C,"END OF REPORT",1003
Availability
Visibility: Public
This table is in the public monthly MMSDM archive.
I have collated the list of all those files into one place, in this CSV metadata file. (Columns year, month, url, compressed_size in bytes).
Tip
There are multiple files per month, because this is such a large table.
The earliest available data is month 12 of 2024. The most recent available data is month 9 of 2026.
Every month in between has at least one file.
Data Size
Each year of data is approximately 8 GB when zipped, 76 GB as unzipped CSV.
Tip
This table is large.
Simply calling pd.read_csv() might fill up all the memory on your laptop.
(As a rule of thumb, you need double the amount of memory as the size of the CSV.)
You will need to think hard about memory optimisation.
e.g. consider using Polars instead of Pandas, and selecting only the columns you care about.
Deduplication and PDR Loader Configuration
The primary keys are:
The transaction type is "insert", which means that you will usually not see duplicate data. If you do, you can deduplicate based on the primary keys, without sorting first. Rows from different files with the same primary keys should have the same values.
| Report Name | Report Subtype | Version |
|---|---|---|
| PREDISPATCH | FCAS_REQ_CONSTRAINT | 1 |
This means that the CSV files start with metadata columns:
Links
This page as JSON (schema documented here, but may change)
Download a JSON Schema specification for this table.
Official AEMO schema documentation
Other Information
Package: PRE_DISPATCH