1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

87
1 prirete che su Office non si può solo contare ma anche svilup

Transcript of 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

Page 1: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

1

Scoprirete che su Office non si può solo contare ma anche sviluppare

Page 2: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

2

Information Bridge Framework

Luca RegnicoliMCSD.NET MCSE+I MCDBA MCT

[email protected]

Page 3: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

3

Agenda

• Information Bridge Overview • Architettura• Web services• Solution Metadata• User Interface Region• Search• Smart tags e attached schema documents• Hyperlinks • Deployment

Page 4: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

4

Agenda

• Prima parte: alla scoperta di IBF!– Introduzione a Information Bridge Framework– Demo user-side – Architettura e componenti fondamentali– Livello intro

• Seconda parte: alla conquista di IBF!– Sviluppiamo una soluzione completa– Demo dev-side – Livello advanced

Page 5: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

5

Cosa diamo per scontato

• Conoscenza del .NET Framework – Interfaccia, Ereditarietà– Code Access Security

• Conoscenza architetture n-tier– Data Layer, Business Layer, UI Layer

• Conoscenza di XML– Document, Schema XSD, Trasformazioni XSL

• Conoscenza di Web Services– WSDL, Web Method, .ASMX

• Conoscenza di Windows Forms– Custom User Control

Page 6: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

6

Overview

Page 7: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

7

• E-mail e documenti si riferiscono a business entity– Clienti, Ordini, Prodotti

• Non è semplice ottenere dettagli o drill-down

• Accesso manuale a diverse applicazioni per ottenere info

Trova Ordini

Outlook

Maria,Controlla il codice di assistenza SR27090 della Contoso.

Gran capo

Copia & Incolla

Trova il cliente

Il problema

Page 8: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

8

Information Bridge Framework: Mission

Enable information workers to discover, Enable information workers to discover, engage, and act on enterprise business engage, and act on enterprise business

objects from within Officeobjects from within Office

ERP

CRM

Page 9: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

9

La soluzione

• Information Bridge Framework permette di lavorare con entità di business eterogenee da applicazioni Office– Word 2003– Excel 2003– Outlook 2003 (se Word è e-mail editor)– InfoPath 2003 (da v.1.5) – Internet Explorer 6.0 (da v.1.5)

Page 10: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

10

Audience

• IBF è per– Utenti che utilizzano e-mail e documenti all’interno di

processi aziendali– Utenti che necessitano di dati forniti da fonti diverse– Utenti che possono/devono utilizzare diverse

applicazioni aziendali– Sviluppatori professionisti

• IBF NON è per– Utenti che eseguono processi aziendali strutturati

all’interno di singole applicazioni • Utenti SAP che inseriscono ordini quotidianamente

– Sviluppatori per hobby o advanced-user

Page 11: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

11

I Pilastri: Metadati

• IBF è basato su metadati – e non sul codice

• Utilizza metadati XML per– Esporre business object (entità) – Mettere in relazione entità attraverso sistemi diversi– Definire le azioni che un utente può eseguire su

un’entità– Accedere e agire in modo contestuale su entità tramite

smart tag e attached schema document– Collegare proprietà o campi di BO a elementi di UI– Gestire la security e authorization

• Sfrutta il supporto per XML di Office 2003

Page 12: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

12

Architettura

Page 13: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

13

Punti chiave dell’architettura

• Separare i developer della soluzione Office dai developer di Web Services

• Ridurre il codice tramite definizioni dichiarative– Azioni, operazioni e trasformazioni

• Fornire un modo per gestire modifiche e l’evoluzione della soluzione

• Riutilizzare lo stesso codice su diverse applicazioni Office

Page 14: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

14

Demo

Page 15: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

15

Architettura

Page 16: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

16

Con Information Bridge

InfoPathAttached Schema

Documents

Smart Tags

Visu

al Stu

dio

.NE

T /

VS

TO

/ Sm

artTag

Info

rmatio

n B

ridg

eD

eclarative So

lutio

n T

oo

ls

Codice per UI complesse

Data Sources, Apps

Web services sviluppati seguendo le Guidelines di IBF

Managed, Connected Solution Schema

UI dichiarativa del task pane

Connessioni dichiarativeverso i servizi

Information Bridge Client Run-time

Page 17: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

17

Princìpi

• Web service sviluppati seguendo le linee guida di IBF– Espongono specifici metadati necessari al runtime di IBF

• Declarative solution schema– Il CAS (Context and Action Service) Metadata service consente

all’amministratore di unire vari metadati provenienti da diversi servizi e aggiungere altri informazioni quali

• Relazioni fra Web Service• Collegamenti a elementi di UI (menu, controlli di Windows

Forms, XSL)• Azioni che coinvolgono operazioni su vari Web Service• Autorizzazioni

• Client-side add-in per Office– L’engine CAS intercetta i metadati della soluzione – Interpreta il contesto Office e presenta

• Azioni disponibili• Risultato di azioni

Page 18: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

18

Architettura

Page 19: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

19

Office Application Context

&Action Service

Task Pane

Flusso

Data Feed

Utente seleziona“Show Details”

1

Naviga attraverso i servizi810 Chiama il servizio da eseguire

documento con markup

<ERP:OrderID=4711>

</ERP:Order>

Utente naviga(nel Task Pane)

6

6

Utente seleziona un’azione9

9

Presenta i dati nel Task Pane

5

5

Interpretae Visualizza

Interpreta i dati di instanza4

4

Information Bridge Framework

Line of BusinessService

Recupera l’instanza di info

Recupera le informazioni dal servizio addetto

3

3

Naviga all’interno del servizio7

Naviga

7

8

Esegue azioni

10Metadata

Interpreta il contextutilizzando i metadati

2

Interpreta Markup

ApplicazioneOffice

Task Pane

Interpreta il contextutilizzando i metadati

2

Page 20: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

20

Metadati

ReferenceReference

EntityEntity

ViewView

ActionAction

OperationOperation Web ServiceOperation

Web ServiceOperation

NamespaceNamespace

Act (Reference,Act Schema)

Act (Reference,Act Schema)

Put (Reference, Update Schema)Put (Reference, Update Schema)

Get (Reference)Get (Reference)

Page 21: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

21

Metadati

• Entity– Business object astratti

• Cliente, Ordine, Prodotto

• Views– Modi diversi di “guardare” un’entità– Ognuna ha uno schema fisso

• Actions– “Cose” che un utente può fare

• Visualizzare un ordine, Cancellare una richiesta

• Operations– Chiamata a Web Service o assembly

Page 22: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

22

Metadati

View 2 Relationship

ServiceOp 1

UI Op 1 ServiceOp 1

UI Op 1ServiceOp 1

UI Op 1

Web Services

.netAssembly

HTML

Windowsform

Actions

Ref 3

Ref 1

Ref 2

Action 1 Action 3Action 2

View 1

Entity

Namespace

Ref 4View 3

Entity Entity Entity

Namespace

Page 23: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

23

UI - Smart Tag

Smart tags vengonocreati:• Recognizer di smart tag• Inserendo i tag

manualmente dal task pane

• Documenti auto-generati• Copia & incolla

Information Bridge registra un actionhandler per smart tagstandard e generico

Page 24: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

24

UI – Attached Schema Document

Dati possono essere collegati a UI in diversi modi:

• Office task pane• Floating task pane• Dialog box / menù• Windows Forms• In-line all’interno del

documento

Gli eventi sono scatenati da Information Bridge

• Information Bridge cattura gli eventi mentre l’utente si muove attraverso i nodi XML

• Information Bridge riconosce il contenuto XML corrispondente al contenuto dei metadati

Page 25: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

25

End to End Model

Esporre applicazioni enterprise come Web services IBF-compliant

1

Data Source

CustomApplication

SAP

Creare Solution Schema• Relazioni cross-services• Collegamenti a elementi UI• Autorizzazioni• Azioni

2Deploy Office Professional 2003 con Information Bridge Client3

Inserire smart tags in documenti

4

Click su smart tags

5

Metadata

Web Service

Web Service

Web Service

Page 26: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

26

DevTools: Overview

UI Design

Metadata Designer

Web Services Development

MS Word Task Pane

Option1Option1

ChildChildChildChild

LabelLabel

.NET Developer

XSL or Windows

Forms

Authentication Manager

Context & Action Service

Metadata

Developer/ Business Analyst

MetadataDesigner

SAP

Custom

MSCRM.NET Web

Services Developer

Web Service

Web Service

Web Service

Page 27: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

27

Crea progetti e scope

Crea action = SUM (operation, transforms)

Associa operation a group

Crea relationships tra views

Metadata Service

Sviluppatore

Metadata

MD importa file xml provenienti da web services IBF-compliant

1

2

Pubblicazione verso Metadata Service

3

Operation custom verso controlli Windows Forms

DevTools: Metadata Designer

• Add-in per Visual Studio .NET• Importa metadati da Web services

sviluppati secondo le linee guida di IBF

• Progettare e creare tutti i metadati necessari per una soluzione

• Pubblica i metadati verso un Metadata Service

• Wizards per creare nuovi elementi

Page 28: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

28

Deployment

MetaData Service

AuthorizationManager

SQL 2000 ServerWeb Server

Client framework può essere distribuito tramite SMS, Group policy di AD o setup eseguito dall’ utente

Requisiti del client :

• .NET Framework 1.1 SP1

• Office System 2003 Professional

• Windows 2000 o XP Professional

Client

Requisiti del server:

• Microsoft Windows Server 2003

• IIS 6.0

• Authorization Manager

• SQL Server 2000 SP3a

• .NET Framework 1.1 + SP1

Distribution Server

Page 29: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

29

Information Bridge: In sintesi

• Integrazione fra il mondo Office e sistemi eterogenei di back-end

• Definizione dichiarativa dei componenti di una soluzione– Le relazioni fra oggetti sono definite nei metadati di una

soluzione e non nel codice– Lo sviluppatore non è sempre necessario (solo UI e WS)

• Performance– I metadati possono essere “cachati” sul client

• Semplicità di deployment– I client installano automaticamente le soluzioni nuove o

quelle modificate• Scambio asincrono (5 thread di default) di metadati

fra client e MDS

Page 30: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

30

Information Bridge: In sintesi

• Riutilizzo di componenti UI o Web Services– Riciclabili in diverse applicazioni Office– Sopravvivono al “cambio di stagione”

• Es: nuova tecnologia di accesso ai dati• Scambio di dati xml e non di classi binarie fra i layer

• Connessione diretta fra Office e Web Service– Nessuna perdita di prestazioni causata da “hop” extra

• Invocazione dinamica di Web Service– Installazione senza codice o proxy client-side

• Dati aggiornati– I dati sono sempre “attuali” – Action operano direttamente sui Web Services

Page 31: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

31

Caffè!!!

Page 32: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

32

Web Services

Page 33: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

33

Progettare i Web Services

• IBF “digerisce” qualsiasi Web Service WS-I Compliant

• Ma se seguiamo le linee guide ci semplifichiamo la vita

• Progettare i WS pensando ai metadati di IBF– Entity– View– Operation– Reference

Page 34: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

34

Entity

• La “cosa” a cui vogliamo accedere– Business object astratti

• Cliente, Ordine, Fattura

• Punti di partenza• Forniscono un contesto

– L’utente dovrà fare “qualcosa” con un’entità• Può non avere nessuna rappresentazione a

livello database

Page 35: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

35

View

• Rappresentazione fisica di un’entità– Un modo di “guardare” un’entità

• ClienteDettaglio• Clienti

• Ogni entità – Avrà una default View– può avere N Views

• Una View può essere una singola instanza o una lista

• Una View ha un singolo schema associato

Page 36: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

36

Operation

• Operation == Funzione in un linguaggio object-oriented

• 10 tipi diversi di operation– Trasformazione di contenuti da uno schema

all’altro– Visualizzazione di elementi di UI– Costruzione di menù– Chiamate a assembly .NET custom– Chiamate a metodo esposto da un Web Service

Page 37: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

37

Schema

• Uno schema XSD definisce una struttura dati

• Metadati di IBF utilizzano schema come dati di input o output

Page 38: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

38

Reference

• Una reference è un identificatore univoco per recuperare il contenuto di una view

• Definito con uno schema• WS utilizzano reference come identificatore

per operazioni di Get o Update

• Item References– Identificano una singola instanza

• List Refences– Identificano una lista di istanze

Page 39: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

39

Stop! Aiuto non mi ricordo niente!!

• Entity– Cliente

• View– ClienteDettaglio<ClienteDettaglio xmlns=“urn-SampleSolution-Data”> <Nome>Luca</Nome> <Cognome>Regnicoli</Cognome> <Email>[email protected]</Email></ClienteDettaglio>

Page 40: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

40

Stop! Aiuto non mi ricordo niente!!

• Reference– <ClienteId Nome=“Luca” xmlns=“..” />

• Operation– GetClienteDettaglio(ClientId) As Cliente– Nota importantisssssima:

• Le reference sono classi complesse• A IBF piacciono molto • Possiamo utilizzare string, Int32 ma ci

complichiamo la vita con IBF

Page 41: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

41

Linee guida

• Esporre metadati aggiungendo attributi .NET a classi e proprietà– Serializzazione XML

• Strutturare i metodi coinvolgendo reference– GetClienteDettaglio(ClienteId)

• Progettare i metodi pensando ai metadati di IBF e in particolare alle View

Page 42: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

42

Demo

Page 43: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

43

Solution Metadata… dai che sono quasi finiti

Page 44: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

44

Schema completo dei metadati

Metadata Scope

Metadata Scope

EntityEntity

ViewViewReferenceReference

OperationOperation

SchemaSchema

RelationshipRelationship

Web ServiceOperation

Web ServiceOperation

ActionActionGet()

OperationGet()

Operation

Put()Operation

Put()Operation

Act()Operation

Act()Operation

ViewLocatorViewLocator

PortsPortsTransformationsTransformations

GroupsGroups

Page 45: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

45

Metadata scope

• Categoria top-level – Contiene gli altri metadati (Entity, View, Schema)

• Partizionare metadati in raggruppamenti logici• I progetti possono essere organizzati in sezioni

corrispondenti a specifiche applicazioni line-of-business– CRM (Clienti)– HR (Dipendenti)– ERP (Ordini)– SR (Service Request)

Page 46: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

46

View Locator

• Ogni View specifica uno schema– View data schema

• Una soluzione IBF può includere diversi modi per ottenere lo stesso View schema– ClienteDettaglio -> GetClienteById(R1)– ClienteDettaglio -> GetClienteByEmail(R2)

• View locator permettono di trasformare uno reference schema in input nel View schema– Trasformazioni XSL– Operation (Chiamata a Web Service)

Page 47: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

47

Relationship

• Descrivono la relazione fra due View– Clienti e Ordini

• Forniscono funzionalità di navigazione fra due View

• Una relazione è una trasformazione che accetta il contenuto di una View e la converte in una reference verso un’altra View

Page 48: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

48

Port

• Descrivono la location e i dettagli di accesso di una fonte dati– URL verso un Web Services (file .asmx)– Modello di autenticazione del servizio– Path o strong-name di un assembly .NET

• Divise in tre categorie– SOAP– Assembly .NET– File

• Trasformazioni XSL

Page 49: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

49

Transformation

• Oggetti utilizzati da IBF per convertire uno schema in un’altro

• Divise in tre categorie– XSLT– XPath– Regular Expression

Page 50: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

50

Group

• Meccanismo di classificazione per applicare permission a operazioni sui metadati

• Utilizzati da Authorization Manager– Role-based security

Page 51: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

51

Demo

Page 52: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

52

User Interface Region

Page 53: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

53

• Region - Il building blocks fondamentale del task pane

• Una regione ospita solitamente un controllo Windows Forms

Regions

Page 54: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

54

• Per visualizzare una Region occorre definire una Action

• Coppia/e di Transformation e Operation

Action!

Page 55: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

55

Action Pipeline

Page 56: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

56

Utente fornisce un contesto di reference come input• Esempio: un cliente con clienteNome=Contoso

Recupero dei dati tramite una chiamata SOAP• Utilizzo del View Locator per chiamata SOAP GetCliente• Input ClienteNome, restituisce un oggetto Cliente con <Nome>, <Cognome>, ecc.• Trasforma i dati restituiti nello schema di input necessario all’Operation ShowRegion

Visualizza i dati risultanti in una regione• Accetta input per l’operazione• Imposta le informazioni in proprietà degli user user control (txtNome.Text, ecc.)

Un’azione classica: visualizzare una Region

Action

1SOAP

Operation

2

Operation:ShowRegion

3

2

1

3

Page 57: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

57

Operations

• Operation di tipo SOAP– Già visti nella demo sui WS

• “Custom” Operations– Agire sul documento o– Visualizzare elementi UI

• Esempi di Custom Operations• ShowRegion (custom Windows Forms control)• ShowHTML (XHTML statico)• ShowDialog (WinForms control in una dialog)

Page 58: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

58

“UI” Operations - ShowRegion

• ShowRegion visualizza un controllo di WinForm

• Classico controllo + implementazione IRegion

• L’assembly deve avere i diritti .NET di Full Trust

Page 59: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

59

• IRegion – Contiene una proprietà che viene impostata al cambiamento dei dati

• IMediator – Broker tra la regione e il framework

• IVisualStyles – Fornisce accesso ai temi di Office

• IApplicationService – Fornisce accesso all’oggetto “application”

• IDocumentService – Fornisce accesso all’oggetto “document”

Altre interface utili

Page 60: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

60

Titolo con menù

Controllo Reference List

Reference• Descrizione espansa• Menù

Paginazione

Page 61: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

61

Demo

Page 62: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

62

Search

Page 63: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

63

Search Entry Point

Main MenuTool Bar (optional)

Right Click

Search Tab

Page 64: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

64

Information Bridge fornisce 3 controlli

• Controllo “Pick a Search”– Elenco di ricerche disponibili– Sensibile al contesto attuale

• Search Criteria– Ognuna è una Search Action– Search criteria mappato a

View Locator – UI personalizzabile

• Result List Region– Region Reference List

Search UI

Page 65: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

65

Demo

Page 66: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

66

Smart Tag e Attached schema documents

Page 67: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

67

Smart Tags

Page 68: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

68

Recognizer e Action Handler

• Smart Tag– Un frammento di XML incorporato all’interno di

un documento Excel, Word o email di Outlook• Classe Recognizer (ISmartTagRecognizer2)

– Identifica le keyword o regular expression– Inserisce gli smart tag nel documento

• Sottolinea il termine con una linea tratteggiata

• Classe Action Handler (ISmartTagAction2)– Gestisce i menù di smart tag e i suoi comandi

Page 69: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

69

Smart Tag e Information Bridge

• Normalmente dovremmo creare una serie di assembly e registrarli sul client– Non è un semplice copia/incolla

• IBF installa un generico recognizer e un generico action handler

• Possiamo specificare quanti recognizer/action handler vogliamo all’interno dei metadati

• L’assembly dello smart tag viene chiamato da IBF al posto di Office

• IBF trasferisce tutte le chiamate Office dirette al generico recognizer/handler verso il recognizer/handler configurato nei metadati

Page 70: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

70

Attached Schema Document

Page 71: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

71

Come funziona?

• Utente entra nel nodo XML• Information Bridge gestisce l’evento XML• Il nodo viene “impacchettato” e spedito al

Information Bridge Engine come reference• Normale elaborazione di IBF

– ViewLocator / Views– Esecuzione delle operation sulla default action– Presentazione della UI (se definita)

• ShowRegion / ShowHTML / ShowDialog

Page 72: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

72

Demo

Page 73: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

73

Hyperlinks

Page 74: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

74

Hyperlinks

Page 75: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

75

Hyperlinks in Information Bridge

• URL Moniker con una specifica sintassi che puntano a una reference di metadati

• ibf:v1/Microsoft.Solutions.SampleSolution.SR/ServiceRequest/ServiceRequestDetails/Xsd.TicketNumber%20(urn-SampleSolution-Data)/ref?root=TicketNumber&xmlns=urn-SampleSolution-Data&Id=SR178787

• <a href=“ibf:v1/.....”>Clicca qui</a>

Page 76: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

76

Hyperlinks

• Supporto ai link disabilitato di default– Abilitare EnableProtocolHandler nel Information

Bridge Settings Manager (Adm Tools)• Funzionalità di insert/copy link disabilitata

di default– Abilitare Enable Insert and Copy for <combo>

• Hyperlinks o• Hyperlinks and Smart Tags

Page 77: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

77

Se hyperlinks sono abilitati...

Page 78: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

78

Demo

Page 79: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

79

Deployment

Page 80: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

80

Tutti i servizi risiedono su un’unica macchina

I servizi sono ospitati su uno o più server separati

SQL Server 2000

MDS Read / WriteWeb Service

AuthorizationManager

Configurazione del server MDS

MDS Read / WriteWeb Service

AuthorizationManager

SQL 2000 ServerWeb Server

Page 81: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

81

Configurazione del server MDS – Non supportata

Web services e database sono ospitati su macchine diverse

Tutti i servizi sono su server separati

Page 82: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

82

Deploy del server

• Eseguire Microsoft.InformationBridge.Service.MSI

• Impostare le porte per i servizi di read e write– default 8081 per Read e 8082 per Write

• La path del file roles.xml è memorizzata nel database– Se aggiungiamo altri server, l’installazione

determinerà e userà automaticamente tale location

Page 83: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

83

Configurare il server

• IIS Settings– Servizio di Read default sulla 8081 – Servizio di Write default sulla 8082 – Application pool creato durante l’installazione

• Consiglio di security– Non configurare la porta di Write su un server di

produzione– Migrazione del database tramite

• SQL Server (backup/restore, detach/attach, dts…)• Ambiente multi-server

– Creare una share per roles.xml– Aggiungere le permission alla share per ogni server di

front-end

Page 84: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

84

Deploy del client

• Eseguire Microsoft InformationBridge.Client.MSI– UI mode – Silent mode (package SMS)

• Abilitare gli smart tag• Abilitare Word come e-mail editor di

Outlook– HTML come default e-mail format

• Configurare adeguatamente il tempo di aggiornamento della cache dei metadati

• Ospitare gli assembly degli user control (Region) in una location centralizzata

Page 85: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

85

Configurare il client

<engine.config settings><InformationBridgeEngine> <MetadataService Url="http://iwt32:8081/Information

BridgeReadService.asmx" Assembly="" Class="" /> <Cache Enabled="true" Encryption="true" Location=""

PercentDiskSize="1" /> <CacheRefresh Enabled="true" Day="1" Hour="*" Min="*"

Sec="0" /> <Execution NumberOfThreads="5" OperationTimeout="120000"

/></InformationBridgeEngine>

Group Policy• Override del file di configurazione locale

Page 86: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

86

Security

• HTTPS consigliato per la comunicazione fra MDS e i client

• HTTPS consigliato per la comunicazione SOAP– WSE 2.0 Adapter nel Resource Kit di IBF 1.5

• Encryption della cache locale per utente• Utilizzare Auth Manager e Groups/Roles in Active

Directory per dare accesso ai metadati• Non utilizzare dati sensibili all’interno di smart tag

– Disabilitare Tools/Options/Save/Embed Smart Tags• Firmare gli assembly con strong-name

– Policy centralizzata basata su strong-name (no URL!)• Implementare funzionalità di single sign-on per non

costringere l’utente a digitare 2948 password

Page 87: 1 Scoprirete che su Office non si può solo contare ma anche sviluppare.

87

Scoprirete che su Office non si può solo contare ma anche sviluppare