docs(blog): punchier LinkedIn draft for non-DC users - pain-first, no jargon
publish / Build-and-publish (push) Successful in 6m39s

This commit is contained in:
blog-dev
2026-09-04 09:29:20 +00:00
parent 79b62e4cfc
commit aa1f015f5a
+12 -9
View File
@@ -173,24 +173,27 @@ As ever - if you'd like to see additional validation types, [get in touch](https
<!-- Source LinkedIn post:
Your reporting tables keep needing derived columns - and until now, the answer was a SAS hook script.
Every SAS team has a spreadsheet that "helps" load data into production.
Change a price, and the revenue column updates itself. Stamp the user who made the change, in the same row, automatically. And when an email address doesn't look like an email address - block it before it ever reaches production.
You know the one. Someone built it years ago, nobody fully understands it, and it writes straight to a table it probably shouldn't.
Data Controller v7.13 ships live formulas in the editor grid. Configure a column with a rule like = PRICE * VOLUME and the value is computed on entry, spreadsheet-style, using the full function library (IF, SUM, ROUND and friends). A HARDFORMULA locks the column; a SOFTFORMULA lets the user override when the business needs it.
What if that spreadsheet was wrong BEFORE anyone could hit send?
It completes the story started in 7.12 with regex validation - HARDREGEX blocks invalid patterns outright, SOFTREGEX highlights them as a warning. Both are one row of config in MPE_VALIDATIONS. No code, no deployment.
That's the idea behind Data Controller - a web app for SAS that lets business users change data safely. Every change is checked at the point of entry, goes for approval, and lands in a full audit trail. No new infrastructure - it runs on the SAS you already have.
There are also special runtime values - so an audit column can read "sasdemo changed from orig-2" without anyone typing it:
The latest release adds two things that used to require a developer:
=IF( DC.ROW_STATUS ="U","unedited",
DC.USER_NAME &" changed from "& DC.ORIG_VALUE )
→ Formulas. Type a rule like = PRICE * VOLUME and the revenue column computes itself - spreadsheet-style, in the browser, live.
Full write-up with live screenshots (and how the rules flow from config table to grid):
→ Pattern checks. "Must be a valid email." "Must be an integer." One row of config. Bad values are blocked or flagged before submission - not found in next month's report.
Both are configuration, not code. If you can fill in a table, you can set them up.
We wrote up how it works (with live screenshots of a bad email being caught red-handed):
Link in the comments 👇
#sas #datavalidation #dataquality #endusercomputing #datacontroller
#sas #dataquality #endusercomputing #excel #datagovernance
First comment: https://datacontroller.io/v7-13-formulas-and-regex/
-->