Tim Murphy's .NET Software Architecture Blog

Office Open XML

There are 21 entries for the tag Office Open XML

Alternate OOXML Document Generation Approach

Eric White has put out a document generation example which uses XPath and Word Content Controls. I applaud Eric for the amount of work he has done with his exploration of different ways to perform template base generation. This is a subject that is challenging and we need as many ideas as we can get. There are a couple of areas that I see room for improvement in this XPath design that I would like to bring up. The first is that Eric has chosen to put his document generation in the document itself. ......

2011 Chicago Code Camp

It is that time again. Time to polish up you presentation skills on your favorite language or technology features. The Chicago Code Camp is accepting proposals for presentations. Show everyone in the Chicago area what you know and submit your own. I really enjoyed presenting last year and just had to submit a proposal for this year. This time around my topic is Increasing Collaboration with Windows Phone 7, SharePoint 2010 and Office Open XML. I had a much longer title but the site forced me to shorten ......

Update Since Microsoft/PSC Office Open XML Case Study

In 2009 Microsoft released a case study about a project that we had done using the OOXML SDK 1.0 for Research Directors Inc. Since that time Microsoft has released version 2.0 of the SDK and PSC has done significant development with it. Below are some of the mile stones we have reached since the original case study. At the time of the original case study two report types had been automated to output as PowerPoint presentations. Now that the all the main products have been delivered we have added ......

What I Learned From Thirsty Developer

A few months back I sat down on a conference call with Dave Bost and Clark Sell to record an episode of Thirsty Developer. I had suggested that we could talk about Office Open XML and how it can be used to automate the generation of documents. Now for a number of reasons this episode will never see the light of day (at least not as we originally recorded it). But the reason that sticks in my mind is that the story wasn’t there. As technologists we spend a lot of time learning tools, languages and ......

June LCNUG Presentation

Office Open XML has been my focus for the last 8 months. We are creating solutions that generate data and business rule heavy presentations and document. On June 24th I will be covering the how to use OOXML to generate documents that can be used as sales and marketing collateral. Register below and come out and join the discussion. http://www.eventbrite.com/e... del.icio.us Tags: Office Open XML,OOXML PSC Group,LCNUG,Document Generation ......

Chicago Code Camp Recap

My presentation on leveraging Open XML was a great experience and the attendees were very gracious. I was pleasantly surprised to have a full room. There was even one person sitting on the floor. You can check out some pictures here. I have posted my slides and code. If anyone has any feedback or questions feel free to contact me. del.icio.us Tags: Chicago Code Camp,OOXML SDK 2.0,Office Open XML,slides,code ......

Speaking At The Chicago Code Camp

I just got news that my talk on Office Open XML has been accepted for the Chicago Code Camp. I hear that they will be announcing the full schedule of sessions soon. Be sure to register and join us. As a bonus the guys from .NET Rocks will be there. http://www.chicagocodecamp.com del.icio.us Tags: .NET Rocks,Chicago Code Camp,Speaking,OOXML SDK 2.0,OOXML,Office Open XML,PSC Group ......

Dealing With Table Borders In OOXML

Note: Cross posted from Coding The Document. Permalink Formatting tables in a document programmatically can be a very complex task. This is the major reason which we start our document generation projects with templates instead of building components in a document by hand. Borders are on aspect of a table that you may want to fomat. Borders are used to make certain content in a table stand out. If you need to conditionally set and remove borders there is something that you need to be aware of. Even ......

Where I Am Speaking Soon

Open XML and document generation has been my focus lately. With that being the case I will be speaking on the subject in the near future at the following event. Chicago Code Camp – May 1 Chicago Architects Group – June 15 Lake Count .NET User Group – June 17 I hope to see you at one (or more) of these events. del.icio.us Tags: speaking,Office Open XML,OOXML,Document Generation ......

Why Standards Only Get You So Far

Over the years I have been exposed to a number of standards. EDI was the first. More recently it has been the CIECA standard for Insurance and now the embattled document standards of Open XML and ODF. Standards actually came up at the last CAG meeting. The debate was over how effective they really are. Even back in the late 80’s to early 90’s people found they had to customize these standards to get any work done. I even had one vendor about a year ago tell me that they really weren’t standards, ......

Open XML SDK 2 Released

Note: Cross posted from Coding The Document. Permalink This post is a little late since the SDK was released about a week ago. At PSC we have been using the Open XML SDK 2 since its earliest beta. It is a very powerful tool for generating documents without using the Office DLLs. It is also the main technology that I have been working with for the last six months. I would suggest giving it a try. Stay tuned here. In the near future I will be presenting at different locations on this and other document ......

Copying A Slide From One Presentation To Another

There are many ways to generate a PowerPoint presentation using Open XML. The first way is to build it by hand strictly using the SDK. Alternately you can modify a copy of a base presentation in place. The third approach to generate a presentation is to build a new presentation from the parts of an existing presentation by copying slides as needed. This post will focus on the third option. In order to make this solution a little more elegant I am going to create a VSTO add-in as I did in my previous ......

2010 Chicago Code Camp Coming In May

The Lake Count .NET User Group is putting on it’s second Chicago Code Camp on May 1st. I would encourage everyone to come out and participate in the Chicago area .NET community. You can register here. Better yet come of with a presentation of your own. I have submitted an abstract for a presentation on Office Open XML. del.icio.us Tags: Chicago Code Camp,presentations,Office Open XML,LCNUG ......

What Makes CustomXml More appealing Than Content Controls

Note: Cross posted from Coding The Document. Permalink Word 2007 has two built-in methods for tagging content. If you go to the developers tab you will find the ribbon has a section for Controls and a section for XML. The Controls are also referred to as Content Controls. The XML section allows you to define schemas that can be applied to your document and is sometimes called Custom XML. Both of these constructs can be used when you are coding an application which needs to identify a part of a document ......

The Challenges of Inconsistent Implementation and Office Document Generation

I have spent the last several months developing solutions with Office 2007 and the Office Open XML SDK 2. Our client has requirements that cross the suite from PowerPoint Presentations to Word Documents. The Open XML standard which define the structure of these documents is very powerful. My biggest frustration is the lack of consistent capabilities between the products. Since we are doing document generation based on templates it is very important we that the code can consistently identify any part ......

Happy Holidays From A Microsoft Lawsuit

It seems that Microsoft has lost a lawsuit over their custom xml implementation for Office Open XML. This was about the worst news I could get just before the holidays since I have been working on creating solutions around just that feature. To me it is the most flexible part of the OOXML standard and crosses all types of Office documents. I can only hope that they settle this dispute so we can get back to moving forward document generation processes. del.icio.us Tags: OOXML,Office Open XML,Microsoft ......

Choosing Custom XML For Tagging In Word With OOXML

In the further adventures of OOXML we have been looking at different approaches to tagging content in a Word template to be programmatically replaced. Initially we looked at simple in-line text as a user defined tagging system. The problem is that this is very error prone. The user has to enter the tag exactly the same every time. On top of that if the user backspaces while typing the tag or spell check flags the tag then the tag will be split into multiple tags. This is less than desirable. Content ......

Searching For Content Controls In Office 2007 With OOXML SDK2

As far as I have seen content controls in Office 2007 render to either a SdtRun or SdtBlock object. The nice thing is that both of these inherit from SdtElement. This allows you to take the query from my earlier post and replace SdtBlock with SdtElement and now you have a universal retrieval. Of course as with any tool you need to be careful you don’t take it too far. Depending on the structure of you document this may not do what you need. Technorati Tags: office Open XML,OOXML,LINQ,.NET ......

Retrieving A List of SdtBlocks for A Tag Value Using LINQ

If you are using a template document and replacing text programmatically using the Office Open XML SDK 2 API you will need a way to identify the target to be replaced. One option is to use a Content Control and setting the tag value the same for all of the controls that need to be substituted with a single value. After some trial and error and a lot of digging through the DocumentReflector I came up with the following LINQ query to get a list of all blocks with the same tag name. var blocks = from ......

Working With Office Open XML

If you haven’t heard of Office Open XML don’t be surprised. I hadn’t until a couple of months ago. In short it is a standardization of the Office document models which allows for more flexible development methods. You no longer need to have an instance of your target Office application running on a server in order to generate Word, Excel or PowerPoint documents. This is also the reason that all of the Office file extensions have a “x” suffix these days. Office Open XML files are actually zip files. ......

Creating Snippets For Visual Studio

There is nothing earth shattering here. I was just putting together a set of snippets to make life a little easier while developing SharePoint and Office Open XML projects. My search for information crossed a lot of different sites. MSDN has a number of articles about all the features of creating and managing snippets. Below is a compilation of the basics around creating these little helpers. Hopefully it is a little more detailed in the whys then MSDN content. Creating A Snippet File Snippet files ......