Skip to Content
Author's profile photo Poonam Assudani

Generating Microsoft Word Doc with dynamic data

In many cases there is a requirement to generate Microsoft word doc , which contains standard template data as well as dynamic variable data for creating an attachment.

Though there is standard functionality to create attachment in CRM with templates , but many times it may not suffice our requirement .

In this blog , I will provide steps which can be used to generate Microsoft word documents as attachment with dynamic data.

Software Required : Microsoft Word Content Control Tool Kit


Step 1 :  Create a Microsoft word template using the Content controls.

You can create the Microsoft word template , which contains the fixed text as well as dynamic data that you want to populate. The dynamic data will be handled by content controls at run time .

Content controls are predefined pieces of contents that include text blocks, drop-down menus, check boxes, and pictures, etc. You can map content controls with elements in an custom XML file so that the data can be automatically populated in the document.


Step 2:  Binding content controls to the custom XML part

Open the Word template you have just created in step 1 in word content control toolkit . Bind  the content controls to Custom XML parts.

Step 3 : Uploading the template to the MIME folder

Now upload the word template with content controls into the Mime repository in the SAP system  .

Go to SE80 and select MIME Repository, and expand to folder  . You can select the folder in which you want to upload the template.

Right-click your folder and choose Import MIME Objects. Select and upload the template.

On the Create New Document screen, select Application-Specific MIME Object as the document class, enter a document name, and choose Save.

Step 4 : Generate the XML data

Go to transaction XSLT_TOOLS and create a simple transformation Z_XML_GEN.

This transformation will  contain the dynamic data that you want to fill into the template . In our case we want to fill the Sold to name and sold to number from the SAP system .

Hence we write this transformation.This will generate custom XML with the data for sold to name and  sold to id.


Step 5: Fetch the Word Document template

Now in your program (where you actually want to generate the word template ), first we need to fetch the word template which we uploaded in Mime repository (step 3). It will be loaded in variable docx.


Step 6: Fetch Data and Call the transformation to generate custom XML

Now fill the data Sold to name and sold to id into structure ls_data (this structure can contain 2 fields sold_to_name and sold_to_id).  And call the transformation Z_GEN_XML with this data . The transformation will generate the custom XML  with the data for sold to name and sold to id. This will be stored in variable ‘texts’


Step 7: Create the style sheets for the word template .

In step 5 we had fetched the word template from the mime repository into variable docx. Now we generate style sheet for this docx. Data stored in variable lt_xslttab.


Step 8 : Merge data

Merge the word template style sheet created in step 7 with the XML data generated from transformation in step 6.



Step 9 : Generate the attachment object with the merged data

lv_doc now contains the template data along with the merged data . Make sure everything is in  XSTRING format. With this you can now create a attachment object(the programming for this is easy , you can simply refer the standard coding for that ) and display it in the web UI.


Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member

      Hi Poonam,

      Thanks for the tutorail.

      i have tried to implement it in our system, but I had error during the generation_docx with the xml schema which seems to be wrong. Is it possible to get the Word and the xml file you used to execute your process?

      Thanks in advance


      Nicolas Raymond

      Author's profile photo Maria João Paulo Rocha
      Maria João Paulo Rocha



      First I want to thanks for your blog.

      I’m having problems with the installation of the word content control toolkit.

      Already did the download from  (, but didn’t find any exe.


      After some research… on blog:,

      is said to: “Run the MSI file and accept the defaults”

      But how? How to run the msi file (what msi file?) How can I install the dbe?


      Can you please help?


      Maria João Rocha

      Author's profile photo Dhiraj More
      Dhiraj More

      Can we also include SO10 Text similarly in word document?