62
Une plat Daniel COHEN-ZARDI Carl ANDERSON 30 Sep Livre Office te - forme pour les applications « ptembre 2007 blanc e 2007 « métier »

Livre Blanc Office 2007

Embed Size (px)

Citation preview

Page 1: Livre Blanc Office 2007

Une plate

Daniel COHEN-ZARDI

Carl ANDERSON

30 Septembre

Livre blanc

Office 2007

Une plate-forme pour les applications «

30 Septembre 2007

Livre blanc

Office 2007

forme pour les applications « métier »

Page 2: Livre Blanc Office 2007

Table des Matières

I. Pourquoi ce livre blanc ? ................................

II. Contenu du livre blanc ................................

III. Les enjeux des clients ................................

A. La problématique et son historique

B. Les nouveaux scénarios attendus

C. Le rôle des éditeurs de logiciels

IV. La valeur ajoutée d’Office 2007

A. La nouvelle interface utilisateur

B. L’ouverture des formats ................................

C. L’extensibilité programmatique et «

D. Les fonctions novatrices ................................

E. Compatibilité « applicative » avec les versions précédentes

V. Les applications réelles des éditeurs de logiciels utilisant Office 2007

A. Calypteo ................................

B. Esker ................................................................

C. ILOG ................................................................

D. MGDIS ................................................................

E. Symtrax ................................

F. Medasys ................................

G. SoftFluent ................................

H. Autres éditeurs ................................

VI. Les prototypes développés par SoftFluent

A. La personnalisation d’Office 2007

B. L’accès aux données métier par Web Service

C. La séparation données/présentation dans un document Word 2007

D. La création dynamique de présentations Powerpoint

E. L’utilisation du protocole Webdav

VII. Conclusion ................................

VIII. Quelques liens utiles ................................

30 Septembre

................................................................................................

................................................................................................

................................................................................................

La problématique et son historique ............................................................................................

Les nouveaux scénarios attendus ................................................................................................

Le rôle des éditeurs de logiciels ................................................................................................

La valeur ajoutée d’Office 2007 ................................................................................................

La nouvelle interface utilisateur ................................................................................................

................................................................................................

L’extensibilité programmatique et « Office Business Applications » ................................

................................................................................................

» avec les versions précédentes ....................................................

Les applications réelles des éditeurs de logiciels utilisant Office 2007 ................................

................................................................................................................................

................................................................................................

................................................................................................

................................................................................................

................................................................................................................................

................................................................................................................................

................................................................................................................................

..........................................................................................................................

Les prototypes développés par SoftFluent................................................................

La personnalisation d’Office 2007 .............................................................................................

L’accès aux données métier par Web Service ................................................................

La séparation données/présentation dans un document Word 2007 ................................

La création dynamique de présentations Powerpoint ..............................................................

L’utilisation du protocole Webdav ............................................................................................

................................................................................................................................

................................................................................................

30 Septembre 2007

................................................. 4

.................................................... 6

.................................................. 7

............................ 7

................................ 8

................................ 10

................................ 12

................................ 12

............................................ 12

........................................ 13

............................................ 14

.................... 15

......................................... 16

..................................... 16

.......................................... 20

........................................... 23

........................................ 26

...................................... 30

..................................... 31

.................................. 32

.......................... 34

................................................ 35

............................. 35

........................................... 42

...................................... 48

.............................. 53

............................ 59

................................. 60

................................................. 61

Page 3: Livre Blanc Office 2007

Remerciements

Remercions tout d’abord :

• Les différents contributeurs de ce document, et en tout premier lieu

de logiciels cités dans ce livre blanc.

• La société « RL Consulting

l’intégration de SharePoint

• Les différentes équipes de Microsoft qui ont su faire preuve de réactivité pour répondre à

nos questions lorsque nécessaires.

Avertissement

Ce document est fourni à titre d’information.

OU EXPLICITE, CONCERNANT LES INFORMATIONS FOURNIES DANS CE DOCUMENT.

SoftFluent et les sociétés citées dans ce livre blanc

de copie ou de propriété intellectuelle sur des sujets couverts dans

expresse faisant partie d’un contrat de licence signé avec

ne vous donne aucune licence particulière et aucun droit d’utilisation sur ces brevets, marques,

droits de copie ou propriété intellectuelle.

Les noms des sociétés et produits mentionnés dans ce document sont des marques déposé

leurs propriétaires respectifs.

© 2007 SOFTFLUENT. Tous droits réservés.

30 Septembre

différents contributeurs de ce document, et en tout premier lieu les différents éditeurs

de logiciels cités dans ce livre blanc.

RL Consulting » qui collabore régulièrement avec SoftFluent

2007 pour le compte d’ILOG.

différentes équipes de Microsoft qui ont su faire preuve de réactivité pour répondre à

nos questions lorsque nécessaires.

Ce document est fourni à titre d’information. SOFTFLUENT NE DONNE PAS DE GARANTIE, IMPLICITE

OU EXPLICITE, CONCERNANT LES INFORMATIONS FOURNIES DANS CE DOCUMENT.

et les sociétés citées dans ce livre blanc peuvent disposer de brevets, marques, des droits

de copie ou de propriété intellectuelle sur des sujets couverts dans ce document. Sauf mention

expresse faisant partie d’un contrat de licence signé avec ces sociétés, la fourniture de ce document

ne vous donne aucune licence particulière et aucun droit d’utilisation sur ces brevets, marques,

ntellectuelle.

Les noms des sociétés et produits mentionnés dans ce document sont des marques déposé

. Tous droits réservés.

30 Septembre 2007

différents éditeurs

SoftFluent et a réalisé

différentes équipes de Microsoft qui ont su faire preuve de réactivité pour répondre à

NTIE, IMPLICITE

t disposer de brevets, marques, des droits

ce document. Sauf mention

, la fourniture de ce document

ne vous donne aucune licence particulière et aucun droit d’utilisation sur ces brevets, marques,

Les noms des sociétés et produits mentionnés dans ce document sont des marques déposées de

Page 4: Livre Blanc Office 2007

I. Pourquoi ce livre blanc ?

Ce livre blanc s’adresse aux professionnels du déve

largement aux personnes qui s’intéresse

2007 étant l’application « utilisateur

marquée vers la constitution d’une plate

technologique évalue l’impact de cette transformation

Ce livre blanc montre très concrètement comment les applications peuvent combiner des

informations dites « structurées » (celles qui sont

et les informations traditionnellement qualifiées de «

documents bureautiques.

Plutôt qu’opposer ces approches de la gestion de l’information, l

privilégiera la connexion entre les deux, les documents non structurés

informations vitales au fonctionnement de l’entreprise et à la prise de décision des utilisateurs.

Pouvoir connecter ces documents

duplication et de l’incohérence, qui aboutit bien souvent à des pertes de productivité o

d’information.

Réduire les coûts

Se différentier

S’appuyer sur un marché

Garantir l’évolution

Les bénéfices stratégiques qui constitue

30 Septembre

?

professionnels du développement du marché francophone

largement aux personnes qui s’intéressent à l’évolution des plates-formes de développement.

utilisateur » la plus déployée au monde, son évolution de plus en plus

stitution d’une plate-forme de développement mérite que tout décideur

de cette transformation.

Ce livre blanc montre très concrètement comment les applications peuvent combiner des

celles qui sont prévues dans les schémas des applications métiers)

traditionnellement qualifiées de « non structurées » et qui résident au sein de

Plutôt qu’opposer ces approches de la gestion de l’information, l’informaticien pragmatique

entre les deux, les documents non structurés contenant bien

informations vitales au fonctionnement de l’entreprise et à la prise de décision des utilisateurs.

Pouvoir connecter ces documents aux référentiels structurés lui permettra d’éviter le piège de la

duplication et de l’incohérence, qui aboutit bien souvent à des pertes de productivité o

Réduire les coûts

Innover

Se différentier

S’appuyer sur un marché

Garantir l’évolution Op

po

rtu

nit

é O

ffic

e 2

00

7

Les bénéfices stratégiques qui constituent l’opportunité Office 2007

30 Septembre 2007

loppement du marché francophone et plus

formes de développement. Office

» la plus déployée au monde, son évolution de plus en plus

forme de développement mérite que tout décideur

Ce livre blanc montre très concrètement comment les applications peuvent combiner des

prévues dans les schémas des applications métiers)

» et qui résident au sein de

’informaticien pragmatique

bien souvent des

informations vitales au fonctionnement de l’entreprise et à la prise de décision des utilisateurs.

aux référentiels structurés lui permettra d’éviter le piège de la

duplication et de l’incohérence, qui aboutit bien souvent à des pertes de productivité ou à de la perte

nt l’opportunité Office 2007

Page 5: Livre Blanc Office 2007

D’un point de vue stratégique, construire son d

1. Réduire les coûts car on bénéficie

développement réduit, y compris l’effo

version 2007,

2. Se positionner sur le terrain de l’

utilisateurs de vos applications,

3. Se différentier par rapport à la concurrence et pouvoir effectuer un mark

jouant la carte de la simplicité, de

4. S’appuyer sur la part de marché d’Office, une application qui dispose de centaines de

millions d’utilisateurs dans le monde,

5. Bénéficier de la pérennité

standardisé Open XML proposé par Office 2007.

Sur ce dernier point, on notera le rôle prépondéra

l’objectif de connexion des différents types de données de l’entreprise. Ce format permet une réelle

séparation entre les données structurées selon un schéma métier et les autres données, comme le

démontrent les prototypes exposés en dernière partie de ce livre blanc. On ne saurait en out

minimiser l’importance du processus

soutenue bien sûr par Microsoft mais également par

30 Septembre

D’un point de vue stratégique, construire son développement sur Office 2007 est un moyen de

car on bénéficie ainsi des fonctionnalités d’Office moyennant un effort de

développement réduit, y compris l’effort ergonomique, particulièrement affirmé dans la

Se positionner sur le terrain de l’innovation et être perçu comme à la pointe par les

utilisateurs de vos applications,

par rapport à la concurrence et pouvoir effectuer un marketing différent en

la simplicité, de l’expérience intégrée et du service rendu aux utilisateurs,

S’appuyer sur la part de marché d’Office, une application qui dispose de centaines de

dans le monde,

pérennité des informations non structurées grâce au nouveau format

proposé par Office 2007.

le rôle prépondérant que joue Open XML dans la poursuite de

rents types de données de l’entreprise. Ce format permet une réelle

séparation entre les données structurées selon un schéma métier et les autres données, comme le

démontrent les prototypes exposés en dernière partie de ce livre blanc. On ne saurait en out

minimiser l’importance du processus de standardisation en cours autour de ce format, approche

mais également par un nombre croissant d’acteurs du marché.

30 Septembre 2007

est un moyen de :

des fonctionnalités d’Office moyennant un effort de

rt ergonomique, particulièrement affirmé dans la

et être perçu comme à la pointe par les

eting différent en

aux utilisateurs,

S’appuyer sur la part de marché d’Office, une application qui dispose de centaines de

des informations non structurées grâce au nouveau format

la poursuite de

rents types de données de l’entreprise. Ce format permet une réelle

séparation entre les données structurées selon un schéma métier et les autres données, comme le

démontrent les prototypes exposés en dernière partie de ce livre blanc. On ne saurait en outre

en cours autour de ce format, approche

croissant d’acteurs du marché.

Page 6: Livre Blanc Office 2007

II. Contenu du livre blanc

Ce document cible donc tout professionnel

d’évolution de systèmes mettant en jeu des applications métiers. Ces professionnels peuvent être

des décideurs au sein des fournisseurs technologiques, éditeurs de logiciels ou sociétés de services,

tout autant que des décideurs positionnés du côté des clients et qui doivent évaluer des scénarios

d’évolution de leurs systèmes, tout en suivant de près la capacité de leurs fournisseurs à

accompagner l’évolution technologique.

Au-delà de l’introduction et de la c

parties principales :

• « Les enjeux des clients » est une partie qui

attendus par les utilisateurs et

• « La valeur ajoutée d’Office 2007

d’Office 2007 à étudier de près car elles sont

porteuses d’opportunités potentielles dans votre métier,

• « Les applications réelles des éditeurs de logiciels

pédagogique qui donne des exemples concrets de ce qu’ont déjà réalisé les éditeurs de

logiciels du marché français,

• « Les prototypes développés

les détails de mise en œuvre

précédentes.

Les premières parties sont donc rédigées

« Pourquoi ? », et en évitant de rentrer trop dans le

La partie « Prototypes » est destinée plus spécifiquement aux

plus réceptifs aux exemples qu’ils peuvent reproduire.

développés par SoftFluent dans le cadre d’une mission d’assistance aux éditeurs de logiciels

pour le compte de Microsoft France

techniques à des besoins réels exprimés par les éditeurs de

Enfin, nous avons compilé en fin de

le sujet au-delà de ce livre blanc.

30 Septembre

donc tout professionnel de l’informatique amené à prendre des décisions

d’évolution de systèmes mettant en jeu des applications métiers. Ces professionnels peuvent être

des décideurs au sein des fournisseurs technologiques, éditeurs de logiciels ou sociétés de services,

des décideurs positionnés du côté des clients et qui doivent évaluer des scénarios

d’évolution de leurs systèmes, tout en suivant de près la capacité de leurs fournisseurs à

gner l’évolution technologique.

delà de l’introduction et de la conclusion, nous avons donc structuré ce document en plusieurs

» est une partie qui repositionne le besoin et décrit

attendus par les utilisateurs et donc l’opportunité de marché que constituent c

La valeur ajoutée d’Office 2007 » est une partie qui met en exergue les fonctionnalités

de près car elles sont particulièrement créatrices de valeur et donc

porteuses d’opportunités potentielles dans votre métier,

es applications réelles des éditeurs de logiciels utilisant Office 2007 » est u

des exemples concrets de ce qu’ont déjà réalisé les éditeurs de

logiciels du marché français,

développés par SoftFluent » est une partie à vocation technique qui

es détails de mise en œuvre de fonctionnalités notables et étaye donc

rédigées pour tout public informaticien, en se concentrant sur le

évitant de rentrer trop dans les considérations techniques du « Comment

est destinée plus spécifiquement aux développeurs, qui sont d’expérience

plus réceptifs aux exemples qu’ils peuvent reproduire. Notons que ces prototypes

développés par SoftFluent dans le cadre d’une mission d’assistance aux éditeurs de logiciels

France. Ils correspondent donc à une compilation de réponses

techniques à des besoins réels exprimés par les éditeurs de logiciels du marché.

Enfin, nous avons compilé en fin de document une sélection de liens utiles pour qui souhaite creuser

30 Septembre 2007

à prendre des décisions

d’évolution de systèmes mettant en jeu des applications métiers. Ces professionnels peuvent être

des décideurs au sein des fournisseurs technologiques, éditeurs de logiciels ou sociétés de services,

des décideurs positionnés du côté des clients et qui doivent évaluer des scénarios

d’évolution de leurs systèmes, tout en suivant de près la capacité de leurs fournisseurs à

avons donc structuré ce document en plusieurs

repositionne le besoin et décrit les scénarios

l’opportunité de marché que constituent ces attentes,

» est une partie qui met en exergue les fonctionnalités

créatrices de valeur et donc

est une partie

des exemples concrets de ce qu’ont déjà réalisé les éditeurs de

e partie à vocation technique qui expose

donc les parties

, en se concentrant sur le

omment ? ».

développeurs, qui sont d’expérience

prototypes ont été

développés par SoftFluent dans le cadre d’une mission d’assistance aux éditeurs de logiciels menée

Ils correspondent donc à une compilation de réponses

pour qui souhaite creuser

Page 7: Livre Blanc Office 2007

III. Les enjeux des clients

A. La problématique et son historique

Les entreprises sont confrontées à des

premières applications informatiques visaient à automatiser les processus de gestion d’une fonction

particulière de l’entreprise et le stockage des données associées. Les applications métiers «

sens classique » où l’entendent les directions informatiques, et dans l’esprit des professionnels du

secteur, se préoccupent en général de la gestion de données structurées. L’information est rangée

dans des cases préformattées avec des structures modélisées

Ces applications se distinguent des applications issues de la bureautique ou

gestion documentaire, qui reposent sur un paradigme différent.

applications de travail collaboratif sont centrées sur les fichiers et l’information est bien souvent

disséminée dans de multiples fichiers, avec une gestion qui repose en priorité sur l’utilisateur. De fait,

la cohérence est difficile à garantir dans un modèle de ce type, d’où le dénigr

bureautique par les services informatiques. Pourtant, les informations contenues dans ces

documents sont souvent précieuses, quand elles ne sont pas les données les plus critiques de

l’entreprise !

Univers bureautique

Applications

d’entreprises

Information structurée

Information non structurée

Liens limités

(frontière implicite)

Historique

On pourrait disserter longtemps sur les responsabilités respectives des informaticiens et des

utilisateurs, mais le fait est que la bureautique apporte la flexibilité qu’il est difficile de prévoir

totalement dans les applications manipulant de l’information s

30 Septembre

La problématique et son historique

Les entreprises sont confrontées à des enjeux récurrents dans la gestion de l’information. Les

premières applications informatiques visaient à automatiser les processus de gestion d’une fonction

particulière de l’entreprise et le stockage des données associées. Les applications métiers «

» où l’entendent les directions informatiques, et dans l’esprit des professionnels du

secteur, se préoccupent en général de la gestion de données structurées. L’information est rangée

dans des cases préformattées avec des structures modélisées selon des schémas métiers.

Ces applications se distinguent des applications issues de la bureautique ou des applications de

gestion documentaire, qui reposent sur un paradigme différent. En effet, les suites bureautiques et

atif sont centrées sur les fichiers et l’information est bien souvent

disséminée dans de multiples fichiers, avec une gestion qui repose en priorité sur l’utilisateur. De fait,

la cohérence est difficile à garantir dans un modèle de ce type, d’où le dénigrement historique de la

bureautique par les services informatiques. Pourtant, les informations contenues dans ces

documents sont souvent précieuses, quand elles ne sont pas les données les plus critiques de

Utilisateurs

Informaticiens

Information non structurée

(frontière implicite)

Tendance

Informaticiens

Utilisateurs

Les versions récentes d’Office et en particulier l’édition 2007 rapproche la

bureautique du monde de l’information structurée, et comble une partie du fossé entre les utilisateurs et les informaticiens

ourrait disserter longtemps sur les responsabilités respectives des informaticiens et des

utilisateurs, mais le fait est que la bureautique apporte la flexibilité qu’il est difficile de prévoir

totalement dans les applications manipulant de l’information structurée.

30 Septembre 2007

enjeux récurrents dans la gestion de l’information. Les

premières applications informatiques visaient à automatiser les processus de gestion d’une fonction

particulière de l’entreprise et le stockage des données associées. Les applications métiers « au

» où l’entendent les directions informatiques, et dans l’esprit des professionnels du

secteur, se préoccupent en général de la gestion de données structurées. L’information est rangée

selon des schémas métiers.

des applications de

En effet, les suites bureautiques et

atif sont centrées sur les fichiers et l’information est bien souvent

disséminée dans de multiples fichiers, avec une gestion qui repose en priorité sur l’utilisateur. De fait,

ement historique de la

bureautique par les services informatiques. Pourtant, les informations contenues dans ces

documents sont souvent précieuses, quand elles ne sont pas les données les plus critiques de

Les versions récentes d’Office et en particulier l’édition 2007 rapproche la

bureautique du monde de l’information structurée, et comble une partie du fossé entre les utilisateurs et les informaticiens

ourrait disserter longtemps sur les responsabilités respectives des informaticiens et des

utilisateurs, mais le fait est que la bureautique apporte la flexibilité qu’il est difficile de prévoir

Page 8: Livre Blanc Office 2007

Dès lors, le rôle de l’informaticien est aussi de fournir à ses clients, qui sont les

l’entreprise, les moyens de mettre en œuvre cette flexibilité, tout en proposant des applic

métiers suffisamment adaptées et souples

structures de stockage prévues par

Cela suppose de faire converger des mondes historiquement très différents, les applications métiers

provenant de l’historique des « mainframes

l’ordinateur personnel. Bien sûr, la convergence entre ce

longtemps.

Mais certaines limites des versions précédentes des applications bureautiques font que l’état de l’art

en matière d’intégration bureautique avec les applications

• Des exports de données notamment vers les tableurs,

• Des publipostages pilotés sur le poste client par automatisation directe,

• Parfois des publipostages réalisés sur le serveur avec des d

en place spécifique d’une logique de gestion de file d’attente,

• De l’envoi de messages électroniques pour sous

B. Les nouveaux scénarios attendus

La dimension limitée de cette intégration

l’utilisateur d’un métier donné.

Les scénarios attendus par les utilisateurs incluent en général des besoins qui vont au

évoqués au paragraphe précédent. Parmi les demandes récurrentes que

entreprises :

1. Générer des documents côté serveur, sans avoir besoin d’installer d’outil bureautique sur le

serveur, et avec une exploitabilité fiable

soit la technologie utilisée sur le serveur d’ailleurs.

2. Supporter un « workflow » de travail au travers d’un document qui est complété par différents

acteurs selon des étapes successives,

3. Mixer de l’information structurée et de l’information à saisie libre. C’est le cas classique d’un

document à structure et contenu souple, mais qui comprend des éléments précis d’information à

des endroits et qui doivent être traités comme tels. Souvent, ce besoin s’accompagne de la

nécessité de protéger des parties du document qui deviennent non modifia

4. Cadrer la saisie de l’information des documents bureautiques, afin de pouvoir extraire les

données structurées et les intégrer dans des applications métiers.

5. Manipuler des informations issues des applications métiers de l’entreprise, directement au s

de l’univers bureautique : remplissage d’un document Word de manière interactive, constitution

d’un état de synthèse dans Office Excel

de synthèse des résultats commerciaux par zone…

30 Septembre

Dès lors, le rôle de l’informaticien est aussi de fournir à ses clients, qui sont les autres

les moyens de mettre en œuvre cette flexibilité, tout en proposant des applic

et souples pour que l’information critique termine dans

structures de stockage prévues par ces applications.

Cela suppose de faire converger des mondes historiquement très différents, les applications métiers

mainframes » et la bureautique étant issu de l’avènement de

la convergence entre ces deux mondes a déjà commencé il y a bien

Mais certaines limites des versions précédentes des applications bureautiques font que l’état de l’art

intégration bureautique avec les applications se résume à :

Des exports de données notamment vers les tableurs,

Des publipostages pilotés sur le poste client par automatisation directe,

Parfois des publipostages réalisés sur le serveur avec des difficultés d’exploitation ou la mise

en place spécifique d’une logique de gestion de file d’attente,

De l’envoi de messages électroniques pour sous-tendre un processus de workflow.

ouveaux scénarios attendus

La dimension limitée de cette intégration se traduit en général par une perte d’efficacité pour

Les scénarios attendus par les utilisateurs incluent en général des besoins qui vont au

évoqués au paragraphe précédent. Parmi les demandes récurrentes que souhaitent faire les

Générer des documents côté serveur, sans avoir besoin d’installer d’outil bureautique sur le

serveur, et avec une exploitabilité fiable : le format Open XML permet de faire cela, quelle que

r le serveur d’ailleurs.

» de travail au travers d’un document qui est complété par différents

acteurs selon des étapes successives,

Mixer de l’information structurée et de l’information à saisie libre. C’est le cas classique d’un

ocument à structure et contenu souple, mais qui comprend des éléments précis d’information à

des endroits et qui doivent être traités comme tels. Souvent, ce besoin s’accompagne de la

nécessité de protéger des parties du document qui deviennent non modifiables.

Cadrer la saisie de l’information des documents bureautiques, afin de pouvoir extraire les

données structurées et les intégrer dans des applications métiers.

Manipuler des informations issues des applications métiers de l’entreprise, directement au s

: remplissage d’un document Word de manière interactive, constitution

Office Excel, génération automatique d’une présentation Powerpoint

de synthèse des résultats commerciaux par zone…

30 Septembre 2007

autres services de

les moyens de mettre en œuvre cette flexibilité, tout en proposant des applications

our que l’information critique termine dans les

Cela suppose de faire converger des mondes historiquement très différents, les applications métiers

autique étant issu de l’avènement de

a déjà commencé il y a bien

Mais certaines limites des versions précédentes des applications bureautiques font que l’état de l’art

ifficultés d’exploitation ou la mise

tendre un processus de workflow.

perte d’efficacité pour

Les scénarios attendus par les utilisateurs incluent en général des besoins qui vont au-delà de ceux

souhaitent faire les

Générer des documents côté serveur, sans avoir besoin d’installer d’outil bureautique sur le

permet de faire cela, quelle que

» de travail au travers d’un document qui est complété par différents

Mixer de l’information structurée et de l’information à saisie libre. C’est le cas classique d’un

ocument à structure et contenu souple, mais qui comprend des éléments précis d’information à

des endroits et qui doivent être traités comme tels. Souvent, ce besoin s’accompagne de la

Cadrer la saisie de l’information des documents bureautiques, afin de pouvoir extraire les

Manipuler des informations issues des applications métiers de l’entreprise, directement au sein

: remplissage d’un document Word de manière interactive, constitution

, génération automatique d’une présentation Powerpoint

Page 9: Livre Blanc Office 2007

Illustrons ces quelques scénarios théoriques non exhaustifs par des

Scénario 1 : Sur le site de sa banque, un client peut consulter son compte et, d’un simple clic, générer

sur son PC une feuille de calcul contenant toutes les données historiques de

portefeuilles, ou un tableau d’amortissement de prêt

exemple faire varier la durée d’amortissement de son prêt) avec les outils bureautiques sur son PC

personnel. La génération de feuille de c

métier de type ‘Tenue de Compte’, fonctionnant dans tout type d’environnement (Windows/SQL,

Unix/Linux-Oracle, …). Open XML permet notamment la spécification précise des formules de calcul

qui doivent être utilisées.

La structure XML permet également de réduire les risques de corruption de fichiers, et de renforcer

la sécurité de ces échanges via Internet.

Scénario 2 : Un constructeur d’avions

sophistiqué, permettant aux opérateurs d’accéder très facilement à la documentation pertinente

pour des milliers de pièces détachées. La recherche d’information et la mise jour sécurisée sont

facilitées par l’utilisation du format

bureautique ; par exemple, les documents peuvent être automatiquement mis à jour lorsqu’une

modification est faite dans le système de conception des pièces. Le caractère normalisé d’

est également un facteur important pour la pérennité de cette documentation critique. Enfin, les

spécifications Open XML précisent comment mettre en œuvre des fonctionnalités de recherche

avancée, et permettent la gestion de v

Le workflow de travail sur ces documents et les différentes versions est sous

SharePoint d’Office 2007.

Scénario 3 : Un directeur d’agence ‘Banque Privée’ souhaite adresser à ses clients un document de

synthèse présentant de façon attractive l’évolution de leur patrimoine.

à partir des applicatifs métiers un document de qualité professionnelle

et de mettre celui-ci à la disposition du Conseiller Financer pour que celui

commentaires personnalisés de façon structurée, tout en protégeant les zones non modifiables

notamment les prototypes plus loin

documents recourent fréquemment aux notes de bas de page / référence,

On peut imaginer un workflow permettant à plusieurs acteurs de collaborer pour mettre à jour ce

document. Plus simplement, Open XML

industrielles qu’auparavant.

Scénario 4 : Un grand groupe français, leader mondial de la pharmacie, échange régulièrement des

informations avec les autorités de contrôle

de nouveaux produits, mais aussi sur le contrôle qualité de ses fabrications. En interne, ce groupe a

choisi de convertir l’ensemble de son patrimoine bureautique au format

d’utilitaires automatisant la migration

pérennité à long terme de ces documents importants.

œuvre des métadonnées de protection de la propriété intellectuelle (c

essentielles pour protéger le travail des chercheurs.

30 Septembre

s quelques scénarios théoriques non exhaustifs par des exemples concrets.

Sur le site de sa banque, un client peut consulter son compte et, d’un simple clic, générer

sur son PC une feuille de calcul contenant toutes les données historiques de ses comptes &

portefeuilles, ou un tableau d’amortissement de prêt ; il peut ensuite travailler sur ces données (par

exemple faire varier la durée d’amortissement de son prêt) avec les outils bureautiques sur son PC

. La génération de feuille de calcul au format Open XML est possible à partir d’un applicatif

métier de type ‘Tenue de Compte’, fonctionnant dans tout type d’environnement (Windows/SQL,

permet notamment la spécification précise des formules de calcul

La structure XML permet également de réduire les risques de corruption de fichiers, et de renforcer

la sécurité de ces échanges via Internet.

Un constructeur d’avions veut mettre en place un système de gestion de la maintenance

sophistiqué, permettant aux opérateurs d’accéder très facilement à la documentation pertinente

pour des milliers de pièces détachées. La recherche d’information et la mise jour sécurisée sont

l’utilisation du format Open XML pour l’ensemble de cette documentation

; par exemple, les documents peuvent être automatiquement mis à jour lorsqu’une

modification est faite dans le système de conception des pièces. Le caractère normalisé d’

est également un facteur important pour la pérennité de cette documentation critique. Enfin, les

précisent comment mettre en œuvre des fonctionnalités de recherche

avancée, et permettent la gestion de versions multiples d’un document.

Le workflow de travail sur ces documents et les différentes versions est sous-tendu par la brique

Un directeur d’agence ‘Banque Privée’ souhaite adresser à ses clients un document de

synthèse présentant de façon attractive l’évolution de leur patrimoine. Open XML permet de générer

à partir des applicatifs métiers un document de qualité professionnelle de type Powerpoint ou Word,

ci à la disposition du Conseiller Financer pour que celui-ci y ajoute ses

commentaires personnalisés de façon structurée, tout en protégeant les zones non modifiables

notamment les prototypes plus loin pour des exemples de mise en œuvre). Les auteurs de ces

documents recourent fréquemment aux notes de bas de page / référence, pour en faciliter la lecture

permettant à plusieurs acteurs de collaborer pour mettre à jour ce

Open XML permet de réaliser des opérations de publipostage plus

Un grand groupe français, leader mondial de la pharmacie, échange régulièrement des

informations avec les autorités de contrôle des différents pays, sur l’avancement des tests cliniques

de nouveaux produits, mais aussi sur le contrôle qualité de ses fabrications. En interne, ce groupe a

choisi de convertir l’ensemble de son patrimoine bureautique au format Open XML

ilitaires automatisant la migration qui sont fournis en standard avec Office), pour garantir la

terme de ces documents importants. Open XML permet également de mettre en

de protection de la propriété intellectuelle (citations, références)

essentielles pour protéger le travail des chercheurs.

30 Septembre 2007

exemples concrets.

Sur le site de sa banque, un client peut consulter son compte et, d’un simple clic, générer

ses comptes &

; il peut ensuite travailler sur ces données (par

exemple faire varier la durée d’amortissement de son prêt) avec les outils bureautiques sur son PC

est possible à partir d’un applicatif

métier de type ‘Tenue de Compte’, fonctionnant dans tout type d’environnement (Windows/SQL,

permet notamment la spécification précise des formules de calcul

La structure XML permet également de réduire les risques de corruption de fichiers, et de renforcer

en place un système de gestion de la maintenance

sophistiqué, permettant aux opérateurs d’accéder très facilement à la documentation pertinente

pour des milliers de pièces détachées. La recherche d’information et la mise jour sécurisée sont

pour l’ensemble de cette documentation

; par exemple, les documents peuvent être automatiquement mis à jour lorsqu’une

modification est faite dans le système de conception des pièces. Le caractère normalisé d’Open XML

est également un facteur important pour la pérennité de cette documentation critique. Enfin, les

précisent comment mettre en œuvre des fonctionnalités de recherche

tendu par la brique

Un directeur d’agence ‘Banque Privée’ souhaite adresser à ses clients un document de

permet de générer

de type Powerpoint ou Word,

ci y ajoute ses

commentaires personnalisés de façon structurée, tout en protégeant les zones non modifiables (voir

. Les auteurs de ces

pour en faciliter la lecture.

permettant à plusieurs acteurs de collaborer pour mettre à jour ce

permet de réaliser des opérations de publipostage plus

Un grand groupe français, leader mondial de la pharmacie, échange régulièrement des

des différents pays, sur l’avancement des tests cliniques

de nouveaux produits, mais aussi sur le contrôle qualité de ses fabrications. En interne, ce groupe a

Open XML (à l’aide

), pour garantir la

permet également de mettre en

itations, références)

Page 10: Livre Blanc Office 2007

De nombreux rapports sont de type semi

et des données chiffrées issues des tests. Un applicatif métier extrait les données

utilisant un schéma XML métier spécifique à la pharmacie

fichier Open XML aux autorités sanitaires, qui peuvent les reconnaître automatiquement dans leurs

systèmes.

Scénario 5 : Un groupe de gestion immobilière souhaite permettre à ces gestionnaires d’éditer des

documents concernant les biens qu’il administre. Dans

éditer une fiche de bien en appelant un service web métier de l’application

automatique des parties du document, après saisie dans le volet Office de l’identifiant du bien. Par

ailleurs, le gestionnaire utilise des tableaux croisés dynamiques Excel pour suivre l’activité, et

effectue des requêtes directement sur le

et disponible directement dans un ruban Office 2007.

Enfin, le directeur commercial et les chefs de groupe, éditent automatiquement des présentations

Powerpoint générées à partir des tableaux de bords

C. Le rôle des éditeurs de logiciels

L’objectif de ce livre blanc étant d’expliquer en quoi Office 2007 devient une plate

d’applications, il nous semble crucial d’insister sur le rôle des éditeurs de logiciels.

Editeurs de plates-

formes et outils

Editeurs de logiciels

applicatifs

Applications

d’entreprises

Utilisateurs

Les éditeurs de logiciels jouent en effet un rôle déterminant dans l’avènement

par leur position de démultiplication du déploiement vers les utilisateurs

1 Par exemple CDISC, schéma XML créé pour gérer les Données Cliniques (www.cdisc.org)

30 Septembre

De nombreux rapports sont de type semi-structuré, avec des commentaires des médecins traitants,

et des données chiffrées issues des tests. Un applicatif métier extrait les données pertinentes, en

utilisant un schéma XML métier spécifique à la pharmacie1, pour les communiquer sous forme de

aux autorités sanitaires, qui peuvent les reconnaître automatiquement dans leurs

groupe de gestion immobilière souhaite permettre à ces gestionnaires d’éditer des

documents concernant les biens qu’il administre. Dans Office Word, le gestionnaire peut rapidement

éditer une fiche de bien en appelant un service web métier de l’application

automatique des parties du document, après saisie dans le volet Office de l’identifiant du bien. Par

ailleurs, le gestionnaire utilise des tableaux croisés dynamiques Excel pour suivre l’activité, et

effectue des requêtes directement sur le système métier, grâce à un complément développé en .NET

et disponible directement dans un ruban Office 2007.

Enfin, le directeur commercial et les chefs de groupe, éditent automatiquement des présentations

Powerpoint générées à partir des tableaux de bords consolidés.

e rôle des éditeurs de logiciels

L’objectif de ce livre blanc étant d’expliquer en quoi Office 2007 devient une plate

d’applications, il nous semble crucial d’insister sur le rôle des éditeurs de logiciels.

Editeurs de logiciels

Les éditeurs de logiciels jouent en effet un rôle déterminant dans l’avènement des plates

par leur position de démultiplication du déploiement vers les utilisateurs.

Par exemple CDISC, schéma XML créé pour gérer les Données Cliniques (www.cdisc.org)

30 Septembre 2007

structuré, avec des commentaires des médecins traitants,

pertinentes, en

, pour les communiquer sous forme de

aux autorités sanitaires, qui peuvent les reconnaître automatiquement dans leurs

groupe de gestion immobilière souhaite permettre à ces gestionnaires d’éditer des

, le gestionnaire peut rapidement

qui renseigne

automatique des parties du document, après saisie dans le volet Office de l’identifiant du bien. Par

ailleurs, le gestionnaire utilise des tableaux croisés dynamiques Excel pour suivre l’activité, et

système métier, grâce à un complément développé en .NET

Enfin, le directeur commercial et les chefs de groupe, éditent automatiquement des présentations

L’objectif de ce livre blanc étant d’expliquer en quoi Office 2007 devient une plate-forme

des plates-formes de

Page 11: Livre Blanc Office 2007

Il y a 15 ans, Windows a pris le pas sur OS/2

d’applications plus grand que son concurrent. Ces applications

besoins fonctionnels précis, pour les particuliers ou les entreprises.

démultiplication entre les plates-formes et outil

En ce sens, il est difficile de revendiquer une évolution d’Office 2007 vers un positionnement de

plate-forme sans s’intéresser à l’écho qu’il recueille auprès des éditeurs de logiciels, ces sociétés qui

investissent en amont dans la technologie pour satisfaire un nouveau besoin à l’échelle d’un marché.

De plus, l’évolution de l’informatique amène mécaniquement à une standardisation des couches

dites « basses » puis « horizontales

amenés à verticaliser leur offre pour répondre à des besoins de plus en plus spécialisés.

Dès lors, leur différenciation passe par la capacité à couvrir ces besoins de plus en plus pointus, tout

en tirant parti au mieux de l’état de l’art technologique, mais sans forcément devoir créer cet état de

l’art que quelques grands acteurs amène

Pour parler de plate-forme, il est donc intéressant de constater que des entreprises développent

effectivement des applications s’appuyant sur Office 2007, mais il est encore plus notable d’observer

les investissements réalisés par les éditeurs de logiciels pour développer des applications

proposeront au marché.

C’est la raison pour laquelle l’accent

par des éditeurs de logiciels représentatifs de différents domaines

horizontaux. On notera tout de même que l’orientation entreprise, voulue par Micros

à la typologie d’éditeurs que nous observons.

30 Septembre

Il y a 15 ans, Windows a pris le pas sur OS/2 principalement grâce à la création d’un écosystème

d’applications plus grand que son concurrent. Ces applications apparaissent pour satisfaire des

besoins fonctionnels précis, pour les particuliers ou les entreprises. Ils jouent un rôle de

formes et outils et les applications disponibles aux utilisateurs.

En ce sens, il est difficile de revendiquer une évolution d’Office 2007 vers un positionnement de

forme sans s’intéresser à l’écho qu’il recueille auprès des éditeurs de logiciels, ces sociétés qui

investissent en amont dans la technologie pour satisfaire un nouveau besoin à l’échelle d’un marché.

De plus, l’évolution de l’informatique amène mécaniquement à une standardisation des couches

horizontales », et les éditeurs de logiciels, notamment d’entreprise, sont

amenés à verticaliser leur offre pour répondre à des besoins de plus en plus spécialisés.

Dès lors, leur différenciation passe par la capacité à couvrir ces besoins de plus en plus pointus, tout

de l’état de l’art technologique, mais sans forcément devoir créer cet état de

l’art que quelques grands acteurs amènent sur un nombre limité de standards.

forme, il est donc intéressant de constater que des entreprises développent

fectivement des applications s’appuyant sur Office 2007, mais il est encore plus notable d’observer

les investissements réalisés par les éditeurs de logiciels pour développer des applications

cent est mis dans ce livre blanc sur l’usage et l’accueil d’Office 2007

représentatifs de différents domaines, que ceux-ci soient verticaux ou

horizontaux. On notera tout de même que l’orientation entreprise, voulue par Microsoft, correspond

à la typologie d’éditeurs que nous observons.

30 Septembre 2007

un écosystème

pour satisfaire des

Ils jouent un rôle de

s et les applications disponibles aux utilisateurs.

En ce sens, il est difficile de revendiquer une évolution d’Office 2007 vers un positionnement de

forme sans s’intéresser à l’écho qu’il recueille auprès des éditeurs de logiciels, ces sociétés qui

investissent en amont dans la technologie pour satisfaire un nouveau besoin à l’échelle d’un marché.

De plus, l’évolution de l’informatique amène mécaniquement à une standardisation des couches

iciels, notamment d’entreprise, sont

amenés à verticaliser leur offre pour répondre à des besoins de plus en plus spécialisés.

Dès lors, leur différenciation passe par la capacité à couvrir ces besoins de plus en plus pointus, tout

de l’état de l’art technologique, mais sans forcément devoir créer cet état de

forme, il est donc intéressant de constater que des entreprises développent

fectivement des applications s’appuyant sur Office 2007, mais il est encore plus notable d’observer

les investissements réalisés par les éditeurs de logiciels pour développer des applications qu’ils

mis dans ce livre blanc sur l’usage et l’accueil d’Office 2007

ci soient verticaux ou

oft, correspond

Page 12: Livre Blanc Office 2007

IV. La valeur ajoutée d’Office 2007

A. La nouvelle interface utilisateur

L’un des changements majeurs introduits

graphique : l’intégralité des menus traditionnels et barres d’

menu Office ainsi qu’une barre d’accès rapide

fonctionnalités Office en les rendant disponible pour l’utilisateur à tout moment

quelques clics.

En effet, l’apparition des rubans

l’utilisateur et de la position de son curseur. La contrepartie est un temps d’adaptation pour les

utilisateurs, mais cette ergonomie a été éprouvée par de nombreux tests et s’avère assez commode à

l’usage, en plus d’être très esthétique. Cela permet également facilement aux éditeurs de logiciels de

développer leur propre ruban, un indicateur clair de l’orientation plate

De plus, Microsoft autorise l’utilisation de

respecter les règles et la philosophie. Ceci veut dire qu’une application qui ne nécessite pas du tout

Office peut s’inspirer de cette ergonomie à base de rubans, sans pour autant devoir payer un

quelconque droit de propriété intellectuelle, car

licence sur http://msdn2.microsoft.com/en

B. L’ouverture des formats

L’ouverture des formats d’Office dans la vers

très importante. Souvent minimisé car l’impact à court terme n’est pas

fait déterminant pour l’évolution de l’industrie du logiciel

Le format de fichier Open XML est un s

accrédité par l’ISO et faisant partie des rares organismes à pouvoir bénéficier du dispositif de

soumission rapide à l’ISO dit « fast track

normalisation à l’ISO sous le n° 29500

(Ecma TC45), qui comprend des représentants

Essilor, Intel, Microsoft, NextPage, Novell, Statoil, Toshiba, et la United S

Ainsi que mentionné dans le communiqué de presse de l’ECMA disponible en

international.org/news/PressReleases/PR_TC45_Dec2006.

maintenance et l’évolution de ce standard

responsible for the ongoing maintenance of the standard, and for enhancing the standard with new

and innovative features while simultaneously preserving backwards compatibility

C’est un standard ouvert qui répond en tous points à la loi pour la Confiance de l'Economie

Numérique du 21 juin 2004 (n° 2004

ouvert tout protocole de communication, d'interconnexion ou d'échange et tout format de données

interopérable et dont les spécifications techniques sont publiques et sans restriction d'accès ni de

mise en œuvre. »

30 Septembre

La valeur ajoutée d’Office 2007

La nouvelle interface utilisateur

n des changements majeurs introduits par Office 2007 est la refonte complète de l’interface

us traditionnels et barres d’outils ont été remplacés par un

menu Office ainsi qu’une barre d’accès rapide. Ce « lifting » a pour but de faciliter l’utilisation des

fonctionnalités Office en les rendant disponible pour l’utilisateur à tout moment

rubans est contextuelle en fonction des éléments sélectionnés par

l’utilisateur et de la position de son curseur. La contrepartie est un temps d’adaptation pour les

utilisateurs, mais cette ergonomie a été éprouvée par de nombreux tests et s’avère assez commode à

s d’être très esthétique. Cela permet également facilement aux éditeurs de logiciels de

développer leur propre ruban, un indicateur clair de l’orientation plate-forme.

De plus, Microsoft autorise l’utilisation de cette ergonomie en dehors d’Office, à condi

respecter les règles et la philosophie. Ceci veut dire qu’une application qui ne nécessite pas du tout

Office peut s’inspirer de cette ergonomie à base de rubans, sans pour autant devoir payer un

oit de propriété intellectuelle, car la licence associée est gratuite (cf programme de

http://msdn2.microsoft.com/en-us/office/aa973809.aspx ).

L’ouverture des formats d’Office dans la version 2007 au travers d’Open XML est aussi une évolution

ouvent minimisé car l’impact à court terme n’est pas très visible, ce point est

pour l’évolution de l’industrie du logiciel.

est un standard ECMA (organisme de standardisation

accrédité par l’ISO et faisant partie des rares organismes à pouvoir bénéficier du dispositif de

fast track ») sous la référence Ecma 376 et est

’ISO sous le n° 29500. Ce standard a été élaboré au sein du Technical Committee 45

qui comprend des représentants d’Apple, Barclays Capital, BP, The British Library,

Essilor, Intel, Microsoft, NextPage, Novell, Statoil, Toshiba, et la United States Library of Congress.

Ainsi que mentionné dans le communiqué de presse de l’ECMA disponible en http://www.ecma

international.org/news/PressReleases/PR_TC45_Dec2006.htm, c’est l’Ecma qui assurera la

maintenance et l’évolution de ce standard dans le futur : «The Ecma TC45 will continue to be

responsible for the ongoing maintenance of the standard, and for enhancing the standard with new

multaneously preserving backwards compatibility ».

C’est un standard ouvert qui répond en tous points à la loi pour la Confiance de l'Economie

Numérique du 21 juin 2004 (n° 2004-575), qui stipule dans son article 4 : « On entend par standard

rotocole de communication, d'interconnexion ou d'échange et tout format de données

interopérable et dont les spécifications techniques sont publiques et sans restriction d'accès ni de

30 Septembre 2007

la refonte complète de l’interface

outils ont été remplacés par un ruban, un

» a pour but de faciliter l’utilisation des

fonctionnalités Office en les rendant disponible pour l’utilisateur à tout moment et surtout à

en fonction des éléments sélectionnés par

l’utilisateur et de la position de son curseur. La contrepartie est un temps d’adaptation pour les

utilisateurs, mais cette ergonomie a été éprouvée par de nombreux tests et s’avère assez commode à

s d’être très esthétique. Cela permet également facilement aux éditeurs de logiciels de

, à condition d’en

respecter les règles et la philosophie. Ceci veut dire qu’une application qui ne nécessite pas du tout

Office peut s’inspirer de cette ergonomie à base de rubans, sans pour autant devoir payer un

(cf programme de

est aussi une évolution

ce point est en

tandard ECMA (organisme de standardisation dûment

accrédité par l’ISO et faisant partie des rares organismes à pouvoir bénéficier du dispositif de

et est en cours de

. Ce standard a été élaboré au sein du Technical Committee 45

d’Apple, Barclays Capital, BP, The British Library,

tates Library of Congress.

http://www.ecma-

, c’est l’Ecma qui assurera la

: «The Ecma TC45 will continue to be

responsible for the ongoing maintenance of the standard, and for enhancing the standard with new

C’est un standard ouvert qui répond en tous points à la loi pour la Confiance de l'Economie

On entend par standard

rotocole de communication, d'interconnexion ou d'échange et tout format de données

interopérable et dont les spécifications techniques sont publiques et sans restriction d'accès ni de

Page 13: Livre Blanc Office 2007

Mis au point à l’initiative de Microsoft, afin de répondre

différents pays et au niveau européen

immatériel des entreprises et des états au cours du temps

utilisateurs une compatibilité optimale avec le patrimoine existant de documents bureautiques et

éviter les pertes de données/présentation lors des migrations. Il est reconnu par de nombreux outils

bureautiques du marché, dont notamment les suites Microsoft Office 2007, 2003, XP et 2000

add-on en téléchargement gratuit permet en effet à ces anciennes version d’Office de pouvoir lire et

écrire des documents au format Open XML)

ou WordPerfect.

Avec les formats Open XML, les documents Office s’intègrent aisément à des solutions métier, et les

données de gestion trouvent naturellement place dans les fichiers proprement dits. Les schémas

personnalisés2 permettent d’inclure de

type Word ou Excel facilitant ainsi

travail quotidien des utilisateurs.

Les spécifications ouvertes d’Open XML

depuis un serveur (quel qu’en soit le système d’exploitation), des documents bureautiques destinés à

être consommés par des utilisateurs.

C. L’extensibilité programmatique

Bien que l’extensibilité d’Office ne soit pas fondamentalement

que les macros permettent le développement de solutions depuis de très nombreuses versions, la

version 2007 brille par des capacités d’extensibilité accrues.

De nombreuses améliorations de programmabilité ont été faites dans Office 2007. Par exemple, le

chargement des compléments est désormais maîtrisé par l’utilisateur et la suite Office a été revue de

façon à se comporter comme une plate

Bien évidemment, l’intégration avec .NET

Tools for Office donne toute la puissance de la plate

Services Web.

En outre, l’ouverture des formats en combin

majeur qui permet de nouveaux scénarios

métier.

Mais au-delà de cette extensibilité traditionnelle, Office 2007 prend une place particulière dans le

cadre du nouveau paradigme des applications composites

A l’inverse des applications traditionnelles, souvent monolithiques et cloisonnées par fonction, le

applications composites sont des applications conçues pour consommer des services de manière

transversale à l’entreprise, ces services pouvant être réutilisés dans des contextes divers par

différents processus de gestion.

2 Un schéma XML métier permet d’indiquer dans un document des ‘zones’ comme ‘Nom de client’ ou ‘montant

d’achat’, et d’échanger entre ces zones du document et le reste du système d’information des données en

conservant leur ‘signification’, et permettant de les présenter dans des documents classiques.

30 Septembre

Mis au point à l’initiative de Microsoft, afin de répondre notamment à des lois de ce type dans

différents pays et au niveau européen mais aussi pour assurer la préservation du patrimoine

immatériel des entreprises et des états au cours du temps, Open XML a été conçu pour assurer aux

utilisateurs une compatibilité optimale avec le patrimoine existant de documents bureautiques et

éviter les pertes de données/présentation lors des migrations. Il est reconnu par de nombreux outils

notamment les suites Microsoft Office 2007, 2003, XP et 2000

on en téléchargement gratuit permet en effet à ces anciennes version d’Office de pouvoir lire et

écrire des documents au format Open XML), mais aussi OpenOffice, NeoOffice (OO pour Macin

Avec les formats Open XML, les documents Office s’intègrent aisément à des solutions métier, et les

données de gestion trouvent naturellement place dans les fichiers proprement dits. Les schémas

permettent d’inclure des vocabulaires XML spécifiques dans des documents Office

l’intégration des données d’entreprise dans l’environnement

Open XML permettent également à des applications métier de générer,

depuis un serveur (quel qu’en soit le système d’exploitation), des documents bureautiques destinés à

être consommés par des utilisateurs.

L’extensibilité programmatique et « Office Business Applications

ne soit pas fondamentalement nouveau en soi, ne serait

que les macros permettent le développement de solutions depuis de très nombreuses versions, la

2007 brille par des capacités d’extensibilité accrues.

uses améliorations de programmabilité ont été faites dans Office 2007. Par exemple, le

chargement des compléments est désormais maîtrisé par l’utilisateur et la suite Office a été revue de

façon à se comporter comme une plate-forme à bien des titres.

ntégration avec .NET est plus poussée que jamais et l’utilisation de Visual Studio

Tools for Office donne toute la puissance de la plate-forme .NET en permettant facilement l’appel de

’ouverture des formats en combinaison avec cette extensibilité constitue un élément

permet de nouveaux scénarios d’utilisation d’Office en tant que frontal d’application

delà de cette extensibilité traditionnelle, Office 2007 prend une place particulière dans le

nouveau paradigme des applications composites.

A l’inverse des applications traditionnelles, souvent monolithiques et cloisonnées par fonction, le

applications composites sont des applications conçues pour consommer des services de manière

transversale à l’entreprise, ces services pouvant être réutilisés dans des contextes divers par

Un schéma XML métier permet d’indiquer dans un document des ‘zones’ comme ‘Nom de client’ ou ‘montant

es zones du document et le reste du système d’information des données en

conservant leur ‘signification’, et permettant de les présenter dans des documents classiques.

30 Septembre 2007

à des lois de ce type dans

mais aussi pour assurer la préservation du patrimoine

a été conçu pour assurer aux

utilisateurs une compatibilité optimale avec le patrimoine existant de documents bureautiques et

éviter les pertes de données/présentation lors des migrations. Il est reconnu par de nombreux outils

notamment les suites Microsoft Office 2007, 2003, XP et 2000 (un

on en téléchargement gratuit permet en effet à ces anciennes version d’Office de pouvoir lire et

, mais aussi OpenOffice, NeoOffice (OO pour Macintosh),

Avec les formats Open XML, les documents Office s’intègrent aisément à des solutions métier, et les

données de gestion trouvent naturellement place dans les fichiers proprement dits. Les schémas

s vocabulaires XML spécifiques dans des documents Office de

l’intégration des données d’entreprise dans l’environnement de

à des applications métier de générer,

depuis un serveur (quel qu’en soit le système d’exploitation), des documents bureautiques destinés à

»

, ne serait-ce que parce

que les macros permettent le développement de solutions depuis de très nombreuses versions, la

uses améliorations de programmabilité ont été faites dans Office 2007. Par exemple, le

chargement des compléments est désormais maîtrisé par l’utilisateur et la suite Office a été revue de

que jamais et l’utilisation de Visual Studio

forme .NET en permettant facilement l’appel de

constitue un élément

d’utilisation d’Office en tant que frontal d’application

delà de cette extensibilité traditionnelle, Office 2007 prend une place particulière dans le

A l’inverse des applications traditionnelles, souvent monolithiques et cloisonnées par fonction, les

applications composites sont des applications conçues pour consommer des services de manière

transversale à l’entreprise, ces services pouvant être réutilisés dans des contextes divers par

Un schéma XML métier permet d’indiquer dans un document des ‘zones’ comme ‘Nom de client’ ou ‘montant

es zones du document et le reste du système d’information des données en

Page 14: Livre Blanc Office 2007

Le schéma ci-dessous illustre cette nouvelle approche centrée sur l’utilisateur. Celui

des services fournis par différentes applications.

Les utilisateurs combinent les services pour

construire des applications composites

Les applications fournissent un référentiel de

services

La plate-forme fournit des types de

composants et conteneurs

Ce phénomène se retrouve dans le grand public (avec les «

développe également très fortement dans l’entreprise pour faciliter les processus de gestion.

Dès lors, au lieu d’investir dans des interfaces utilisateurs spécifiques, il devient intéressant d’inscrire

les interfaces métier au sein de celle d’Office. Ceci est rendu pos

l’interface dont nous avons parlé précédemment et la possibilité de créer des rubans spécialisés.

En allant au bout du raisonnement, Office 2007 devient alors un client universel d’applications

métiers et le point central de travail de l’utilisateur (voir le livre blanc

Building Composite Applications using the Microsoft platform

de document).

D. Les fonctions novatrices

Combinées avec la possibilité d’aliment

nouvelles fonctions ont un intérêt particulièrement marqué

• Les contrôles de contenu dans

présentation,

• Le formattage conditionnel d’

un tableau de bord (représentation visuelle, coloration, icône…)

30 Septembre

tte nouvelle approche centrée sur l’utilisateur. Celui-ci agrège en fait

des services fournis par différentes applications.

Les utilisateurs combinent les services pour

construire des applications composites

Les applications fournissent un référentiel de

services

forme fournit des types de

composants et conteneurs

Outils

pour

construire

et

exploiter

les

services

qui

tirent parti

de la

plate-

forme

Ce phénomène se retrouve dans le grand public (avec les « mashups » du web 2.0) mais se

ement très fortement dans l’entreprise pour faciliter les processus de gestion.

Dès lors, au lieu d’investir dans des interfaces utilisateurs spécifiques, il devient intéressant d’inscrire

les interfaces métier au sein de celle d’Office. Ceci est rendu possible grâce à l’évolution de

l’interface dont nous avons parlé précédemment et la possibilité de créer des rubans spécialisés.

En allant au bout du raisonnement, Office 2007 devient alors un client universel d’applications

avail de l’utilisateur (voir le livre blanc « Office Business Applications,

Building Composite Applications using the Microsoft platform » mentionné dans les liens utiles en fin

Combinées avec la possibilité d’alimenter les documents avec des données métiers, certaines

particulièrement marqué :

ôles de contenu dans Office Word qui permet de séparer les données de la

ormattage conditionnel d’Office Excel qui permet de mettre en exergue des valeurs dans

un tableau de bord (représentation visuelle, coloration, icône…),

30 Septembre 2007

ci agrège en fait

construire

exploiter

services

tirent parti

» du web 2.0) mais se

ement très fortement dans l’entreprise pour faciliter les processus de gestion.

Dès lors, au lieu d’investir dans des interfaces utilisateurs spécifiques, il devient intéressant d’inscrire

sible grâce à l’évolution de

l’interface dont nous avons parlé précédemment et la possibilité de créer des rubans spécialisés.

En allant au bout du raisonnement, Office 2007 devient alors un client universel d’applications

Business Applications,

» mentionné dans les liens utiles en fin

er les documents avec des données métiers, certaines

qui permet de séparer les données de la

permet de mettre en exergue des valeurs dans

Page 15: Livre Blanc Office 2007

• L’intelligence mise dans l’interprétation de l’information (par exemple les tableaux

structure est automatiquement déduite

manière globale, par exemple sur des plages de cellule

Powerpoint,

• SharePoint 2007 qui s’étoffe encore de nouvelles fonctions et dont la convergence avec

ASP.NET 2.0 en matière de Webparts permet une réelle intégration de type portail

d’applications métiers,

• Infopath 2007 qui devient dans sa deuxième version un outil puissant de formula

également une dimension serveur pour gérer les flux,

• Les bibliothèques de visuels qui sont très riches dès la version livrée de base,

• Des fonctions moins visibles par l’utilisateur mais importantes telles que l’amélioration de la

sécurité à différents niveaux

risque de Fuzzing).

E. Compatibilité « applicative

Malgré ces éléments novateurs et pour certains assez disruptifs, notamment la révision profonde de

l’interface utilisateur, Office 2007 permet la compatibilité avec les versions précédentes. Au niveau

des formats, l’utilisateur dispose de l’option de

Mais plus intéressant encore, Microsoft propose un convertisseur qui permet aux utilisateurs ayant

encore les anciennes versions de travailler en

milite pour un passage rapide à Open XML

Mais ce qui nous intéresse dans ce livre blanc c’est surtout la c

développées avec les versions antérieures d’Office

avec des comportements qui peuvent légèrement différer, d’où un besoin de test, en particulier sur

les très vieilles fonctions (macros Excel 4 par exemple), mais la compatibilité est globalement

assurée.

Une stratégie mise en œuvre avec succès pa

les fonctions et l’interface utilisateur (ruban)

versions 2000-2003 et 2007, sur la majeure partie de l’application, ta

« point d’entrée » est spécifique à la version

Ceci permet de cibler un parc hétérogène

de la migration de la base installée, ces éditeurs investissent de plus e

tirent parti du potentiel d’Office 2007

innovation.

Office 2007 devient alors un levier de création de valeur intéressant pour ces éditeurs de logiciels,

car l’investissement effectué est modeste en regard de la valeur perçue, dans la mesure où l’éditeur

peut construire sur certains atouts d’Office. L’exemple typique est la création de tableaux de bords

Excel synthétisant des données de l’application de l’éditeur et qui

conditionnelle.

30 Septembre

L’intelligence mise dans l’interprétation de l’information (par exemple les tableaux

structure est automatiquement déduite) qui permet d’appliquer des modèles visuels

manière globale, par exemple sur des plages de cellules Excel ou des présentations

qui s’étoffe encore de nouvelles fonctions et dont la convergence avec

ASP.NET 2.0 en matière de Webparts permet une réelle intégration de type portail

qui devient dans sa deuxième version un outil puissant de formula

également une dimension serveur pour gérer les flux,

Les bibliothèques de visuels qui sont très riches dès la version livrée de base,

Des fonctions moins visibles par l’utilisateur mais importantes telles que l’amélioration de la

ents niveaux (citons par exemple l’utilisation du format Open XML

applicative » avec les versions précédentes

Malgré ces éléments novateurs et pour certains assez disruptifs, notamment la révision profonde de

l’interface utilisateur, Office 2007 permet la compatibilité avec les versions précédentes. Au niveau

l’utilisateur dispose de l’option de sauvegarder selon le format 97-2003 ou

Microsoft propose un convertisseur qui permet aux utilisateurs ayant

encore les anciennes versions de travailler en Open XML. Nul doute que cela facilite la transition et

Open XML, format à privilégier par rapport à un format binaire.

Mais ce qui nous intéresse dans ce livre blanc c’est surtout la compatibilité avec les applications

développées avec les versions antérieures d’Office. Comme toujours, il y a quelques cas aux limites

avec des comportements qui peuvent légèrement différer, d’où un besoin de test, en particulier sur

les très vieilles fonctions (macros Excel 4 par exemple), mais la compatibilité est globalement

en œuvre avec succès par plusieurs éditeurs de logiciels consiste à bien séparer

fonctions et l’interface utilisateur (ruban). De cette façon, le code n’est pas différent entre les

2003 et 2007, sur la majeure partie de l’application, tandis que seulement la partie

» est spécifique à la version d’Office.

Ceci permet de cibler un parc hétérogène sans multiplier les coûts de développement. Et à mesure

de la migration de la base installée, ces éditeurs investissent de plus en plus sur des évolutions qui

nt parti du potentiel d’Office 2007 et incite les clients à s’équiper pour bénéficier de cette

Office 2007 devient alors un levier de création de valeur intéressant pour ces éditeurs de logiciels,

ssement effectué est modeste en regard de la valeur perçue, dans la mesure où l’éditeur

peut construire sur certains atouts d’Office. L’exemple typique est la création de tableaux de bords

Excel synthétisant des données de l’application de l’éditeur et qui tire parti de la mise en forme

30 Septembre 2007

L’intelligence mise dans l’interprétation de l’information (par exemple les tableaux dont la

es modèles visuels de

Excel ou des présentations

qui s’étoffe encore de nouvelles fonctions et dont la convergence avec

ASP.NET 2.0 en matière de Webparts permet une réelle intégration de type portail

qui devient dans sa deuxième version un outil puissant de formulaire avec

Des fonctions moins visibles par l’utilisateur mais importantes telles que l’amélioration de la

Open XML qui évite le

Malgré ces éléments novateurs et pour certains assez disruptifs, notamment la révision profonde de

l’interface utilisateur, Office 2007 permet la compatibilité avec les versions précédentes. Au niveau

ou Open XML.

Microsoft propose un convertisseur qui permet aux utilisateurs ayant

e cela facilite la transition et

, format à privilégier par rapport à un format binaire.

ilité avec les applications

y a quelques cas aux limites

avec des comportements qui peuvent légèrement différer, d’où un besoin de test, en particulier sur

les très vieilles fonctions (macros Excel 4 par exemple), mais la compatibilité est globalement bien

s consiste à bien séparer

. De cette façon, le code n’est pas différent entre les

ndis que seulement la partie

sans multiplier les coûts de développement. Et à mesure

des évolutions qui

à s’équiper pour bénéficier de cette

Office 2007 devient alors un levier de création de valeur intéressant pour ces éditeurs de logiciels,

ssement effectué est modeste en regard de la valeur perçue, dans la mesure où l’éditeur

peut construire sur certains atouts d’Office. L’exemple typique est la création de tableaux de bords

tire parti de la mise en forme

Page 16: Livre Blanc Office 2007

V. Les applications réelles d

A. Calypteo

Calypteo est une application métier

plate-forme Office 2007.

A l’origine, se trouve la société

consommations et dépenses énergétiques

collectivités locales un outil logiciel permettant d’assurer la gestion et le pilotage de leurs

consommations de gaz et d’électricité et de répondre à de nombreuses préoccupations pratiques,

notamment de préparer et gérer les appels d’offres

de la libéralisation de ces marchés

références dans le domaine des collectivités locales sur ce marché,

de Poitiers.

Ce produit, initialement développé

données dans des classeurs a permis d’incorporer les attentes des clients, en liaison étroite avec eux,

au fur et à mesure de l’utilisation du logiciel . Cette phase de «

une performance élevée en termes de fonctionnalités et de règles métier incorporées.

Afin de proposer une application apte à faire face aux exigences de travail collaboratif, de

transversalité et de productivité, Cofastel

Calypteo, déployée selon quatre axes principaux

• Fonctionnement en réseau avec utilisation d’une base de données

• Centralisation possible des données sur des environne

locales, incluant le mode hébergé

• Intégration étendue à la bureautique

• Facilité d’évolution pour disposer en permanence d’une application en phase avec l’évolution

de la donne énergétique

Cette application Calypteo repose sur une architecture robuste et évolutive basée sur Microsoft SQL

Server 2005, le .NET Framework 2.0 (avec les composants métiers fabriqués par le produit

CodeFluent), Windows Server 2003/IIS 6.0 pour le s

comme frontal évolué, alternative à la version basique fonctionnant sur un navigateur

30 Septembre

des éditeurs de logiciels utilisant Office 2007

pplication métier tirant très largement parti de l’ensemble des possibilités de la

A l’origine, se trouve la société Cofastel, spécialisée dans le domaine de la maîtrise des

consommations et dépenses énergétiques. En particulier, dès début 2005, Cofastel a proposé

l logiciel permettant d’assurer la gestion et le pilotage de leurs

consommations de gaz et d’électricité et de répondre à de nombreuses préoccupations pratiques,

les appels d’offres de fourniture de gaz et d’électricité

de la libéralisation de ces marchés et sélectionner leurs fournisseurs. L’entreprise dispose de solides

références dans le domaine des collectivités locales sur ce marché, comme les villes de Marseille et

loppé en interne par Cofastel en technologie Excel, avec stockage des

données dans des classeurs a permis d’incorporer les attentes des clients, en liaison étroite avec eux,

au fur et à mesure de l’utilisation du logiciel . Cette phase de « développement agile

une performance élevée en termes de fonctionnalités et de règles métier incorporées.

Afin de proposer une application apte à faire face aux exigences de travail collaboratif, de

Cofastel a lancé une toute nouvelle offre étendue

Calypteo, déployée selon quatre axes principaux :

Fonctionnement en réseau avec utilisation d’une base de données structurée ;

des données sur des environnements extérieurs aux collectivités

hébergé, par exemple pour les communautés de commune

la bureautique ;

Facilité d’évolution pour disposer en permanence d’une application en phase avec l’évolution

Cette application Calypteo repose sur une architecture robuste et évolutive basée sur Microsoft SQL

Server 2005, le .NET Framework 2.0 (avec les composants métiers fabriqués par le produit

CodeFluent), Windows Server 2003/IIS 6.0 pour le site et les services Web, et enfin Office 2007

comme frontal évolué, alternative à la version basique fonctionnant sur un navigateur :

30 Septembre 2007

utilisant Office 2007

tirant très largement parti de l’ensemble des possibilités de la

la maîtrise des

En particulier, dès début 2005, Cofastel a proposé aux

l logiciel permettant d’assurer la gestion et le pilotage de leurs

consommations de gaz et d’électricité et de répondre à de nombreuses préoccupations pratiques,

de fourniture de gaz et d’électricité dans le cadre

sélectionner leurs fournisseurs. L’entreprise dispose de solides

de Marseille et

, avec stockage des

données dans des classeurs a permis d’incorporer les attentes des clients, en liaison étroite avec eux,

gile » a conduit à

Afin de proposer une application apte à faire face aux exigences de travail collaboratif, de

a lancé une toute nouvelle offre étendue, dénommée

ments extérieurs aux collectivités

, par exemple pour les communautés de communes ;

Facilité d’évolution pour disposer en permanence d’une application en phase avec l’évolution

Cette application Calypteo repose sur une architecture robuste et évolutive basée sur Microsoft SQL

Server 2005, le .NET Framework 2.0 (avec les composants métiers fabriqués par le produit

ite et les services Web, et enfin Office 2007

:

Page 17: Livre Blanc Office 2007

Concernant la partie Office 2007, Calypteo intègre de nombreuses fonctionnalités à commencer par

une interface graphique totalement basée sur un ruban spécifique au métier

Des rapports Excel 2007 sont générés en Open XML pour les états de synthèse

30 Septembre

Concernant la partie Office 2007, Calypteo intègre de nombreuses fonctionnalités à commencer par

totalement basée sur un ruban spécifique au métier :

Des rapports Excel 2007 sont générés en Open XML pour les états de synthèse :

30 Septembre 2007

Concernant la partie Office 2007, Calypteo intègre de nombreuses fonctionnalités à commencer par

Page 18: Livre Blanc Office 2007

Des rapports Word 2007 sont générés selon le même principe pour certains documents de type

« fiche » :

En outre, de nombreuses données sont mises à jour sous forme tabulaire grâce aux listes

synchronisées d’Excel, qui sont mises en œuvre automatiquement par le producteur de CodeFluent

en prenant en compte les règles métiers. Notons ici la combinaison possib

avec la mise en forme conditionnelle qui permet de disposer d’indicateurs visuels fort utiles

30 Septembre

Des rapports Word 2007 sont générés selon le même principe pour certains documents de type

En outre, de nombreuses données sont mises à jour sous forme tabulaire grâce aux listes

synchronisées d’Excel, qui sont mises en œuvre automatiquement par le producteur de CodeFluent

en prenant en compte les règles métiers. Notons ici la combinaison possible de ces fonctionnalités

avec la mise en forme conditionnelle qui permet de disposer d’indicateurs visuels fort utiles

30 Septembre 2007

Des rapports Word 2007 sont générés selon le même principe pour certains documents de type

En outre, de nombreuses données sont mises à jour sous forme tabulaire grâce aux listes

synchronisées d’Excel, qui sont mises en œuvre automatiquement par le producteur de CodeFluent

le de ces fonctionnalités

avec la mise en forme conditionnelle qui permet de disposer d’indicateurs visuels fort utiles :

Page 19: Livre Blanc Office 2007

Enfin, l’environnement programmatique d’Excel permet de mettre en œuvre de nombreux menus et

outils offrant des fonctionnalités pr

montre un exemple ci-dessous :

Calypteo est le parfait exemple d’application métier conçue de façon à répondre à toutes les

exigences actuelles des clients tout en épousant la philosophie d’Off

le frontal utilisateur de services applicatifs.

Pour plus d’informations sur la solution Calypteo voici une présentation vidéo

http://www.microsoft.com/France/Temoignages/Fiche

webcast.aspx?EID=bb003a96-cf46-46a6

30 Septembre

Enfin, l’environnement programmatique d’Excel permet de mettre en œuvre de nombreux menus et

outils offrant des fonctionnalités propres au produit au sein même d’Office Excel 2007, comme le

Calypteo est le parfait exemple d’application métier conçue de façon à répondre à toutes les

exigences actuelles des clients tout en épousant la philosophie d’Office 2007 qui devient réellement

le frontal utilisateur de services applicatifs.

Pour plus d’informations sur la solution Calypteo voici une présentation vidéo :

http://www.microsoft.com/France/Temoignages/Fiche-Temoignage-avec-

46a6-8749-a8397d34ecec

30 Septembre 2007

Enfin, l’environnement programmatique d’Excel permet de mettre en œuvre de nombreux menus et

opres au produit au sein même d’Office Excel 2007, comme le

Calypteo est le parfait exemple d’application métier conçue de façon à répondre à toutes les

ice 2007 qui devient réellement

Page 20: Livre Blanc Office 2007

B. Esker

Esker est un éditeur reconnu internationalement dans le domaine des logiciels de communication.

Son produit FlyDoc est le premier bureau de poste électronique qui permet d’envoyer courriers

postaux, lettres recommandées et fax, à l’unité ou en nombre direc

Il suffit simplement de créer son document,

l’impression, la mise sous pli, l’affranchissement et la remise en poste.

L’intégration de FlyDoc à Office Word

encore la productivité des utilisateurs dans leur

Flydoc se présente comme une cible possible dans le menu «

Une fois le menu sélectionné, on dispose d’un ruban spécifique à l’application

30 Septembre

Esker est un éditeur reconnu internationalement dans le domaine des logiciels de communication.

FlyDoc est le premier bureau de poste électronique qui permet d’envoyer courriers

postaux, lettres recommandées et fax, à l’unité ou en nombre directement depuis un ordinateur.

document, de choir les options d’envois et FlyDoc s’occupe de tout:

l’impression, la mise sous pli, l’affranchissement et la remise en poste.

à Office Word 2007 est particulièrement saisissante et permet d’augmenter

encore la productivité des utilisateurs dans leur envoi de courriers postaux et de fax.

Flydoc se présente comme une cible possible dans le menu « Envoyer » de Office Word 2007

ectionné, on dispose d’un ruban spécifique à l’application :

30 Septembre 2007

Esker est un éditeur reconnu internationalement dans le domaine des logiciels de communication.

FlyDoc est le premier bureau de poste électronique qui permet d’envoyer courriers

ordinateur.

options d’envois et FlyDoc s’occupe de tout:

est particulièrement saisissante et permet d’augmenter

» de Office Word 2007 :

Page 21: Livre Blanc Office 2007

L’utilisateur dispose de l’assistant de publipostage classique et sélectionne son fichier cible de la

manière habituelle :

L’option de faire un envoi de son publipostage par le service Fly

volet Office au sein de l’assistant qui active le service en ligne de Flydoc sur Internet

30 Septembre

L’utilisateur dispose de l’assistant de publipostage classique et sélectionne son fichier cible de la

L’option de faire un envoi de son publipostage par le service Flydoc apparaît directement dans le

volet Office au sein de l’assistant qui active le service en ligne de Flydoc sur Internet :

30 Septembre 2007

L’utilisateur dispose de l’assistant de publipostage classique et sélectionne son fichier cible de la

doc apparaît directement dans le

Page 22: Livre Blanc Office 2007

Le service « on demand » d’Esker propose alors différentes options de transport

La démonstration est simplifiée dans ce livre

options pour l’envoi qui peuvent être choisies directement sur le site du service sur lequell on

déroule les étapes sans même quitter Office Word 2007.

Flydoc est le parfait exemple d’une application c

une solution simple, productive et intégrée à leur environnement quotidien.

30 Septembre

» d’Esker propose alors différentes options de transport :

La démonstration est simplifiée dans ce livre blanc, mais le service est riche de très nombreuses

options pour l’envoi qui peuvent être choisies directement sur le site du service sur lequell on

déroule les étapes sans même quitter Office Word 2007.

Flydoc est le parfait exemple d’une application ciblée sur un besoin utilisateur précis et proposant

une solution simple, productive et intégrée à leur environnement quotidien.

30 Septembre 2007

blanc, mais le service est riche de très nombreuses

options pour l’envoi qui peuvent être choisies directement sur le site du service sur lequell on

iblée sur un besoin utilisateur précis et proposant

Page 23: Livre Blanc Office 2007

C. ILOG

ILOG est l’un des plus grands éditeurs de logiciels du marché français et le leader mondial de la

gestion des règles métiers. Son offre permet en particulier de gérer des règles métier en les séparant

des applications de façon à permettre de gérer un cycle de vie et d’évolution plus rapide pour les

règles au travers d’une mise à jour par les utilisateurs.

ILOG a fortement investi autour d’Office 2007 sur plusieurs axes. Les documents décrivant les règles

métiers dans « Rules for .NET 3.0

décrire les méta-données sur les règles, en complément des informations textu

règle.

Par ailleurs, ILOG utilise Office SharePoint

règles. En effet, dans la mise en œuvre des règles métiers, ce sont les gestionnaires (

qui approuvent les règles proposées par les développeurs.

Décrivons ci-dessous un scénario d’exemple

Le développeur ajoute le document au portail sur lequel le workflow d’approbation a été défini.

L’approbateur reçoit un email l’invitant à revoir le document.

30 Septembre

LOG est l’un des plus grands éditeurs de logiciels du marché français et le leader mondial de la

s. Son offre permet en particulier de gérer des règles métier en les séparant

des applications de façon à permettre de gérer un cycle de vie et d’évolution plus rapide pour les

règles au travers d’une mise à jour par les utilisateurs.

sti autour d’Office 2007 sur plusieurs axes. Les documents décrivant les règles

» utilisent le format Open XML et les contrôles de contenu pour

données sur les règles, en complément des informations textuelles qui détaillent la

SharePoint 2007 pour sous-tendre le workflow d’approbation des

règles. En effet, dans la mise en œuvre des règles métiers, ce sont les gestionnaires (policy managers

s proposées par les développeurs.

dessous un scénario d’exemple :

Le développeur ajoute le document au portail sur lequel le workflow d’approbation a été défini.

L’approbateur reçoit un email l’invitant à revoir le document.

30 Septembre 2007

LOG est l’un des plus grands éditeurs de logiciels du marché français et le leader mondial de la

s. Son offre permet en particulier de gérer des règles métier en les séparant

des applications de façon à permettre de gérer un cycle de vie et d’évolution plus rapide pour les

sti autour d’Office 2007 sur plusieurs axes. Les documents décrivant les règles

» utilisent le format Open XML et les contrôles de contenu pour

elles qui détaillent la

tendre le workflow d’approbation des

policy managers)

Le développeur ajoute le document au portail sur lequel le workflow d’approbation a été défini.

Page 24: Livre Blanc Office 2007

Sur le portail, en fonction de son profil, l’utilisateur voit les tâches qui lui incombent.

Lorsqu’il ouvre le document, les méta

document est un document structuré de règle, contenant des contrôles de

saisit les informations à des endroits précis avec des contrôles.

30 Septembre

portail, en fonction de son profil, l’utilisateur voit les tâches qui lui incombent.

Lorsqu’il ouvre le document, les méta-données des règles sont visibles dans le volet Office et le

document est un document structuré de règle, contenant des contrôles de contenu. Le gestionnaire

saisit les informations à des endroits précis avec des contrôles.

30 Septembre 2007

données des règles sont visibles dans le volet Office et le

contenu. Le gestionnaire

Page 25: Livre Blanc Office 2007

Dans l’exemple complet du scénario, qui sera disponible en vidéo sur le site d’ILOG, on décrit

plusieurs étapes avec des refus et validation. On comprend aisément l

nécessaire de tout détailler dans ce livre blanc. Contentons

la validation finale par le gestionnaire.

Le processus est toujours sous-tendu par

par un « peer policy manager », car cette étape a été prévue au niveau du workflow décrit dans

SharePoint 2007.

Dans SharePoint, on peut voir le suivi de l’ensemble du processus et des étapes suivies.

L’intégration de Rules for .NET avec

éléments de la suite Office : Word 2007 et Open XML ainsi que

30 Septembre

Dans l’exemple complet du scénario, qui sera disponible en vidéo sur le site d’ILOG, on décrit

plusieurs étapes avec des refus et validation. On comprend aisément le principe et il n’est pas

nécessaire de tout détailler dans ce livre blanc. Contentons-nous de montrer ce qui se passe lors de

la validation finale par le gestionnaire.

tendu par SharePoint. L’écran ci-dessus montre par exemple la revue

», car cette étape a été prévue au niveau du workflow décrit dans

, on peut voir le suivi de l’ensemble du processus et des étapes suivies.

L’intégration de Rules for .NET avec Office 2007 est un bon exemple d’intégration de plusieurs

Office : Word 2007 et Open XML ainsi que SharePoint 2007 côté serveur.

30 Septembre 2007

Dans l’exemple complet du scénario, qui sera disponible en vidéo sur le site d’ILOG, on décrit

e principe et il n’est pas

nous de montrer ce qui se passe lors de

xemple la revue

», car cette étape a été prévue au niveau du workflow décrit dans

, on peut voir le suivi de l’ensemble du processus et des étapes suivies.

Office 2007 est un bon exemple d’intégration de plusieurs

2007 côté serveur.

Page 26: Livre Blanc Office 2007

D. MGDIS

1. La société

Editeur de solutions informatiques, MGDIS dédie son activité aux besoins des collectivité

petites et grandes, aux établissements hospitaliers, aux organismes publics, aux ports de plaisance.

Afin de se concentrer sur ces domaines de spécialité, MGDIS est spécialisé dans les solutions de

gestion administrative et de pilotage. Ces doma

connaître et simuler pour décider.

La démarche de la société est de fournir des solutions ouvertes et évolutives, pérennes par leur

qualité et garantissant la liberté des choix des clients. Les solutions so

pour bien répondre aux attentes métier des utilisateurs, d’autre part elles permettent l’adaptation et

le paramétrage quand il faut prendre en compte les spécificités. Les choix, construits avec des

composants propriétaires savent intégrer la voie du logiciel libre là où cela apparaît pertinent.

Cette grande adaptabilité impose aux différentes solutions MGDIS générant des documents de ne

pas dépendre de technologies utilisées sur les serveurs. La possibilité de générer un documen

partir de fichiers XML zippés permet d’une part de s’adapter à n’importe quelle technologie présente

sur le serveur, et d’autre part de fournir des documents dont la compatibilité avec les applications

futures est assurée par la normalisation du format

C’est donc naturellement que MGDIS a investi dans le support du nouveau format Open XML d’Office

2007 pour la génération de documents Word et Excel côté serveur.

2. Le progiciel Progos

PROGOS est un progiciel offrant des solutions de gestion et de pilotage

gérer et de maîtriser les aides, les subventions à percevoir et les opérations. Les données qu’il

manipule sont exportées dans divers formats. L’ouverture du nouveau format de fichier d’Office

2007 fournit à PROGOS un outil pour

plusieurs sources de données à l’aide d’un simple

PROGOS génère un nouveau document à l’aide d’un modèle spécialement balisé d’une part et d’un

Dataset contenant l’ensemble des données d’autre part. Les balises du document Office 2007

contiennent non seulement le champ à utiliser pour la fusion mais aussi la table de laquelle il doit

être extrait. Les sources de données peuvent ainsi être multiples et de

autant gêner la génération du document, seul un

fusion classique, la génération d’un document par PROGOS ne produit qu’un seul document. Au lieu

de générer un nouveau document

ligne sont dupliqués et leur copie est remplacée par la valeur du champ dans la ligne du

3. La solution Office 2007

Sous Word 2007, les possibilités de formatage des données sont bien plus

simple fusion. Des balises permettent de délimiter des zones de fusion à l’intérieur d’un document.

30 Septembre

Editeur de solutions informatiques, MGDIS dédie son activité aux besoins des collectivité

petites et grandes, aux établissements hospitaliers, aux organismes publics, aux ports de plaisance.

Afin de se concentrer sur ces domaines de spécialité, MGDIS est spécialisé dans les solutions de

gestion administrative et de pilotage. Ces domaines sont inséparables : piloter pour bien gérer,

La démarche de la société est de fournir des solutions ouvertes et évolutives, pérennes par leur

qualité et garantissant la liberté des choix des clients. Les solutions sont d’une part standardisées

pour bien répondre aux attentes métier des utilisateurs, d’autre part elles permettent l’adaptation et

le paramétrage quand il faut prendre en compte les spécificités. Les choix, construits avec des

nt intégrer la voie du logiciel libre là où cela apparaît pertinent.

Cette grande adaptabilité impose aux différentes solutions MGDIS générant des documents de ne

pas dépendre de technologies utilisées sur les serveurs. La possibilité de générer un documen

partir de fichiers XML zippés permet d’une part de s’adapter à n’importe quelle technologie présente

sur le serveur, et d’autre part de fournir des documents dont la compatibilité avec les applications

futures est assurée par la normalisation du format.

C’est donc naturellement que MGDIS a investi dans le support du nouveau format Open XML d’Office

2007 pour la génération de documents Word et Excel côté serveur.

PROGOS est un progiciel offrant des solutions de gestion et de pilotage permettant d’instruire, de

gérer et de maîtriser les aides, les subventions à percevoir et les opérations. Les données qu’il

manipule sont exportées dans divers formats. L’ouverture du nouveau format de fichier d’Office

2007 fournit à PROGOS un outil pour lui permettre de générer des documents complexes à partir de

plusieurs sources de données à l’aide d’un simple Dataset sans aucune technologie extérieure.

PROGOS génère un nouveau document à l’aide d’un modèle spécialement balisé d’une part et d’un

contenant l’ensemble des données d’autre part. Les balises du document Office 2007

contiennent non seulement le champ à utiliser pour la fusion mais aussi la table de laquelle il doit

être extrait. Les sources de données peuvent ainsi être multiples et de nature différente sans pour

autant gêner la génération du document, seul un Dataset bien formé est requis. Contrairement à une

fusion classique, la génération d’un document par PROGOS ne produit qu’un seul document. Au lieu

de générer un nouveau document par ligne du Dataset, les champs désignant un champ de cette

ligne sont dupliqués et leur copie est remplacée par la valeur du champ dans la ligne du

Sous Word 2007, les possibilités de formatage des données sont bien plus poussées que pour une

simple fusion. Des balises permettent de délimiter des zones de fusion à l’intérieur d’un document.

30 Septembre 2007

Editeur de solutions informatiques, MGDIS dédie son activité aux besoins des collectivités locales,

petites et grandes, aux établissements hospitaliers, aux organismes publics, aux ports de plaisance.

Afin de se concentrer sur ces domaines de spécialité, MGDIS est spécialisé dans les solutions de

: piloter pour bien gérer,

La démarche de la société est de fournir des solutions ouvertes et évolutives, pérennes par leur

nt d’une part standardisées

pour bien répondre aux attentes métier des utilisateurs, d’autre part elles permettent l’adaptation et

le paramétrage quand il faut prendre en compte les spécificités. Les choix, construits avec des

nt intégrer la voie du logiciel libre là où cela apparaît pertinent.

Cette grande adaptabilité impose aux différentes solutions MGDIS générant des documents de ne

pas dépendre de technologies utilisées sur les serveurs. La possibilité de générer un document à

partir de fichiers XML zippés permet d’une part de s’adapter à n’importe quelle technologie présente

sur le serveur, et d’autre part de fournir des documents dont la compatibilité avec les applications

C’est donc naturellement que MGDIS a investi dans le support du nouveau format Open XML d’Office

permettant d’instruire, de

gérer et de maîtriser les aides, les subventions à percevoir et les opérations. Les données qu’il

manipule sont exportées dans divers formats. L’ouverture du nouveau format de fichier d’Office

lui permettre de générer des documents complexes à partir de

sans aucune technologie extérieure.

PROGOS génère un nouveau document à l’aide d’un modèle spécialement balisé d’une part et d’un

contenant l’ensemble des données d’autre part. Les balises du document Office 2007

contiennent non seulement le champ à utiliser pour la fusion mais aussi la table de laquelle il doit

nature différente sans pour

bien formé est requis. Contrairement à une

fusion classique, la génération d’un document par PROGOS ne produit qu’un seul document. Au lieu

, les champs désignant un champ de cette

ligne sont dupliqués et leur copie est remplacée par la valeur du champ dans la ligne du Dataset.

poussées que pour une

simple fusion. Des balises permettent de délimiter des zones de fusion à l’intérieur d’un document.

Page 27: Livre Blanc Office 2007

Une zone déclare une table sur toute sa surface et contient un ou plusieurs champs de fusion

désignant des champs de cette dernière. I

formaté, des lignes d’un tableau ou simplement afficher du texte brut. Lors de la génération du

document, une zone est traitée comme un seul champ de fusion. Elle est copiée entièrement pour

chacune des lignes de la table correspondante dans le

contient.

Sous Excel 2007, un système de marqueurs analogue à placer dans des cellules permet d’effectuer

des fusions multi sources. Une unique génération de document perme

provenant de différentes sources, regroupées dans un

permettent d’agencer les données de manière à leur donner un sens, telles que l’orientation du texte

ou le type de données utilisé.

Les marqueurs utilisés sont des simples commandes de texte placées dans des champs de fusion sous

Word et dans des cellules sous Excel.

Exemple :

2007-DEBUT{table}

Les champs de fusion déclarés ici seront rattachés à la table définie.

Cette zone de texte sera dupliquée pour chaque ligne du dataset.

2007-FIN{table}

Exemple de fusion d’un champ numérique sous Excel

2007-TABLE{table}-CHAMP{champ

Exemple de génération d’une fiche synthèse pour un tiers

On place des balises dans le document Word pour définir les zones et leurs champs.

Marqueurs de zone

30 Septembre

Une zone déclare une table sur toute sa surface et contient un ou plusieurs champs de fusion

désignant des champs de cette dernière. Ils peuvent être inclus dans des paragraphes de texte

formaté, des lignes d’un tableau ou simplement afficher du texte brut. Lors de la génération du

document, une zone est traitée comme un seul champ de fusion. Elle est copiée entièrement pour

lignes de la table correspondante dans le Dataset, en remplaçant les champs qu’elle

Sous Excel 2007, un système de marqueurs analogue à placer dans des cellules permet d’effectuer

des fusions multi sources. Une unique génération de document permet ainsi d’utiliser des données

provenant de différentes sources, regroupées dans un Dataset. De simples options de formatage

permettent d’agencer les données de manière à leur donner un sens, telles que l’orientation du texte

Les marqueurs utilisés sont des simples commandes de texte placées dans des champs de fusion sous

Word et dans des cellules sous Excel.

Les champs de fusion déclarés ici seront rattachés à la table définie.

sera dupliquée pour chaque ligne du dataset.

Exemple de fusion d’un champ numérique sous Excel :

champ}-OPTIONS{nombre}

ne fiche synthèse pour un tiers :

On place des balises dans le document Word pour définir les zones et leurs champs.

Marqueurs

30 Septembre 2007

Une zone déclare une table sur toute sa surface et contient un ou plusieurs champs de fusion

ls peuvent être inclus dans des paragraphes de texte

formaté, des lignes d’un tableau ou simplement afficher du texte brut. Lors de la génération du

document, une zone est traitée comme un seul champ de fusion. Elle est copiée entièrement pour

, en remplaçant les champs qu’elle

Sous Excel 2007, un système de marqueurs analogue à placer dans des cellules permet d’effectuer

t ainsi d’utiliser des données

. De simples options de formatage

permettent d’agencer les données de manière à leur donner un sens, telles que l’orientation du texte

Les marqueurs utilisés sont des simples commandes de texte placées dans des champs de fusion sous

Les champs de fusion déclarés ici seront rattachés à la table définie.

Marqueurs de champ

Page 28: Livre Blanc Office 2007

Un lien sous Progos permet de générer le document pour le tiers affiché.

Le document fusionné contient les informations du tiers, certaines zones étant dupliquées

lorsqu’une information était représentée plus d’une fois.

Les possibilités offertes par le format Open XML vont au

avec une ligne de Dataset. MGDIS prévoit de continuer à développer son support d’Office 2007 en

ajoutant de nouvelles fonctions à son générateur de documents telles que la

champs pour permettre de contrôler les données utilisées.

Commande de génération

30 Septembre

Un lien sous Progos permet de générer le document pour le tiers affiché.

Le document fusionné contient les informations du tiers, certaines zones étant dupliquées

lorsqu’une information était représentée plus d’une fois.

offertes par le format Open XML vont au-delà de l’association d’un cha

. MGDIS prévoit de continuer à développer son support d’Office 2007 en

ajoutant de nouvelles fonctions à son générateur de documents telles que la fusion conditionnelle de

champs pour permettre de contrôler les données utilisées.

Informations exportées

Données provenant de

différentes tables

Duplication de

paragraphes

Duplication de lignes

tableau

30 Septembre 2007

Le document fusionné contient les informations du tiers, certaines zones étant dupliquées

delà de l’association d’un champ de fusion

. MGDIS prévoit de continuer à développer son support d’Office 2007 en

fusion conditionnelle de

Informations exportées

Données provenant de

différentes tables

Duplication de

paragraphes

Duplication de lignes d’un

Page 29: Livre Blanc Office 2007

4. Commentaires sur la mise en œuvre technique

Pour pouvoir s’adapter aux solutions déjà installées chez

de génération de documents entièrement en C# sur le Framework 2.0. Cette brique est intégrée à la

solution Progos WEB et ne nécessite l’ajout d’aucune bibliothèque supplémentaire. Il

pas été possible d’utiliser le SDK fourni par Microsoft

masse sur les postes des clients de MGDIS contrairement au Framework 2.0)

facilement pu être contourné grâce à la documentation de l’Open XML.

La génération d’un document se déroule en trois phases

• Le modèle à utiliser est tout d’abord extrait dans un répertoire temporaire. Il suffit pour cela

d’utiliser n’importe quelle bibliothèque gérant le format ZIP, comme

utilisée par Progos WEB. La spécification de l’Open XML définit ensuite ce que contien

les fichiers du ZIP, et modifier le contenu revient donc à charger un simple fichier XML. Point

important et capital dans le produit, l’utilisateur final doit rester maître de ses modèles, sans

avoir recours à un profil de type informaticien pour la m

• La fusion d’un document avec son

spécification indique encore une fois où chercher ce qui nous intéresse, en l’occurrence les

champs de fusion placés par l’utilisateur dans l

paragraphes et tableaux à dupliquer et fusionner.

• Une fois les champs remplacés par leur contenu, le fichier XML modifié est écrit à la place de

celui du modèle, et le répertoire est zippé pour obtenir le véritable

Une batterie de tests Nunit est utilisée

XML produit en sortie. Ceci permet de générer des documents de plus en plus complexes et donc

mieux adaptables aux besoins des clients. Il ne reste qu’à apprécier le rendu à l’œil nu pour ajuster

éventuellement les balises du modèle mais ce n’est à ce point qu’un souci cosmétique.

La principale difficulté est forcément la manipulation du DOM. Malgré le fait qu’il soit spécif

modèle reste complexe et pas toujours adapté aux modifications que l’on souhaite apporter. Les

champs de fusion par exemple qui malgré leur apparence sont des objets complexes à la syntaxe

hétérogène prévus à l’origine pour afficher un champ et non

remplacement de ces balises nécessite donc une analyse attentive du DOM afin premièrement de

trouver ce que l’on recherche et deuxièmement de le remplacer correctement. Une fois cette

compétence acquise, la manipulation du

Mis à part cette contrainte, la génération d’un document Open XML à partir d’un modèle ne pose

aucun souci technique et ne nécessite pas le SDK (générer un document à partir de rien serait plus

complexe, mais ne n’est pas notre

développées plutôt que comment elles le sont, et MGDIS compte bien profiter de cette opportunité

et continuer dans cette direction.

30 Septembre

Commentaires sur la mise en œuvre technique

adapter aux solutions déjà installées chez ses clients, MGDIS a développé

ntièrement en C# sur le Framework 2.0. Cette brique est intégrée à la

solution Progos WEB et ne nécessite l’ajout d’aucune bibliothèque supplémentaire. Il

pas été possible d’utiliser le SDK fourni par Microsoft (le Framework 3.0 n’est pas enc

masse sur les postes des clients de MGDIS contrairement au Framework 2.0) mais

grâce à la documentation de l’Open XML.

ment se déroule en trois phases :

st tout d’abord extrait dans un répertoire temporaire. Il suffit pour cela

d’utiliser n’importe quelle bibliothèque gérant le format ZIP, comme SharpZipLib

utilisée par Progos WEB. La spécification de l’Open XML définit ensuite ce que contien

les fichiers du ZIP, et modifier le contenu revient donc à charger un simple fichier XML. Point

important et capital dans le produit, l’utilisateur final doit rester maître de ses modèles, sans

avoir recours à un profil de type informaticien pour la mise en forme de celui-ci.

fusion d’un document avec son Dataset revient ensuite à de la manipulation de DOM. La

spécification indique encore une fois où chercher ce qui nous intéresse, en l’occurrence les

champs de fusion placés par l’utilisateur dans le modèle. Ils servent de repères pour les

leaux à dupliquer et fusionner.

Une fois les champs remplacés par leur contenu, le fichier XML modifié est écrit à la place de

celui du modèle, et le répertoire est zippé pour obtenir le véritable fichier Open XML généré.

est utilisée pour éprouver la fiabilité de la solution, et ainsi valider le code

XML produit en sortie. Ceci permet de générer des documents de plus en plus complexes et donc

s des clients. Il ne reste qu’à apprécier le rendu à l’œil nu pour ajuster

éventuellement les balises du modèle mais ce n’est à ce point qu’un souci cosmétique.

ment la manipulation du DOM. Malgré le fait qu’il soit spécif

modèle reste complexe et pas toujours adapté aux modifications que l’on souhaite apporter. Les

champs de fusion par exemple qui malgré leur apparence sont des objets complexes à la syntaxe

hétérogène prévus à l’origine pour afficher un champ et non servir le balises de marquage. Le

remplacement de ces balises nécessite donc une analyse attentive du DOM afin premièrement de

trouver ce que l’on recherche et deuxièmement de le remplacer correctement. Une fois cette

compétence acquise, la manipulation du DOM reste cependant simple.

Mis à part cette contrainte, la génération d’un document Open XML à partir d’un modèle ne pose

aucun souci technique et ne nécessite pas le SDK (générer un document à partir de rien serait plus

objectif ici). L’effort peut donc être porté sur les fonctionnalités

développées plutôt que comment elles le sont, et MGDIS compte bien profiter de cette opportunité

30 Septembre 2007

développé sa solution

ntièrement en C# sur le Framework 2.0. Cette brique est intégrée à la

solution Progos WEB et ne nécessite l’ajout d’aucune bibliothèque supplémentaire. Il n’a cependant

(le Framework 3.0 n’est pas encore diffusé en

mais ce problème a

st tout d’abord extrait dans un répertoire temporaire. Il suffit pour cela

SharpZipLib qui est celle

utilisée par Progos WEB. La spécification de l’Open XML définit ensuite ce que contiennent

les fichiers du ZIP, et modifier le contenu revient donc à charger un simple fichier XML. Point

important et capital dans le produit, l’utilisateur final doit rester maître de ses modèles, sans

ci.

revient ensuite à de la manipulation de DOM. La

spécification indique encore une fois où chercher ce qui nous intéresse, en l’occurrence les

e modèle. Ils servent de repères pour les

Une fois les champs remplacés par leur contenu, le fichier XML modifié est écrit à la place de

fichier Open XML généré.

solution, et ainsi valider le code

XML produit en sortie. Ceci permet de générer des documents de plus en plus complexes et donc

s des clients. Il ne reste qu’à apprécier le rendu à l’œil nu pour ajuster

éventuellement les balises du modèle mais ce n’est à ce point qu’un souci cosmétique.

ment la manipulation du DOM. Malgré le fait qu’il soit spécifié, le

modèle reste complexe et pas toujours adapté aux modifications que l’on souhaite apporter. Les

champs de fusion par exemple qui malgré leur apparence sont des objets complexes à la syntaxe

servir le balises de marquage. Le

remplacement de ces balises nécessite donc une analyse attentive du DOM afin premièrement de

trouver ce que l’on recherche et deuxièmement de le remplacer correctement. Une fois cette

Mis à part cette contrainte, la génération d’un document Open XML à partir d’un modèle ne pose

aucun souci technique et ne nécessite pas le SDK (générer un document à partir de rien serait plus

objectif ici). L’effort peut donc être porté sur les fonctionnalités

développées plutôt que comment elles le sont, et MGDIS compte bien profiter de cette opportunité

Page 30: Livre Blanc Office 2007

E. Symtrax

Symtrax est une société qui produit et

d'ouput management. Grâce à l'interactivité avec les utilisateurs, les logiciels Symtrax permettent la

création professionnelle de rapports pour une meilleure analyse et une prise de décision efficac

Symtrax offre une famille de produits comprenant des solutions logicielles complémentaires. Le

grand avantage de ces solutions est qu'elles sont facilement intégrées dans votre système

d'information existant et n'exigent pas d'investissements supplément

Pour en savoir plus sur Symtrax veuillez vous rendre ici

Le produit StarQuery est une solution de Business Intelligence

permet d'exploiter les données à partir d’un système métier ou d’une base de données

relationnelles. La version Office Excel 2007 présente une interface totalement revue avec un ruban

respectant la nouvelle interface utilisateur d’Office 2007

L'extraction, la distribution et la mise en forme des données se font dans l'environnement familier de

Microsoft Office Excel et peuvent être aisément automatisé

également d'extraire et de présenter les données via Intern

produit, qui est un très bon exemple de solution horizontale venant enrichir la valeur d’Excel

http://www.symtrax.fr/index.asp?file=fr/Solutions/Product/../project/business/StarQuery.htm&mer

e=1

30 Septembre

Symtrax est une société qui produit et distribue des logiciels de reporting multiplateformes et

d'ouput management. Grâce à l'interactivité avec les utilisateurs, les logiciels Symtrax permettent la

création professionnelle de rapports pour une meilleure analyse et une prise de décision efficac

Symtrax offre une famille de produits comprenant des solutions logicielles complémentaires. Le

grand avantage de ces solutions est qu'elles sont facilement intégrées dans votre système

et n'exigent pas d'investissements supplémentaires en matériels et logiciels.

Pour en savoir plus sur Symtrax veuillez vous rendre ici : www.symtrax.com

olution de Business Intelligence totalement intégrée à Office Excel

es données à partir d’un système métier ou d’une base de données

relationnelles. La version Office Excel 2007 présente une interface totalement revue avec un ruban

respectant la nouvelle interface utilisateur d’Office 2007 :

traction, la distribution et la mise en forme des données se font dans l'environnement familier de

Excel et peuvent être aisément automatisées. L'interface Web de StarQuery permet

également d'extraire et de présenter les données via Internet. Voici le lien vers la présentation du

produit, qui est un très bon exemple de solution horizontale venant enrichir la valeur d’Excel

p://www.symtrax.fr/index.asp?file=fr/Solutions/Product/../project/business/StarQuery.htm&mer

30 Septembre 2007

distribue des logiciels de reporting multiplateformes et

d'ouput management. Grâce à l'interactivité avec les utilisateurs, les logiciels Symtrax permettent la

création professionnelle de rapports pour une meilleure analyse et une prise de décision efficace.

Symtrax offre une famille de produits comprenant des solutions logicielles complémentaires. Le

grand avantage de ces solutions est qu'elles sont facilement intégrées dans votre système

aires en matériels et logiciels.

à Office Excel qui

es données à partir d’un système métier ou d’une base de données

relationnelles. La version Office Excel 2007 présente une interface totalement revue avec un ruban

traction, la distribution et la mise en forme des données se font dans l'environnement familier de

s. L'interface Web de StarQuery permet

. Voici le lien vers la présentation du

produit, qui est un très bon exemple de solution horizontale venant enrichir la valeur d’Excel :

p://www.symtrax.fr/index.asp?file=fr/Solutions/Product/../project/business/StarQuery.htm&mer

Page 31: Livre Blanc Office 2007

F. Medasys

Medasys est un éditeur de logiciels

ses produits phare est le produit DxCare de gestion

hôpitaux en France et gère depuis longtemps des publipostages de compte

de Office Word.

Pour tirer parti de la nouvelle interface utilisateur d’Office 2007, Medasys a développé deux

nouveaux rubans qui facilitent la manipulation des données du progiciel directement depuis

l’interface de Office Word.

Le ruban utilisateur permet de sélectionner le patient traiter depuis le dossier patient dans le

système progiciel, de sélection la lettre

document traité.

De plus, un autre ruban a été créé pour assurer le paramétrage des courriers par les administrateurs

de l’application.

Medasys est un bon exemple d’éditeur qui applique la strat

ce livre blanc, en investissant en premier lieu dans une nouvelle interface utilisateur spécifique à

Office 2007. Cette stratégie permet la compatibilité immédiate avec les différentes extensions déjà

écrites pour Office Word au fil des années, malgré un investissement important.

Pour autant, Medasys a identifié de nombreuses fonctions intéressantes dans Office Word 2007 qui

vont leur permettre d’aller plus loin dans les versions actuellement en cours de développement

L’utilisation d’Open XML et des contrôles de contenu, comme illustré dans l’un des prototypes, est

l’une de ces directions, sur laquelle Medasys est également en train de travailler pour ses logiciels de

radiologie.

30 Septembre

Medasys est un éditeur de logiciels leader dans le secteur des progiciels pour les hôpitaux. L’un de

ses produits phare est le produit DxCare de gestion des dossiers patients, équipe de nombreux

hôpitaux en France et gère depuis longtemps des publipostages de compte-rendus médicaux à l’aide

Pour tirer parti de la nouvelle interface utilisateur d’Office 2007, Medasys a développé deux

ux rubans qui facilitent la manipulation des données du progiciel directement depuis

Le ruban utilisateur permet de sélectionner le patient traiter depuis le dossier patient dans le

système progiciel, de sélection la lettre-type et d’utiliser les différentes données du dossier dans le

De plus, un autre ruban a été créé pour assurer le paramétrage des courriers par les administrateurs

Medasys est un bon exemple d’éditeur qui applique la stratégie de compatibilité évoquée plus haut

ce livre blanc, en investissant en premier lieu dans une nouvelle interface utilisateur spécifique à

Office 2007. Cette stratégie permet la compatibilité immédiate avec les différentes extensions déjà

fice Word au fil des années, malgré un investissement important.

Pour autant, Medasys a identifié de nombreuses fonctions intéressantes dans Office Word 2007 qui

vont leur permettre d’aller plus loin dans les versions actuellement en cours de développement

L’utilisation d’Open XML et des contrôles de contenu, comme illustré dans l’un des prototypes, est

l’une de ces directions, sur laquelle Medasys est également en train de travailler pour ses logiciels de

30 Septembre 2007

ôpitaux. L’un de

des dossiers patients, équipe de nombreux

rendus médicaux à l’aide

Pour tirer parti de la nouvelle interface utilisateur d’Office 2007, Medasys a développé deux

ux rubans qui facilitent la manipulation des données du progiciel directement depuis

Le ruban utilisateur permet de sélectionner le patient traiter depuis le dossier patient dans le

pe et d’utiliser les différentes données du dossier dans le

De plus, un autre ruban a été créé pour assurer le paramétrage des courriers par les administrateurs

égie de compatibilité évoquée plus haut

ce livre blanc, en investissant en premier lieu dans une nouvelle interface utilisateur spécifique à

Office 2007. Cette stratégie permet la compatibilité immédiate avec les différentes extensions déjà

Pour autant, Medasys a identifié de nombreuses fonctions intéressantes dans Office Word 2007 qui

vont leur permettre d’aller plus loin dans les versions actuellement en cours de développement.

L’utilisation d’Open XML et des contrôles de contenu, comme illustré dans l’un des prototypes, est

l’une de ces directions, sur laquelle Medasys est également en train de travailler pour ses logiciels de

Page 32: Livre Blanc Office 2007

G. SoftFluent

En tant qu’auteurs de ce livre blanc, et ayant nous

nous devons bien évidemment de mentionner le support d’Office 2007 dans notre offre produit.

Rappelons que SoftFluent est une société spécialisée en génie logiciel, à la pointe dans l

l'industrialisation des applications de gestion sur l’ensemble de la plate

Microsoft.

SoftFluent édite le produit CodeFluent, une usine logicielle qui permet de réaliser des composants

logiciels prêts à l'emploi à partir d’une technique de modélisation simple et pragmatique. Cette usine

s’intègre avec Office 2007 de plusieurs façons.

1. Format des fichiers modèles de CodeFluent

Tout d’abord, notons que la démarche de CodeFluent part d’une modélisation du métier par une

description des entités, de leurs propriétés et de leurs relations de différentes natures. Ce modèle

est décrit dans un flux XML qui peut être réparti dans plusieu

consolidables en une archive qui implémente le format Open XML. Le format .CFX des fichiers de

CodeFluent n’est donc rien d’autre qu’une archive respectant le format Open XML et dont les

sont les éléments du modèle CodeFluent. C’est ce fichier qui peut être envoyé au service en ligne

http://www.codefluent.com , un service gratuit de génération de composants métier à la demande.

2. Support des listes Office Excel

Tout d’abord, CodeFluent est la première offre de génie logiciel à avoir investi fortement sur

l’utilisation d’Office Excel comme frontal applicatif. CodeFluent a fait le choix dès sa version 1.0 de

proposer la fabrication de Services Web dédiés pour la saisie à l’aide de

En effet, depuis Office Excel 2003, l’utilisateur avait la possibilité de synchroniser des données de

type liste avec une source de données fournie par un service w

introduite en particulier avec SharePoint

possibilité d’export vers les listes Excel.

La synchronisation depuis Office Excel

extension : iqy), permettant la lecture et

Cependant, la synchronisation en écriture n’est plus possible par défaut avec

effet, cette fonction a été inhibée

voir le lien en fin de document).

La possibilité de saisir directement depuis

valeur aux clients que nous avons

réplication de données par glisser

fonctionnalité par un composant gratuit

(voir lien vers l’article en fin de livre blanc).

30 Septembre

livre blanc, et ayant nous-mêmes beaucoup investi sur Office 2007, nous

de mentionner le support d’Office 2007 dans notre offre produit.

Rappelons que SoftFluent est une société spécialisée en génie logiciel, à la pointe dans l

l'industrialisation des applications de gestion sur l’ensemble de la plate-forme de développement de

SoftFluent édite le produit CodeFluent, une usine logicielle qui permet de réaliser des composants

tir d’une technique de modélisation simple et pragmatique. Cette usine

s’intègre avec Office 2007 de plusieurs façons.

Format des fichiers modèles de CodeFluent

Tout d’abord, notons que la démarche de CodeFluent part d’une modélisation du métier par une

description des entités, de leurs propriétés et de leurs relations de différentes natures. Ce modèle

est décrit dans un flux XML qui peut être réparti dans plusieurs fichiers, mais ces fichiers sont

consolidables en une archive qui implémente le format Open XML. Le format .CFX des fichiers de

CodeFluent n’est donc rien d’autre qu’une archive respectant le format Open XML et dont les

CodeFluent. C’est ce fichier qui peut être envoyé au service en ligne

, un service gratuit de génération de composants métier à la demande.

Support des listes Office Excel

deFluent est la première offre de génie logiciel à avoir investi fortement sur

l’utilisation d’Office Excel comme frontal applicatif. CodeFluent a fait le choix dès sa version 1.0 de

proposer la fabrication de Services Web dédiés pour la saisie à l’aide de listes synchronisées Excel.

2003, l’utilisateur avait la possibilité de synchroniser des données de

données fournie par un service web. Cette fonctionnalité a été

harePoint et ses listes personnalisées, qui fournissent directement une

possibilité d’export vers les listes Excel.

Office Excel 2003 est possible grâce aux Internet Query Files (fichier

: iqy), permettant la lecture et l’écriture en relation directe avec la source de données.

Cependant, la synchronisation en écriture n’est plus possible par défaut avec Office Excel

par défaut (mais Microsoft a sorti un complément pour le faire

a possibilité de saisir directement depuis Office Excel en vue d’une mise à jour apportant

valeur aux clients que nous avons rencontrés (saisie de masse, application de formules de calcul,

n de données par glisser-étirer,…), nous avons automatisé la réactivation de cette

gratuit « Wss Excel 2007 Tables synchronizer » fourni sur notre site

(voir lien vers l’article en fin de livre blanc).

30 Septembre 2007

mêmes beaucoup investi sur Office 2007, nous

de mentionner le support d’Office 2007 dans notre offre produit.

Rappelons que SoftFluent est une société spécialisée en génie logiciel, à la pointe dans le domaine de

forme de développement de

SoftFluent édite le produit CodeFluent, une usine logicielle qui permet de réaliser des composants

tir d’une technique de modélisation simple et pragmatique. Cette usine

Tout d’abord, notons que la démarche de CodeFluent part d’une modélisation du métier par une

description des entités, de leurs propriétés et de leurs relations de différentes natures. Ce modèle

rs fichiers, mais ces fichiers sont

consolidables en une archive qui implémente le format Open XML. Le format .CFX des fichiers de

CodeFluent n’est donc rien d’autre qu’une archive respectant le format Open XML et dont les parts

CodeFluent. C’est ce fichier qui peut être envoyé au service en ligne

, un service gratuit de génération de composants métier à la demande.

deFluent est la première offre de génie logiciel à avoir investi fortement sur

l’utilisation d’Office Excel comme frontal applicatif. CodeFluent a fait le choix dès sa version 1.0 de

listes synchronisées Excel.

2003, l’utilisateur avait la possibilité de synchroniser des données de

eb. Cette fonctionnalité a été

et ses listes personnalisées, qui fournissent directement une

2003 est possible grâce aux Internet Query Files (fichier

l’écriture en relation directe avec la source de données.

Office Excel 2007. En

par défaut (mais Microsoft a sorti un complément pour le faire,

en vue d’une mise à jour apportant une réelle

saisie de masse, application de formules de calcul,

étirer,…), nous avons automatisé la réactivation de cette

» fourni sur notre site

Page 33: Livre Blanc Office 2007

Pour les développeurs, il peut être intéressant de comprendre comment les listes Excel peuvent être

utilisées pour fournir des solutions de collaboration autour de données d’applications. C’est ce que

nous présentons dans cette partie, au travers de ce que nous mettons en œuvre

logicielle CodeFluent.

CodeFluent permet de réaliser des applications de gestion multicouches, conformes au modèle SOA,

à partir d’une simple description abstraite d’un modèle métier. CodeFluent est conçu pour générer

des applications web, client-riche, mobiles ou centrées autour d’Office, et en particulier Excel. Dans

ce dernier schéma – souvent utilisé en combinaison avec d’autres interfaces utilisateur

devient le frontal de manipulation des données au travers de listes sy

Considérons par exemple une application de gestion de véhicules en location. Ce modèle exemple

CarRental comprend des entités telles que des voitures, des clients, des agences, des contrats… Et

l’application expose ces entités en liste sous

peuvent être rendues accessibles au travers d’un site Web avec des liens vers des fichiers .IQY qui

provoque un fonctionnement similaire à celui d’une liste

Les listes fabriquées par CodeFluent vous permettent donc d’

de calcul et saisir des données de la même façon que pour une liste

mettre en œuvre les mêmes scénarios (mode déconnecté, saisie de masse, calculs dans la

tableau croisé dynamique construit sur la liste) mais en utilisant un lien vers une base de données

applicative et les couches métier associés, incluant la mise en œuvre des règles de gestion et la

localisation.

30 Septembre

il peut être intéressant de comprendre comment les listes Excel peuvent être

utilisées pour fournir des solutions de collaboration autour de données d’applications. C’est ce que

nous présentons dans cette partie, au travers de ce que nous mettons en œuvre dans notre usine

CodeFluent permet de réaliser des applications de gestion multicouches, conformes au modèle SOA,

à partir d’une simple description abstraite d’un modèle métier. CodeFluent est conçu pour générer

riche, mobiles ou centrées autour d’Office, et en particulier Excel. Dans

souvent utilisé en combinaison avec d’autres interfaces utilisateur

devient le frontal de manipulation des données au travers de listes synchronisables.

par exemple une application de gestion de véhicules en location. Ce modèle exemple

comprend des entités telles que des voitures, des clients, des agences, des contrats… Et

l’application expose ces entités en liste sous forme de vues similaires aux listes SharePoint

peuvent être rendues accessibles au travers d’un site Web avec des liens vers des fichiers .IQY qui

provoque un fonctionnement similaire à celui d’une liste SharePoint.

deFluent vous permettent donc d’exporter vos données vers une feuille

de calcul et saisir des données de la même façon que pour une liste SharePoint. Ceci vous permet de

mettre en œuvre les mêmes scénarios (mode déconnecté, saisie de masse, calculs dans la

tableau croisé dynamique construit sur la liste) mais en utilisant un lien vers une base de données

applicative et les couches métier associés, incluant la mise en œuvre des règles de gestion et la

30 Septembre 2007

il peut être intéressant de comprendre comment les listes Excel peuvent être

utilisées pour fournir des solutions de collaboration autour de données d’applications. C’est ce que

dans notre usine

CodeFluent permet de réaliser des applications de gestion multicouches, conformes au modèle SOA,

à partir d’une simple description abstraite d’un modèle métier. CodeFluent est conçu pour générer

riche, mobiles ou centrées autour d’Office, et en particulier Excel. Dans

souvent utilisé en combinaison avec d’autres interfaces utilisateur – Office Excel

par exemple une application de gestion de véhicules en location. Ce modèle exemple

comprend des entités telles que des voitures, des clients, des agences, des contrats… Et

SharePoint. Ces vues

peuvent être rendues accessibles au travers d’un site Web avec des liens vers des fichiers .IQY qui

exporter vos données vers une feuille

Ceci vous permet de

mettre en œuvre les mêmes scénarios (mode déconnecté, saisie de masse, calculs dans la feuille,

tableau croisé dynamique construit sur la liste) mais en utilisant un lien vers une base de données

applicative et les couches métier associés, incluant la mise en œuvre des règles de gestion et la

Page 34: Livre Blanc Office 2007

3. Génération de rapports Open XML

CodeFluent dispose d’un moteur de «

1. La génération de code pour tout type de langage basé sur du texte,

2. La mise en cache des templates pour une meilleure performance de génération,

3. Un moteur de template 100% réutilisable,

4. Le support exclusif du format Microsoft RTF (permet de créer des modèles de document

directement sous Office Word, approche très appréciée des utilisateurs).

Il est prévu une mise à jour prochaine du moteur de

génération de document Open XML.

4. Génération d’applications OBA

Enfin, dans la mesure où CodeFluent génère déjà les services web applicatifs côté serveur, et permet

la fabrication d’interface utilisateurs de différents type,

d’abstraction plus élevé, il est prévu dans la roadmap de générer des interfaces Office 2007 (Word,

Excel, PowerPoint).

L’utilisateur disposera ainsi de rubans par domaine avec les différentes fonctions qui activer

services web applicatifs. CodeFluent devrait donc constituer un accélérateur d’applications de type

OBA.

En conclusion, SoftFluent en tant que société investit très fortement sur Office 2007 comme plate

forme de développement et élément différenti

« classiques », qui jouent plutôt la portabilité que la valeur ajoutée maximale.

C’est un élément de plus qui démontre l’évolution d’Office 2007 vers le positionnement en plate

forme de développement.

H. Autres éditeurs

De nombreux autres éditeurs travaillent en ce moment

ferons probablement une mise à jour de ce livre blanc afin de vous donner des exemples additionnels

d’ici à la fin de l’été 2007.

Citons quelques exemples :

• Archimed, éditeur d’une solution de gestion de collection pour les musées, qui intègre une

fabrication automatique de présentations Powerpoint,

• BlueKiwi, qui édite un produit de gestion de blogs en entreprise, en cours d’intégration avec

Office Word 2007 et SharePoint,

• Micro-Concept, qui édite une solution de téléphonie intégrée à Microsoft Outlook,

• Sylogis, qui édite des logiciels pour les collectivités locales et développe un volet assez riche

intégré à Office Word 2007.

30 Septembre

Génération de rapports Open XML

deFluent dispose d’un moteur de « Template » intégré. Celui-ci dans l’état actuel permet

La génération de code pour tout type de langage basé sur du texte,

La mise en cache des templates pour une meilleure performance de génération,

100% réutilisable,

Le support exclusif du format Microsoft RTF (permet de créer des modèles de document

directement sous Office Word, approche très appréciée des utilisateurs).

Il est prévu une mise à jour prochaine du moteur de template pour qu’il prenne en charge la

génération de document Open XML.

Génération d’applications OBA

Enfin, dans la mesure où CodeFluent génère déjà les services web applicatifs côté serveur, et permet

la fabrication d’interface utilisateurs de différents type, avec une description remontée à un niveau

d’abstraction plus élevé, il est prévu dans la roadmap de générer des interfaces Office 2007 (Word,

L’utilisateur disposera ainsi de rubans par domaine avec les différentes fonctions qui activer

services web applicatifs. CodeFluent devrait donc constituer un accélérateur d’applications de type

En conclusion, SoftFluent en tant que société investit très fortement sur Office 2007 comme plate

forme de développement et élément différentiateur des autres offres de génie logiciel plus

», qui jouent plutôt la portabilité que la valeur ajoutée maximale.

C’est un élément de plus qui démontre l’évolution d’Office 2007 vers le positionnement en plate

De nombreux autres éditeurs travaillent en ce moment sur des développements Office 2007. Nous

ferons probablement une mise à jour de ce livre blanc afin de vous donner des exemples additionnels

Archimed, éditeur d’une solution de gestion de collection pour les musées, qui intègre une

fabrication automatique de présentations Powerpoint,

BlueKiwi, qui édite un produit de gestion de blogs en entreprise, en cours d’intégration avec

7 et SharePoint,

Concept, qui édite une solution de téléphonie intégrée à Microsoft Outlook,

Sylogis, qui édite des logiciels pour les collectivités locales et développe un volet assez riche

intégré à Office Word 2007.

30 Septembre 2007

ci dans l’état actuel permet :

La mise en cache des templates pour une meilleure performance de génération,

Le support exclusif du format Microsoft RTF (permet de créer des modèles de document

pour qu’il prenne en charge la

Enfin, dans la mesure où CodeFluent génère déjà les services web applicatifs côté serveur, et permet

avec une description remontée à un niveau

d’abstraction plus élevé, il est prévu dans la roadmap de générer des interfaces Office 2007 (Word,

L’utilisateur disposera ainsi de rubans par domaine avec les différentes fonctions qui activeront les

services web applicatifs. CodeFluent devrait donc constituer un accélérateur d’applications de type

En conclusion, SoftFluent en tant que société investit très fortement sur Office 2007 comme plate-

ateur des autres offres de génie logiciel plus

C’est un élément de plus qui démontre l’évolution d’Office 2007 vers le positionnement en plate-

sur des développements Office 2007. Nous

ferons probablement une mise à jour de ce livre blanc afin de vous donner des exemples additionnels

Archimed, éditeur d’une solution de gestion de collection pour les musées, qui intègre une

BlueKiwi, qui édite un produit de gestion de blogs en entreprise, en cours d’intégration avec

Concept, qui édite une solution de téléphonie intégrée à Microsoft Outlook,

Sylogis, qui édite des logiciels pour les collectivités locales et développe un volet assez riche

Page 35: Livre Blanc Office 2007

VI. Les prototypes développés

L’ensemble des prototypes décrits dans cette partie sont disponibles avec des documentations

complètes et codes sources sur le site de SoftFluent, à l’adresse disponible en toute fin de document.

A. La personnalisation d’Office 2007

Comme exposé plus haut, l’interface utilisateur a été totalement revue sur la base de l’utilisation de

rubans. Ce choix fondamental impose aux

de l’interface graphique de leurs produits

tour ensemble des nouvelles possibilités qu’offre cette interface graphique, et surtout de la manière

de les mettre en place grâce à un prototype de

1. Création d’un ruban

Le complément MyAddIn ajoute l’onglet «

se fait dans le fichier « Ribbon.xml » contenu dans le projet MyAddIn. Pour ajouter un onglet il suffit

d’ajouter un élément tab dans le nœud

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui

onLoad="OnLoad">

<ribbon>

<tabs>

<tab id="MyTab" label

(…)

</tab>

</tabs>

</ribbon>

</customUI>

Il est parfaitement possible de s’intégrer à un onglet déjà existant, bien que ce comportement est

contraire aux directives de Microsoft car l’utilisateur pourrait alors difficilement différencier ce qui

provient d’Office ou des compléments. Pour faire cec

Office au lieu de définir le notre, et d’utiliser l’attribut

<tabs>

<tab idMso="TabHome">

<group id="TestGroup

<button id="TestButton

</group>

</tab>

</tabs>

Enfin si l’on veut que seul notre ruban apparaisse, il suffit d’ajouter l’attribut

l’élément ribbon tel que : <ribbon

Pour plus de détail sur les éléments possibles et leurs attributs, veuillez

documentation mise à disposition par Microsoft (

us/library/aa338199.aspx).

30 Septembre

développés par SoftFluent

L’ensemble des prototypes décrits dans cette partie sont disponibles avec des documentations

complètes et codes sources sur le site de SoftFluent, à l’adresse disponible en toute fin de document.

La personnalisation d’Office 2007

sé plus haut, l’interface utilisateur a été totalement revue sur la base de l’utilisation de

impose aux éditeurs de compléments Office une mise à jour complète

de l’interface graphique de leurs produits pour une intégration optimale. Nous allons donc faire le

tour ensemble des nouvelles possibilités qu’offre cette interface graphique, et surtout de la manière

prototype de complément Office : MyAddIn.

ute l’onglet « MyTab » à Office Excel 2007. La personnalisation du ruban

» contenu dans le projet MyAddIn. Pour ajouter un onglet il suffit

dans le nœud tabs, comme ceci :

http://schemas.microsoft.com/office/2006/01/customui

label="MyTab">

Il est parfaitement possible de s’intégrer à un onglet déjà existant, bien que ce comportement est

contraire aux directives de Microsoft car l’utilisateur pourrait alors difficilement différencier ce qui

vient d’Office ou des compléments. Pour faire ceci, il suffit d’utiliser un l’identifiant d’un onglet

Office au lieu de définir le notre, et d’utiliser l’attribut idMso au lieu d’id :

>

Group" label="TestGroup">

TestButton" label="TestButton"/>

Enfin si l’on veut que seul notre ruban apparaisse, il suffit d’ajouter l’attribut startFromScratch

ribbon startFromScratch="true">

éléments possibles et leurs attributs, veuillez-vous reporter à la

documentation mise à disposition par Microsoft (http://msdn2.microsoft.com/en

30 Septembre 2007

L’ensemble des prototypes décrits dans cette partie sont disponibles avec des documentations

complètes et codes sources sur le site de SoftFluent, à l’adresse disponible en toute fin de document.

sé plus haut, l’interface utilisateur a été totalement revue sur la base de l’utilisation de

une mise à jour complète

. Nous allons donc faire le

tour ensemble des nouvelles possibilités qu’offre cette interface graphique, et surtout de la manière

2007. La personnalisation du ruban

» contenu dans le projet MyAddIn. Pour ajouter un onglet il suffit

http://schemas.microsoft.com/office/2006/01/customui"

Il est parfaitement possible de s’intégrer à un onglet déjà existant, bien que ce comportement est

contraire aux directives de Microsoft car l’utilisateur pourrait alors difficilement différencier ce qui

i, il suffit d’utiliser un l’identifiant d’un onglet

startFromScratch à

vous reporter à la

http://msdn2.microsoft.com/en-

Page 36: Livre Blanc Office 2007

2. Présentation de l’ensemble des contrôles disponible

Voici une description des contrôles disponibles dans Office 2007

représentés dans le prototype : pour savoir le type du contrôle utilisé, garder votre souris au

et le type apparaîtra dans l’aide) :

� Button : un bouton

� ToggleButton : un bouton que l’on peut presser et qui reste enfoncé. Correspond au smiley

dans le complément.

� Box : une boîte de contrôles pouvant être verticale ou horizontale. Ce contrôle correspond

aux deux colonnes de couleurs dans le complément.

� Separator : un séparateur.

� SplitButton : un bouton avec un menu déroulant contenant d’autres

boutons ou menus.

� ButtonGroup : un groupement de boutons horizontal.

� LabelControl : du texte.

� CheckBox : une case à cocher.

� EditBox : une boîte de saisie.

� ComboBox : une boîte de saisie et liste mais ne contenant

que des contrôles item.

� Item : un élément d’une liste.

� DropDown : une liste contenant des éléments et/ou des

boutons.

� Menu : un menu.

� MenuSeparator : un séparateur dans

� DynamicMenu : un menu rempli dynamiquement.

� Gallery : une galerie.

La galerie est la grande nouveauté dans les contrôles. C’est un

menu évolué, c’est-à-dire que la galerie tout comme le menu

contient d’autres contrôles, mais contrairement au menu

ces contrôles sont dans une colonne, la galerie a de multiples

colonnes.

3. Utilisation des astuces

Les astuces (traduction de « tips ») sont des panneaux d’aide qui apparaissent lorsque l’utilisateur

garde son curseur plus d’une seconde immobile au

en .NET). Il est très facile d’en définir pour ses contrôles puisqu’ils constituent deux attributs

ajouter dans le nœud XML de l’élément :

l’aide et supertip à son contenu. Exemple

<button id="monBouton" label

un bouton."/>

N.B. : Il est recommandé de mettre [nom du complément]

de manière à ce que les utilisateurs savent que c’est une fonctionnalité du complément et non

d’Office 2007.

30 Septembre

e l’ensemble des contrôles disponible

Voici une description des contrôles disponibles dans Office 2007 (l’ensemble de ces contrôles sont

: pour savoir le type du contrôle utilisé, garder votre souris au

: un bouton que l’on peut presser et qui reste enfoncé. Correspond au smiley

: une boîte de contrôles pouvant être verticale ou horizontale. Ce contrôle correspond

nes de couleurs dans le complément.

: un bouton avec un menu déroulant contenant d’autres

: un groupement de boutons horizontal.

: une case à cocher.

: une boîte de saisie.

: une boîte de saisie et liste mais ne contenant

: un élément d’une liste.

: une liste contenant des éléments et/ou des

: un séparateur dans un menu.

: un menu rempli dynamiquement.

La galerie est la grande nouveauté dans les contrôles. C’est un

dire que la galerie tout comme le menu

contient d’autres contrôles, mais contrairement au menu où tout

ces contrôles sont dans une colonne, la galerie a de multiples

») sont des panneaux d’aide qui apparaissent lorsque l’utilisateur

garde son curseur plus d’une seconde immobile au-dessus d’un contrôle (l’équivalent d’un «

). Il est très facile d’en définir pour ses contrôles puisqu’ils constituent deux attributs

ajouter dans le nœud XML de l’élément : screentip et supertip. Screentip correspond au titre de

et supertip à son contenu. Exemple :

label="Bouton" screentip="Bouton" supertip

N.B. : Il est recommandé de mettre [nom du complément] : [texte du screentip] dans les screentips

sateurs savent que c’est une fonctionnalité du complément et non

30 Septembre 2007

(l’ensemble de ces contrôles sont

: pour savoir le type du contrôle utilisé, garder votre souris au-dessus,

: un bouton que l’on peut presser et qui reste enfoncé. Correspond au smiley

: une boîte de contrôles pouvant être verticale ou horizontale. Ce contrôle correspond

») sont des panneaux d’aide qui apparaissent lorsque l’utilisateur

dessus d’un contrôle (l’équivalent d’un « tooltip »

). Il est très facile d’en définir pour ses contrôles puisqu’ils constituent deux attributs à

p correspond au titre de

supertip="Ceci est

: [texte du screentip] dans les screentips

sateurs savent que c’est une fonctionnalité du complément et non

Page 37: Livre Blanc Office 2007

Dans le complément MyAddIn, vous trouverez des informations sur les contrôles utilisés dans ces

astuces.

4. Utilisation de l’existant

En général, à partir du moment où l’on utilis

type : [nom de l’attribut]Mso = « nom de la commande

pour utiliser un onglet existant le XML est

<tab idMso="TabHome">

Il en va de même pour utiliser une image

<button id="Box.Button1" imageMso

Ou encore une fonctionnalité, commande ou macro

<button idMso="FileNew" size

Reste maintenant à connaître les identifiants des images, commandes, ou autres fonctionnalités

existant dans Office 2007. Vous trouverez dans ce lien la liste de tous les imageMso

http://www.sunflowerhead.com/msimages/Office2007IconsGallery.zip

Pour les identifiants des commandes il suffit d’aller dans le menu Office > Option Word >

Personnalisation. Une fois dans ce menu, vous aurez la liste de toutes les commandes disponible

dans Office 2007. Si vous positionnez votre souris sur une commande plus d’une seconde, une a

va apparaître avec entre parenthèse

Pour les onglets, c’est le nom anglais de l’onglet auquel on ajoute le préfixe «

personnaliser l’onglet « Accueil », qui est l’onglet «

30 Septembre

Dans le complément MyAddIn, vous trouverez des informations sur les contrôles utilisés dans ces

En général, à partir du moment où l’on utilise une ressource d’Office 2007, l’attribut à utiliser est du

nom de la commande ». Comme nous l’avons vu tout à l’heure,

pour utiliser un onglet existant le XML est :

une image :

imageMso="AppointmentColor0">

, commande ou macro :

size="large">

Reste maintenant à connaître les identifiants des images, commandes, ou autres fonctionnalités

Vous trouverez dans ce lien la liste de tous les imageMso

http://www.sunflowerhead.com/msimages/Office2007IconsGallery.zip

commandes il suffit d’aller dans le menu Office > Option Word >

Personnalisation. Une fois dans ce menu, vous aurez la liste de toutes les commandes disponible

dans Office 2007. Si vous positionnez votre souris sur une commande plus d’une seconde, une a

va apparaître avec entre parenthèses l’identifiant de la commande.

Pour les onglets, c’est le nom anglais de l’onglet auquel on ajoute le préfixe « Tab » tel que pour

», qui est l’onglet « Home » en anglais, ce sera « TabHome

30 Septembre 2007

Dans le complément MyAddIn, vous trouverez des informations sur les contrôles utilisés dans ces

e une ressource d’Office 2007, l’attribut à utiliser est du

Comme nous l’avons vu tout à l’heure,

Reste maintenant à connaître les identifiants des images, commandes, ou autres fonctionnalités

Vous trouverez dans ce lien la liste de tous les imageMso :

commandes il suffit d’aller dans le menu Office > Option Word >

Personnalisation. Une fois dans ce menu, vous aurez la liste de toutes les commandes disponibles

dans Office 2007. Si vous positionnez votre souris sur une commande plus d’une seconde, une astuce

» tel que pour

TabHome ».

Page 38: Livre Blanc Office 2007

5. Ajout de ses propres images

Contrairement aux versions précédentes où toutes les ressources d’Office et de ses plug

chargées au démarrage, elles sont maintenant chargées uniquement lorsque Office 2007 en a beso

permettant ainsi de conserver un temps de chargement identique et indépendant du n

compléments installés.

Pour cela, il a été implémenté un système de «

méthode qui sera appelée au moment où Office aura

galerie, etc.) pour charger votre ressource.

Voici concrètement à quoi cela ressemble

<button id="buttonId" label

Dans l’exemple ci-dessus, Office Excel

d’afficher l’image du bouton. Il faut maintenant du côté de votre code implémenter la méthode qui

va récupérer votre ressource correspondant à ce bouton

IPictureDisp est l’interface utilisée par Office pour les images.

méthode qui permet de convertir

méthode est protégée. Il faut donc obligatoirement hériter de cette classe pour pouvoir l’utiliser,

d’où la classe ImageConverter contenu

public stdole.IPictureDisp GetImage(Office.

{

stdole.IPictureDisp pictureDisp =

switch (control.Id)

{

case "Button":

pictureDisp = ImageConverter

break;

default:

break;

}

return pictureDisp;

}

internal class ImageConverter

{

private ImageConverter()

: base(null)

{

}

public static stdole.IPictureDisp

{

return (stdole.IPictureDisp

}

}

30 Septembre

Ajout de ses propres images

Contrairement aux versions précédentes où toutes les ressources d’Office et de ses plug

elles sont maintenant chargées uniquement lorsque Office 2007 en a beso

un temps de chargement identique et indépendant du n

Pour cela, il a été implémenté un système de « callback ». C’est-à-dire que vous devrez spécifier une

méthode qui sera appelée au moment où Office aura besoin d’afficher votre bouton (ou menu, ou

votre ressource.

Voici concrètement à quoi cela ressemble :

label="Bouton" getImage="GetImage"/>

Office Excel va appeler la méthode GetImage lorsqu’il aura besoin

d’afficher l’image du bouton. Il faut maintenant du côté de votre code implémenter la méthode qui

va récupérer votre ressource correspondant à ce bouton :

l’interface utilisée par Office pour les images. La classe AxHost

méthode qui permet de convertir System.Drawing.Image en IPictureDisp

méthode est protégée. Il faut donc obligatoirement hériter de cette classe pour pouvoir l’utiliser,

contenue dans le projet MyAddIn :

GetImage(Office.IRibbonControl control)

pictureDisp = null;

ImageConverter.Convert(GetResourceBitmap(

ImageConverter : System.Windows.Forms.AxHost

IPictureDisp Convert(System.Drawing.Image image)

IPictureDisp)AxHost.GetIPictureDispFromPicture(image);

30 Septembre 2007

Contrairement aux versions précédentes où toutes les ressources d’Office et de ses plug-ins étaient

elles sont maintenant chargées uniquement lorsque Office 2007 en a besoin,

un temps de chargement identique et indépendant du nombre de

dire que vous devrez spécifier une

r votre bouton (ou menu, ou

va appeler la méthode GetImage lorsqu’il aura besoin

d’afficher l’image du bouton. Il faut maintenant du côté de votre code implémenter la méthode qui

AxHost contient une

IPictureDisp, mais cette

méthode est protégée. Il faut donc obligatoirement hériter de cette classe pour pouvoir l’utiliser,

.Convert(GetResourceBitmap("cards.png"));

image)

.GetIPictureDispFromPicture(image);

Page 39: Livre Blanc Office 2007

6. Gestion des évènements

Tout comme pour les images, les évènements se gèrent grâce à un système de callback. Chaque

évènement possible pour un contrôle correspond à un attribut de ce contrôle (tel que

getPressed, getVisible, etc.) et il suffit d’affecter à l’attribut le nom de la callback voulue. Pour

connaître l’ensemble des signatures des callbacks ainsi que des attributs possibles, veuillez vous

reporter à la documentation fournie par Microsoft

us/library/aa338199.aspx.

Voici par exemple comment gérer l’évènement d’un

<button id="monBouton" label

Et maintenant dans mon code, il me faut implémenter la méthode OnAction

Ce code mis en action aura pour effet d’afficher une boîte de message avec l’identifiant du contrôle

en titre, et la chaîne affectée à l’attribut

7. Peuplement dynamique de menus

On retrouve le même principe pour le peuplement dynamique du menu.

dynamique, il est obligatoire de spécifier

contenu du menu. La méthode que prend

retourne une chaîne XML décrivant le

<dynamicMenu id="DynamicMenu

getContent="GetDynamicMenuContent

Le code généré aura pour effet de peupler dynamiquement mon menu

boutons.

public void OnAction(Office.

{

MessageBox.Show(control.Tag, control.Id,

MessageBoxButtons

}

public string GetDynamicMenuContent(Office.

{

Random random = new Random();

int nbMenus = random.Next(1, 8);

StringBuilder stringBuilder = new

stringBuilder.AppendLine("<menu

xmlns=\"http://schemas.microsoft.com/office/2006/01/customui

for (int i = 1; i <= nbMenus; i++)

{

stringBuilder.AppendFormat("<button id=

tag=\"Ceci est un bouton généré dynamiquement

}

stringBuilder.AppendLine("</menu>"

return stringBuilder.ToString(); }

30 Septembre

Tout comme pour les images, les évènements se gèrent grâce à un système de callback. Chaque

évènement possible pour un contrôle correspond à un attribut de ce contrôle (tel que

et il suffit d’affecter à l’attribut le nom de la callback voulue. Pour

connaître l’ensemble des signatures des callbacks ainsi que des attributs possibles, veuillez vous

reporter à la documentation fournie par Microsoft : http://msdn2.microsoft.com/en

Voici par exemple comment gérer l’évènement d’un clic sur un bouton :

label="Bouton" tag="Exemple" onAction="OnAction

Et maintenant dans mon code, il me faut implémenter la méthode OnAction :

Ce code mis en action aura pour effet d’afficher une boîte de message avec l’identifiant du contrôle

en titre, et la chaîne affectée à l’attribut tag en texte.

Peuplement dynamique de menus

n retrouve le même principe pour le peuplement dynamique du menu. Parmi les attributs du menu

, il est obligatoire de spécifier l’attribut getContent, qui va permettre de récupérer le

contenu du menu. La méthode que prend getContent prend un paramètre un contrôle du ruban et

retourne une chaîne XML décrivant le contenu du menu. Voici un exemple :

DynamicMenu" label="My Dynamic Menu

GetDynamicMenuContent" />

effet de peupler dynamiquement mon menu avec un nombre aléatoire de

OnAction(Office.IRibbonControl control)

.Show(control.Tag, control.Id,

MessageBoxButtons.OK, MessageBoxIcon.Information);

GetDynamicMenuContent(Office.IRibbonControl control)

new StringBuilder();

"http://schemas.microsoft.com/office/2006/01/customui\">");

i = 1; i <= nbMenus; i++)

"<button id=\"DynamicButton{0}\" label=\"DynamicButton{0}

bouton généré dynamiquement\" onAction=\"OnAction\" />", i);

"</menu>");

30 Septembre 2007

Tout comme pour les images, les évènements se gèrent grâce à un système de callback. Chaque

évènement possible pour un contrôle correspond à un attribut de ce contrôle (tel que onAction,

et il suffit d’affecter à l’attribut le nom de la callback voulue. Pour

connaître l’ensemble des signatures des callbacks ainsi que des attributs possibles, veuillez vous

http://msdn2.microsoft.com/en-

OnAction"/>

Ce code mis en action aura pour effet d’afficher une boîte de message avec l’identifiant du contrôle

Parmi les attributs du menu

, qui va permettre de récupérer le

prend un paramètre un contrôle du ruban et

My Dynamic Menu"

n nombre aléatoire de

.Information);

"DynamicButton{0}\"

, i);

Page 40: Livre Blanc Office 2007

8. Création de volet Office

Un volet Office est en réalité un UserControl C#. Il suffit donc de créer son propre contrôle en

héritant de la classe .NET UserControl

volet est la traduction de l’anglais de «

L’utilisateur, dans Office 2007, doit pouvoir contrôler la visibilité de tout ce qui s’affiche dans son

environnement depuis le ruban. Nous allons par exemple contrôler la vis

toggleButton dans le ruban : quand le bouton est enfoncé, le volet s’affiche, et vice versa.

Pour faire cela, il suffit de lier la visibilité du volet à un évènement «

fonction de callback de l’évènement «

propriété « Visible » à vrai ou faux. Vous trouverez dans MyAddIn la mise en place de ce système

entre un toggleButton et le volet.

9. Autres personnalisations

Bien que peu ou pas documenté

l’environnement Office 2007 tel que le menu Office, ou encore surcharger des commandes. Malgré le

fait que ce ne soit pas encouragé par Microsoft, il est parfois bien pratique et même nécessa

d’avoir recours à ces personnalisations.

Ces personnalisations ont aussi lieu dans le fichier XML de description de l’interface, la différence

étant qu’au lieu d’être entre l’élément

menu Office, et les balises commands

Pour insérer un bouton « SoftFluent

voici à quoi va ressembler la description XML

<customUI xmlns="http://schemas.microsoft.com/of

onLoad="OnLoad">

<ribbon>

<officeMenu>

<button id="SoftFluentSave

insertAfterMso="FileSave" onAction

</officeMenu>

</ribbon>

</customUI>

public partial class ThisAddIn

{

internal CustomTaskPane

private void ThisAddIn_Startup(

{

ClockControl clockControl =

myTaskPane = this.CustomTaskPanes.Add(clockControl,

myTaskPane.Visible =

myTaskPane.VisibleChanged +=

}

}

30 Septembre

Un volet Office est en réalité un UserControl C#. Il suffit donc de créer son propre contrôle en

UserControl, puis d’ajouter son contrôle dans la collection de volet

de « task pane »). Concrètement :

L’utilisateur, dans Office 2007, doit pouvoir contrôler la visibilité de tout ce qui s’affiche dans son

environnement depuis le ruban. Nous allons par exemple contrôler la visibilité de ce volet via un

: quand le bouton est enfoncé, le volet s’affiche, et vice versa.

, il suffit de lier la visibilité du volet à un évènement « clic » d’un contrôle. Dans la

ment « clic », il suffira de changer la visibilité du volet en mettant la

» à vrai ou faux. Vous trouverez dans MyAddIn la mise en place de ce système

Autres personnalisations

documenté, il est possible de personnaliser d’autres éléments de

l’environnement Office 2007 tel que le menu Office, ou encore surcharger des commandes. Malgré le

fait que ce ne soit pas encouragé par Microsoft, il est parfois bien pratique et même nécessa

d’avoir recours à ces personnalisations.

Ces personnalisations ont aussi lieu dans le fichier XML de description de l’interface, la différence

étant qu’au lieu d’être entre l’élément tabs elles ont lieu entre les balises officeMenu

commands pour personnaliser les commandes.

SoftFluent » dans le menu Office, et juste après le bouton « Sauvegarder

voici à quoi va ressembler la description XML :

http://schemas.microsoft.com/office/2006/01/customui

SoftFluentSave" label="Bouton SoftFluent

onAction="OnAction"/>

ThisAddIn

myTaskPane;

ThisAddIn_Startup(object sender, System.EventArgs

clockControl = new ClockControl();

.CustomTaskPanes.Add(clockControl, "Horloge"

myTaskPane.Visible = false;

myTaskPane.VisibleChanged += new EventHandler(myTaskPane_VisibleChanged);

30 Septembre 2007

Un volet Office est en réalité un UserControl C#. Il suffit donc de créer son propre contrôle en

, puis d’ajouter son contrôle dans la collection de volets (le

L’utilisateur, dans Office 2007, doit pouvoir contrôler la visibilité de tout ce qui s’affiche dans son

ibilité de ce volet via un

: quand le bouton est enfoncé, le volet s’affiche, et vice versa.

» d’un contrôle. Dans la

», il suffira de changer la visibilité du volet en mettant la

» à vrai ou faux. Vous trouverez dans MyAddIn la mise en place de ce système

, il est possible de personnaliser d’autres éléments de

l’environnement Office 2007 tel que le menu Office, ou encore surcharger des commandes. Malgré le

fait que ce ne soit pas encouragé par Microsoft, il est parfois bien pratique et même nécessaire

Ces personnalisations ont aussi lieu dans le fichier XML de description de l’interface, la différence

officeMenu pour le

Sauvegarder »,

fice/2006/01/customui"

Bouton SoftFluent"

EventArgs e)

"Horloge");

(myTaskPane_VisibleChanged);

Page 41: Livre Blanc Office 2007

Vous pouvez également modifier le

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui

onLoad="OnLoad">

<ribbon>

<officeMenu>

<button idMso="FileSave

<button id="MySave

insertAfterMso="FileSave" visible

</officeMenu>

</ribbon>

</customUI>

Cela aura donc pour effet de cacher le vrai bouton «

Nous retrouvons les mêmes principes pour la surcharge de commandes

<commands>

<command idMso="Open"

<command idMso="Save"

<command idMso="SaveAs

</commands>

Nous allons donc surcharger les commandes «

que lors de l’utilisation de celles

« MySaveAs ».

10. Déploiement

Jusqu’à récemment il y avait très peu d’informations sur la manière de déployer son complément.

Depuis, Microsoft a publié un article en deux parties très complet sur la manière de déployer un

complément Office avec les VSTO SE

1. http://msdn2.microsoft.com/en

2. http://msdn2.microsoft.com/en

Nous allons quand même voir ensemble succinctement les grandes lignes du déploiement. Pour

déployer son complément il faut :

1. Vérifier les pré-requis

a. Installer le Framework 2.0 s’il n’est pas installé.

b. Installer la VSTO Runtime si elle n’est pas installée.

c. Installer les PIAs Office 2007 si elles ne sont pas installées.

2. Copier les fichiers

3. Mettre en place les valeurs dans les registres

4. Mettre en place les sécurités

a. Le complément et toutes ses dlls doivent être signés.

b. Configurer à sur la machine cliente le Code Access Security Policy (CasPol) pour que

le complément soit exécuter en «

projet SetSecurity du complément MyAddIn, mais cela peut aussi être après fait à la

main après l’installation, dans la configuration du Framework 2.0).

Le détail de toutes ces étapes se trouve dans l’article mis en lien ci

projet MyAddinSetup du prototype MyAddIn.

30 Septembre

Vous pouvez également modifier le contenu du menu Office :

http://schemas.microsoft.com/office/2006/01/customui

FileSave" visible="0"/>

MySave" label="MySave" imageMso

visible="1"/>

Cela aura donc pour effet de cacher le vrai bouton « Sauvegarder », pour n’afficher que le nô

Nous retrouvons les mêmes principes pour la surcharge de commandes :

" onAction="MyOpen"/>

" onAction="MySave"/>

SaveAs" onAction="MySaveAs"/>

Nous allons donc surcharger les commandes « Ouvrir », « Sauvegarder », « Sauvegarder sous

celles-ci, elles appellent nos callback « MyOpen », «

Jusqu’à récemment il y avait très peu d’informations sur la manière de déployer son complément.

soft a publié un article en deux parties très complet sur la manière de déployer un

complément Office avec les VSTO SE :

http://msdn2.microsoft.com/en-us/library/bb332051.aspx

http://msdn2.microsoft.com/en-us/library/bb332052.aspx

Nous allons quand même voir ensemble succinctement les grandes lignes du déploiement. Pour

Installer le Framework 2.0 s’il n’est pas installé.

Installer la VSTO Runtime si elle n’est pas installée.

Installer les PIAs Office 2007 si elles ne sont pas installées.

Mettre en place les valeurs dans les registres

lace les sécurités

Le complément et toutes ses dlls doivent être signés.

Configurer à sur la machine cliente le Code Access Security Policy (CasPol) pour que

le complément soit exécuter en « FullTrust » (cela est fait à l’installation dans le

SetSecurity du complément MyAddIn, mais cela peut aussi être après fait à la

main après l’installation, dans la configuration du Framework 2.0).

Le détail de toutes ces étapes se trouve dans l’article mis en lien ci-avant, et tout ceci est fait dans le

jet MyAddinSetup du prototype MyAddIn.

30 Septembre 2007

http://schemas.microsoft.com/office/2006/01/customui"

imageMso="Save"

», pour n’afficher que le nôtre.

Sauvegarder sous », pour

», « MySave »,

Jusqu’à récemment il y avait très peu d’informations sur la manière de déployer son complément.

soft a publié un article en deux parties très complet sur la manière de déployer un

Nous allons quand même voir ensemble succinctement les grandes lignes du déploiement. Pour

Configurer à sur la machine cliente le Code Access Security Policy (CasPol) pour que

» (cela est fait à l’installation dans le

SetSecurity du complément MyAddIn, mais cela peut aussi être après fait à la

avant, et tout ceci est fait dans le

Page 42: Livre Blanc Office 2007

B. L’accès aux données métier par Web Service

Le prototype « BookStoreSample » est un complément pour

Office qui consomme un service web publié

données.

Avec Office 2007, Microsoft transforme une suite d’applications indépendantes en un véritable

système d’applications frontales consommant le système d’information.

Microsoft amorçait un virage pour introduire la notion de serveur dans le concept de la suite

bureautique. Aujourd’hui, le virage devient une réalité aux applications multiples dont les bénéfices

se traduisent par des gains en organisation, en collaboration et en productivité. En étoffa

bureautique de serveurs et d'un moteur de workflow, Microsoft propulse en effet

ou encore Powerpoint au statut d'interface cliente pour l'ensemble des applications bureautiques

mais également pour toutes les sources de donnée

Ces sources de données peuvent être aussi bien des sources standards proposées par Microsoft

(SharePoint en est l’illustration parfaite), que votre propre source de donnée et ainsi de disposer

d’outils puissants pour traiter vos données

Comme nous l’avons vu au cours du chapitre précédent, l’interface humaine de l’environnement

Office 2007 est presque entièrement personnalisable, mais surtout, au

personnalisation graphique, c’est tout l’environnement .

résumé, si l’on combine l’effort fait par Microsoft pour faire des applications Office de véritables

clients, et le fait que l’on puisse disposer d

compte qu’Office est bien plus qu’une suite bureautique, mais devient une véritable plateforme de

développement.

Pour illustrer ce point, SoftFluent a développé un complément

Excel 2007 comme client frontal, pour consommer des données issues d’un Web Service, lui

attaquant une base SQL Server 2005. Nous sommes volontairement resté dans des technologies

Microsoft, pour illustrer une utilisation complète du Framewo

consommer un service web attaquant une base Oracle ou un complément dialoguant avec u

serveur Java, ou n’importe quelle autre source de donnée.

A des fins d’efficacité, ce service web a été développé en utilisant l’

CodeFluent permet de fabriquer des composants SOA «

de manière automatisée à partir d’une simple description d’un modèle

« BookStoreSample », nous nous sommes servi de

Server 2005, les classes métiers correspondantes, ainsi que le service web, chaque couche

interagissant en parfaite adéquation avec la couche sous

fonctionnalités ont été mises en place à un coût très faible, permettant ainsi aux développeurs de se

focaliser sur l’implémentation de l’interface graphique

graphique a bénéficiée d’un coût de développement très faible tout en prop

avancées grâce à l’utilisation d’Office Excel

30 Septembre

L’accès aux données métier par Web Service

» est un complément pour Office Excel 2007, ajoutant un volet

Office qui consomme un service web publié sur le site de SoftFluent effectuant l’accès à une base de

Avec Office 2007, Microsoft transforme une suite d’applications indépendantes en un véritable

système d’applications frontales consommant le système d’information. Dès la version 2003 d'Office,

ur introduire la notion de serveur dans le concept de la suite

bureautique. Aujourd’hui, le virage devient une réalité aux applications multiples dont les bénéfices

se traduisent par des gains en organisation, en collaboration et en productivité. En étoffa

bureautique de serveurs et d'un moteur de workflow, Microsoft propulse en effet Office Word

ou encore Powerpoint au statut d'interface cliente pour l'ensemble des applications bureautiques

mais également pour toutes les sources de données présentes dans le système d'information.

Ces sources de données peuvent être aussi bien des sources standards proposées par Microsoft

en est l’illustration parfaite), que votre propre source de donnée et ainsi de disposer

our traiter vos données ; sans pour autant les avoir développés à vos frais.

au cours du chapitre précédent, l’interface humaine de l’environnement

Office 2007 est presque entièrement personnalisable, mais surtout, au-delà d’offrir un

personnalisation graphique, c’est tout l’environnement .NET qui est disponible dans Office 2007. En

résumé, si l’on combine l’effort fait par Microsoft pour faire des applications Office de véritables

clients, et le fait que l’on puisse disposer de la puissance du Framework .NET, l’on se rend vite

compte qu’Office est bien plus qu’une suite bureautique, mais devient une véritable plateforme de

Pour illustrer ce point, SoftFluent a développé un complément Excel qui a pour but d’utilis

2007 comme client frontal, pour consommer des données issues d’un Web Service, lui

attaquant une base SQL Server 2005. Nous sommes volontairement resté dans des technologies

Microsoft, pour illustrer une utilisation complète du Framework mais il est tout à fait possible de

consommer un service web attaquant une base Oracle ou un complément dialoguant avec u

elle autre source de donnée.

A des fins d’efficacité, ce service web a été développé en utilisant l’usine logicielle CodeFluent

permet de fabriquer des composants SOA « clé en main » respectant l’architecture SOA

de manière automatisée à partir d’une simple description d’un modèle. Dans l’exemple

», nous nous sommes servi de CodeFluent pour générer la base de donnée SQL

Server 2005, les classes métiers correspondantes, ainsi que le service web, chaque couche

interagissant en parfaite adéquation avec la couche sous-jacente. En résultat l’ensemble des

ses en place à un coût très faible, permettant ainsi aux développeurs de se

focaliser sur l’implémentation de l’interface graphique ou de règles plus spécifiques. Enfin, l’interface

graphique a bénéficiée d’un coût de développement très faible tout en proposant des fonctionnalités

Office Excel comme client frontal.

30 Septembre 2007

2007, ajoutant un volet

l’accès à une base de

Avec Office 2007, Microsoft transforme une suite d’applications indépendantes en un véritable

Dès la version 2003 d'Office,

ur introduire la notion de serveur dans le concept de la suite

bureautique. Aujourd’hui, le virage devient une réalité aux applications multiples dont les bénéfices

se traduisent par des gains en organisation, en collaboration et en productivité. En étoffant sa suite

Office Word, Excel

ou encore Powerpoint au statut d'interface cliente pour l'ensemble des applications bureautiques

s présentes dans le système d'information.

Ces sources de données peuvent être aussi bien des sources standards proposées par Microsoft

en est l’illustration parfaite), que votre propre source de donnée et ainsi de disposer

; sans pour autant les avoir développés à vos frais.

au cours du chapitre précédent, l’interface humaine de l’environnement

delà d’offrir une simple

qui est disponible dans Office 2007. En

résumé, si l’on combine l’effort fait par Microsoft pour faire des applications Office de véritables

, l’on se rend vite

compte qu’Office est bien plus qu’une suite bureautique, mais devient une véritable plateforme de

qui a pour but d’utiliser Office

2007 comme client frontal, pour consommer des données issues d’un Web Service, lui-même

attaquant une base SQL Server 2005. Nous sommes volontairement resté dans des technologies

rk mais il est tout à fait possible de

consommer un service web attaquant une base Oracle ou un complément dialoguant avec un

usine logicielle CodeFluent.

respectant l’architecture SOA

. Dans l’exemple

CodeFluent pour générer la base de donnée SQL

Server 2005, les classes métiers correspondantes, ainsi que le service web, chaque couche

jacente. En résultat l’ensemble des

ses en place à un coût très faible, permettant ainsi aux développeurs de se

. Enfin, l’interface

osant des fonctionnalités

Page 43: Livre Blanc Office 2007

1. Pré-requis

Avant de pouvoir utiliser le complément

Office 2007 installé sur votre poste, et plus particul

Primary Interop Assemblies ». Elles sont normalement installées par défaut à l’installation d’Office

2007, mais si pour des raisons obscures elles ne sont pas installées sur le vôtre, elles peuvent être

récupérées ici : http://www.microsoft.com/downloads/details.aspx?familyid=59daebaa

a28c-b864d8bfa513&displaylang=en

Le complément est BookStoreSample est un complément pour Excel 2007, développé avec les Visual

Studio Tools for Office Second Edition (VSTO SE), ce qui fait que vous aurez besoin d’installer ceux

avant de pouvoir compiler les sources. Les VSTO SE sont disponible

http://www.microsoft.com/downloads/details.aspx?familyid=5e86cab3

e1676db6b3cb&displaylang=en )

2. Utilisation

a) Utilisation du complément

L’exemple tel qu’il vous est livré contient deux parties

déployer le binaire sur votre machine et il n’est pas nécessaire d’avoir Visual Studio 2005 d’installé

pour utiliser le complément.

Une fois le complément installé, il vous suffit de lancer Excel 2007, et vous verrez qu’un nouvel

onglet à l’extrême droite du ruban est apparu, ainsi qu’un nouveau menu dans le menu Office. Le

complément permet d’interroger un service web d’une

pourrez obtenir par exemple la liste des livres proposés par cette librairie.

b) Utilisation de la solution

La solution du complément BookStoreSample est composée de six projets

• BookStoreSample.Design : contenan

CodeFluent des sources,

• BookStoreSample.Model : contenant les sources C#

• BookStoreSample.WebService : contenant les sources du Web Service généré par

CodeFluent,

• BookStoreSample.Excel : projet correspondant au

celui-ci qu’est contenu le ruban et autres fonctionnalités du complément,

• BookStoreSample : le projet pour le msi

• SetSecurity : un autre projet nécessaire au

dans ce document.

3. Points d’intérêts particuliers

Ce prototype reprend beaucoup de points d’intérêts du précédent. Nous ne redéveloppons pas ces

points ici, même s’ils sont détaillés dans la documentation du proto

être vu indépendamment des autres).

30 Septembre

Avant de pouvoir utiliser le complément BookStoreSample, il faut bien évidemment que vo

sur votre poste, et plus particulièrement Excel. De plus, il faut les «

». Elles sont normalement installées par défaut à l’installation d’Office

2007, mais si pour des raisons obscures elles ne sont pas installées sur le vôtre, elles peuvent être

http://www.microsoft.com/downloads/details.aspx?familyid=59daebaa

b864d8bfa513&displaylang=en

ment est BookStoreSample est un complément pour Excel 2007, développé avec les Visual

Studio Tools for Office Second Edition (VSTO SE), ce qui fait que vous aurez besoin d’installer ceux

avant de pouvoir compiler les sources. Les VSTO SE sont disponible

http://www.microsoft.com/downloads/details.aspx?familyid=5e86cab3-6fd6-4955-b979

ilisation du complément

L’exemple tel qu’il vous est livré contient deux parties : le code source, et un installeur. L’installeur va

déployer le binaire sur votre machine et il n’est pas nécessaire d’avoir Visual Studio 2005 d’installé

Une fois le complément installé, il vous suffit de lancer Excel 2007, et vous verrez qu’un nouvel

onglet à l’extrême droite du ruban est apparu, ainsi qu’un nouveau menu dans le menu Office. Le

complément permet d’interroger un service web d’une librairie virtuelle. Via un volet Office vous

pourrez obtenir par exemple la liste des livres proposés par cette librairie.

La solution du complément BookStoreSample est composée de six projets :

: contenant les fichiers XML nécessaires à la génération

BookStoreSample.Model : contenant les sources C# générées par CodeFluent,

BookStoreSample.WebService : contenant les sources du Web Service généré par

BookStoreSample.Excel : projet correspondant au complément proprement dit, c’est dans

ci qu’est contenu le ruban et autres fonctionnalités du complément,

BookStoreSample : le projet pour le msi

SetSecurity : un autre projet nécessaire au déploiement dont nous verrons l’utilité plus tard

Points d’intérêts particuliers

Ce prototype reprend beaucoup de points d’intérêts du précédent. Nous ne redéveloppons pas ces

points ici, même s’ils sont détaillés dans la documentation du prototype (car chaque prototype peut

être vu indépendamment des autres).

30 Septembre 2007

il faut bien évidemment que vous ayez

De plus, il faut les « Office 2007

». Elles sont normalement installées par défaut à l’installation d’Office

2007, mais si pour des raisons obscures elles ne sont pas installées sur le vôtre, elles peuvent être

http://www.microsoft.com/downloads/details.aspx?familyid=59daebaa-bed4-4282-

ment est BookStoreSample est un complément pour Excel 2007, développé avec les Visual

Studio Tools for Office Second Edition (VSTO SE), ce qui fait que vous aurez besoin d’installer ceux-ci

avant de pouvoir compiler les sources. Les VSTO SE sont disponibles ici :

b979-

: le code source, et un installeur. L’installeur va

déployer le binaire sur votre machine et il n’est pas nécessaire d’avoir Visual Studio 2005 d’installé

Une fois le complément installé, il vous suffit de lancer Excel 2007, et vous verrez qu’un nouvel

onglet à l’extrême droite du ruban est apparu, ainsi qu’un nouveau menu dans le menu Office. Le

librairie virtuelle. Via un volet Office vous

ration par

BookStoreSample.WebService : contenant les sources du Web Service généré par

oprement dit, c’est dans

t nous verrons l’utilité plus tard

Ce prototype reprend beaucoup de points d’intérêts du précédent. Nous ne redéveloppons pas ces

type (car chaque prototype peut

Page 44: Livre Blanc Office 2007

a) Création du service Web

Comme exposé plus haut, nous allons créer le service web de gestion des données avec CodeFluent.

Pour cela il faut modéliser les entités manipulées et leur relation

utilisant une syntaxe XML décrivant directement

(se référer à la documentation de CodeFluent disponible en ligne pour en savoir plus)

<Author>

<Id/>

<Name/>

<Books typeName="BookCollection

</Author>

<Book>

<Id/>

<Name />

<Authors typeName="AuthorCollection

<Editor typeName="Editor

<BookStore typeName="

</Book>

<Editor>

<Id />

<Name />

<Books typeName="BookCollection

</Editor>

<BookStore>

<Id/>

<Name/>

<Books typeName="BookCollection

</BookStore>

Ces entités vont devenir, après production, nos tables et

nécessaires à cette étape sont regroupés dans le projet BookStoreSample.Design. Le fichier principal

est le fichier nommé BookStoreSample.xml

sous-fichiers BookStoreSample.Instances.xml

<cf:import path="{0}.Producers.xml

<cf:import path="{0}.Instances.xml

Note : « {0} » précise CodeFluent d’utiliser le namespace par défaut.

BookStoreSample.Producers.xml contient une description des producteurs désirés par l’utilisateur.

<cf:producer typeName="

CodeFluent.Producers.SqlServer

<cf:producer typeName

CodeFluent.Producers.CodeDom

<cf:producer

typeName="CodeFluent.Producers.CodeDom.UI.Web.WebServiceProducer,

CodeFluent.Producers.CodeDom

Dans notre cas nous n’avons que trois producteurs

producteur de notre code C# et enfin le producteur de notre Web Service.

30 Septembre

Comme exposé plus haut, nous allons créer le service web de gestion des données avec CodeFluent.

modéliser les entités manipulées et leur relation. Cela se fait très simplement en

décrivant directement les entités métiers que notre application va utiliser

(se référer à la documentation de CodeFluent disponible en ligne pour en savoir plus) :

BookCollection" relationPropertyName="Authors

AuthorCollection" relationPropertyName="

Editor" />

"BookStore"/>

BookCollection"/>

BookCollection"/>

rès production, nos tables et nos objets. L’ensemble des éléments

nécessaires à cette étape sont regroupés dans le projet BookStoreSample.Design. Le fichier principal

BookStoreSample.xml qui contient la description des entités et importe deux

reSample.Instances.xml, et BookStoreSample.Producers.xml.

{0}.Producers.xml" />

{0}.Instances.xml" />

» précise CodeFluent d’utiliser le namespace par défaut.

contient une description des producteurs désirés par l’utilisateur.

"CodeFluent.Producers.SqlServer.SqlServerProducer,

CodeFluent.Producers.SqlServer" />

typeName="CodeFluent.Producers.CodeDom.CodeDomProducer,

CodeFluent.Producers.CodeDom"/>

CodeFluent.Producers.CodeDom.UI.Web.WebServiceProducer,

CodeFluent.Producers.CodeDom" />

Dans notre cas nous n’avons que trois producteurs : le producteur de notre base SQL Server, le

notre code C# et enfin le producteur de notre Web Service.

30 Septembre 2007

Comme exposé plus haut, nous allons créer le service web de gestion des données avec CodeFluent.

. Cela se fait très simplement en

notre application va utiliser

Authors"/>

"Books"/>

nos objets. L’ensemble des éléments

nécessaires à cette étape sont regroupés dans le projet BookStoreSample.Design. Le fichier principal

qui contient la description des entités et importe deux

contient une description des producteurs désirés par l’utilisateur.

CodeFluent.Producers.SqlServer.SqlServerProducer,

CodeFluent.Producers.CodeDom.CodeDomProducer,

CodeFluent.Producers.CodeDom.UI.Web.WebServiceProducer,

: le producteur de notre base SQL Server, le

Page 45: Livre Blanc Office 2007

Le fichier BookStoreSample.Instances.xml

objets de manière à avoir des données et une application utilisable directement après sa généra

Une fois l’application modélisée puis nos producteurs spécifiés et configurés, il suffit de lancer

CodeFluent avec le modèle en paramètre et il va nous produire l’ensemble de l’application. Les

composants utilisés dans la solution BookStoreSample ont

aucune modification n’a été nécessaire pour pouvoir consommer

notre complément Excel 2007.

Le service web est déployé sur notre serveur à l’adresse suivante

des liens utiles en fin de livre blanc)

• http://office.softfluent.com/BookStoreSample.WebService/fr

b) La consommation du service Web depuis

La consommation du service Web dans le complément est chose très aisée puisque ce n’est ni plus ni

moins que du .Net, avec la différence néanmoins qu’il est possible insérer les données sortantes où

Une fois les données récupérées, il nous manque donc la dernière brique qui est donc leur affichage.

Pour cela rien de nouveau, l’on utilise toujours l’automation pour manipuler les feuilles de calculs

d’Excel 2007.

30 Septembre

BookStoreSample.Instances.xml est optionnel, il sert à instancier par défaut nos tables ou

objets de manière à avoir des données et une application utilisable directement après sa généra

Une fois l’application modélisée puis nos producteurs spécifiés et configurés, il suffit de lancer

CodeFluent avec le modèle en paramètre et il va nous produire l’ensemble de l’application. Les

composants utilisés dans la solution BookStoreSample ont été générés à 100% par CodeFluent et

n’a été nécessaire pour pouvoir consommer les services web produits depuis

Le service web est déployé sur notre serveur à l’adresse suivante (voir mot de passe dans le t

des liens utiles en fin de livre blanc) :

http://office.softfluent.com/BookStoreSample.WebService/fr-FR/default.asmx

La consommation du service Web depuis Excel

La consommation du service Web dans le complément est chose très aisée puisque ce n’est ni plus ni

moins que du .Net, avec la différence néanmoins qu’il est possible insérer les données sortantes où

nous le désirons dans l’environnement Office.

Dans l’exemple BookStoreSample nous permettons depuis

un volet Office, de lister les livres d’un auteur, les livres

d’une maison d’édition, l’auteur à partir d’un livre et enfin

tous les livres disponibles dans une librairie. Le

complément interroge un service Web, et affiche les

données dans la première colonne de la feuille de calcule

courante.

Pour consommer le service Web dans le complément, il n’y

a rien d’extraordinaire à faire, la procédure à effectuer est

absolument identique à celle que l’on appliquer

une application .Net. La méthode la plus simple étant

d’ajouter une référence Web à son projet, ce qui va faire

que Visual Studio 2005 va automatiquement générer les

classes proxy correspondantes. Puis il vous suffira d’utiliser

ces classes comme n’importe qu’elle autre classe de votre

application.

C’est cette méthode que nous avons utilisé dans ce

prototype, je vous invite donc à consulter les sources pour

avoir un exemple concret de consommation d’un service

Web, et/ou bien sur la MSDN pour plus d’information sur

les services Web en général.

Une fois les données récupérées, il nous manque donc la dernière brique qui est donc leur affichage.

Pour cela rien de nouveau, l’on utilise toujours l’automation pour manipuler les feuilles de calculs

30 Septembre 2007

el, il sert à instancier par défaut nos tables ou

objets de manière à avoir des données et une application utilisable directement après sa génération.

Une fois l’application modélisée puis nos producteurs spécifiés et configurés, il suffit de lancer

CodeFluent avec le modèle en paramètre et il va nous produire l’ensemble de l’application. Les

été générés à 100% par CodeFluent et

les services web produits depuis

(voir mot de passe dans le tableau

FR/default.asmx

La consommation du service Web dans le complément est chose très aisée puisque ce n’est ni plus ni

moins que du .Net, avec la différence néanmoins qu’il est possible insérer les données sortantes où

nous le désirons dans l’environnement Office.

s l’exemple BookStoreSample nous permettons depuis

un volet Office, de lister les livres d’un auteur, les livres

d’une maison d’édition, l’auteur à partir d’un livre et enfin

tous les livres disponibles dans une librairie. Le

e Web, et affiche les

données dans la première colonne de la feuille de calcule

Pour consommer le service Web dans le complément, il n’y

a rien d’extraordinaire à faire, la procédure à effectuer est

absolument identique à celle que l’on appliquerait dans

une application .Net. La méthode la plus simple étant

d’ajouter une référence Web à son projet, ce qui va faire

que Visual Studio 2005 va automatiquement générer les

classes proxy correspondantes. Puis il vous suffira d’utiliser

n’importe qu’elle autre classe de votre

C’est cette méthode que nous avons utilisé dans ce

prototype, je vous invite donc à consulter les sources pour

avoir un exemple concret de consommation d’un service

d’information sur

Une fois les données récupérées, il nous manque donc la dernière brique qui est donc leur affichage.

Pour cela rien de nouveau, l’on utilise toujours l’automation pour manipuler les feuilles de calculs

Page 46: Livre Blanc Office 2007

Voici un bout de code issu du prototype qui illustre la récupération des données depuis un service

Web et leur affichage dans la première colonne de la feuille de calcul courante

Ce code renseigne les cellules de la feuille Excel avec le résultat suivant

Book[] bookResults = _bookStoreSampleWebService.BookCollectionLoa

MSExcel.Workbook workbook = (MSExcel.

MSExcel.Worksheet sheet = (MSExcel.

sheet.Cells.Clear();

int rowIndex = 1;

foreach (Book book in bookResults)

{

sheet.Cells[rowIndex++, 1] = book.Name;}

30 Septembre

Voici un bout de code issu du prototype qui illustre la récupération des données depuis un service

Web et leur affichage dans la première colonne de la feuille de calcul courante :

Ce code renseigne les cellules de la feuille Excel avec le résultat suivant :

[] bookResults = _bookStoreSampleWebService.BookCollectionLoadByBookStore(bookStore);

workbook = (MSExcel.Workbook)Globals.ThisAddIn.Application.ActiveWorkbook;

sheet = (MSExcel.Worksheet)workbook.ActiveSheet;

sheet.Cells[rowIndex++, 1] = book.Name;

30 Septembre 2007

Voici un bout de code issu du prototype qui illustre la récupération des données depuis un service

dByBookStore(bookStore);

.ThisAddIn.Application.ActiveWorkbook;

Page 47: Livre Blanc Office 2007

c) Conclusion

Nous avons vu dans ce prototype comment personnalis

client frontal d’une source de données

SharePoint, que notre propre source comme c’est ici notre cas avec notre Web Service attaquant une

base de donnée SQL Server 2005, ou tout autre service Web dévelo

technologie.

Nous avons également vu succinctement au passage comment industrialiser le processus de

production de code avec CodeFluent de manière à pouvoir concentrer les efforts sur la valeur

ajoutée de l’application : interface u

n’illustrons pas la mise en œuvre de règles au

CodeFluent).

Ce prototype illustre ainsi parfaitement l’argument de réduction des coûts mis en a

introduction de ce livre blanc. Les trois applications phares d’Office 2007 peuvent désormais être

utilisées comme des interfaces clientes universelles, ce qui présente de nombreux avantages tel que

la suppression du temps de familiarisation avec u

ou encore un faible coût de développement de clients riches en fonctionnalités pour les éditeurs

logiciels.

30 Septembre

Nous avons vu dans ce prototype comment personnaliser Excel 2007 de façon à l’utiliser comme

source de données. La source de données peut aussi bien être un serveur

SharePoint, que notre propre source comme c’est ici notre cas avec notre Web Service attaquant une

base de donnée SQL Server 2005, ou tout autre service Web développé avec une quelconque

Nous avons également vu succinctement au passage comment industrialiser le processus de

production de code avec CodeFluent de manière à pouvoir concentrer les efforts sur la valeur

: interface utilisateur et règles métiers (même si dans ce prototype, nous

n’illustrons pas la mise en œuvre de règles au-delà des règles de structure portées par le modèle

Ce prototype illustre ainsi parfaitement l’argument de réduction des coûts mis en a

introduction de ce livre blanc. Les trois applications phares d’Office 2007 peuvent désormais être

utilisées comme des interfaces clientes universelles, ce qui présente de nombreux avantages tel que

la suppression du temps de familiarisation avec une nouvelle interface graphique pour l’utilisateur,

ou encore un faible coût de développement de clients riches en fonctionnalités pour les éditeurs

30 Septembre 2007

Excel 2007 de façon à l’utiliser comme un

. La source de données peut aussi bien être un serveur

SharePoint, que notre propre source comme c’est ici notre cas avec notre Web Service attaquant une

ppé avec une quelconque

Nous avons également vu succinctement au passage comment industrialiser le processus de

production de code avec CodeFluent de manière à pouvoir concentrer les efforts sur la valeur

tilisateur et règles métiers (même si dans ce prototype, nous

delà des règles de structure portées par le modèle

Ce prototype illustre ainsi parfaitement l’argument de réduction des coûts mis en avant en

introduction de ce livre blanc. Les trois applications phares d’Office 2007 peuvent désormais être

utilisées comme des interfaces clientes universelles, ce qui présente de nombreux avantages tel que

ne nouvelle interface graphique pour l’utilisateur,

ou encore un faible coût de développement de clients riches en fonctionnalités pour les éditeurs

Page 48: Livre Blanc Office 2007

C. La séparation données/présentation dans un document Word 2007

L’Open XML est la désignation d’usage d’un standard ouvert de l’ECMA, originellement introduit par

Microsoft, définissant un format de données pour les documents d’applications bureautiques tels

que ceux d’Office Word 2007, d’Office

intégralement structuré en XML et le tout est compressé sous forme d’une archive ZIP.

L’arrivée de ce nouveau format est accompagnée, entre autres de deux no

« Data Store » et les « Contrôles de Contenus

Du fait que les nouveaux formats de fichier Office (

est maintenant possible d’embarquer dans l’archive des documents XML définis par l’utilisateur, et

dans la quantité voulu par celui-ci.

nos données dans nos propres XML, et surtout, ceux

parasites telles que des informations de présentation.

De même, au niveau de la couche de présenta

contenus pour Office Word, nous permet justement de spécifier des zones dans notre document

Word, sur lesquelles on pourra lier des données.

Il serait maintenant légitime de se demander

saisies à des nœuds précis de mon fichier XML, lui

possible avec cette séparation nette

et c’est ce qu’illustre ce prototype.

1. Pré-requis

Avant de regarder le code du projet DataStoreSample, nous allons d’abord faire un tour d’horizon

des éléments utilisé par le prototype.

a) Le modèle

Le fichier « Modèle.docx » contenu dans le répertoire «

cinq contrôles de contenus. Ce fichier contient lui

<root xmlns="www.softfluent.com<name />

<city />

<date />

<client />

<summary /> </root>

Chacun des contrôles de contenus est relié à un nœud de ce XML, si bien que si l’on insère une

donnée dans le contrôle de contenu lié au

vice versa : si l’on rempli l’élément

contenu.

30 Septembre

présentation dans un document Word 2007

usage d’un standard ouvert de l’ECMA, originellement introduit par

Microsoft, définissant un format de données pour les documents d’applications bureautiques tels

d’Office Excel 2007 et d’Office PowerPoint 2007. Ce format est

ntégralement structuré en XML et le tout est compressé sous forme d’une archive ZIP.

L’arrivée de ce nouveau format est accompagnée, entre autres de deux nouvelles fonctionnalités

Contrôles de Contenus » (de l’anglais « Content Controls »).

Du fait que les nouveaux formats de fichier Office (docx, xlsx, pptx) sont en réalité des archives ZIP, il

est maintenant possible d’embarquer dans l’archive des documents XML définis par l’utilisateur, et

Ce concept est nommé « Data Store » et permet donc de stocker

nos données dans nos propres XML, et surtout, ceux-ci sont bien séparés de toutes informations

parasites telles que des informations de présentation.

De même, au niveau de la couche de présentation, la nouvelle fonctionnalité des contrôles de

, nous permet justement de spécifier des zones dans notre document

pourra lier des données.

gitime de se demander : Et si on alliait les deux ? Et si l’on liait des zones de

saisies à des nœuds précis de mon fichier XML, lui-même contenu dans mon docx ? C’est maintenant

ble avec cette séparation nette des couches de présentation et des données au sein d’un

Avant de regarder le code du projet DataStoreSample, nous allons d’abord faire un tour d’horizon

des éléments utilisé par le prototype.

» contenu dans le répertoire « Modèle » est un document Word contenant

cinq contrôles de contenus. Ce fichier contient lui-même un data store de ce type :

www.softfluent.com">

Chacun des contrôles de contenus est relié à un nœud de ce XML, si bien que si l’on insère une

donnée dans le contrôle de contenu lié au nom, celui-ci va remplir l’élément « name

: si l’on rempli l’élément « name » du XML, celui-ci va apparaître dans le contrôle de

30 Septembre 2007

présentation dans un document Word 2007

usage d’un standard ouvert de l’ECMA, originellement introduit par

Microsoft, définissant un format de données pour les documents d’applications bureautiques tels

PowerPoint 2007. Ce format est

ntégralement structuré en XML et le tout est compressé sous forme d’une archive ZIP.

uvelles fonctionnalités : le

) sont en réalité des archives ZIP, il

est maintenant possible d’embarquer dans l’archive des documents XML définis par l’utilisateur, et

» et permet donc de stocker

ci sont bien séparés de toutes informations

tion, la nouvelle fonctionnalité des contrôles de

, nous permet justement de spécifier des zones dans notre document

i l’on liait des zones de

? C’est maintenant

données au sein d’un docx

Avant de regarder le code du projet DataStoreSample, nous allons d’abord faire un tour d’horizon

» est un document Word contenant

Chacun des contrôles de contenus est relié à un nœud de ce XML, si bien que si l’on insère une

name » du XML, et

ci va apparaître dans le contrôle de

Page 49: Livre Blanc Office 2007

b) Les données

Dans le répertoire « Données », on peut remarquer une série de fichiers XML, chacun d’entre eux

étant construit de la même manière que celui contenu dans le modèle, à la différen

sont remplis. Voici le fichier « Julien Martin.xml

<root xmlns="www.softfluent.com<name>Julien Martin</

<city>Montpellier</city

<date>2006-12-15T00:00:00<client>Cola-Coca</client

<summary>Formation .Net </root>

c) Le scénario

Prenons le cas d‘une entreprise de services ayant

une base de données avec des informations telles que le nom du client, la date et le sujet

d’intervention, via un client web. Cette société aimerait maintenant pouvoir, à partir des données

contenues dans cette base, générer automatiquement un rapport d’intervention par mission au

format Office Word 2007. Grâce à la séparation de la présentation et d

il est maintenant possible d’extraire les informations de la base les données, former les fichiers XML

correspondant, et injecter ceux-ci dans un modèle de rapport d’intervention de la société.

Ce scénario est viable quelle que soit la source de données

WebServices, base de donnée SQL Server ou ORACLE, etc.)

XML nous permet de nous abstraire de

étape préalable qui n’est pas illustré

formatage de ces données dans un fichier XML au schéma défini préalablement.

d) Utilisation du prototype

DataStoreSample.exe est l’application du scéna

partir de fichiers XML correctement formatés, les

sans OLE Automation ni le Framework

data store.

Pour cela, double-cliquez sur l’exécutable, et celui

répertoire « Donnée », charger le modèle, et générer un

d’après le nom du fichier XML et déposé

2. Point d’intérêt particulier

a) Créer le modèle

(1) Ajouter les contrôles de contenu

Une fois la mise en page créée, il faut ajouter les contrôles de contenu. Les contrôles de contenu sont

dans l’onglet « Développeur » qui n’est pas affiché par défaut. Po

menu Office > Options Word > Standard et cochez l’option «

30 Septembre

on peut remarquer une série de fichiers XML, chacun d’entre eux

étant construit de la même manière que celui contenu dans le modèle, à la différen

Julien Martin.xml » en exemple :

www.softfluent.com">

</name>

city>

15T00:00:00</date>

client>

Formation .Net d'une durée d'une semaine.</summary

ne entreprise de services ayant n employés qui à chaque fin de mission remplissent

une base de données avec des informations telles que le nom du client, la date et le sujet

rvention, via un client web. Cette société aimerait maintenant pouvoir, à partir des données

contenues dans cette base, générer automatiquement un rapport d’intervention par mission au

Grâce à la séparation de la présentation et des données dans l’Open XML,

possible d’extraire les informations de la base les données, former les fichiers XML

ci dans un modèle de rapport d’intervention de la société.

que soit la source de données utilisée en « back-office

WebServices, base de donnée SQL Server ou ORACLE, etc.) puisque le fait de passer par un

XML nous permet de nous abstraire de l’environnement source. Ce scénario requiert cependa

étape préalable qui n’est pas illustrée ici : l’extraction des données d’une source de données et le

formatage de ces données dans un fichier XML au schéma défini préalablement.

DataStoreSample.exe est l’application du scénario exposé précédemment : il permet de générer à

partir de fichiers XML correctement formatés, les n documents Word 2007 correspondant, le tout

Framework 3.0, et grâce aux notions de contrôles de contenu ainsi que de

cliquez sur l’exécutable, et celui-ci va automatiquement scanner le contenu du

», charger le modèle, et générer un docx par fichier XML. Le docx

le nom du fichier XML et déposé dans le répertoire « Sortie ».

oint d’intérêt particulier

Ajouter les contrôles de contenu

Une fois la mise en page créée, il faut ajouter les contrôles de contenu. Les contrôles de contenu sont

» qui n’est pas affiché par défaut. Pour activer celui-ci

menu Office > Options Word > Standard et cochez l’option « Affichez l’onglet Développeur

30 Septembre 2007

on peut remarquer une série de fichiers XML, chacun d’entre eux

étant construit de la même manière que celui contenu dans le modèle, à la différence que ceux-ci

summary>

s qui à chaque fin de mission remplissent

une base de données avec des informations telles que le nom du client, la date et le sujet

rvention, via un client web. Cette société aimerait maintenant pouvoir, à partir des données

contenues dans cette base, générer automatiquement un rapport d’intervention par mission au

es données dans l’Open XML,

possible d’extraire les informations de la base les données, former les fichiers XML

ci dans un modèle de rapport d’intervention de la société.

» (cube OLAP,

puisque le fait de passer par un fichier

. Ce scénario requiert cependant une

: l’extraction des données d’une source de données et le

: il permet de générer à

documents Word 2007 correspondant, le tout

, et grâce aux notions de contrôles de contenu ainsi que de

ci va automatiquement scanner le contenu du

docx sera nommé

Une fois la mise en page créée, il faut ajouter les contrôles de contenu. Les contrôles de contenu sont

ci, allez dans le

Affichez l’onglet Développeur ».

Page 50: Livre Blanc Office 2007

Une fois celui-ci activé, l’onglet apparaît dans votre ruban Office, et dans cet onglet la zone des

contrôles de contenu. Il suffit de positionner son curseur à la position voulue pour le contrôle de

contenu, puis cliquez sur le contrôle de contenu désiré.

Une fois le contrôle de contenu ajouté, il faut maintenant créer le

contenu à ce data store.

(2) Créer un data store

La première étape est de renommer son fichier «

contenu dans un répertoire. A la racine du répertoire créer un répertoire nommé «

C’est dans ce répertoire que sont stockés les

document XML contenant les données,

l’identifiant et définissant la relation du d

Nous allons reprendre le document XML

placé dans le répertoire « /customXm

il serait tout à fait possible de le nommer autrement, simplement si l’on observe la méthode dont

Office Word 2007 crée, nomme ou renomme des parties dans l’XML

c’est le nom par défaut utilisé. Pour

Office Word 2007.

Il faut maintenant créer le fichier « itemProps1.xml

correspondant à notre fichier JulienMartin.xml

<?xml version="1.0" encoding="UTF

<ds:datastoreItem ds:itemID

xmlns:ds="http://schemas.openxmlformats.org/officeDocument/2006/customXml">

<ds:schemaRefs>

<ds:schemaRef ds:uri

</ds:schemaRefs>

</ds:datastoreItem>

Vous remarquerez que le nœud datastoreItem

identifier notre data store dans la couche de présentation.

Une fois le data store créé, il nous faut maintenant le relier au document. Pour cela il faut éditer le

document « document.xml.rels » pour y ajouter une relation entre document.xml et le

que celle-ci :

<Relationship

Type="http://schemas.openxmlformats.org/office

Document/2006/relationships/customXml

Target="../customXml/item1.xml

Cette relation doit être définie au niveau du document.xml,

mais aussi au niveau du data store

dans un répertoire nommé « _rels ».

30 Septembre

ci activé, l’onglet apparaît dans votre ruban Office, et dans cet onglet la zone des

fit de positionner son curseur à la position voulue pour le contrôle de

contenu, puis cliquez sur le contrôle de contenu désiré.

Une fois le contrôle de contenu ajouté, il faut maintenant créer le data store puis lier le contrôle de

data store dans le document

La première étape est de renommer son fichier « .docx » en « .zip » pour ensuite extraire son

contenu dans un répertoire. A la racine du répertoire créer un répertoire nommé «

C’est dans ce répertoire que sont stockés les XML data store. Un data store est composé d’un

document XML contenant les données, puis d’un document XML contenant ses propriétés

l’identifiant et définissant la relation du data store dans le document Word.

rendre le document XML définissant l’activité de Julien Martin. Celui

/customXml » et avec comme nom « item1.xml ». D’après la spécification

le nommer autrement, simplement si l’on observe la méthode dont

2007 crée, nomme ou renomme des parties dans l’XML data store, on s’aperçoit que

. Pour rester simple, nous respectons donc le schéma de nommage de

itemProps1.xml » qui va servir à identifier le data store

ienMartin.xml :

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>

ds:datastoreItem ds:itemID="{E7C066FE-6FFB-46CA-9512-B7A19B9F1496}http://schemas.openxmlformats.org/officeDocument/2006/customX

ds:uri="www.softfluent.com" />

datastoreItem contient un GUID. C’est ce GUID qui servir

dans la couche de présentation.

créé, il nous faut maintenant le relier au document. Pour cela il faut éditer le

pour y ajouter une relation entre document.xml et le

Id="rId1"

http://schemas.openxmlformats.org/office

Document/2006/relationships/customXml"

../customXml/item1.xml" />

Cette relation doit être définie au niveau du document.xml,

et à la racine du document. Les relations sont toujours contenues

».

30 Septembre 2007

ci activé, l’onglet apparaît dans votre ruban Office, et dans cet onglet la zone des

fit de positionner son curseur à la position voulue pour le contrôle de

puis lier le contrôle de

pour ensuite extraire son

contenu dans un répertoire. A la racine du répertoire créer un répertoire nommé « customXml ».

est composé d’un

d’un document XML contenant ses propriétés

définissant l’activité de Julien Martin. Celui-ci devra être

». D’après la spécification

le nommer autrement, simplement si l’on observe la méthode dont

on s’aperçoit que

le schéma de nommage de

tore. Voici celui

B7A19B9F1496}"

http://schemas.openxmlformats.org/officeDocument/2006/customX

contient un GUID. C’est ce GUID qui servira à

créé, il nous faut maintenant le relier au document. Pour cela il faut éditer le

pour y ajouter une relation entre document.xml et le data store, tel

toujours contenues

Page 51: Livre Blanc Office 2007

b) Lier le contrôle de contenu au d

Il faut maintenant lier les deux fonctionnalités entre elles. Malheureusement il n’existe pas pour

l’instant d’interface graphique dans

dans le XML du document.

Au niveau de notre contrôle de contenu (correspond à l’élément «

document.xml), on va rajouter un élément nommé «

permet de relier à un contrôle de contenu des données. Dans cet élément

donc dans quel data store puiser l’information

valeur aller chercher dans notre d

DataBinding pour récupérer le nom dans notre rapport exemple

<w:dataBinding

w:xpath="/ns0:root[1]/ns0:name[1]

9512-B7A19B9F1496}" />

Il faut maintenant sauvegarder le tout, reconstruire l’archive

alors d’un contrôle de contenu lié

étape, je vous invite à consulter la spécification disponible s

international.org/publications/standards/Ecma

partie.

Maintenant que vous connaissez la théorie, il existe un outil nommé le «

(http://openxmldeveloper.org/archive/2006/11/21/ContentControlToolkit.asp

x) qui va vous rendre la vie bien plus facile, en permettant d’écrire depuis une interface graphique

votre data store et surtout de pouvoir le lier

c) Créer le document Word final

Une fois le document modèle créé, il suffit donc de remplacer le

contenant les informations voulues. La méthode effectuant l’opération de remplacement est la

méthode ReplaceXmlDataInZip

librairie SharpZipLib pour décompresser

tout.

30 Septembre

Lier le contrôle de contenu au data store

Il faut maintenant lier les deux fonctionnalités entre elles. Malheureusement il n’existe pas pour

l’instant d’interface graphique dans Office Word pour le faire, nous allons donc le faire à l

Au niveau de notre contrôle de contenu (correspond à l’élément « placeHolder

on va rajouter un élément nommé « dataBinding » qui, comme son nom l’indique,

relier à un contrôle de contenu des données. Dans cet élément dataBinding

puiser l’information grâce au GUID défini auparavant et ensuite quelle

data store grâce à une expression XPath. Voici un exemple de

pour récupérer le nom dans notre rapport exemple :

w:prefixMappings="xmlns:ns0='www.softfluent.com'

/ns0:root[1]/ns0:name[1]" w:storeItemID="{E7C066FE-

maintenant sauvegarder le tout, reconstruire l’archive, la renommer en docx, et vous

à un élément de votre data store. Pour en savoir plus sur cette

étape, je vous invite à consulter la spécification disponible sur le site de l’ECMA (http://www.ecma

international.org/publications/standards/Ecma-376.htm), et qui explique bien plus en détail cette

connaissez la théorie, il existe un outil nommé le « Content Control Toolkit

http://openxmldeveloper.org/archive/2006/11/21/ContentControlToolkit.asp

qui va vous rendre la vie bien plus facile, en permettant d’écrire depuis une interface graphique

et surtout de pouvoir le lier par « glisser-déposer » au contrôle de contenu désiré.

Créer le document Word final

Une fois le document modèle créé, il suffit donc de remplacer le data store initial par le fichier XML

ns voulues. La méthode effectuant l’opération de remplacement est la

ReplaceXmlDataInZip. Un fichier docx étant une archive ZIP, le prototype utilise la

rie SharpZipLib pour décompresser l’archive, puis remplacer le fichier XML, et re

30 Septembre 2007

Il faut maintenant lier les deux fonctionnalités entre elles. Malheureusement il n’existe pas pour

aire, nous allons donc le faire à la main

older » dans le

» qui, comme son nom l’indique,

dataBinding, précisons

et ensuite quelle

Voici un exemple de

xmlns:ns0='www.softfluent.com'"

-6FFB-46CA-

, et vous disposez

Pour en savoir plus sur cette

http://www.ecma-

), et qui explique bien plus en détail cette

Content Control Toolkit »

http://openxmldeveloper.org/archive/2006/11/21/ContentControlToolkit.asp

qui va vous rendre la vie bien plus facile, en permettant d’écrire depuis une interface graphique

au contrôle de contenu désiré.

initial par le fichier XML

ns voulues. La méthode effectuant l’opération de remplacement est la

étant une archive ZIP, le prototype utilise la

le fichier XML, et reconstruire le

Page 52: Livre Blanc Office 2007

Voici le code correspondant :

Une fois l’archive reformée avec le

l’opération est terminée.

private static void ReplaceXmlDataInZip(

{

string fileName = GetFileNameWithoutExtension(zipFileFullName,

FastZip fastZip = new

fastZip.ExtractZip(zipFileFullName, fileName,

File.Copy(xmlFullName, xmlfileToReplace,

fastZip.CreateZip(fileName +

}

30 Septembre

Une fois l’archive reformée avec le nouveau data store il suffit de changer l’extension en

ReplaceXmlDataInZip(string xmlfileToReplace,

string xmlFullName,

string zipFileFullName)

fileName = GetFileNameWithoutExtension(zipFileFullName,

new FastZip();

fastZip.ExtractZip(zipFileFullName, fileName, null);

.Copy(xmlFullName, xmlfileToReplace, true);

fastZip.CreateZip(fileName + ".docx", fileName, true, null

30 Septembre 2007

il suffit de changer l’extension en « .docx » et

fileName = GetFileNameWithoutExtension(zipFileFullName, ".zip");

null);

Page 53: Livre Blanc Office 2007

D. La création dynamique de présentations Powerpoint

Comme présenté en introduction du prototype précédent, l

d’un standard ouvert de l’ECMA, originellement introduit par Microsoft, définissant un format de

données pour les documents d’applications bureautiques tels que

PowerPoint 2007. Ce format est intégralement structuré en XML et le tout est compressé sous forme

d’une archive ZIP, ce qui rend possible la création programmatique d’un docume

avoir recours à OLE Automation.

Le prototype PresentationMLCreator a pour tâche d’illustrer

automatique de présentations Open XML (dit presentationML).

Il est cependant important de noter que lors de l’écriture de ce livre bla

« Microsoft SDK for Open XML formats (June CTP)

bien plus aisément et qui propose ce

développées dans ce prototype.

1. Pré-requis

PresentationMLCreator s’appuie sur le Framework 2.0 ainsi que sur l’API de gestion de package Open

XML (System.IO.Packaging) contenue dans la librairie WindowsBase.dll du Framework 3.0. Il fau

donc avoir le Framework 3.0 installé

En utilisant l’API contenue dans System.IO.Packaging du Framework 3.0, PresentationMLCreator crée

des présentations en respectant la spécification Open XML disponible sur le site de l’ECMA

(http://www.ecma-international.org/publications/standards/Ecma

l’architecture d’une présentation PowerPoint 2007 comme ceci

30 Septembre

La création dynamique de présentations Powerpoint

Comme présenté en introduction du prototype précédent, l’Open XML est la désignation d’usage

d’un standard ouvert de l’ECMA, originellement introduit par Microsoft, définissant un format de

données pour les documents d’applications bureautiques tels que Word 2007, Excel 2007 et

tégralement structuré en XML et le tout est compressé sous forme

d’une archive ZIP, ce qui rend possible la création programmatique d’un document Office 2007 sans

e prototype PresentationMLCreator a pour tâche d’illustrer ce principe dans un cadre de

automatique de présentations Open XML (dit presentationML).

Il est cependant important de noter que lors de l’écriture de ce livre blanc, Microsoft a publié le

osoft SDK for Open XML formats (June CTP) » qui permet de manipuler des fichiers Open XML

bien plus aisément et qui propose certaines classes (tel que Slide ou Presentation

sur le Framework 2.0 ainsi que sur l’API de gestion de package Open

XML (System.IO.Packaging) contenue dans la librairie WindowsBase.dll du Framework 3.0. Il fau

donc avoir le Framework 3.0 installé ou au minimum le Framework 2.0 et la dll concernée.

utilisant l’API contenue dans System.IO.Packaging du Framework 3.0, PresentationMLCreator crée

des présentations en respectant la spécification Open XML disponible sur le site de l’ECMA

international.org/publications/standards/Ecma-376.htm). Celle

l’architecture d’une présentation PowerPoint 2007 comme ceci :

30 Septembre 2007

’Open XML est la désignation d’usage

d’un standard ouvert de l’ECMA, originellement introduit par Microsoft, définissant un format de

2007, Excel 2007 et

tégralement structuré en XML et le tout est compressé sous forme

nt Office 2007 sans

e principe dans un cadre de création

nc, Microsoft a publié le

de manipuler des fichiers Open XML

Presentation) qui ont été

sur le Framework 2.0 ainsi que sur l’API de gestion de package Open

XML (System.IO.Packaging) contenue dans la librairie WindowsBase.dll du Framework 3.0. Il faut

ou au minimum le Framework 2.0 et la dll concernée.

utilisant l’API contenue dans System.IO.Packaging du Framework 3.0, PresentationMLCreator crée

des présentations en respectant la spécification Open XML disponible sur le site de l’ECMA

). Celle-ci définit

Page 54: Livre Blanc Office 2007

Comme on peut le voir sur le schéma ci

package Open XML, cependant le fonctionnement de toutes les parties d’un package Open XML a un

fonctionnement identique, seules ses relations peuvent varier

que la création de diapositives puisque la méthode utilisée peut être utilisé

autre partie du package.

2. Utilisation du prototype

PresentationMLCreator permet à partir d’un modèle XML défini par l’utilisateur et passé en

paramètre à l’exécutable ; de générer en sorti

XML. Le prototype n’a pas besoin d’avoir Office 2007 d’installé sur la machine pour générer celle

et par conséquent il pourrait parfaitement tourner sur un serveur.

Le fichier model.xml fourni avec le p

présentation, et à partir de laquelle notre présentation va être générée

<presentation name="SamplePresentation

<slide title="Toto" content

<slide title="

picture="SoftFluentLogo.jpg

<slide title="Tutu" content

</presentation>

D’après ce modèle, PresentationMLCreator va générer une présentation nommée

SamplePresentation.pptx, contenant trois

30 Septembre

on peut le voir sur le schéma ci-dessus, les diapositives (slides) ne sont qu’une partie du

package Open XML, cependant le fonctionnement de toutes les parties d’un package Open XML a un

es ses relations peuvent varier. C’est pourquoi le prototype n’illustre

uisque la méthode utilisée peut être utilisée pour n’importe qu’elle

PresentationMLCreator permet à partir d’un modèle XML défini par l’utilisateur et passé en

; de générer en sortie une présentation PowerPoint 2007 au format Open

XML. Le prototype n’a pas besoin d’avoir Office 2007 d’installé sur la machine pour générer celle

et par conséquent il pourrait parfaitement tourner sur un serveur.

avec le prototype est un exemple de modèle définissant une

présentation, et à partir de laquelle notre présentation va être générée :

SamplePresentation">

content="Slide 1: toto" />

"Titi" content="Slide 2: titi

SoftFluentLogo.jpg" />

content="Slide 3: tutu" />

D’après ce modèle, PresentationMLCreator va générer une présentation nommée

, contenant trois diapositives ayant pour titres Toto, Titi,

30 Septembre 2007

ne sont qu’une partie du

package Open XML, cependant le fonctionnement de toutes les parties d’un package Open XML a un

. C’est pourquoi le prototype n’illustre

pour n’importe qu’elle

PresentationMLCreator permet à partir d’un modèle XML défini par l’utilisateur et passé en

e une présentation PowerPoint 2007 au format Open

XML. Le prototype n’a pas besoin d’avoir Office 2007 d’installé sur la machine pour générer celle-ci,

rototype est un exemple de modèle définissant une

Slide 2: titi"

D’après ce modèle, PresentationMLCreator va générer une présentation nommée

, Tutu et divers

Page 55: Livre Blanc Office 2007

contenus. En ajoutant l’attribut picture

PresentationMLCreator va ajouter au milieu

3. Points d’intérêts particuliers

a) L’utilisation de modèles

Pour créer la présentation en sortie PresentationMLCreator se base sur un modèle de présentation

vide, contenant deux diapositives vide.

La raison de ce choix est que bien qu’une présentation

Office 2007 soit du XML, cela reste quand même lourd de

générer l’intégralité du XML. Le prototype est donc basé

sur une logique de modèles, utilisant une présentation

modèle pour le squelette de la présentation, un modèle

XML pour générer des diapositives, ainsi qu’un modèle XML

pour générer les nœuds XML définissan

De plus l’intérêt d’utiliser des modèles est que sans

modifier le code source du projet, l’on peut facilement

changer l’aspect des documents générés.

Ces trois modèles sont inclus dans l’exécutable et sont visible dans les sources sous le rép

« Resources ». Une fois les modèles créés, PresentationMLCreator se contente de les utiliser en y

incorporant les données définies par l’utilisateur dans le fichier XML passé en paramètre.

Une fois les données de la présentation à générer chargées,

de notre document. La production s’organise en quatre étapes

1. Ouverture du package

2. Ouverture / Création de la diapositive

3. Ajout des données dans la diapositive

4. Sauvegarde et fermeture du package

b) Manipulation du package et des ses éléments

Un package Open XML correspond au document Open XML (ici un

qui est lui-même composé de « parts

classes pour gérer le package (System.IO.Packaging.Package) ainsi que ses

parts (System.IO.Packaging.PackagePart). De manière à ce que leur

manipulation soit plus aisée, nous utilisons nos propres classes qui

encapsulent celles-ci comme par exemple pour la gestion du package.

La classe s’occupant de gérer le package s’appelle

nous facilite l’utilisation de la classe du Framework, pour l’ajout, la

récupération ou la sauvegarde des relations et des parts.

30 Septembre

picture avec comme valeur un chemin valide vers une image,

PresentationMLCreator va ajouter au milieu de la diapositive l’image correspondante.

particuliers

Pour créer la présentation en sortie PresentationMLCreator se base sur un modèle de présentation

vide.

La raison de ce choix est que bien qu’une présentation

Office 2007 soit du XML, cela reste quand même lourd de

r l’intégralité du XML. Le prototype est donc basé

sur une logique de modèles, utilisant une présentation

modèle pour le squelette de la présentation, un modèle

, ainsi qu’un modèle XML

pour générer les nœuds XML définissant des images.

De plus l’intérêt d’utiliser des modèles est que sans

modifier le code source du projet, l’on peut facilement

changer l’aspect des documents générés.

Ces trois modèles sont inclus dans l’exécutable et sont visible dans les sources sous le rép

». Une fois les modèles créés, PresentationMLCreator se contente de les utiliser en y

incorporant les données définies par l’utilisateur dans le fichier XML passé en paramètre.

Une fois les données de la présentation à générer chargées, l’on peut passer à l’étape de production

de notre document. La production s’organise en quatre étapes :

de la diapositive

Ajout des données dans la diapositive

Sauvegarde et fermeture du package

package et des ses éléments

Un package Open XML correspond au document Open XML (ici un pptx),

parts ». Le Framework 3.0 fournit des

classes pour gérer le package (System.IO.Packaging.Package) ainsi que ses

ckaging.PackagePart). De manière à ce que leur

manipulation soit plus aisée, nous utilisons nos propres classes qui

ci comme par exemple pour la gestion du package.

La classe s’occupant de gérer le package s’appelle PackageManager et

s facilite l’utilisation de la classe du Framework, pour l’ajout, la

récupération ou la sauvegarde des relations et des parts.

30 Septembre 2007

avec comme valeur un chemin valide vers une image,

Pour créer la présentation en sortie PresentationMLCreator se base sur un modèle de présentation

Ces trois modèles sont inclus dans l’exécutable et sont visible dans les sources sous le répertoire

». Une fois les modèles créés, PresentationMLCreator se contente de les utiliser en y

incorporant les données définies par l’utilisateur dans le fichier XML passé en paramètre.

l’on peut passer à l’étape de production

Page 56: Livre Blanc Office 2007

Cette classe va être utilisée par toutes les autres classes manipulant notre package tel que

Presentation.

Dans un fichier Open XML, n’importe quel élément le composant est un «

ils ont tous le même comportement au sein du package. Du c

notre présentation, un graphique, une note ou autre, cela revient au mêm

ce sont des PackagePart.

Vous retrouverez donc deux classes,

manière plus concrète :

Par conséquent, grâce à ces classes, pour ajouter une nouvelle

XML à partir de notre modèle de présentation, il suffit de faire

using (PackageManager packageManager =

new PackageManager

{

Slide slide = Slide.Create(packageManager,

Properties.Resources

Presentation presentation =

presentation.AddSlide(slide);

presentation.Save();

}

30 Septembre

Cette classe va être utilisée par toutes les autres classes manipulant notre package tel que

hier Open XML, n’importe quel élément le composant est un « part » et par conséquent,

ils ont tous le même comportement au sein du package. Du coup, que mon part soit une diapositive

notre présentation, un graphique, une note ou autre, cela revient au même au niveau du package

Vous retrouverez donc deux classes, Slide et Presentation, qui permettent de gérer ces

classes, pour ajouter une nouvelle diapositive à une présentation Open

XML à partir de notre modèle de présentation, il suffit de faire :

packageManager =

PackageManager(Properties.Resources.PresentationTemplate))

.Create(packageManager, "slide1.xml",

Resources.SlideTemplate, "slideLayout1");

presentation = Presentation.Open(packageManager);

presentation.AddSlide(slide);

30 Septembre 2007

Cette classe va être utilisée par toutes les autres classes manipulant notre package tel que Slide ou

» et par conséquent,

soit une diapositive,

e au niveau du package :

, qui permettent de gérer ces parts de

ésentation Open

.PresentationTemplate))

.Open(packageManager);

Page 57: Livre Blanc Office 2007

c) Ajout de texte dans une diapositive

Le format Open XML étant documenté l’on sait précisément comment et où sont stockés les

informations. De ce fait, l’on sait précisément comment manipuler du texte, des images, des

graphiques, animations, timings, etc.

Le texte en presentationML est conten

SlideTemplate.xml. Il nous suffit donc dd récupérer ce PlaceHolder et d’insérer le texte dans celui

tout en respectant la norme Open XML, tel que

public void WritePlaceholderString(

{

string xPathQuery = string

"/p:txBody/a:p/a:endParaRPr", name);

XPathNavigator

PackageData.CreateNavigator().SelectSingleNode(xPathQuery,

using (XmlWriter writer = subTitleNav.InsertBefore())

{

// <a:r>

// <a:t>Text String</a:t>

// </a:r>

writer.WriteStartElement(

Constants.DrawingMLNamespace);

writer.WriteElementString(

Constants.DrawingMLNamespace, text);

writer.WriteEndElement();

} }

30 Septembre

diapositive

Le format Open XML étant documenté l’on sait précisément comment et où sont stockés les

informations. De ce fait, l’on sait précisément comment manipuler du texte, des images, des

graphiques, animations, timings, etc.

Le texte en presentationML est contenu dans un PlaceHolder, qui est déjà créé dans notre modèle

. Il nous suffit donc dd récupérer ce PlaceHolder et d’insérer le texte dans celui

tout en respectant la norme Open XML, tel que :

WritePlaceholderString(string name, string text)

string.Format("//p:sp[p:nvSpPr/p:cNvPr/@name='{0}']"

, name);

subTitleNav =

PackageData.CreateNavigator().SelectSingleNode(xPathQuery, Constants.NamespaceManager);

writer = subTitleNav.InsertBefore())

// <a:t>Text String</a:t>

writer.WriteStartElement(Constants.DrawingMLPrefix,

.DrawingMLNamespace);

writer.WriteElementString(Constants.DrawingMLPrefix,

.DrawingMLNamespace, text);

writer.WriteEndElement();

30 Septembre 2007

Le format Open XML étant documenté l’on sait précisément comment et où sont stockés les

informations. De ce fait, l’on sait précisément comment manipuler du texte, des images, des

u dans un PlaceHolder, qui est déjà créé dans notre modèle

. Il nous suffit donc dd récupérer ce PlaceHolder et d’insérer le texte dans celui-ci,

"//p:sp[p:nvSpPr/p:cNvPr/@name='{0}']" +

subTitleNav =

.NamespaceManager);

"r",

"t",

Page 58: Livre Blanc Office 2007

d) Ajout d’images dans une

L’ajout d’une image dans une diapositive

images contenues dans le document sont elles aussi contenues dans le package. Les images sont elles

aussi des parts contenues dans le répertoire /ppt/media du package. Il faut donc

1. Créer le part

2. Créer la relation qui lie la diapositive

3. Ajouter le presentationML c

Tout ceci est fait dans la méthode AddPicture dans la classe Slide

Le PictureTemplate utilisé dans la méthode contient l’ensemble du XML pour créer un élément image

dans une diapositive selon la norme Open XML.

public void AddPicture(string pictureName,

{

using (MemoryStream ms = new

{

bitmap.Save(ms, Slide.GetImageFormat(contentType)

byte[] data = ms.GetBuffer();

// create the media part

Uri mediaUri = new

UriKind.Relative);

this.Package.CreateNewPart(mediaUri,

// create the relationship

string rId = this

Constants.ImageRelationshipType);

// add the picture element to

XPathNavigator

PackageData.CreateNavigator().SelectSingleNode(

Constants.NamespaceManager);

slideNav.AppendChild(string

pictureName, rId));

} }

30 Septembre

diapositive

diapositive suit le même principe que l’ajout de texte, excepté que les

images contenues dans le document sont elles aussi contenues dans le package. Les images sont elles

contenues dans le répertoire /ppt/media du package. Il faut donc :

diapositive à l’image

Ajouter le presentationML correspondant à une image dans la diapositive

Tout ceci est fait dans la méthode AddPicture dans la classe Slide :

utilisé dans la méthode contient l’ensemble du XML pour créer un élément image

selon la norme Open XML.

pictureName, Bitmap bitmap, string contentType

new MemoryStream())

.GetImageFormat(contentType));

[] data = ms.GetBuffer();

// create the media part

new Uri(string.Format("/ppt/media/{0}"

.Package.CreateNewPart(mediaUri, contentType, data, 0, (int

// create the relationship

this.Package.CreateInternalRelationship(this

.ImageRelationshipType);

// add the picture element to the slide, with the correct relationship Id

slideNav =

PackageData.CreateNavigator().SelectSingleNode("/p:sld/p:cSld/p:spTree"

.NamespaceManager);

string.Format(Properties.Resources.PictureTemplate,

30 Septembre 2007

suit le même principe que l’ajout de texte, excepté que les

images contenues dans le document sont elles aussi contenues dans le package. Les images sont elles

utilisé dans la méthode contient l’ensemble du XML pour créer un élément image

contentType)

"/ppt/media/{0}", pictureName),

int)ms.Length);

this.Uri, mediaUri,

the slide, with the correct relationship Id

slideNav =

"/p:sld/p:cSld/p:spTree",

.PictureTemplate,

Page 59: Livre Blanc Office 2007

E. L’utilisation du protocole Webdav

Bien que pas directement lié à Office 2007 car disponible depuis des versions antérieures d’Office, le

support de WebDav nous apparaît un élément intéressant à mentionner car plusieurs éditeurs nous

ont fait des demandes sur la manière de sauvegarder les

combinaison de Webdav et de la manipulation de données métiers par service web que les scénarios

deviennent intéressants, par exemple pour de la gestion documentaire associée à une application

métier. Il est fréquent de vouloir associer des pièces jointes à un dossier, certaines de ces pièces

pouvant d’ailleurs héberger des données structurées à l’aide des contrôles de contenu dans un

scénario Office 2007.

Les éditeurs de logiciels cherchent en effet souvent à permet

des documents sur un référentiel distant tel qu’un serveur «

fonctionne à partir du moment où le serveur supporte le protocole WebDav. IIS nécessite une

configuration pour cela mais supporte cette fonctionnalité.

Comme cela est finalement assez peu connu, nous avons mis à disposition ce serveur pour

démonstration. Pour l’utiliser il suffit d’entrer l’url

comme répertoire d’enregistrement de votre document, au moment de la sauvegarde de celui

dans Office. Il vous sera demandé un nom d’utilisateur et mot de passe, identique à ceux donnés

pour les autres prototypes (voir liste des li

Dans un scénario réel intégré à une application, il

d’enregistrement pour une expérience utilisateur simplifiée, en

encapsuler ces éléments.

Voici les liens des sites qui nous ont permis de mettre ce serveur en place :

• http://www.windowsnetworking.com/articles_tutorials/WebDAV

• http://www.laboratoire-microsoft.org/articles/mise

30 Septembre

L’utilisation du protocole Webdav

Bien que pas directement lié à Office 2007 car disponible depuis des versions antérieures d’Office, le

support de WebDav nous apparaît un élément intéressant à mentionner car plusieurs éditeurs nous

sur la manière de sauvegarder les documents en HTTP. C’est surtout dans la

combinaison de Webdav et de la manipulation de données métiers par service web que les scénarios

deviennent intéressants, par exemple pour de la gestion documentaire associée à une application

t de vouloir associer des pièces jointes à un dossier, certaines de ces pièces

pouvant d’ailleurs héberger des données structurées à l’aide des contrôles de contenu dans un

Les éditeurs de logiciels cherchent en effet souvent à permettre à un client de sauvegarder en HTTP

des documents sur un référentiel distant tel qu’un serveur « Internet Information Server

fonctionne à partir du moment où le serveur supporte le protocole WebDav. IIS nécessite une

supporte cette fonctionnalité.

est finalement assez peu connu, nous avons mis à disposition ce serveur pour

démonstration. Pour l’utiliser il suffit d’entrer l’url http://office.softfluent.com/WebDav sample

comme répertoire d’enregistrement de votre document, au moment de la sauvegarde de celui

dans Office. Il vous sera demandé un nom d’utilisateur et mot de passe, identique à ceux donnés

(voir liste des liens en fin de document).

Dans un scénario réel intégré à une application, il est possible d’automatiser le choix du répertoire

d’enregistrement pour une expérience utilisateur simplifiée, en réalisant un développement

es liens des sites qui nous ont permis de mettre ce serveur en place :

http://www.windowsnetworking.com/articles_tutorials/WebDAV-IIS.html

microsoft.org/articles/mise-en-place-webdav-iis6

30 Septembre 2007

Bien que pas directement lié à Office 2007 car disponible depuis des versions antérieures d’Office, le

support de WebDav nous apparaît un élément intéressant à mentionner car plusieurs éditeurs nous

. C’est surtout dans la

combinaison de Webdav et de la manipulation de données métiers par service web que les scénarios

deviennent intéressants, par exemple pour de la gestion documentaire associée à une application

t de vouloir associer des pièces jointes à un dossier, certaines de ces pièces

pouvant d’ailleurs héberger des données structurées à l’aide des contrôles de contenu dans un

tre à un client de sauvegarder en HTTP

Internet Information Server ». Cela

fonctionne à partir du moment où le serveur supporte le protocole WebDav. IIS nécessite une

est finalement assez peu connu, nous avons mis à disposition ce serveur pour

ent.com/WebDav sample

comme répertoire d’enregistrement de votre document, au moment de la sauvegarde de celui-ci

dans Office. Il vous sera demandé un nom d’utilisateur et mot de passe, identique à ceux donnés

possible d’automatiser le choix du répertoire

développement pour

Page 60: Livre Blanc Office 2007

VII. Conclusion

Au travers de ce livre blanc, nous espérons vous avoir fait partager notre enthousiasme sur les

nouvelles possibilités d’Office 2007 et la formidable opportunité

qui souhaite développer des applications innovantes pour ses utilisateurs.

Les scénarios en introduction ne sont que quelques pistes de réflexion et nous faisons confiance aux

développeurs et aux sociétés spécialisées sur un secteur pour imaginer les scénarios réels qu’ils

pourront développer et faire adopter sur leur marché, en s’appuyant au besoin sur

Les exemples des éditeurs déjà présents dans ce livre blanc démontrent la div

et solutions apportées aux enjeux des clients.

A notre sens, l’investissement notable

constitue une preuve tangible de l’évolution d’

utilisateurs vers une plate-forme de construction d’applications «

Bien sûr, nous ne sommes qu’au début de cette évolution

temps avant d’être une réalité quotidienne,

d’avance sur le marché qui en tireront les bénéfices.

Et dans la mesure où cette transformation est en cours, nous aimons conseiller à nos clients, et en

particulier les éditeurs de logiciels, de participer activement à cette t

d’attendre de la subir.

N’hésitez pas à nous contacter pour échanger sur c

30 Septembre

Au travers de ce livre blanc, nous espérons vous avoir fait partager notre enthousiasme sur les

d’Office 2007 et la formidable opportunité de marché que cela constitue pour

qui souhaite développer des applications innovantes pour ses utilisateurs.

Les scénarios en introduction ne sont que quelques pistes de réflexion et nous faisons confiance aux

veloppeurs et aux sociétés spécialisées sur un secteur pour imaginer les scénarios réels qu’ils

t faire adopter sur leur marché, en s’appuyant au besoin sur

Les exemples des éditeurs déjà présents dans ce livre blanc démontrent la diversité des opportunités

aux enjeux des clients.

notable et précoce d’un nombre significatif d’éditeurs de logiciels

constitue une preuve tangible de l’évolution d’Office 2007 d’une simple suite de produ

forme de construction d’applications « métier ».

Bien sûr, nous ne sommes qu’au début de cette évolution en profondeur qui prendra un certain

temps avant d’être une réalité quotidienne, mais ce sont les sociétés qui sauront prendre un coup

d’avance sur le marché qui en tireront les bénéfices.

Et dans la mesure où cette transformation est en cours, nous aimons conseiller à nos clients, et en

particulier les éditeurs de logiciels, de participer activement à cette transformation plu

N’hésitez pas à nous contacter pour échanger sur ce sujet, même pour une simple discussion.

30 Septembre 2007

Au travers de ce livre blanc, nous espérons vous avoir fait partager notre enthousiasme sur les

marché que cela constitue pour

Les scénarios en introduction ne sont que quelques pistes de réflexion et nous faisons confiance aux

veloppeurs et aux sociétés spécialisées sur un secteur pour imaginer les scénarios réels qu’ils

ersité des opportunités

éditeurs de logiciels

Office 2007 d’une simple suite de productivité pour les

en profondeur qui prendra un certain

qui sauront prendre un coup

Et dans la mesure où cette transformation est en cours, nous aimons conseiller à nos clients, et en

ransformation plutôt que

e sujet, même pour une simple discussion.

Page 61: Livre Blanc Office 2007

VIII. Quelques liens utiles

Nom du lien

Microsoft

Page France sur Office 2007

Inscription gratuite au programme

« Innovate On » de Microsoft

Livre blanc Office Business Applications

Pack de compatibilité Office 2007

Centre de développement Office

L’utilisation d’Open XML

L’espace développement Open XML

Microsoft SDK for Open XML format

Les contrôles de contenu

Liste des éléments et attributs du XML d’un

ruban

Documentation sur le déploiement d’un

complément Office 2007

Complément Excel 2007 pour la gestion des

listes synchronisées

Solutions développées par les éditeurs

Calypteo

Esker

Produit Flydoc

ILOG

Produit Rules for .NET

Symtrax

Medasys

Témoignages vidéos

Calypteo / SoftFluent

30 Septembre

Lien

http://www.microsoft.com/france/office/2007/version2007.mspx

http://microsoft.mrmpslc.com/Office2007/Default.aspx?LangType=4105

http://members.microsoft.com/partner/france/editeurs/innovation.aspx

http://www.microsoft.com/downloads/details.aspx?familyid=736b9708

a332-4aa7-a4d9-5971c486b9e1&displaylang=en

http://www.microsoft.com/downloads/details.aspx?FamilyID=941B3470

3AE9-4AEE-8F43-C6BB74CD1466&displaylang=en

http://msdn2.microsoft.com/fr-fr/office/default.aspx

http://msdn2.microsoft.com/fr-fr/office/bb409619.aspx

http://www.microsoft.com/france/msdn/office/openxml/default.mspx

http://www.microsoft.com/downloads/details.aspx?FamilyID=AD0B72FB

4A1D-4C52-BDB5-7DD7E816D046&mg_id=10124

http://msdn2.microsoft.com/en-us/library/bb243344.aspx

Liste des éléments et attributs du XML d’un http://msdn2.microsoft.com/en-us/library/aa338199.aspx

oiement d’un http://msdn2.microsoft.com/en-us/library/bb332051.aspx

http://msdn2.microsoft.com/en-us/library/bb332052.aspx

Complément Excel 2007 pour la gestion des http://www.microsoft.com/downloads/details.aspx?FamilyID=25836E52

1892-4E17-AC08-5DF13CFC5295&displaylang=en

Solutions développées par les éditeurs

http://www.calypteo.com

http://www.esker.com

http://www.flydoc.com

http://www.ilog.com

http://www.ilog.com/products/rulesnet

http://www.symtrax.fr

http://www.medasys.com

http://www.microsoft.com/France/Temoignages/Fiche-

avec-webcast.aspx?EID=bb003a96-cf46-46a6-8749-a8397d34ecec

30 Septembre 2007

http://www.microsoft.com/france/office/2007/version2007.mspx

http://microsoft.mrmpslc.com/Office2007/Default.aspx?LangType=4105

om/partner/france/editeurs/innovation.aspx

?familyid=736b9708-

http://www.microsoft.com/downloads/details.aspx?FamilyID=941B3470-

fr/office/bb409619.aspx

http://www.microsoft.com/france/msdn/office/openxml/default.mspx

http://www.microsoft.com/downloads/details.aspx?FamilyID=AD0B72FB-

us/library/bb243344.aspx

us/library/aa338199.aspx

us/library/bb332051.aspx

us/library/bb332052.aspx

http://www.microsoft.com/downloads/details.aspx?FamilyID=25836E52-

-Temoignage-

a8397d34ecec

Page 62: Livre Blanc Office 2007

CEGID

Dassault Systèmes

ILOG

Kayentis

KDS

Lexis-Nexis

Schneider Electric

Blogs et contenu communautaire

RL Consulting : société d’expertise

SharePoint utilisée par plusieurs éditeurs

de logiciels

Blog de Franck Halmaert (Marketing Office)

Blog de Pierre Lagarde (Contenu dév.

Office)

Communauté Open XML

Exemple d’une combinaison de contrôles

de contenu avec un data store

Liste des identifiants des fonctionnalités et

images existantes dans Office 2007

Mise en œuvre de Webdav avec IIS

L’utilisation des listes synchronisées sous

Excel en version 2007 (article)

Liens Softfluent

SoftFluent

CodeFluent.com: Service gratuit de

fabrication de composants métiers

Email de contact

Prototypes Office 2007 développés par SoftFluent

Prototypes Office 2007 avec code et

documentation

30 Septembre

http://www.microsoft.com/France/Temoignages/Fiche-

avec-webcast.aspx?EID=5d51e7f1-95a2-474a-ac07-c1067e8d7

http://news.com.com/1606-2_3-6182663.html

http://www.microsoft.com/France/Temoignages/Fiche-

avec-webcast.aspx?EID=3d523c43-a082-4d6b-a667-308649cb05b5

http://www.microsoft.com/France/Temoignages/Fiche-

avec-webcast.aspx?EID=0cd3833b-092d-405c-9f1c-9b8af05a

http://www.microsoft.com/France/Temoignages/Fiche-

avec-webcast.aspx?EID=6c708a71-ac13-4f48-a6a7-b5f28b4a59d5

http://www.microsoft.com/France/Temoignages/Fiche-

avec-webcast.aspx?EID=2150e505-6089-4778-a94a-e2cfd730a904

http://www.microsoft.com/France/Temoignages/Fiche-

avec-webcast.aspx?EID=5fb50ed6-2aa2-4693-b0c4-76847d8b94c4

utilisée par plusieurs éditeurs

http://www.rlconsulting.eu

Halmaert (Marketing Office) http://blogs.microsoft.fr/franckha

http://blogs.developpeur.org/fox

http://openxmldeveloper.org

Exemple d’une combinaison de contrôles http://openxmldeveloper.org/articles/Mapping_Content_Controls_to_Cu

stom_XML_Parts_using_Notepad.aspx

fonctionnalités et http://www.sunflowerhead.com/msimages/Office2007IconsGallery.zip

http://www.laboratoire-microsoft.org/articles/mise-en-

L’utilisation des listes synchronisées sous http://www.softfluent.com/article_excellist_fr.aspx

http://www.softfluent.com

http://www.codefluent.com

[email protected]

Prototypes Office 2007 développés par SoftFluent

http://office.softfluent.com

Compte office.microsoft, Mot de passe @@Office2007

30 Septembre 2007

-Temoignage-

c1067e8d7f5b

-Temoignage-

308649cb05b5

-Temoignage-

9b8af05a66b3

-Temoignage-

8b4a59d5

-Temoignage-

e2cfd730a904

-Temoignage-

76847d8b94c4

http://openxmldeveloper.org/articles/Mapping_Content_Controls_to_Cu

http://www.sunflowerhead.com/msimages/Office2007IconsGallery.zip

-place-webdav-iis6