OpenXML SDK 2.0 RTM

ちょっと遅れましたが、OpenXML SDK 2.0がRTMされています。 http://www.microsoft.com/downloads/details.aspx?FamilyID=c6e744e5-36e9-45f5-8d8c-331df206e0d0&DisplayLang=en まだあまり確認出来ていませんが、以前3つあったツールは1つに集約されています。ただ、これは昨年のCTPからの変化だったと思います。   ちょっと探すとこんなのもありました。(未確認ですが・・・) 2007 Office System Sample: Open XML Format SDK 2.0 Code Snippets for Visual Studio 2008 ちなみに、普段この辺りの情報(勉強)は以下で入手していることが多いです。(Hands-on-Laboもありますね。) http://openxmldeveloper.org/


Open XML Format SDK 2.0 (CTP) =続き3=

前回、前々回に引き続きOpen XML Format SDK 2.0(CTP)です。 Open XML Format SDK 2.0(Aplil 2009 CTP)http://www.microsoft.com/downloads/details.aspx?FamilyID=c6e744e5-36e9-45f5-8d8c-331df206e0d0&DisplayLang=en 今回は、DocumentReflectorから出力されたコードを用いてドキュメントを作成してみましょう。 1) 前回のおさらいですが、(これは事件だ.docx)をDocumentReflectorで開いて・・・    2) 最上位のPackageを選択してソースコードとして保存します(Demo.csと名づけてみました。) 3) Visual Studio 2008でコンソールアプリケーションを作成します。 4) 参照の設定から、WindowsBaseとOpen XML Format SDK で提供されるライブラリ(C:\Program Files\Open XML Format SDK\V2.0\lib\DocumentFormat.OpenXml.dll) を選択します。 5) 既存の項目の追加より、上記で作成したDemo.csを追加します。 6) 下記のコードを記述します。 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 {     class Program     {         static…


Open XML Format SDK 2.0 (CTP) =続き=

前回に引き続き、Open XML Format SDK 2.0(CTP)です。 Open XML Format SDK 2.0(Aplil 2009 CTP)http://www.microsoft.com/downloads/details.aspx?FamilyID=c6e744e5-36e9-45f5-8d8c-331df206e0d0&DisplayLang=en 今回は新たに追加されたツールについて書きたいと思います。 2.0では新たに3つのツールが追加されました。 まずはコレです。 OpenXmlClassesExplorer Ecma376で定義されているスキーマと、それに対応するOpenXMLSDKのクラスを一度に確認できるツールです。 次にこちら。 OpenXmlDiff 2つのファイルの比較ツールです。OpenXMLを使用したプログラミングを行うと、さまざまなアプローチでファイルの作成できることや、あるファイルをテンプレートとして、別のファイルを作成するときなど、比較したい場面は割りと発生するはずです。 最後にコレなのですが、非常に便利なツールです。 DocumentReflector Office2007ドキュメント(Word、Excel、PowerPoint)を読み込ませると、そのファイルを生成するためのOpenXMLSDKコードを出力します。 例えばこのファイル(これは事件だ.docx)をDocumentReflectorで開くと・・・ 画像もシリアル化されていますね・・・   最上位のPackageを選択してソースコードとして保存します(Demo.csと名づけてみました。) ここまで読んだ皆様ならご理解いただけると思いますが、上記のコードから、[これは事件だ.docx]が生成できます。 そのためのVisualStudio2008プロジェクトを作ってみたいと思いますが・・・ ちょっと長くなったので、また次回にします。(本日中に書きたいと思います。)


Open XML Format SDK 2.0 (CTP)

少々時間も立っているのですが、ようやくお話できるようになりました。 Open XML Format SDK 2.0(Aplil 2009 CTP)http://www.microsoft.com/downloads/details.aspx?FamilyID=c6e744e5-36e9-45f5-8d8c-331df206e0d0&DisplayLang=en SDK1.0との違いを中心に書きたいと思います。 まずはコレです。 Strongly Typed Classes and Objects まず1.0のコーディングスタイルを見てみましょう。 const string wordmlNamespace = “http://schemas.openxmlformats.org/wordprocessingml/2006/main”; XNamespace w = wordmlNamespace; WordprocessingDocument wordDoc = WordprocessingDocument.Open(@”C:\aaa.docx”, true); MainDocumentPart mainPart = wordDoc.MainDocumentPart; XDocument doc = XDocument.Load(new System.IO.StreamReader(mainPart.GetStream())); var query = from para in doc                           .Root                           .Element(w + “body”)                           .Descendants(w +…


Microsoft Office 2007 Code Snippetsの紹介

前回のブログ(VSUG Day & SharePouint Forumデモファイル)で紹介したスニペットについてお話します。 Open XMLファイルを.NET Frameworkで操作する場合、現在のところ、System.IO.Packaging APIか、あるいは、Open XML Format SDK を使用する必要があります。 System.IO.Packaging APIを使用する場合、ファイルを細かく制御することができるのですが、やはりコード量は多くなる傾向にあるでしょう。 しかし、OpenXMLファイルの操作という点にプログラムを絞れば、ある程度定型化することが可能であるはずです。 その視点で作成されたのが以下のリンクにあるコードスニペットです。 2007 Office System Sample: Open XML File Format Code Snippets for Visual Studio 2005 •http://go.microsoft.com/fwlink/?LinkID=106943 Visual Studio 2005とありますが、Visual Studio 2008使用することも十分可能です。 ちょっとやってみましょう。 上記をインストール後、Visual Studio のコードスニペットマネージャーから、Open XML File Formatフォルダをインポートします。このフォルダは、上記を仮に、C:\Users\Administrator\Documents\Visual Studio 2008\Code Snippetsにインストールした場合、C:\Users\Administrator\Documents\Visual Studio 2008\Code Snippets\Visual C#\Open XML File Formatとなります。 ソースコードの適当な場所で、スニペットの挿入を行います。…

1

VSUG Day & SharePoint Forumデモファイル

タイトルのデモをアップしました。 内容的には、VSTO & OpenXMLの初級デモといったところです。 http://kodaka.info/Event/20090313/demo.zip 以下が含まれています。 VBA→VSTOインターオペラビリティ:ExcelマクロでWebサービスを使用してみる System.IO.Packagingを使用したOpenXML操作1 System.IO.Packagingを使用したOpenXML操作2:スニペットの使用 OpenXML SDKの使用 OpenXML SDK+LINQの使用 サーバーサイドでのExcelシートの作成:研修終了通知の作成 見てもらえれば、特に問題はないと思いますが、「System.IO.Packagingを使用したOpenXML操作2:スニペットの使用」に関しましては、解説が必要かもしれません。 これは、次回の投稿に書きたいと思います。(本日中に書きます。) 上記のデモは以前ご紹介した書籍「VSTOとSharePoint Server 2007 による開発技術」にも書いてありますので、そちらでをご確認いただいてもよいかと思います。(と宣伝モード・・・)

5

VSTOとSharePoint Server 2007 による開発技術、もうすぐ出ますよ~

こんにちは、こだかです。 皆様、やっとこのブログに記載することができるようになりました。 突然ですが、以下書籍がもうすぐ(2/26)リリースされます。 書籍 「VSTOとSharePoint Server 2007 による開発技術」 (翔泳社) http://seshop.com/detail.asp?pid=10258 (現在予約可能です) 商品番号:118410 ISBN:9784798118413 サイズ:B5変 ページ:580 販売価格:\3,990(本体\3,800 消費税5%) 発売日:2009/02/26 出版社:株式会社翔泳社 執筆陣は、SharePoint開発の部分では、西岡さん、松崎さん、小松さん、山崎愛さん。 VSTOは、小山師匠と小高が担当しています。 (おぉ、小高は除き、神の集団です) コンセプトは、とにかく「SharePoint開発における様々な開発テクノロジーを体系的に学ぶことができる」点ですね。 個人的な思いもありますが、ShrePoint開発を学ぼうと思った場合、「入り口となるScaffold(足場)がないな~」と常日頃思ったものでした。 テクノロジーの解説や手法は探せば出てくるのですが、全体として、その情報はどこに属しているのか?あるいは、他の選択肢はどうなのか?などの全体を俯瞰した情報は、不足していたと言わざるを得なかったと思います。 また、単にVSTOの情報も全然書籍としては足りない状況でしたよね。OpenXML開発もしかりです。(よく突っ込みを受けたものです) そんな思いが形になった、珠玉の1冊(大袈裟ですね・・・)です。 まだ実物をみていないので、手に入り次第またご報告しますね。 実はもう一冊並行して担当している(こちらは現在進行形)ので、そちらも時期が来たらご報告します。 小高太郎

3

コラム書きました

こんにちは、こだかです。 本当に最近はこのブログがおざなりになっています。技術情報も書きたいのですが、気がつくと@ITに先を越されていたりしてorz さて、TFサイトにコラムを書きました。http://www.microsoft.com/japan/powerpro/TF/column/tk_05_1.mspx先日ご紹介した、OpenXML Viewerを含むツールや仕組みのご紹介を通して、OpenXMLを俯瞰する内容です。VSUG Day でもお話した内容ですが、Officeのドキュンメント操作は、以前のオートメーションに比べて色々な点で進歩しています。それは、こうしたツールの充実からもうかがえるのですが、ぜひ実開発でも検討していただければ~と思い書いたものになります。 ちなみに、VSUGDayのレポートを、こだかのMS社内における心のオアシス小山さん(http://blogs.msdn.com/saikik/default.aspx)が書いてくれました。 こだか師匠の VSUG Day Report を書きました!小山師匠と話していると、何だか癒されるんですよね・・・と、そんな個人的なことは置いておきましょう。 こだかたろう@年内は仕事がんばります

1