Reports - ProcessingOnly property

norseny
Member Posts: 19
Hi!
I have about 300 new reports in my nav database and I need to write down the names of only those that are not ProcessingOnly. Do you know any smart way how to do this quick? Can I filter my new reports somehow? It'll take some time to check every single new report.
I'll appreciate any clues!
I have about 300 new reports in my nav database and I need to write down the names of only those that are not ProcessingOnly. Do you know any smart way how to do this quick? Can I filter my new reports somehow? It'll take some time to check every single new report.
I'll appreciate any clues!

0
Best Answers
-
Hi,
Function to get the list:
LOCAL PROCEDURE GetReportsWithoutLyout@1000000005();
VAR
Object@1000000000 : Record 2000000001;
StandardTextTEMP@1000000001 : TEMPORARY Record 7;
BEGIN
Object.SETRANGE(Type, Object.Type::Report);
IF Object.FINDSET THEN REPEAT
IF FORMAT(REPORT.DEFAULTLAYOUT(Object.ID)) = 'None' THEN BEGIN
StandardTextTEMP.Code := FORMAT(Object.ID);
StandardTextTEMP.Description := Object.Name;
StandardTextTEMP.INSERT(FALSE);
END;
UNTIL Object.NEXT = 0;
PAGE.RUNMODAL(0,StandardTextTEMP);
END;
You can add ID filter on object record if you want to loop not through all reports.
5 -
- export your Reports as a text file.
- split the file into single object files
- use a text search utility (e.g. findstr) to identify files which contain the string 'ProcessingOnly=Yes;' and delete those.
- use a text search utility again to compose a list of the remaining objects name
With something like perl or awk, you can even compile the list directly from the exported object file in one go with a one-liner.5
Answers
-
I can't really think of a nice way to do this on the spot in 2009R2.
Objects are stored as BLOB's so theres no fast easy way IMO.
Maybe you can make something happen by exporting them as text and look for the layout part.
However if I was in your position I would probably just go through them one by one.Austrian NAV/BC Dev1 -
Hi,
Function to get the list:
LOCAL PROCEDURE GetReportsWithoutLyout@1000000005();
VAR
Object@1000000000 : Record 2000000001;
StandardTextTEMP@1000000001 : TEMPORARY Record 7;
BEGIN
Object.SETRANGE(Type, Object.Type::Report);
IF Object.FINDSET THEN REPEAT
IF FORMAT(REPORT.DEFAULTLAYOUT(Object.ID)) = 'None' THEN BEGIN
StandardTextTEMP.Code := FORMAT(Object.ID);
StandardTextTEMP.Description := Object.Name;
StandardTextTEMP.INSERT(FALSE);
END;
UNTIL Object.NEXT = 0;
PAGE.RUNMODAL(0,StandardTextTEMP);
END;
You can add ID filter on object record if you want to loop not through all reports.
5 -
Thanks, it seems great!
I have one problem though, with the REPORT.DEFAULTLAYOUT(...) part - i'm using 2009r2 and I'm afraid that's the case - I cannot compile the object: "You have specified unknown variable DEFAULTLAYOUT". I think it's only possible to use this function in version >=2015, am I right?0 -
Yes, you are right.0
-
0
-
- export your Reports as a text file.
- split the file into single object files
- use a text search utility (e.g. findstr) to identify files which contain the string 'ProcessingOnly=Yes;' and delete those.
- use a text search utility again to compose a list of the remaining objects name
With something like perl or awk, you can even compile the list directly from the exported object file in one go with a one-liner.5 -
In 2009R2 it is possible to export all reports in xml format. In the resulting xml document you can filter on the 'ProcessingOnly' element.1
-
Thanks for all the answers!0
Categories
- All Categories
- 73 General
- 73 Announcements
- 66.6K Microsoft Dynamics NAV
- 18.7K NAV Three Tier
- 38.4K NAV/Navision Classic Client
- 3.6K Navision Attain
- 2.4K Navision Financials
- 116 Navision DOS
- 851 Navision e-Commerce
- 1K NAV Tips & Tricks
- 772 NAV Dutch speaking only
- 617 NAV Courses, Exams & Certification
- 2K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 320 Dynamics CRM
- 111 Dynamics GP
- 10 Dynamics SL
- 1.5K Other
- 990 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 35 Design Patterns (General & Best Practices)
- 1 Architectural Patterns
- 10 Design Patterns
- 5 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1.1K General Chat
- 1.6K Website
- 83 Testing
- 1.2K Download section
- 23 How Tos section
- 252 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions