31Migrating Process Administration Configuration Data
Migrating Process Administration Configuration Data
This chapter describes how to migrate process administration configuration data using the command-line interface of the Oracle Migration Tool On Demand client. It contains the following topics:
Privileges Required for Migrating Process Administration Configuration Data
-
Privileges Required for Migrating Process Administration Transition States
Elements and Sections in the Process Administration XML Output File
-
Elements and Sections in the Process Administration Transition States XML Output File
Process Administration
For certain record types, administrators can set up processes to prevent users, including external applications, from performing certain actions on records of that type when the records are in a particular state. Preventing users from performing certain actions in this way is referred to as record locking.
You can set up only one process for each of the record types that support process administration. For more information about process administration and the record types that support it, see Oracle CRM On Demand Online Help.
The following table describes the Oracle Migration Tool On Demand client commands used with process administration. These commands are case sensitive.
Table Commands Used with Process Administration in Oracle Migration Tool On Demand
Command | Description |
---|---|
|
This command extracts the process administration configuration data for a specific record type. The parameters are as follows:
|
|
This command extracts the process administration configuration data for all record types. |
|
This command updates or inserts the process administration configuration data for one record type. |
Process Administration Transition States
In a process for a record type, administrators can set up a number of transition states. A transition state represents a state that a record enters when certain conditions are met. For more information about process administration transition states, see Oracle CRM On Demand Online Help.
The following table describes the Oracle Migration Tool On Demand client commands used with process administration transition states. These commands are case sensitive.
Table Commands Used with Process Administration Transition States in Oracle Migration Tool On Demand
Command | Description |
---|---|
|
The
|
|
The
|
|
The |
|
The |
Privileges Required for Migrating Process Administration Configuration Data
The following privileges are required for the user account running the Oracle Migration Tool On Demand client for all of the commands for migrating process administration configuration data:
-
Enable Web Services Access
-
Process Administration
For information about setting and checking privileges, see Oracle CRM On Demand Online Help.
Privileges Required for Migrating Process Administration Transition States
The following privileges are required for the user account running the Oracle Migration Tool On Demand client for all of the commands for migrating process administration transition states:
-
Enable Web Services Access
-
Process Administration
For information about setting and checking privileges, see Oracle CRM On Demand Online Help.
Elements and Sections in the Process Administration XML Output File
The following table describes the elements and sections in the process administration XML output file.
Table Elements and Sections in the Process Administration XML File
Description | Element or Section |
---|---|
The <Process> section contains all of the information for one process. |
<data:Process> . . . </data:Process> |
<RecordType> contains the system name of the record type (object), which never changes. |
<data:Process> <data:RecordType>Activity</data:RecordType> . . . </data:Process> |
<ProcessName> contains the name given to the process. |
<data:Process> . . . <data:ProcessName>Activity Process </data:ProcessName> . . . </data:Process> |
<PrimaryField> contains the name of the field in the record type that is to be used as a filter to restrict the process to certain records of the record type. Only the Activity record type supports the use of a primary field to restrict the process. |
<data:Process> . . . <data:PrimaryField>Category </data:PrimaryField> . . . </data:Process> |
<TransitionField> contains the name of the field in the record type that determines the transition of records from one transition state to another. The Status field must be used as the transition field for all supported record types. |
<data:Process> . . . <data:TransitionField>Status </data:TransitionField> . . . </data:Process> |
<Description> contains the description of the process. |
<data:Process> . . . <data:Description>This is a test process. </data:Description> . . . </data:Process> |
<Order> indicates the order of this process within the processes for the record type. The Order field is set to 1 by default, and you cannot update the field to a different value.
Note: If you specify an invalid value, such as a non-numeric string, for this element when you insert or update a process, then an error is returned.
|
<data:Process> . . . <data:Order>1</data:Order> . . . </data:Process> |
<Default> indicates if the process is the default process for the record type (true). The Default field is set to true by default, and you cannot update the field value to false. |
<data:Process> . . . <data:Default>true</data:Default> . . . </data:Process> |
The <ListOfPrimaryValues> section contains the values in the primary field that are valid for the process. A record will be locked by the process only if the value in the primary field on the record is set to one of the values specified within the <ListOfPrimaryValues> section. |
<data:Process> . . . <data:ListOfPrimaryValues> <data:PrimaryValues> <data:Value>Account Call</data:Value> </PrimaryValues> <data:PrimaryValues> <data:Value>Attendee Call</data:Value> </data:PrimaryValues> . . . </data:ListOfPrimaryValues> . . . </data:Process> |
The <ListOfTransitionStates> section contains the details of the transition states for the process. |
<data:Process> . . . <data:ListOfTransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
The <TransitionStates> section contains the details of one transition state for the process. |
<data:Process> . . . <data:ListOfTransitionStates> <data:TransitionStates> . . . </data:TransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
<State> contains the transition field value that identifies this transition state. Each transition field value can be used with only one transition state in the process. For upsert operations, the value in the <State> element must match an existing picklist value in the Status field for the record type. |
<data:Process> . . . <data:ListOfTransitionStates> <data:TransitionStates> <data:State>Deferred</data:State> . . . </data:TransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
<Category> contains the name of the sales category that the transition state is associated with. |
<data:Process> . . . <data:ListOfTransitionStates> <data:TransitionStates> . . . <data:Category>Software</data:Category> . . . </data:TransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
<Description> contains a description of the transition state. |
<data:Process> . . . <data:ListOfTransitionStates> <data:TransitionStates> . . . <data:Description>Test </data:Description> . . . </data:TransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
<Created> contains the username of the user who created the transition state, and the date and time the transition state was created. |
<data:Process> . . . <data:ListOfTransitionStates> <data:TransitionStates> . . . <data:Created>ABC User 10/26/2012 10:12:40</data:Created> . . . </data:TransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
<Modified> contains the username of the user who last updated the transition state, and the date and time the transition state was last updated. |
<data:Process> . . . <data:ListOfTransitionStates> <data:TransitionStates> . . . <data:Modified>ABC User 11/23/2016 11:27:40</data:Modified> . . . </data:TransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
<Condition> contains a condition that determines whether a record can move to this transition state.
Note: Do not use any calculated fields in the expression. Calculated fields are not supported in expressions in the Condition field on transition states.
|
<data:Process> . . . <data:ListOfTransitionStates> <data:TransitionStates> . . . <data:Condition>[{Priority}]="3-Low" </data:Condition> . . . </data:TransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
<ErrorMessage> contains the text for the error message that appears if the condition that is set up for the transition state is not met when a user tries to move a record of the record type specified in the process to this transition state. |
<data:Process> . . . <data:ListOfTransitionStates> <data:TransitionStates> . . . <data:ErrorMessage> </data:ErrorMessage> . . . </data:TransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
<DisableUpdate> determines whether a record can be updated when the record is in this state. If this element is set to true, then users, including external applications, cannot update records of the record type specified in the process when the records are in this transition state. |
<data:Process> . . . <data:ListOfTransitionStates> <data:TransitionStates> . . . <data:DisableUpdate> </data:DisableUpdate> . . . </data:TransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
<DisableDeleteOrRemove> determines whether a record can be deleted when the record is in this state. If this element is set to true, then users, including external applications, cannot delete records of the record type specified in the process while the records are in this transition state. |
<data:Process> . . <data:ListOfTransitionStates> <data:TransitionStates> . . . <data:DisableDeleteOrRemove> </data:DisableDeleteOrRemove> </data:TransitionStates> . . . </data:ListOfTransitionStates> </data:Process> |
Elements and Sections in the Process Administration Transition States XML Output File
The following table describes the elements and sections in the process administration transition states XML output file.
Table Elements and Sections in the Process Administration Transition States XML File
Description | Element or Section |
---|---|
The <TransitionState> section contains all of the information for one transition state. |
<data:TransitionState> . . . </data:TransitionState> |
<RecordType> contains the system name of the record type (object), which never changes. This element is read-only and is ignored for upsert requests. |
<data:TransitionState> <data:RecordType>Activity</data:RecordType> . . . </data:TransitionState> |
<ProcessName> contains the name given to the process. This element is read-only and is ignored for upsert requests. |
<data:TransitionState> . . . <data:ProcessName>Activity Process </data:ProcessName> . . . </data:TransitionState> |
<State> contains the transition field value that identifies the transition state. Each transition field value can be used with only one transition state in a process. For upsert operations, the value in the <State> element must match an existing picklist value in the Status field for the record type. |
<data:TransitionState> . . . <data:State>Deferred</data:State> . . . </data:TransitionState> |
<Category> contains the name of the sales category that the transition state is associated with. |
<data:TransitionState> . . . <data:Category>Software</data:Category> . . . </data:TransitionState> |
<Description> contains a description of the transition state. |
<data:TransitionState> . . . <data:Description>Test </data:Description> . . . </data:TransitionState> |
<Condition> contains a condition that determines whether a record can move to the transition state.
Note: Do not use any calculated fields in the expression. Calculated fields are not supported in expressions in the Condition field on transition states.
|
<data:TransitionState> . . . <data:Condition>[{Priority}]="3-Low" </data:Condition> . . . </data:TransitionState> |
<ErrorMessage> contains the text for the error message that appears if the condition that is set up for the transition state is not met when a user tries to move a record of the record type specified in the process to the transition state. |
<data:TransitionState> . . . <data:ErrorMessage> </data:ErrorMessage> . . . </data:TransitionState> |
<DisableUpdate> determines whether a record can be updated when the record is in this state (false). If this element is set to true, then users, including external applications, cannot update records of the record type specified in the process when the records are in the transition state. |
<data:TransitionState> . . . <data:DisableUpdate>true </data:DisableUpdate> . . . </data:TransitionState> |
<DisableDeleteOrRemove> determines whether a record can be deleted when the record is in this state (false). If this element is set to true, then users, including external applications, cannot delete records of the record type specified in the process while the records are in the transition state. |
<data:TransitionState> . . . <data:DisableDeleteOrRemove>true </data:DisableDeleteOrRemove> </data:TransitionState> |
The <ListofFieldSetup> section contains details of the field configuration for the transition state. |
<data:TransitionState> . . . <data:ListofFieldSetup> . . . </data:ListofFieldSetup> </data:TransitionState> |
The <FieldSetup> section contains details of the configuration for a single field. |
<data:TransitionState> . . . <data:ListofFieldSetup> <data:FieldSetup> . . . </data:FieldSetup </data:ListofFieldSetup> </data:TransitionState> |
<FieldName> contains the system name of the field, which never changes. |
<data:TransitionState> . . . <data:ListofFieldSetup> <data:FieldSetup> <data:FieldName>Account Name </data:Fieldname> . . . </data:FieldSetup </data:ListofFieldSetup> </data:TransitionState> |
<ReadOnly> determines if the field becomes read-only (true) or does not become read-only (false) when the record is in this transition state. |
<data:TransitionState> . . . <data:ListofFieldSetup> <data:FieldSetup> . . . <data:ReadOnly>true </data:ReadOnly> </data:FieldSetup </data:ListofFieldSetup> </data:TransitionState> |
The <ListofRelatedAccessControl> section contains details of the access controls that are configured on the transition state for the related record types. |
<data:TransitionState> . . . <data:ListofRelatedAccessControl> . . . </data:ListofRelatedAccessControl> </data:TransitionState> |
The <RelatedAccessControl> section contains details of the access controls for a single related record type. |
<data:TransitionState> . . . <data:ListofRelatedAccessControl> <data:RelatedAccessControl> . . . </data:RelatedAccessControl> </data:ListofRelatedAccessControl> </data:TransitionState> |
<RecordType> contains the access object name of the related record type. For information about access object names and their corresponding display names, see Access Objects. |
<data:TransitionState> . . . <data:ListofRelatedAccessControl> <data:RelatedAccessControl> <data:RecordType>Activity Book </data:RecordType> . . . </data:RelatedAccessControl> </data:ListofRelatedAccessControl> </data:TransitionState> |
<DisableCreateOrAdd> determines whether new or existing records of the specified related record type can be linked to the parent record while the parent record is in this transition state (false). If this element is set to true, then users, including external applications, cannot link existing records of the specified related record type or add new records of that type to the parent record while the parent record is in this state. |
<data:TransitionState> . . . <data:ListofRelatedAccessControl> <data:RelatedAccessControl> . . . <data:DisableCreateOrAdd>true </data:DisableCreateOrAdd> . . . </data:RelatedAccessControl> </data:ListofRelatedAccessControl> </data:TransitionState> |
<DisableUpdate> determines whether a record of the specified related record type that is linked to a parent record can be udpdated while the parent record is in this transition state (false). If this element is set to true, then users, including external applications, cannot update records of the specified related record type that are linked to the parent record while the parent record is in this state |
<data:TransitionState> . . . <data:ListofRelatedAccessControl> <data:RelatedAccessControl> . . . <data:DisableUpdate>true </data:DisableUpdate> . . . </data:RelatedAccessControl> </data:ListofRelatedAccessControl> </data:TransitionState> |
<DisableDeleteOrRemove> determines whether a related record can be deleted or unlinked from the parent record when the parent record is in this state (false). If this element is set to true, then users, including external applications, cannot delete records of the specified related record type while the parent record is in this state. |
<data:TransitionState> . . . <data:ListofRelatedAccessControl> <data:RelatedAccessControl> . . . <data:DisableDeleteOrRemove>false </data:DisableDeleteOrRemove> </data:RelatedAccessControl> </data:ListofRelatedAccessControl> </data:TransitionState> |
Migrating Process Administration Configuration Data
The following topics describe how to use the Oracle Migration Tool On Demand client to migrate process administration configuration data:
Extracting a Process for a Single Object
This topic describes how to extract a process for a single object from the Oracle CRM On Demand server for your environment; that is, a customer test environment or production environment. The output from the extract is saved to a file and directory as follow:
.../repository/ProcessAdministration/RecordType.xml
Syntax
The following is the syntax for using the Oracle Migration Tool On Demand client to extract the process for a single object:
migrationtool -u UserID -s ServerURL Read ProcessAdministration SystemNameOfObject [ProcessName]
where:
UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.
ServerURL is the URL for the Oracle CRM On Demand server where your company resides.
SystemNameOfObject is the system name of the object (record type) for which you want to extract the process, for example, Account. The system names for the record types are listed in System Names for Record Types. If you specify a process name in the command, then you do not need to specify a record type, but you must include an empty value for the SystemNameOfObject parameter. An empty value is specified as a set of double quotation marks ("").
ProcessName is the name of the process that you want to extract. This parameter is optional if you specify a record type in the command.
Example of Extracting a Process for a Single Object
The following is an example of extracting a single process for a single object:
migrationtool -u UserID -s ServerURL Read ProcessAdministration Account "My Account Process"
Extracting Processes for All Objects
This topic describes how to extract the processes for all objects from the Oracle CRM On Demand server for your environment; that is, a customer test environment or production environment.
Syntax
The following is the syntax for using the Oracle Migration Tool On Demand client to extract the processes for all objects:
migrationtool -u UserID -s ServerURL ReadAll ProcessAdministration
where:
UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.
ServerURL is the URL for the Oracle CRM On Demand server where your company resides.
Updating or Inserting a Process (Upsert)
This topic describes how to update a process (if it exists) or insert a process (if it does not exist) on your Oracle CRM On Demand environment (customer test environment or production).
About the Upsert Operation
The Upsert
command inserts or updates a process based on the user key: RecordType.
Oracle CRM On Demand attempts to locate the process specified in the input file based on the user key. If a process exists for the specified record type, then the process is updated. If a process does not exist for the specified record type, then a new process is created for that record type.
The Upsert
command inserts or updates a process transition state based on the user key: State.
Oracle CRM On Demand attempts to locate a process transition state in the input file based on the user key. If a match is located, then the transition state is updated. If Oracle CRM On Demand cannot locate a transition state based on the user key, then a new transition state is created for the process for the record type.
Read ProcessAdministration
and
ReadAll ProcessAdministration
commands do not extract the field setup and related access control configuration data for transition states, and the
Upsert ProcessAdministration
command does not insert or update this configuration data. So, if you extract a process that has field setup and related access control configuration data, and if you then insert the extracted process in a different environment, then no field setup and related access control configuration data is inserted for the process. However, if the process already exists in the target environment, and if you update the process, then any existing field setup and related access control configuration data on the process remains unchanged.
Syntax
The following is the syntax for using the Oracle Migration Tool On Demand client to insert or update a process for an object:
migrationtool -u UserID -s ServerURL Upsert ProcessAdministration ProcessXML
where:
UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.
ServerURL is the URL for the Oracle CRM On Demand server where your company resides.
ProcessXML is the fully qualified path name of the process administration XML file, for example:
C:\My Files\Account.xml
If the fully qualified path name contains any spaces, then it must be enclosed with quotation marks, for example:
migrationtool -u UserID -s ServerURL Upsert ProcessAdministration "C:\My Files\Account.xml"
Example of Updating or Inserting a Process
The following is an example of updating a process (if it exists) or inserting the process (if it does not exist) in your Oracle CRM On Demand server:
migrationtool -u UserID -s ServerURL Upsert ProcessAdministration "C:\Oracle Migration Tool On Demand\windows\repository\ProcessAdministration\Account.xml"
Migrating Process Administration Transition States
The following topics describe how to use the Oracle Migration Tool On Demand client to migrate process administration transition states:
Extracting a Single Transition State or All Transition States for a Process
This topic describes how to extract a single transition state or all of the transition states for a process from the Oracle CRM On Demand server for your environment; that is, a customer test environment or production environment. The output from the extract is saved to a file and directory as follows:
.../repository/ProcessAdministrationTransitionState/RecordTypeTransitionState.xml
Syntax
The following is the syntax for using the Oracle Migration Tool On Demand client to extract a single transition state or all of the transition states for a process:
migrationtool -u UserID -s ServerURL Read ProcessAdministrationTransitionState SystemNameOfObject [ProcessName] [StateName]
where:
-
UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.
-
ServerURL is the URL for the Oracle CRM On Demand server where your company resides.
-
SystemNameOfObject is the system name of the object (record type) for which you want to extract the transition state, for example, Account. The system names for the record types are listed in System Names for Record Types.
-
ProcessName is the name of the process that you want to extract.
-
StateName is the name of the transition state that you want to extract. If you do not specify a transition state, then all of the transition states for the specified process or record type are extracted.
Example of Extracting a Single Transition State
The following is an example of extracting a single transition state:
migrationtool -u UserID -s ServerURL Read ProcessAdministrationTransitionState Account "Account Process" Active
Example of Extracting All Transition States for a Process
The following is an example of extracting all of the transition states for a process:
migrationtool -u UserID -s ServerURL Read ProcessAdministrationTransitionState Account "Account Process"
Extracting All Transition States
This topic describes how to extract the transition states for all processes from the Oracle CRM On Demand server for your environment; that is, a customer test environment or production environment.
Syntax
The following is the syntax for using the Oracle Migration Tool On Demand client to extract the transition states for all processes:
migrationtool -u UserID -s ServerURL ReadAll ProcessAdministrationTransitionState
where:
-
UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.
-
ServerURL is the URL for the Oracle CRM On Demand server where your company resides.
Updating or Inserting a Transition State (Upsert)
This topic describes how to update a transition state (if it exists) or insert a transition state (if it does not exist) on your Oracle CRM On Demand environment (customer test environment or production).
About the Upsert Operation
The Upsert
command inserts or updates a transition state based on the following user key:
- RecordType and ProcessName and State
The value in the <State> element must match an existing picklist value in the Status field for the record type.
Oracle CRM On Demand attempts to locate the transition state specified in the input file based on the user key. If the transition state exists for the specified record type and process, then the transition state is updated. If the transition state does not exist for the specified record type and process, then a new transition state is created on the process for the record type. Existing field setup and related access control configurations are updated, but any field setup and related access control configurations that are not identified in the input XML file are not deleted.
The Upsert
command inserts or updates field setup configurations based on the user key: FieldName.
The Upsert
command inserts or updates related access control configurations based on the user key: RecordType (the access object name of a related record type).
Syntax
The following is the syntax for using the Oracle Migration Tool On Demand client to insert or update a transition state for an object:
migrationtool -u UserID -s ServerURL Upsert ProcessAdministrationTransitionState TransitionStateXML
where:
-
UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.
-
ServerURL is the URL for the Oracle CRM On Demand server where your company resides.
-
TransitionStateXML is the fully qualified path name of transition state XML file, for example:
C:\My Files\Assigned.xml
If the fully qualified path name contains any spaces, then it must be enclosed with quotation marks, for example:
migrationtool -u UserID -s ServerURL Upsert ProcessAdministrationTransitionState "C:\My Files\Assigned.xml"
Example of Updating or Inserting a Transition State
The following is an example of updating a transition state (if it exists) or inserting the transition state (if it does not exist) in your Oracle CRM On Demand server:
migrationtool -u UserID -s ServerURL Upsert ProcessAdministrationTransitionState "C:\Oracle Migration Tool On Demand\windows\repository\ProcessAdministrationTransitionState\Assigned.xml"
Deleting a Transition State
This topic describes how to delete a transition state from your Oracle CRM On Demand server for your environment (customer test environment or production).
About the Delete Operation
The Delete
command deletes a transition state and all of the field setup and related access control configurations for the transition state.
You cannot use the Delete
command to delete the field setup or the related access control configuration on a transition state without deleting the transition state itself. If you deleted the field setup or the related access control configuration from a transition state in the source environment after you migrated the transition state to a target environment, and you want to delete the corresponding configuration data from the transition state in the target environment, then you must delete the transition state from the target environment and extract and upload the transition state data from the source environment again.
Syntax
The following is the syntax for using the Oracle Migration Tool On Demand client to delete a transition state:
migrationtool -u UserID -s ServerURL Delete ProcessAdministrationTransitionState SystemNameOfObject [ProcessName] StateName
where:
-
UserID is the user sign-in ID that has the appropriate privileges to run the Oracle Migration Tool On Demand client commands.
-
ServerURL is the URL for the Oracle CRM On Demand server where your company resides.
-
SystemNameOfObject is the system name of the object (record type) from which you want to delete the transition state, for example, Account. The system names for the record types are listed in System Names for Record Types.
-
ProcessName is the name of the process from which you want to delete the transition state.
-
StateName is the name of the transition state that you want to delete.
Example of Deleting a Transition State
The following is an example of deleting a transition state:
migrationtool -u UserID -s ServerURL Delete ProcessAdministrationTransitionState Account "Account Process" Active