Process Engine Export/Import Utilities command-line reference

The Process Engine (PE) database stores objects such as queues, rosters, logs, user preferences, and system properties. Two scripts assist with the exporting and importing of these PE objects: peObject_export and peObject_import. Also, two scripts assist with exporting and importing of server configuration information: peServerConfig_export and peServerConfig_import. You can use these scripts to transfer the server configuration and objects from one PE instance to another. All of the scripts reside in the following folder (by default, depending on your PE installation): /fnsw/bin (UNIX®) or \fnsw\bin (Windows®).

This topic describes the command-line arguments for the scripts, provides an example invocation of the export scripts, and discusses the XML schema for some of the files involved.

PE object utilities

Command-line arguments

The arguments described in the following table can be used with both the peObject_export and peObject_import scripts.

Argument Description
<username> User name for the PE logon. Example: CEMPAdmin.

<password> Password for the PE logon. Example: Bird133.

<connectionPoint> PE connection point. Within the context of the Content Engine, the connection point identifies a specific isolated region in the workflow database. Example: ruby600.

<ceHost:ceWSIPort> ceHost is the Content Engine (CE) server associated with the Process Engine. ceWSIPort is the Web Services Interface (WSI) port number for the CE instance. Example: cm-peru:9080.

<outFileName> Output file for the exported data in XML format. The utilities create and use the file in this manner:
  • The export operation creates the file. If the file pre-exists, the operation throws an exception and terminates.
  • The import operation updates the PE with the data from the file. If the file does not exist, the operation throws an exception and terminates.
Example: data.xml.

[<optionsFile>] An options file in XML format. This file controls application behavior as follows:
  • For the export operation, this file controls the selection of PE objects for export. (When no file is specified, all PE objects are selected.)
  • For the import operation, this file controls how existing objects in the PE database are updated.

For more information, see Options file format. Example: P8PEExportOptions.xml.

Example invocation

            peObject_export CEMPAdmin Bird133 ruby600 cm-peru:9080 data.xml options.xml

Options file format

You can pass an options file as an argument to the PE object utilities (as stated previously; see Command-line arguments). This file controls application behavior as follows:

The following shows the XML schema for the file. Each element in the file affects either the export or the import as indicated by the "*** EXPORT ***" or "*** IMPORT ***" comments.

<PEImportExportOptions 
includeRegionProperties="{flagRegion}" 
includeSystemAdministration="{flagAdmin}" 
includeUserInfo="{flagUser}" 
xmlns="http://filenet.com/vw/api/configuration/importexport/schema/1.0">
    <!-- *** EXPORT  ***
    The following indicators control whether the exported data includes the specified type of 
    information. Valid values are true and false, where true means the inclusion of the information 
    in question.
    
        * {flagRegion}
        Region properties and region sub-objects. Note that the sub-objects can be individually selected 
        for export using the <include* > elements described below.
	
        * {flagAdmin}
        Process Engine settings, such as runtime options (enable statistics collection, enable rules 
        functionality, and so on).
	
        * [flagUser}
        User preferences (such as email notifications, window preferences, and so on).
	
        For example:
        <PEImportExportOptions 
        includeRegionProperties="false" includeSystemAdministration="true" includeUserInfo="true"
        xmlns="http://filenet.com/vw/api/configuration/importexport/schema/1.0">
        -->

        <!-- The following <include* > elements override {flagRegion} = "false".  When {flagRegion} = "true",
        they are unnecessary and have no effect.
        -->
	
        <includeQueue name="{queue}"  /> 
            <!-- ***  EXPORT ***
            {queue} is the queue added to the list of the PE objects selected for export.
            For example:
            <includeQueue name="ReviewerQueue" />
            -->
	    
        <includeRoster name="{roster}" />
            <!-- ***  EXPORT ***
            {roster} is the roster added to the list of the PE objects selected for export.
            For example:
            <includeRoster name="DefaultRoster"  />
            -->

        <includeLog name="{log}" />
            <!-- ***  EXPORT ***
            {log} is the log added to the list of the PE objects selected for export.
            For example:
            <includeLog name="DefaultEventLog" />
            -->

        <includeApplicationSpace name="{app-space}" />
            <!-- ***  EXPORT ***
            {app-space} is the application space added to the list of the PE objects selected for 
            export. For example:
            <includeApplicationSpace name="DefaultApplication" />
        -->
	
        <PEImport conflictResolve="{action}"  /> 
            <!-- ***  IMPORT ***
            {action} is the update action that determines the handling of any existing PE object with
            a name the same as that of a to-be-imported object. Valid values are as follows:
        
                * overwrite
                Initializes any existing object with imported data.
		
                * merge
                Attempts to add the imported data as new properties to an existing object instead of 
                initializing the object.
		
            The above is a general description; for more precise information on the update action, 
            see Import configuration from XML. For example:
            <PEImport conflictResolve="merge" />
            -->
	    
</PEImportExportOptions>

PE server utilities

Command-line arguments

The arguments described in the following table can be used with both the peServerConfig_export and peServerConfig_import scripts.


Argument Description
<file> Data file in XML format. The utilities create and use the file in this manner:
  • For the export operation, file is the output file for the exported data. If the output file pre-exists, the operation throws an exception and terminates.
  • For the import operation, file is the input file for the imported data. If the input file does not exist, the operation throws an exception and terminates. The output file from the export operation can be used as an input file after you make some manual alterations. For information on these alterations, see Import preparation. If a server setting already exists for an imported setting, the existing setting is overwritten. The PE is automatically restarted after a successful import.

Example: data.xml

<port> Process Engine communication port number in Process Task Manager. Typically, the port number is 32776.
Example: 32776.

Example invocation

            peServerConfig_export data.xml 32776

Import preparation

The following procedure outlines how to prepare an exported data file for import. The example below indicates some of the settings that you might need to change.

 

<?xml  version="1.0" encoding="UTF-8" ?> 
<PEServerConfig xmlns="http://filenet.com/vw/api/configuration/importexport/schema/1.0"> 
    <SecuritySettings>
        <prop name="SysAdminG" value="intg_admin"  /> 
        <prop name="ServicePassword" value="" />
        <!-- *** Add password for value *** -->
    </SecuritySettings>
    <FarmProperties> 
        <prop name="DefaultLocale" value="en_US" /> 
        <prop name="vworbbroker.endPoint" value="giop:tcp:hqruby:32777"  /> 
        <!-- *** Revise settings as appropriate for the destination PE instance, such
        as the value for vworbbroker.endPoint *** -->
    </FarmProperties>
    <Servers> 
        <server name="cm-intgwin13">
            <prop name="vworbbroker.numVWKs" value="5" /> 
        </server>
    </Servers>
    <Languages> 
        <language 
        charSet="ISO-8859-1" 
        dateMask="M/d/yy  h:mm a" 
        localeName="en_US" 
        messagePath="" 
        numMask="#,##0.###" /> 
        <!-- *** Specify the template directory location in messagePath *** -->
    </Languages>
    <Regions> 
        <region num="990" pw="" /> 
        <!-- *** Add password for pw *** -->
    </Regions>
</PEServerConfig>