Export of characteristic values
Product 360 provides the possibility to export characteristic values according to your requirements.
Similar as for attributes, characteristic values can be output flat and table based or as structured XML. All data fields of characteristic values and corresponding characteristics as well as lookup value fields can be used.
Note: characteristic values of inactive characteristics are not output.
With the "Export started" trigger you can configure the according data quality rules for characteristic values. With this only valid objects will be considered.
Characteristic value export data types
There are two export sub-data types for items, variants and products you can use to output characteristic values and corresponding characteristic data:
Characteristic values
This data type allows you to output the values qualified by language. For example, a CSV output file could contain a value column for each requested language.Characteristic values (all languages)
If you want to output all existing values, independent of their language, you can use this data type. For example, a XML output file could contain all maintained values for all languages.
Data type filter
Numerous filter capabilities allow to slice and dice the export dataset as needed:
Filter |
Available for data type |
Description |
Category output mode |
Characteristic values, Characteristic values (all languages) |
Specifies which kind of categories have to be considered for output of characteristic values.
|
Characteristic categories |
Characteristic values, Characteristic values (all languages) |
Specifies which characteristic categories should be considered for the output of characteristic values. Only characteristics which belong to the configured category will be considered.
|
Characteristic purposes |
Characteristic values, Characteristic values (all languages) |
Specifies which characteristic purposes the characteristic of the characteristic values to export should have.
|
Target markets |
Characteristic values, Characteristic values (all languages) |
Specifies the target market of the according characteristic from a characteristic value.
|
Language |
Characteristic values (all languages) |
Specifies the languages which are taken for the characteristic values. "Language independent" needs to be taken for not language dependent characteristics.
This filter has no effect on lookup values. |
Root characteristic |
Characteristic values, Characteristic values (all languages) |
Specifies which kind of root characteristic of the characteristic values should be considered.
Be careful when using this filter in combination with other filters because this could lead to misconfiguration. E.g. The chosen root characteristic belongs to another category as defined in the characteristic category filter. |
Limitation
No logical sorting of characteristic values is possible in the export.
Value and lookup value
As described in the "Characteristic value data model" chapter, we have two data fields to store values for characteristics, "Value" and "Lookup value". These two fields can be used to output characteristic values according to your requirements.
Lookup value
Lookup values are independent objects, hence it is possible to decide which data should be exported for one lookup value. Lookup values are not language dependent, hence it is not possible to qualify the data field with a language or exclude them with the language data type filter.
It is recommended to use the "lookup value code" or "lookup value external code" to export data because it is language independent
<
lookup_value_code
>{&Characteristic values.Lookup value.Code}</
lookup_value_code
>
<
lookup_value_name
>{&Characteristic values.Lookup value.Name (English)}</
lookup_value_name
>
Value
Language
Values are always language dependent. Therefore it is possible to qualify the data field for the "Characteristic values" data type with a language. It is also possible to use the "Language" data type filter for the "Characteristic values (all languages)" data type.
Formatting
The default formatting of characteristic values relates to their characteristic data type. You can adjust the formatting by using the export function CharacteristicValueFormatByPattern which will use the format pattern defined at the according characteristic if available.
<
value
>{&Characteristic values.Value (English)}</
value
>
<
formatted_value
>{?CharacteristicValueFormatByPattern {&Characteristic values.Value (English)}}</
formatted_value
>
Multi values
By default multi values will be exported in one semicolon-separated data field. Each of those values is formatted by the according characteristic data type. By using the export function SplitKeywords it is possible to split those semicolon-separated fields.
Example: Creating multiple XML tags by specifying the prefix and postfix of each value in the multi value field
<
values
>
{?SplitKeywords {&Characteristic values.Value (English)}, "<
value
>", "</
value
>"}
<
values
>
MIME values
There are two possibilities to export values of characteristic data type "MIME". When exporting the data field value, then the label of the file will be exported. If you use the export function CharacteristicValueGetMimePath then the relative path to this file will be exported. The relative path is based on the shared folder filestorage.shared.path defined in the server.properties.
<
mime_value
>
<
name
>{&Characteristic values.Value (English)}</
name
>
<
path
>{?CharacteristicValueGetMimePath {&Characteristic values.Value (English)}}</
path
>
<
mime_value
>
Characteristic data
Data of the according characteristic with their root characteristic as well as the according lookup values can be exported by using transition fields in the export.
<
characteristic_value
>
<
lang
>{&Characteristic values (all languages).Language}</
lang
>
<
value
>{&Characteristic values (all languages).Value}</
value
>
<
formatted_by_pattern_value
>{?CharacteristicValueFormatByPattern {&Characteristic values (all languages).Value}}</
formatted_by_pattern_value
>
<
lookup_value
>{&Characteristic values (all languages).Lookup value.Code}</
lookup_value
>
<
order
>{?FormatDecimal {&Characteristic values (all languages).Order},,}</
order
>
<
characteristic
>
<
identifier
>{&Characteristic values (all languages).Characteristic.Identifier}</
identifier
>
<
data_type
>{&Characteristic values (all languages).Characteristic.Data type}</
data_type
>
<
format_pattern
>{&Characteristic values (all languages).Characteristic.Format pattern}</
format_pattern
>
</
characteristic
>
<
root_characteristic
>
<
identifier
>{&Characteristic values (all languages).Root characteristic.Identifier}</
identifier
>
<
category
>{&Characteristic values (all languages).Root characteristic.Category.Code}</
category
>
<
lookup
>{&Characteristic values (all languages).Root characteristic.Lookup.Identifier}</
lookup
>
</
root_characteristic
>
</
characteristic_value
>