What is the "Is Standard" in a Report?


My understanding: If you’re developing your own app/module, a standard report will be saved in the module definition, and will therefore be deployed wherever the app is installed. A custom (non-standard) report is specific to the site and the definition is local to the database.


The choice is yours as to where you want the definitions (metadata) of the report to be save to : either on the File System (Is Standard : Yes) or to the database (Is Standard : No).

If the report is defined as Is Standard : No, then no File System files are generated and all of the report definitions are persisted to the Database and not to files on the FS. I explain this in the first few paragraphs of this tutorial [Tutorial] Script Report / Chart. This does not always hold true for all definition properties, eg add_total_row etc.

The choice of the term “Is Standard” is such a shame as the ‘Custom?’ for DocTypes, Workspaces, etc and the ‘Is Standard?’ for Script Reports, Notifications, etc work similarly. Both being indicative of it being built-in (standard !) on the FS of the app or a customisation (custom !) to the app stored in the DB.

With Scheduler Event and Notification, this distinction is not as clear cut, and on occasion both mechanisms are used irrespective of your choice. The problem arises when you alter the selection and save and then revert your selection. This causes a remnant of the former either in the DB or on the FS, with unexpected behaviour. Caveat emptor !!!