Caratteristiche di uno schema

Le caratteristiche di uno schema che fa riferimento a una tabella esistente sono le seguenti:

  • Adobe Campaign non deve modificare gli oggetti SQL relativi alle tabelle esistenti,
  • È necessario specificare esplicitamente i nomi delle tabelle e delle colonne,
  • Gli indici devono essere dichiarati.
IMPORTANTE

Non eliminare i campi nella tabella dei destinatari standard, anche se inutili. Ciò potrebbe causare errori comportamentali nel database Adobe Campaign .

L'attributo view

Gli schemi di origine accettano l'attributo view per l'elemento srcSchema principale. Deve essere utilizzato quando Adobe Campaign viene manipolato in tabelle personalizzate. L'attributo view="true" indica alla procedura guidata di aggiornamento della struttura del database di ignorare questo schema. Pertanto, all'applicazione non è consentito sincronizzare la tabella, le relative colonne e i relativi indici con lo schema corrispondente.

Quando questo attributo è impostato su true, lo schema viene utilizzato solo per generare query SQL per accedere ai dati di questa tabella.

Nomi di tabelle e colonne

Quando le tabelle vengono create dalla procedura guidata di aggiornamento delle tabelle, i nomi delle tabelle e delle colonne vengono generati automaticamente in base ai nomi dei rispettivi schemi e attributi. È tuttavia possibile imporre l'uso dei nomi SQL immettendo i seguenti attributi:

  • ​sqltable all'interno dell'elemento principale dello schema, per specificare la tabella,
  • ​sqlname all'interno di ciascun attributo, per specificare le colonne.

Esempio:

<element label="Individual" name="individual" sqltable="individual">
    <key internal="true" name="id">
      <keyfield xpath="@id"/>
    </key> 
    <attribute name="id" type="long" length="32" />
    <attribute name="lastName" type="string" length="100" sqlname="Last_Name"/>
    <attribute name="firstName" type="string" length="100" sqlname="First_Name"/>
    <attribute name="email" type="string" length="100"/>
    <attribute name="mobile" type="string" length="100"/>
</element>

In questo esempio, se i nomi delle tabelle e delle colonne non fossero stati specificati in modo esplicito, l'applicazione avrebbe utilizzato CusIndividuale per le colonne, lastName e firstName per le colonne.

In uno schema, è possibile compilare solo una parte delle colonne di una tabella esistente. Le colonne non popolate non saranno accessibili agli utenti.

Campi indicizzati

Quando si ordinano i record di un elenco dalla console client, si ottengono prestazioni migliori ordinando i campi indicizzati. La dichiarazione di un indice in uno schema consente alla console di visualizzare i campi indicizzati con una linea rossa sotto la freccia dell'ordinamento a sinistra dell'etichetta della colonna, come illustrato di seguito:

In uno schema, un indice è definito come segue:

<dbindex name="name_of_index" unique="true/false"
  <keyfield xpath="xpath_1st_field"/
  <keyfield xpath="xpath_2nd_field"/
  ...
</dbindex

Per questo è importante dichiarare gli indici esistenti della tabella personalizzata nello schema corrispondente.

Un indice è implicitamente dichiarato per ogni dichiarazione di chiave e collegamento dello schema di origine. La dichiarazione dell'indice può essere evitata specificando l'attributo noDbIndex="true":

Esempio:

<key internal="true" name="customer" noDbIndex="true">
  <keyfield xpath="@customerId"/>
</key>

In questa pagina

Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now