Menu

Curating a reporting schema for self-service users: views, friendly names and what to hide
πŸ“°

Curating a reporting schema for self-service users: views, friendly names and what to hide

DEV Community: dotnetΒ·Razi SyedΒ·1 day ago
#PIREITM2
#devtodotnet#devto#dev#report#tables
Reading 0:00
15s threshold

By Razi Syed. Sample code: github.com/dotnetreport/dotnetreport-aspnetcore-quickstart

Most self-service reporting projects don't fail in the report designer. They fail the first time a user opens the field list and sees tbl_ord_hdr , IsDeleted , RowVersion , LegacyStatusCd2 and four hundred tables in alphabetical order. They pick the wrong Status column, join orders to the wrong customer key, get a number that's off by the soft-deleted rows, and from then on "the reports are wrong" β€” even though every query ran exactly as written.

The fix isn't a better UI. It's treating the schema you expose to report builders as a product surface: curated, named for humans, pre-joined where joins are hard, and with the dangerous parts simply absent. This article is the checklist I use, with the setup screen of Dotnet Report (which I work on β€” disclosure) as the concrete example.…

Continue reading β€” create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.