Change XML Value in an existing XML BLOB (Report Parameter)
Martin_Förster
Member Posts: 55
Good Evening guys,
I want to Change a Report Parameter befor Executing The Report. The Report will execute automaticlly start by the Job Queue, but some Report Parameter have to be calculate every Time, for example the Reference Month.
The Report Parameter are saved in a blob Field, which will be read before Executing. Some of These Parameter should be Change before executign the Report.
I know the XML Node (ReferenceMonth), i can get the Saved Value, but i dont know how to Change this value.
Below the Function for get the XML Value:
GetNodeValueOfXMLParameters(XMLText : Text;NodeName : Text) : Text
IF XMLText = '' THEN
EXIT('');
XMLDoc := XMLDoc.XmlDocument;
XMLDoc.LoadXml(XMLText);
XMLNode := XMLDoc.SelectSingleNode(STRSUBSTNO('ReportParameters/Options/Field[@name=''%1'']',NodeName));
IF ISNULL(XMLNode) THEN
ERROR(NodeNotFound);
IF STRLEN(XMLNode.InnerText) > 0 THEN
EXIT(XMLNode.InnerText);
I want to Change a Report Parameter befor Executing The Report. The Report will execute automaticlly start by the Job Queue, but some Report Parameter have to be calculate every Time, for example the Reference Month.
The Report Parameter are saved in a blob Field, which will be read before Executing. Some of These Parameter should be Change before executign the Report.
I know the XML Node (ReferenceMonth), i can get the Saved Value, but i dont know how to Change this value.
Below the Function for get the XML Value:
GetNodeValueOfXMLParameters(XMLText : Text;NodeName : Text) : Text
IF XMLText = '' THEN
EXIT('');
XMLDoc := XMLDoc.XmlDocument;
XMLDoc.LoadXml(XMLText);
XMLNode := XMLDoc.SelectSingleNode(STRSUBSTNO('ReportParameters/Options/Field[@name=''%1'']',NodeName));
IF ISNULL(XMLNode) THEN
ERROR(NodeNotFound);
IF STRLEN(XMLNode.InnerText) > 0 THEN
EXIT(XMLNode.InnerText);
0
Answers
-
Have you tried
XMLNode.InnerText := 'new value';

Then you can store updated XML in a BLOB field.TempBLOB.BLOB.CREATEOUTSTREAM(OStream); XMLDoc.Save(OStream);
Slawek Guzek - www.yitron.co.uk
Business Central, MS SQL Server, Wherescape RED;0 -
Do you want clear the value OR just clear it off??
Above suggestion will work I belief.Thanks
Blog - rockwithnav.wordpress.com/
Twitter - https://twitter.com/RockwithNav
Facebook - https://facebook.com/rockwithnav/0
Categories
- All Categories
- 75 General
- 75 Announcements
- 66.7K Microsoft Dynamics NAV
- 18.8K 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
- 610 NAV Courses, Exams & Certification
- 1.9K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 251 Dynamics CRM
- 103 Dynamics GP
- 6 Dynamics SL
- 1.5K Other
- 991 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 28 Design Patterns (General & Best Practices)
- Architectural Patterns
- 9 Design Patterns
- 4 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1K General Chat
- 1.6K Website
- 77 Testing
- 1.2K Download section
- 23 How Tos section
- 249 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions

