Microsoft Product Support

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Thursday, 2 February 2012

Debugging Microsoft Dynamics GP Word Templates Revisited

Posted on 04:51 by Unknown
Couple days aback, I went through an issue were Microsoft Word templates were being rendered to an html file, causing Internet Explorer to launch instead - see Word Templates rendering report in Internet Explorer. In troubleshooting this problem, I engaged my good friend Rob Wagner over at Microsoft, who showed me a few more tricks for troubleshooting issues around Word Templates and template rendering.

Also, some time ago I covered a troubleshooting tip in my article Debugging Microsoft Dynamics GP 2010 Word Templates. Back then I looked at the TPELogging Dex.ini key, which creates a log file in the temp folder (%temp%) where templates are rendered and loaded by Microsoft Word. TPELogging is used to establish where possible exceptions could have occur while rendering the actual template into a Word document.

While working with Rob, I learned about another Dex.ini key that can assist with the troubleshooting process:

KeepTemplateTempFiles=TRUE

This Dex.ini key allows Dexterity to persists the template in the temp folder once the Microsoft Word document has been created. Now, to see how this is useful, you need to keep in mind a few things about how Word Templates really works in Microsoft Dynamics GP.

When a template is created under the Report Template Maintenance window, the actual template XML representation is saved in the system database, DYNAMICS, in the syReportTemplates table (in a SQL Server binary data type column). This is all good, because in theory, once you create your template and saved it away from the temp folder into, say, My Documents, then reimport that template into Microsoft Dynamics GP, there will never be a chance of you loosing the changes you made even if you delete the physical template document (the DOCX).

With that said, when you print a template 3 things happen - well, to summarize anyways:

1. The Report Writer engine generates an XML data file if the report was setup to use a template.

2. The Word Template code takes over and reads the actual XML template representation in syReportTemplates, and recreates the physical Microsoft Word template document in your local temp folder.

3. Through Microsoft Word and Open XML automation, the physical template is applied to the XML data file to create the final Microsoft Word document, this is, your invoice, purchase order, or any other document you have decided to generate using a template.

When the final document is delivered, the code performs some cleanup by removing the template file (leaving you with the actual output document).

The KeepTemplateTempFiles key allows the Word Templates code to persist the generated template (in step 2 above). Should you run into any issues, you could potentially open the template file to compare against the document you originally worked on.

A couple words of caution...

If you choose to enable KeepTemplateTempFiles, be sure to disable it once you have completed all troubleshooting activities, since each time you print a document to a template, you will obtain a new template file for that print run. Overtime, you can have a very full temp folder should you not set the key value to FALSE. By default, Microsoft Dynamics GP has this key value turned off when it's not found in the Dex.ini file.

Until next post!

MG.-
Mariano Gomez, MVP
IntellPartners, LLC
http://www.IntellPartners.com/
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
Posted in DEX.INI, Troubleshooting, Word Templates | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • Vote for your 2012 GPUG All Star
    The time has come again to vote for the next year's GPUG All Star awards. Surprisingly, I have been nominated to this award along with f...
  • Web Client Wednesday - Browser Support
    Last week MVP Mark Polino started a series called Web Client Wednesdays, which is actually a Microsoft Dynamics GP community outreach to st...
  • Year-to-year Inventory Margin Report using the PIVOT operator in T-SQL
    As of late I have been camping out at the SQL Developer Center's   Transact-SQL Forum  and I have to say, I have learned a great deal fr...
  • Extender Auto Open and Auto Close options not working in GP 2010
    Just recently, I came across an issue reported by a partner on Extender Auto Open and Auto Close options not working. Extender Auto Open a...
  • The Dynamics GP Blogster's best articles of 2012
    It's that time of the year again! Time to say goodbye to the outgoing year, 2012, and receive the new one, 2013, making all sort of reso...
  • New Article on MSDynamicsWorld: Do's and Don'ts of Microsoft Dynamics GP Forums
    Many of you know me as an avid forum contributor - I can usually be found on the Microsoft Dynamics GP Partner Online Technical Community ...
  • What's new in Microsoft Dexterity 11.0
    The excitement around Microsoft Dynamics GP 2010 could not be any higher. Traffic on my site has doubled since I began releasing informatio...
  • Rejecting duplicate checks during Bank Transactions import with Integration Manager
    One of the interesting things about checkbooks setup in Microsoft Dynamics GP is that you have the ability to prevent duplicate checks from ...
  • How to add a "Cover Letter" page to a Microsoft Dynamics GP Word Template document
    I wrote an article almost a year ago showing a simple technique to add a  Terms and Conditions page to a Microsoft Dynamics GP Word Templat...
  • VBA - Suppressing CTRL+Break or CTRL+C in VBA Customizations
    VBA is by far one of the best customization tools available to Microsoft Dynamics GP developers and as such it is widely used across a numbe...

Categories

  • Ad Campaigns
  • ADO
  • Adobe Acrobat
  • Analytical Accounting
  • Architecture
  • Around the Blogosphere
  • Article
  • Azure
  • Bank Reconciliation
  • Best of 2009
  • Best of Series
  • Best Practices
  • Bing Maps Enterprise
  • Books
  • Business Alerts
  • Business Analyzer
  • C#
  • Code
  • COM
  • Community
  • Compliance
  • Connect
  • Continuum
  • Convergence
  • Corporate Performance Management
  • CRM
  • Database Maintenance Utility
  • Decisions Conference
  • DEX.INI
  • DEXSQL
  • Dexterity
  • Discussions
  • Drill-Down Builder
  • Dynamics GP 10
  • Dynamics GP 11
  • Dynamics GP 12
  • Dynamics GP 2010
  • Dynamics GP 2010 R2
  • Dynamics GP 2013
  • eConnect
  • EFT
  • Electronic Banking
  • Encumbrance
  • Events
  • Extender
  • Field Services
  • Fixed Assets
  • Forecaster
  • From the Newsgroups
  • FRx
  • Functionality
  • General Ledger
  • GPUG
  • Home Page
  • Human Resources
  • Humor
  • IMHO
  • Installation
  • Integration
  • Integration Manager
  • Internet Explorer
  • Inventory
  • Kinnect
  • Maintenance
  • Management Reporter
  • Manufacturing
  • Menus for Visual Studio Tools
  • Microsoft Office
  • Modifier
  • Multicurrency Management
  • Multitenancy
  • MVP Summit
  • MVPs
  • Named Printers
  • Navigation Pane
  • Notes
  • ODBC
  • Office Web Components
  • OLE Container
  • Online Services
  • OpenXML
  • Partner Connections
  • Payables Management
  • Payroll
  • Performance
  • PO Commitments
  • Printer Compatibility
  • Product Feedback
  • Project Accounting
  • Purchasing
  • Receivables Management
  • RemoteApp
  • Report Writer
  • Reporting
  • Roadmap
  • SafePay
  • Sales Order Processing
  • Season Greetings
  • Security
  • Service Call Management
  • SharePoint
  • SmartList and SmartList Builder
  • SQL Reporting Services
  • SQL Scripting
  • SQL Server
  • Support Debugging Tool
  • Tax Updates
  • Technical Conference
  • The Partner Event
  • The Technology Corner
  • Training
  • Translation
  • Troubleshooting
  • Upgrades
  • VAT
  • VB.NET
  • VBA
  • VBScript
  • Visual Studio 2008
  • Visual Studio Tools
  • Web Client
  • Web Services
  • Windows 7
  • Windows 8
  • Word Templates
  • XBox
  • XBRL

Blog Archive

  • ►  2013 (68)
    • ►  December (2)
    • ►  November (8)
    • ►  October (5)
    • ►  September (5)
    • ►  August (3)
    • ►  July (8)
    • ►  June (5)
    • ►  May (5)
    • ►  April (2)
    • ►  March (11)
    • ►  February (6)
    • ►  January (8)
  • ▼  2012 (101)
    • ►  December (8)
    • ►  November (6)
    • ►  October (15)
    • ►  September (16)
    • ►  August (9)
    • ►  July (4)
    • ►  June (4)
    • ►  May (6)
    • ►  April (4)
    • ►  March (11)
    • ▼  February (4)
      • SSRS: GL Trial Balance Summary report returns no d...
      • More Management Reporter 2012
      • GPUG Webinar: "Where do the experts turn for answe...
      • Debugging Microsoft Dynamics GP Word Templates Rev...
    • ►  January (14)
  • ►  2011 (158)
    • ►  December (7)
    • ►  November (17)
    • ►  October (7)
    • ►  September (8)
    • ►  August (8)
    • ►  July (12)
    • ►  June (12)
    • ►  May (13)
    • ►  April (23)
    • ►  March (21)
    • ►  February (10)
    • ►  January (20)
  • ►  2010 (168)
    • ►  December (15)
    • ►  November (11)
    • ►  October (12)
    • ►  September (24)
    • ►  August (13)
    • ►  July (12)
    • ►  June (8)
    • ►  May (17)
    • ►  April (14)
    • ►  March (9)
    • ►  February (16)
    • ►  January (17)
  • ►  2009 (5)
    • ►  December (5)
Powered by Blogger.

About Me

Unknown
View my complete profile