Expand my Community achievements bar.

We are excited to introduce our latest innovation to enhance the Adobe Campaign user experience — the Adobe Campaign v8 Web User Interface!
SOLVED

About keyword dbEnum in Schema

Avatar

Level 3

Hi

I am learning the schema of Adobe Campaign V7 . I find the dbEnum keyword in the neo:recipient as the follow.

    <!-- Attribute: Preferred Channel -->

    <attribute dbEnum="channel" desc="Preferred communication channel" label="Preferred channel"

               length="15" name="preferredChannel" sqlname="sPreferredChannel" type="string"/>

And I chekc the guide of dbEnum :dbEnum (string): receives the internal name of a "closed" enumeration. The enumeration values must be defined in the <srcSchema>.

My question is:

(1) I can not find the define of dbEnum="channel"  in the schema. Where it was defined?

(2) How could I extends value for the enumeration  dbEnum="channel" ?

Best regards.

1 Accepted Solution

Avatar

Correct answer by
Level 10

Hi tumuzhuanjia,

There is a misleading: sysEnum enumerations are defined in the XML schema (srcSchema schema) while dbEnum are defined in the Administration>Platform>Enumerations node (xtk:enum schema).

Nota bene if you create your own enumeration:

Closed enumeration in dbEnum appears to be quite close of a sysEnum one, and for Adobe Campaigns form and webApp forms it is similar use from user point of view. And dbEnum seems easier to manage. But actually, in many cases, sysEnum are mandatory because the dbEnum string value is put as value in the schema (table) using it, while sysEnum allows int values to be inserted instead of the string displayed to select the value. So it is better optimized from SQL point of view (indexes performance, storage space, redundancy rules, string label to change).
But of course usually the choice is made depending of the different user needs.

Regards

Jean-Serge

View solution in original post

4 Replies

Avatar

Correct answer by
Level 10

Hi tumuzhuanjia,

There is a misleading: sysEnum enumerations are defined in the XML schema (srcSchema schema) while dbEnum are defined in the Administration>Platform>Enumerations node (xtk:enum schema).

Nota bene if you create your own enumeration:

Closed enumeration in dbEnum appears to be quite close of a sysEnum one, and for Adobe Campaigns form and webApp forms it is similar use from user point of view. And dbEnum seems easier to manage. But actually, in many cases, sysEnum are mandatory because the dbEnum string value is put as value in the schema (table) using it, while sysEnum allows int values to be inserted instead of the string displayed to select the value. So it is better optimized from SQL point of view (indexes performance, storage space, redundancy rules, string label to change).
But of course usually the choice is made depending of the different user needs.

Regards

Jean-Serge

Avatar

Level 10

Hi tumuzhuanjia,

Sorry, in English, the French node Enumérations seems to be transated by Administration>Platform>Itemized lists, not Enumerations.

And if needed, have a look on Alias values in DbEnum, it allows better management of dbEnum lists.

Regards
J-Serge

Avatar

Level 3

Hi J-Serge:

Thank you.

That is what I want.  Very professional answer.

Best regards.