Un dizionario dati consente agli utenti aziendali di utilizzare informazioni provenienti da origini dati back-end senza conoscere i dettagli tecnici relativi ai modelli di dati sottostanti. Un dizionario dati è composto da elementi del dizionario dati (DDE). Puoi utilizzare questi elementi dati per integrare i dati back-end alle lettere come input da utilizzare nella corrispondenza di un cliente.
Un dizionario dati è una rappresentazione indipendente di metadati che descrive le strutture di dati sottostanti e gli attributi associati. Un dizionario dati viene creato utilizzando un vocabolario aziendale. Può essere mappato su uno o più modelli di dati sottostanti.
Il dizionario dati è composto da elementi di tre tipi: Elementi semplici, compositi e di raccolta. I DDE semplici sono elementi primitivi quali stringhe, numeri, date e valori booleani che contengono informazioni quali il nome di una città. Un DDE composito contiene altri DDE, che possono essere di tipo primitivo, composito o raccolta. Ad esempio, un indirizzo, costituito da un indirizzo, una città, una provincia, un paese e un codice postale. Una raccolta è un elenco di DDE semplici o composte simili. Ad esempio, un cliente con più posizioni o diversi indirizzi di fatturazione e spedizione.
Gestione della corrispondenza utilizza i dati back-end, cliente o destinatari specifici memorizzati in base alla struttura del dizionario dati per creare una corrispondenza destinata a clienti diversi. Ad esempio, è possibile creare un documento con nomi descrittivi, ad esempio "Gentile {Nome}","Sig. {Cognome}".
In genere, gli utenti aziendali non richiedono la conoscenza delle rappresentazioni dei metadati come XSD (schema XML) e le classi Java. Tuttavia, in genere richiedono l'accesso a queste strutture di dati e attributi per creare soluzioni.
Installa il Pacchetto di compatibilità per visualizzare Dizionari dati l'opzione Forms pagina.
Puoi utilizzare l’editor del dizionario dati per creare un dizionario dati oppure caricare un file di schema XSD per creare un dizionario dati basato su di esso. Puoi quindi estendere il dizionario dati aggiungendo ulteriori informazioni richieste, compresi i campi. Indipendentemente da come è stato creato il dizionario dati, il proprietario del processo aziendale non ha bisogno di conoscere i sistemi back-end. Il proprietario del processo aziendale deve conoscere solo gli oggetti del dominio e le relative definizioni per il loro processo.
Per più lettere che richiedono elementi simili, è possibile creare un dizionario dati comune. Un dizionario dati di grandi dimensioni con un numero elevato di elementi, tuttavia, può causare problemi di prestazioni durante l’utilizzo del dizionario dati e il caricamento degli elementi, ad esempio in lettere e frammenti di documento. In caso di problemi di prestazioni, provare a creare dizionari di dati separati per lettere diverse.
Seleziona Forms > Dizionari dati.
Tocca Crea dizionario dati.
Nella schermata Proprietà , aggiungi quanto segue:
Titolo: (Facoltativo) Immetti il titolo del dizionario dati. Il titolo non deve essere univoco e può contenere caratteri speciali e caratteri non inglesi. Alle lettere e ad altri frammenti di documento viene fatto riferimento il relativo titolo (se disponibile), ad esempio nelle miniature e nelle proprietà delle risorse. I dizionari di dati sono indicati con i loro nomi e non con i loro titoli.
Nome: Nome univoco del dizionario dati. Nel campo Nome è possibile immettere solo caratteri, numeri e trattini della lingua inglese. Il campo Nome viene compilato automaticamente in base al campo Titolo e i caratteri speciali, gli spazi, i numeri e i caratteri non inglesi immessi nel campo Titolo vengono sostituiti con trattini. Anche se il valore nel campo Titolo viene copiato automaticamente nel campo Nome, è possibile modificarlo.
Descrizione: (Facoltativo) Descrizione del dizionario dati.
Tag: (Facoltativo) Per creare un tag personalizzato, immetti il valore nel campo di testo e premi Invio. Il tag viene visualizzato sotto il campo di testo dei tag. Quando salvi questo testo, vengono creati anche i nuovi tag aggiunti.
Proprietà estese: (Facoltativo) Tocca Aggiungi campo per specificare gli attributi dei metadati per il dizionario dati. Nella colonna Nome proprietà, immetti un nome di proprietà univoco. Nella colonna Valore, immettere un valore da associare alla proprietà.
(Facoltativo) Per caricare una definizione dello schema XSD per il dizionario dati, tocca nel riquadro Struttura dizionario dati . Carica schema XML. Sfoglia il file XSD, selezionalo e tocca Apri. Viene creato un dizionario dati in base allo schema XML caricato. È necessario modificare i nomi visualizzati e le descrizioni degli elementi nel dizionario dati. A questo scopo, seleziona i nomi degli elementi toccandoli e modificandone le descrizioni, i nomi visualizzati e altri dettagli nei campi del riquadro a destra.
Per ulteriori informazioni sugli elementi DD calcolati, vedi Elementi del dizionario dati calcolati.
Puoi saltare il caricamento del file di schema e creare il dizionario dati da zero utilizzando l’interfaccia utente. A questo scopo, salta questo passaggio e continua con i passaggi successivi.
Tocca Successivo.
Nella schermata Aggiungi proprietà , aggiungi gli elementi al dizionario dati. Puoi anche aggiungere/eliminare elementi e modificarne i dettagli se hai caricato uno schema per ottenere una struttura di base del dizionario dati.
Puoi toccare i tre punti sul lato destro di un elemento e aggiungere un elemento alla struttura del dizionario dati.
Seleziona un elemento composito, un elemento raccolta o un elemento primitivo.
Di seguito sono riportate alcune regole per la creazione di un dizionario dati:
Per ulteriori informazioni sugli elementi Composite, Collection e Primitive e sull’utilizzo degli elementi del dizionario dati, consulta Mappatura degli elementi del dizionario dati su uno schema XML.
Per informazioni sulle convalide nel dizionario dati, consulta Convalida dell’editor del dizionario dati.
(Facoltativo) Dopo aver selezionato un elemento, nella scheda Avanzate puoi aggiungere proprietà (attributi). Puoi anche toccare Aggiungi campo ed estendere le proprietà di un elemento DD.
(Facoltativo) Per rimuovere un elemento, tocca i tre punti sul lato destro e seleziona Elimina.
Se elimini un elemento composito/di raccolta con nodi figlio, vengono eliminati anche i relativi nodi figlio.
(Facoltativo) Selezionare un elemento nel riquadro Struttura dizionario dati e nel pannello Elenco campi e variabili. Modifica o aggiungi eventuali attributi richiesti associati all’elemento.
Tocca Salva.
Per creare rapidamente uno o più dizionari di dati con proprietà ed elementi simili ai dizionari di dati esistenti, puoi copiarli e incollarli.
Durante la modifica o la visualizzazione di un dizionario dati, puoi vedere quali elementi nel dizionario dati sono indicati in cui Testi, Condizioni, Lettere e Comunicazioni interattive.
Per modificare il dizionario dati, effettuare una delle seguenti operazioni:
Oppure tocca un dizionario dati per visualizzarlo.
Nel dizionario dati, tocca un elemento semplice per selezionarlo. Gli elementi compositi e di raccolta non hanno riferimenti.
Oltre alle proprietà Base e Avanzate dell’elemento, viene visualizzato anche Contenuto prestato .
Tocca Contenuto prestato .
Viene visualizzata la scheda Contenuto prestato con le seguenti opzioni: Testi, condizioni, lettere e comunicazioni interattive. Ciascuna di queste intestazioni visualizza anche il numero di riferimenti all'elemento selezionato.
Tocca un’intestazione per visualizzare il nome delle risorse che fanno riferimento all’elemento.
Per visualizzare il contenuto prestato per un altro elemento, tocca l’elemento .
Per visualizzare una risorsa che fa riferimento all’elemento, tocca il suo nome. Il browser visualizza la risorsa, la lettera o la comunicazione interattiva.
Nella pagina Dizionari dati, tocca Seleziona.
Tocca un dizionario dati per il quale vuoi scaricare i dati di prova, quindi tocca Scaricare dati XML di esempio.
Tocca OK nel messaggio di avviso. Viene scaricato un file XML.
Apri il file XML con Blocco note o un altro editor XML. Il file XML ha la stessa struttura del dizionario dati e delle stringhe segnaposto negli elementi. Sostituire le stringhe segnaposto con i dati con cui si desidera sottoporre a test una lettera.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Company>
<Name>string</Name>
<Type>string</Type>
<HeadOfficeAddress>
<Street>string</Street>
<City>string</City>
<State>string</State>
<Zip>string</Zip>
</HeadOfficeAddress>
<SalesOfficeAddress>
<Street>string</Street>
<City>string</City>
<State>string</State>
<Zip>string</Zip>
</SalesOfficeAddress>
<HeadCount>1.0</HeadCount>
<CEO>
<PersonName>
<FirstName>string</FirstName>
<MiddleName>string</MiddleName>
<LastName>string</LastName>
</PersonName>
<DOB>string</DOB>
<CurrAddress>
<Street>string</Street>
<City>string</City>
<State>string</State>
<Zip>string</Zip>
</CurrAddress>
<DOJ>14-04-1973</DOJ>
<Phone>1.0</Phone>
</CEO>
</Company>
In questo esempio, XML crea uno spazio per tre valori in un elemento di raccolta, ma il numero di valori può essere aumentato o diminuito in base al requisito.
Dopo aver immesso i dati, è possibile utilizzare questo file XML quando si visualizza in anteprima una lettera con i dati di prova.
Puoi aggiungere questi dati di test con DD (Seleziona DD e tocca Carica dati di test e carica questo file xml) Quindi dopo questo quando si visualizza l'anteprima della lettera normalmente (non personalizzata), questi dati XML vengono utilizzati in lettera. Puoi anche toccare Personalizzato e caricare questo XML.
Gli esempi di codice seguenti mostrano i dettagli di implementazione per il dizionario dati.
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns="DCT" targetNamespace="DCT" xmlns:xs="https://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="Company">
<xs:complexType>
<xs:sequence>
<xs:element name="Name" type="xs:string"/>
<xs:element name="Type" type="xs:anySimpleType"/>
<xs:element name="HeadOfficeAddress" type="Address"/>
<xs:element name="SalesOfficeAddress" type="Address" minOccurs="0"/>
<xs:element name="HeadCount" type="xs:integer"/>
<xs:element name="CEO" type="Employee"/>
<xs:element name="Workers" type="Employee" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="Employee">
<xs:complexContent>
<xs:extension base="Person">
<xs:sequence>
<xs:element name="CurrAddress" type="Address"/>
<xs:element name="DOJ" type="xs:date"/>
<xs:element name="Phone" type="xs:integer"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Person">
<xs:sequence>
<xs:element name="PersonName" type="Name"/>
<xs:element name="DOB" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Name">
<xs:sequence>
<xs:element name="FirstName" type="xs:string"/>
<xs:element name="MiddleName" type="xs:string"/>
<xs:element name="LastName" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Address">
<xs:sequence>
<xs:element name="Street" type="xs:string"/>
<xs:element name="City" type="xs:string"/>
<xs:element name="State" type="xs:string"/>
<xs:element name="Zip" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
Nella tabella seguente sono descritti gli attributi comuni associati a un DDE:
Attributo | Tipo | Descrizione |
Nome | Stringa | Obbligatorio. Nome del DDE. Deve essere unico. |
Riferimento Nome |
Stringa | Obbligatorio. Nome di riferimento univoco per il DDE che consente i riferimenti al DDE indipendenti dalle modifiche alla gerarchia o alla struttura del dizionario dati. I moduli di testo mappati con questo nome |
nome visualizzato | Stringa | Un nome descrittivo opzionale del DDE. |
descrizione | Stringa | Descrizione del DDE. |
elementType | Stringa | Obbligatorio. Tipo di DDE: STRINGA, NUMERO, DATA, Booleano, COMPOSITO, RACCOLTA. |
elementSubType | Stringa | Il sottotipo per DDE: ENUM. È consentito solo per STRING e NUMBER elementType. |
Chiave | Booleano | Un campo booleano per indicare se un DDE è un elemento chiave. |
Calcolati | Booleano | Campo booleano per indicare se un DDE viene calcolato. Un valore DDE calcolato è una funzione di altri valori DDE. Per impostazione predefinita, le espressioni jsp sono supportate. |
espressione | Stringa | L'espressione per il DDE "calcolato". Il servizio di valutazione delle espressioni fornito per impostazione predefinita supporta le espressioni JSP EL. Puoi sostituire il servizio espressione con un’implementazione personalizzata. |
valueSet | Elenco | Un insieme di valori consentiti per un tipo Enum DDE. Ad esempio, il tipo di conto può avere solo valori (Salvataggio, Corrente). |
ExtendedProperties | Oggetto | Una mappa delle proprietà personalizzate aggiunte al DDE (interfaccia utente specifica o qualsiasi altra informazione). |
Obbligatorio | Booleano | Il flag indica che l'origine dei dati dell'istanza corrispondente al dizionario dati deve contenere il valore di questo particolare DDE. |
Associazione | BindingElement | Il binding XML o Java dell’elemento. |
Un dizionario dati può anche includere elementi calcolati. Un elemento del dizionario dati calcolato è sempre associato a un'espressione. Questa espressione viene valutata per ottenere il valore di un elemento del dizionario dati in fase di runtime. Un valore DDE calcolato è una funzione di altri valori DDE o letterali. Per impostazione predefinita sono supportate le espressioni JSP Expression Language (EL) . Le espressioni EL utilizzano i caratteri ${ } e le espressioni valide possono includere letterali, operatori, variabili (riferimenti agli elementi del dizionario dati) e chiamate di funzioni. Durante il riferimento a un elemento del dizionario dati nell’espressione, viene utilizzato il nome di riferimento del DDE. Il nome di riferimento è univoco per ogni elemento del dizionario dati all’interno di un dizionario dati.
Un DDE PersonFullName calcolato può essere associato a un'espressione di concatenazione EL come ${PersonFirstName} ${PersonLastName}.
L'esportazione di un file XSD richiede una mappatura dati specifica, descritta nella tabella seguente. La colonna DDI indica il tipo di valore DDE disponibile nel DDI.
XSD |
Dizionario dati |
DDI (tipo di dati del valore dell'istanza) |
xs:elemento di tipo - Tipo composito |
DDE di tipo - COMPOSITE |
java.util.Map |
xs:elemento in cui maxEvents > 1 |
DDE di tipo - COLLECTION- Viene creato un nodo DDE accanto al DDE COLLECTION che acquisisce informazioni dal nodo COLLECTION padre. Lo stesso viene creato per entrambe le raccolte di tipi di dati semplici/compositi. Ogni volta che si dispone di una RACCOLTA del tipo composito, la struttura del dizionario dati acquisisce i campi costituenti negli elementi secondari del DDE creato per l’acquisizione delle informazioni sul tipo. - DDE (RACCOLTA) - DDE(COMPOSITE per informazioni sul tipo) - Campo DDE(STRING)1 - Campo DDE(STRING)2 |
java.util.List |
Attributo di tipo - xs:id |
DDE di tipo - STRING |
java.lang.String |
xs:attribute /xs:elemento di tipo - xs:string | DDE di tipo - STRING |
java.lang.String |
xs:attribute /xs:element di tipo - xs: booleano |
DDE di tipo - booleano |
java.lang.Boolean |
xs:attribute /xs:element di tipo - xs:date | DDE of type - DATE | java.lang.String |
xs:attribute /xs:elemento di tipo - xs:integer | DDE del tipo - NUMERO | java.lang.Double |
xs:attribute /xs:elemento di tipo - xs:long | DDE del tipo - NUMERO | java.lang.Double |
xs:attribute /xs:element di tipo - xs:double | DDE del tipo - NUMERO | java.lang.Double |
Elemento di tipo enum e baseType - xs:string | DDE di type - STRING sottotipo - ENUM valueSet - i valori consentiti per ENUM |
java.lang.String |
Dopo aver creato un dizionario dati, puoi scaricarlo come file di dati di esempio XML per inserire voci di testo.
Nella pagina Dizionari dati , tocca Seleziona quindi tocca un dizionario dati per selezionarlo.
Seleziona Scaricare dati XML di esempio.
Tocca OK nel messaggio di avviso.
Gestione corrispondenza crea un file XML basato sulla struttura del dizionario dati selezionato e lo scarica sul computer con il nome <data-dictionary-name>-SampleData. Ora è possibile modificare questo file in un editor XML o di testo per inserire dati mentre creazione di una lettera.
Se desideri inviare la stessa lettera in lingue diverse ai clienti, puoi localizzare il nome visualizzato, la descrizione e i set di valori enum del dizionario dati e degli elementi del dizionario dati.
Nella pagina Dizionari dati, tocca Seleziona quindi tocca un dizionario dati per selezionarlo.
Tocca Download dei dati di localizzazione.
Tocca OK nell'avviso. Gestione corrispondenza scarica un file zip sul computer con il nome DataDictionary-<ddname>.zip.
Il file ZIP contiene un file .properties . Questo file definisce il dizionario dati scaricato. Il contenuto del file di proprietà è simile al seguente:
#Wed May 20 16:06:23 BST 2015
DataDictionary.EmployeeDD.description=
DataDictionary.EmployeeDD.displayName=EmployeeDataDictionary
DataDictionaryElement.name.description=
DataDictionaryElement.name.displayName=name
DataDictionaryElement.person.description=
DataDictionaryElement.person.displayName=person
La struttura del file delle proprietà definisce una riga ciascuna per la descrizione e il nome visualizzato per il dizionario dati e per ogni elemento del dizionario dati. Inoltre, il file delle proprietà definisce una riga per un valore enum impostato per ogni elemento del dizionario dati. Come con un dizionario dati, il file delle proprietà corrispondente può avere più definizioni di elementi del dizionario dati. Inoltre, il file può contenere le definizioni di uno o più set di valori enum.
Per aggiornare il file .properties in un'altra impostazione internazionale, aggiorna il nome visualizzato e i valori di descrizione nel file. Crea più istanze del file per ogni lingua in cui desideri localizzare. Sono supportate solo le lingue francese, tedesca, giapponese e inglese.
Salva i diversi file di proprietà aggiornati con i seguenti nomi:
_fr_FR.properties Francese
_de_DE.properties Tedesco
_ja_JA.properties Giapponese
_en_EN.properties English
Archivia il file .properties (o i file per più impostazioni internazionali) in un unico file .zip.
Nella pagina Dizionari dati, seleziona Altro > Caricare dati di localizzazione e selezionare il file zip con file di proprietà localizzati.
Per visualizzare le modifiche alla localizzazione, modifica le impostazioni internazionali del browser.
Durante la creazione o l’aggiornamento di un dizionario dati, l’Editor dizionario dati applica le seguenti convalide.
Convalida applicate a livello di dizionario dati
Convalida applicate a livello di elemento del dizionario dati.
È possibile creare un dizionario dati da uno schema XML o generarlo utilizzando l'interfaccia utente del dizionario dati. Tutti gli elementi del dizionario dati (DDE, Data Dictionary Elements) all’interno di un dizionario dati dispongono di un campo di binding XML per memorizzare il binding del DDE a un elemento nello schema XML. Il binding in ogni DDE è relativo al DDE padre.
Di seguito sono riportati i modelli di esempio e gli esempi di codice che mostrano i dettagli di implementazione per il dizionario dati.
Un DDE primitivo rappresenta un campo o un attributo che è atomico in natura. I DDE primitivi definiti al di fuori dell'ambito di un tipo complesso (DDE composito) o di un elemento ripetuto (DDE della raccolta) possono essere memorizzati in qualsiasi posizione all'interno dello schema XML. La posizione dei dati corrispondenti a un DDE primitivo non dipende dalla mappatura del relativo DDE padre. DDE primitivo utilizza le informazioni di mappatura dal campo Binding XML per determinarne il valore e le mappature si traducono in uno dei seguenti elementi:
L'esempio seguente mostra uno schema semplice.
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="https://www.w3.org/2001/XMLSchema">
<xs:element name='age' type='integer'/>
<xs:element name='price' type='decimal'/>
</xs:schema>
Elemento dizionario dati | Binding XML predefinito |
---|---|
age | /age |
prezzo | /prezzo |
Il binding non è supportato per gli elementi compositi; se viene fornito il binding, questo viene ignorato. Il binding per tutti i DDE figlio costitutivi di tipo primitivo deve essere assoluto. Consentire la mappatura assoluta per gli elementi secondari di un DDE composito offre maggiore flessibilità in termini di Binding XPath. La mappatura di un DDE composito su un elemento di tipo complesso nello schema XML limita l’ambito del binding per i relativi elementi secondari.
L'esempio seguente mostra lo schema di una nota.
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Elemento dizionario dati | Binding XML predefinito |
nota | empty(null) |
a | /note/a |
da | /note/da |
intestazione | /nota/intestazione |
corpo | /note/corpo |
Un elemento di raccolta è mappato solo su un altro elemento di raccolta con cardinalità > 1. I DDE secondari di una raccolta DDE hanno un binding XML relativo (locale) rispetto al binding XML del relativo elemento padre. Poiché i DDE secondari di un elemento di raccolta devono avere la stessa cardinalità di quello dell'elemento padre, il binding relativo è obbligatorio per garantire il vincolo di cardinalità in modo che i DDE secondari non puntino a un elemento schema XML non ripetuto. Nell’esempio seguente, la cardinalità di "TokenID" deve essere uguale a "Token" che è la sua raccolta padre DDE.
Durante la mappatura di un DDE di raccolta a un elemento dello schema XML:
il binding per l’elemento DDE corrispondente all’elemento Collection deve essere l’XPath assoluto
Non fornire alcun binding per il DDE che rappresenta il tipo di elemento Collection. Se viene fornito, il binding viene ignorato.
Il binding per tutti i DDE figlio dell’elemento Collection deve essere relativo all’elemento Collection principale.
Lo schema XML seguente dichiara un elemento con il nome Token e un attributo maxOccurs di "unbounded". Pertanto, Token è un elemento di raccolta.
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Tokens>
<TokenID>string</TokenID>
<TokenText>
<TextHeading>string</TextHeading>
<TextBody>string</TextBody>
</TokenText>
</Tokens>
<Tokens>
<TokenID>string</TokenID>
<TokenText>
<TextHeading>string</TextHeading>
<TextBody>string</TextBody>
</TokenText>
</Tokens>
<Tokens>
<TokenID>string</TokenID>
<TokenText>
<TextHeading>string</TextHeading>
<TextBody>string</TextBody>
</TokenText>
</Tokens>
</Root>
Il Token.xsd associato a questo esempio è il seguente:
<xs:element name="Root">
<xs:complexType>
<xs:sequence>
<xs:element name="Tokens" type="TokenType" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="TokenType">
<xs:sequence>
<xs:element name="TokenID" type="xs:string"/>
<xs:element name="TokenText">
<xs:complexType>
<xs:sequence>
<xs:element name="TextHeading" type="xs:string"/>
<xs:element name="TextBody" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
Elemento dizionario dati | Binding XML predefinito |
---|---|
Directory principale | empty(null) |
Token | /Root/Token |
Composito | empty(null) |
TokenID | TokenID |
TokenText | empty(null) |
TokenIntestazione | TokenText/TextHeader |
TokenBody | TokenText/TextBody |