Field guides for California district business offices
All guides
Field guide · DFT-G09

Reading a SACS .dat export

The .dat file the SACS Web System produces is plain, documented, and readable with a text editor. Knowing its shape demystifies what the checks are actually checking.

The shape

Three record types

A .dat export is ASCII, comma-delimited, quoted. One file can hold several datasets, and each dataset is a sandwich: one header record, N detail records, one end-of-dataset record.

SPECIMEN · DATASET STRUCTURESYNTHETIC DATA
"2025-26","01999990000000","A","BA"header
"0100000000000000008790","125,000.00 shape"detail x N
"-1","EOD","01999990000000","A","BA","2419"end of dataset

The header carries the fiscal year, the 14-digit CDS code (a 7-digit code is accepted and zero-padded), the reporting period, and the column code. Each detail record is just a 19-digit account string and an amount. The EOD record repeats the identity fields and declares how many detail records the dataset should contain.

The vocabulary

Periods and columns

Period identifiers: BS1 (July 1 budget), A (unaudited actuals), I1, I2, I3 (first interim, second interim, end-of-year projection). Column codes describe which money view the numbers represent: BB budget, BE estimated actuals, BA unaudited actuals, IO original budget, IB board-approved operating budget, IA actuals to date, IP projected totals. Periods pair with specific columns; a dataset claiming unaudited actuals in a projection column is telling on itself.

Why it matters

The early-checking input

The SACS Web System offers two exports. The Official Export runs the technical review checks and aborts if they fail; it exists to certify. The Other Export runs no checks and is available to any authorized user at any time; it exists to move data. That second property makes it the natural input for pre-flight work: it is the same dataset the checks will eventually judge, available before they judge it.

One caution from the format itself: the EOD count is a tripwire. If it disagrees with the number of detail records, the file was truncated or hand-edited, and the honest response is to re-export, not to fix the count. A .dat file is a mirror of a system of record; edits belong in the system, not the mirror.

Check your own file in the time it took to read this. Drop a SACS Other Export (.dat) into SACS Pre-Flight and see every finding, with line numbers, before the Official Export runs. Findings are free and your file never leaves your browser.

Run SACS Pre-Flight free