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

Unknown codes: valid all year, invalid at submission

A code can live in your ledger for twelve months and still not exist as far as this year's SACS tables are concerned. Here is how that happens and how to run it down.

Anatomy

Nineteen digits, six fields

Every SACS account string decomposes the same way: fund (2 digits), resource (4), project year (1), goal (4), function (4), object (4). Validation happens per field first: each code must appear in CDE's valid code list for the fiscal year being reported. Only then do the combination checks ask whether the fields are legal together.

Causes

Three ways a code goes unknown

  • Retired. The code was valid last year. Programs end, resources sunset, and the code list moves. A ledger that rolled forward keeps posting to it anyway.
  • Not yet valid. The reverse: a code added for next fiscal year, used a year early.
  • A typo that formed a plausible code. Four digits transposed can produce a string that looks institutional and matches nothing.

All three produce the same symptom at review time, and all three have the same class of fix: find the code the current-year list actually contains, and recode the lines.

Running it down

Finding the right code

CDE publishes the valid code lists and combination tables, and the SACS Web System's Tools menu includes a single-string validation utility: key in one 19-digit code and it tells you whether the string is valid for the current fiscal year and entity. That is the authoritative check for one string.

The practical problem is volume and candidates. When a retired resource appears on two hundred lines, you do not want to know that it is invalid; you already suspect it. You want the nearest valid code, verified against every combination table with the rest of the string intact, so the recode is one decision instead of two hundred lookups. Edit distance plus full-string re-validation gets you a short list of did-you-mean candidates; judgment picks from there.

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