IWriteMetadataPlugin - OnFieldChangeSetMetadata
Sets a metadata field when a certain metadata field is changed. Optionally you can specify that the fields should only be set when the metadata field has changed from a certain value to a certain value.
Plugin Configuration
The following workset fields need to be configured:
| Field Name | Field Level |
|---|---|
The name of the field specified in the ConditionMetadataField parameter | The level of the field specified in the ConditionMetadataFieldLevel parameter |
The name of the field specified in the SetMetadataField parameter | The level of the field specified in the SetMetadataFieldLevel parameter |
The following parameters can be configured:
| Parameter | Required | Default value | Allowed values | Description |
|---|---|---|---|---|
| ConditionMetadataField | Yes | The metadata field that needs to be checked for changes. Only string fields are supported, number and date fields are not. | ||
| ConditionMetadataFieldLevel | No | lng | logical, version, lng | The metadata field level that needs to be checked for changes. |
| ConditionMetadataFieldValueType | No | value | value, element | The metadata field value type. |
| ConditionMetadataFieldFromValue | No | The current database value of the metadata field should match one of the given values before the SetMetadata will happen. Multiple values can be comma-space separated. If not provided, this means the database value can be anything. | ||
| ConditionMetadataFieldToValue | No | The current value of the metadata field should match one of the given values before the SetMetadata will happen. Multiple values can be comma-space separated. If not provided, this means the database value can be anything. | ||
| SetMetadataField | Yes | The metadata field to set. Date/number fields are not supported. | ||
| SetMetadataFieldLevel | No | lng | logical, version, lng | The level of the metadata field to set. |
| SetMetadataFieldValueType | No | value | value, element | The metadata field value type. |
| SetMetadataFieldOverwriteExisting | No | Yes | Yes, No | Whether to override when the field already has a value or not. |
| SetMetadataFieldValue | No | The metadata field value to set. |
<plugin name="ISHDITADELIVERYSETDEPLOYINGDRAFT" handler="OnFieldChangeSetMetadata" ishcondition="ISHLevel='lng' and CurrentAction='SetMetadata' and ISHOutputFormat.FDITAOTTRANSTYPE='ishditadelivery'">
<description>Changes the status of a Dynamic Delivery publication output from "Draft" to "Deploying Draft" to indicate it is still being deployed.</description>
<workingset>
<ishfields>
<ishfield name="FISHPUBSTATUS" level="lng" />
</ishfields>
</workingset>
<initialize>
<parameters>
<parameter name="ConditionMetadataField">FISHPUBSTATUS</parameter>
<parameter name="ConditionMetadataFieldLevel">lng</parameter>
<parameter name="ConditionMetadataFieldValueType">element</parameter>
<parameter name="ConditionMetadataFieldFromValue">VPUBSTATUSPUBLISHING</parameter>
<parameter name="ConditionMetadataFieldToValue">VPUBSTATUSPUBLISHEDDRAFT</parameter>
<parameter name="SetMetadataField">FISHPUBSTATUS</parameter>
<parameter name="SetMetadataFieldLevel">lng</parameter>
<parameter name="SetMetadataFieldValueType">element</parameter>
<parameter name="SetMetadataFieldOverwriteExisting">Yes</parameter>
<parameter name="SetMetadataFieldValue">VPUBSTATUSDEPLOYINGDRAFT</parameter>
</parameters>
</initialize>
</plugin>