Running the CATPDMReconcileEV4Batch Batch Process

 

The reconciliation can be automated by running the CATPDMReconcileEV4Batch batch process. This batch is driven via a command line giving as input the root of the assembly on which the reconciliation will be done.
  1. To retrieve the help information:

    CATPDMReconcileEV4Batch -help

  2. To run the reconciliation:

    -file fileName [-structure] [-simul (Execute|Rule|NoRule]] [-checkDoc numberOfDocs]
    [-publication docName] [-reload docName] [-keepExternal docName]
    [-forceKeepExternal] [-queryName QueryName]
    [-xml fileName] [-outputFileList] [-statistics]
    [-GR globalSet [globalSetInput] [/filter [filterInput] [/otherFilters]]]
    [-connect xxx] [-role xxx] [-user xxx] [-pwd xxx]
    [-inxml fileName [-completeWithDefaultMapping] ] [-epexml fileName]


 

Arguments

-help Help

-file filename : Name of the CATIA file to be loaded and reconciled. Several file statements are possible.
-structure Enable to switch from a full document Publication Exposed to a mode where CATProducts are saved in Structure Exposed.
-simul Execute|Rule : Enable not to execute Save or Apply in VPDM.
          Execute means that reconciliation is applied, but the save is not done.
          Rule means that the mapping and rules are set but neither the reconciliation is applied nor the save is done.
          NoRule means that only reconciliation session creation is done.
-publication docname : Enable to set an included CATProduct document to be Publication Exposed when the main CATProduct document is in Structure Exposed mode.
(only possible when -structure parameter is used).
-reload docname : Enable to set rule to Reload instead of Overwrite for an object with a specified name. Several reload statements are possible.
-keepExternal docname : Enable to set rule to Keep as External reference for an unloaded document. Several keepExternal statements are possible.
-forceKeepExternal : Enable to force usage of Keep as External rule for broken link (document not found) where query return no document.
-queryName queryname : Name of the criterion to be searched (Default is Simple Query).
-GR globalSet [globalSetInput] [/filter [filterInput] [/otherFilters]]:  used to run a global set with a filter.  globalSet is the name of the global set,  globalSetInput is any input parameters that are used with the global set, /filter allows you to apply a filter (SearchNode or custom) to select objects for the global set, filterInput is any input parameters that are used with the filter and /otherFilters

  • The mapping may not be complete when using global sets, so the -completeWithDefaultMapping option should be used to complete the mapping.  To reinforce this, when using global sets if -completeWithDefaultMapping is not used the following command line options will be ignored:  -queryName QueryName, -structure, -publication docName, -reload docName, -keepExternal docName, -forceKeepExternal.
  • If the global rule encounters an error, the batch will continue if the error is not a fatal error.  For all default global rules, the errors are not fatal and if encountered a messeage will be given and the global rule will continue on to the next object.
    Global Set Parameter Meaning Values
    New forceNew force even on mapped objects YES (or TRUE)
    NO (or FALSE)

    NO is the default.

    Query queryName query name Name of query (as displayed in the reconciliater panel)
      skipWhenMapped skip or not already mapped objects YES (or TRUE)
    NO (or FALSE)

    NO is the default.

      implicitRule the rule of all objects that are mapped is set to Overwrite and all objects that are not mapped is set to New. YES (or TRUE)
    NO (or FALSE)

    YES is the default.

    StructureExposed No parameters    
    PublicationExposed No parameters    
    Overwrite forceOverwrite force overwrite even on mapped objects YES (or TRUE)
    NO (or FALSE)

    NO is the default.

    Reload forceReload force reload even on mapped objects YES (or TRUE)
    NO (or FALSE)

    NO is the default.

    KeepExternal forceKeepExternal force keep external even on mapped objects YES (or TRUE)
    NO (or FALSE)

    NO is the default.


     

    SearchNode Filter Inputs Availability Meaning Values
    ScmType   Scm object type ANY, PART, ANYDOC, DOC
    DocExt available if Type is ANYDOC, DOC or PROXYDOC the extension of the document string
    SubTree   name of the Scm object considered as the root of the tree  
    Name   name of the Scm object string
    FileName available if Type is ANYDOC, DOC or PROXYDOC name of the file corresponding to the document string
    State   status ANY, MAPPED, NOTMAPPED
    Mode   exposition (storage) mode ANY, PUBEXP, STRUCTEXP
    <Attr Name>   attribute name/value pair.  Attr Name is actually the display name of the attribute (for example, owner). string

-statistics : Display execution statistics.
-xml filename : Stream Reconciliation session in an XML file.
-connect xxx : Provide a connection string describing how to establish a connection to VPDM repository.
-role xxx : Role used for ENOVIAVPM connection.
-user xxx : User for ENOVIAVPM connection.
-pwd xxx : User password for ENOVIAVPM connection.
 

  -checkDoc Provide number of documents in the Reconcile session for validation.
-outputFileList Enables to define the file path of the output file containing the files that will be reconciled.
-inxml Enables to specify an input EpeXML file to restart the batch from a previous reconcilation session; this option should be used with -completeWithDefaultMapping if the XML file does not specify the mapping for all objects.
-epexml Enables to generate an EpeXML file that will be used with option -inxml.
 
  Building the reconciliation session from information given in an input XML file enables the user to explicitly indicate which rule and mapping will be applied to each object to be reconciled.

The basic scenario is as follows:

  • First the batch user runs a reconciliation in simulation mode (simulation mode is specified using the
    option -simul on the batch command line) and using the command line parameter -epexml so that the batch will generate an XML file (called EpeXML file) of the reconciliation session state. This XML file will be used as a pre-valuated template in the ensuing steps.
  • The user will eventually have to complete the generated EpeXML file to resolve those ambiguities that were not resolved by the simulation (e.g. if the query returned several results, the mapping must be completed by hand). The user can also modify the EpeXML file to explicitly indicate the rule and mapping to be applied to a given object.
  • Then using the completed EpeXML file, the user reruns the reconciliation batch with the command line parameter -inxml.
  • The batch can be rerun multiple times using the same EpeXML file with -inxml command line parameter.
 

Examples

When running batches, you must always use the command catstart, of which the following is an example (for more details, see the Infrastructure Guide, Basic Tasks, Starting a Session on Windows):

catstart -run "CATPDMReconcileEV4Batch -file \"E:\DataREC\RECV5_TEST1rootprc.CATProduct\" -structure -queryName \"Query by object Id\" -user odtitp -pwd xxxxx -role VPMADMIN.ADMIN.DEFAULT -connect \"servername:portnumber\""

  1. Reconciliation of an assembly

Here is an example of the command line to use to reconcile an assembly RECV5_TEST1rootprc.CATProduct:

set CNEXTOUTPUT=E:\tmp\trace.txt
CATPDMReconcileEV4Batch -file E:\DataREC\RECV5_TEST1rootprc.CATProduct -structure  -user odtitp -pwd xxxxx -role VPMADMIN.ADMIN.DEFAULT -connect "xxxxxxxxx:nnnn"

 

  1. Reconciliation with reload of CATParts

Here is an example of the command line to use to reconcile an assembly RECV5_TEST1rootprc.CATProduct containing two CATParts RECV5_TESTPART1.CATPart and RECV5_TESTPART2.CATPart:

CATPDMReconcileEV4Batch -file E:\DataREC\RECV5_TEST1rootprc.CATProduct  -reload RECV5_TESTPART1.CATPart -reload RECV5_TESTPART2.CATPart

 

  1. Reconciliation with sub-products as publication exposed

Here is an example of the command line to use to reconcile an assembly RECV5_TEST1rootprc.CATProduct containing two sub-products RECV5_TEST1prd1.CATProduct and RECV5_TEST1prd2.CATProduct:

CATPDMReconcileEV4Batch -file E:\DataREC\RECV5_TEST1rootprc.CATProduct -publication RECV5_TEST1prd1.CATProduct -publication RECV5_TEST1prd1.CATProduct

 

  1. Reconciliation with CATParts as KeepExternal

Here is an example of the command line to use to reconcile an assembly RECV5_TEST1rootprc.CATProduct containing two CATParts RECV5_TESTPART1.CATPart and RECV5_TESTPART2.CATPart that are missing (broken link):

CATPDMReconcileEV4Batch -file E:\DataREC\RECV5_TEST1rootprc.CATProduct  -keepExternal RECV5_TESTPART1.CATPart -keepExternal RECV5_TESTPART2.CATPart

 

  1. Reconciliation with CATParts when the Part Number is different from the file name

Here is an example of the command line to use to reconcile an assembly RECV5_TEST1rootprc.CATProduct containing two CATParts RECV5_TESTPART1.CATPart and RECV5_TESTPART2.CATPart when the part number is not equal to the file name. The queries Query by Object Id and Easy Query will fail in this case, the correct query to use is Query Document by Part Id.

CATPDMReconcileEV4Batch -file E:\DataREC\RECV5_TEST1rootprc.CATProduct

  1. Reconciliation using  global set.

CATPDMReconcileEV4Batch -file E:\DataREC\RECV5_TEST1rootprc.CATProduct  -GR PublicationExposed -file E:\DataREC\RECV5_TEST1rootprc.CATProduct -GR StructureExposed -GR Query "queryName=Intermediate Query" -GR Overwrite -GR Reload SearchNode "ScmType=PART" "FileName=RECV5_TESTPART2.CATPart "

CATPDMReconcileEV4Batch -file E:\DataREC\RECV5_TEST1rootprc.CATProduct -GR PublicationExposed -file E:\DataREC\RECV5_TEST1rootprc.CATProduct -GR StructureExposed -GR Query "queryName=Intermediate Query" -GR Overwrite -GR New SearchNode "State=NOTMAPPED"

 

Limitations

  1. Configured data is not supported.
     
  2. Only one assembly structure (one PRC):

    The -file option can be used to reconcile several CATProducts, but the reconciliation will succeed only if all the listed CATProducts compose the same assembly structure because only one assembly root per reconciliation is accepted.
     
  3. Getting traces:

    The batch is based on CATIA V5 ApplicationFrame infrastructure, therefore a CATIA V5 window may appear when running the batch.
    The batch therefore needs a running window manager.
    The batch runs as a background task and its traces are not displayed in the window from which it was started. Traces can be retrieved using CNEXTOUTPUT environment variable.
 

Diagnostics

Possible exit status values are:

  • 0: Successful completion.
  • 4: Failure due to one or more of the standalone documents (-adddoc documents).
  • 8: Failure due to any of the following:
  • Query failed
  • Load of PDM data failed
  • Save of loaded data failed
  • 202: Connection failed.