All Categories  Class Hierarchy  This Category  Next  Indexes

User-exit Class CATDMUsrMethod

CATDMUsrMethod
 


public class CATDMUsrMethod

Note:
Following convention is used for naming parameters: parameter names prefixed by:

i are input parameters
o are ouput parameters
io are input/output parameters


Method Index


o ActionFlowCheck(char*,char*)
User exit called when saving Product Structure modifications.
o AfterCommitUserAction()
Allows user to perform specific action after commit.
o AfterPartIsImported(ObjID&)
User exit called after a part gets imported by the import process

o AfterRollbackUserAction()
Allows user to perform specific action after rollback.
o AfterWriteUserAction(ObjID&)
Allows user to perform specific action after write.
o AuthorizedCATIASave(ObjID&)
Checks autorisation before saving model in CATIA V4.
o AuthorizedCATIAV5Save(ObjID&)
Checks autorisation before saving document in CATIA V5.
o AuthorizedCheckIn(ObjID&)
o AuthorizedCheckOut(ObjID&)
o AuthorizedCopyInstance(int&,ObjID*)
o AuthorizedCreate(ObjID&)
o AuthorizedCreateZone(ObjID&)
User exit called when creating a zone

o AuthorizedCut(ObjID&)
o AuthorizedCutInstance(int&,ObjID*)
o AuthorizedDefineInstance(ObjID&,int&,double*)
o AuthorizedDefineInstance(int&,ObjID*)
o AuthorizedDelete(ObjID&)
o AuthorizedDeleteZone(ObjID&)
User exit called when deleting a zone

o AuthorizedDuplicate(ObjID&)
User exit called when "Duplicate" is called on an object.
o AuthorizedDuplicatedAssemblyLinks(int*,ObjID**)
User exit called when duplicating asssembly links from one part to another.
o AuthorizedDuplicatedRepresentations(int*,ObjID**)
User exit called when duplicating representations from one part to another.
o AuthorizedEditInstance(int&,ObjID*)
o AuthorizedEffDefinition(char*,char*,char*,ObjID&,int,EffParam*)
User exit called when defining effectivities on a link.
o AuthorizedEffModification(char*,char*,char*,ObjID&,EffParam&,EffParam&)
User exit called when modifying/creating/deleting an effectivity.
o AuthorizedMMLAccept(ObjID&,ObjID&)
Allows user to Accept one MML Link between both object.
o AuthorizedModDelete(char*,char*)
User exit called when deleting a modification.
o AuthorizedModDemote(char*,char*)
User exit called when demoting a modification.
o AuthorizedModPromote(char*,char*)
User exit called when promoting a modification.
o AuthorizedModValidation(char*,char*,char*,int,char**,int,int,time_t,time_t)
User exit called when validating a modification.
o AuthorizedMove(ObjID&)
o AuthorizedNewDocumentV5(ObjID*,int&,int&)
User exit called when creating a new document from CATIA V5.
o AuthorizedNewRevision(ObjID&)
Called before creating new representation revision.
o AuthorizedNewVersion(ObjID&,int)
Called before creating new part version.
o AuthorizedPaste(ObjID&,ObjID&)
o AuthorizedPasteInstance(int&,ObjID*)
o AuthorizedPromotion(ObjID&,char*,char*)
o AuthorizedProposedEffModification(char*,char*,char*,char*,int,EffParam*)
User exit called when modifying/creating/deleting a proposed effectivity.
o AuthorizedQueryOnInstance(ObjID&)
o AuthorizedReassign(ObjID&,char[9],char[11],char[11])
User exit called when changing ownership.
o AuthorizedReplace(ObjID&,ObjID&,ObjID&,ObjID&)
o AuthorizedUpdate(ObjID&)
o BckModR(ObjID&,int,char**,int*,int**,char***)
User exit called to display the backup mode panel.
o BeforeAddPartToQueue(ObjID&,char*,char*,char*,int&)
User exit called before a part is sent to the Replication Queue.
o BeforeCreateUserAction(char* const,char* const)
Allows user to perform specific action before object creation.
o BeforePartIsImported(ObjID&,int&)
User exit called before a part gets imported by the import process

o CheckLFBeforeWrite(char* const,char* const,int,char**,ObjID*,char**)
Allows to check source location or to customize LF management.
o CloseGraph(int,ObjID&)
User exit called when a PSN graph is closed.
o CommitModeControl(char*,char*,char*,int&)
User exit called to enable/disable each commit mode (it's possible to use context management GetTaskCaller() to know the current operation to commit).
o ComputeUserValuesBeforeWrite(int,char* const,char* const,int*,int*,char***,char***)
Allows to check attribute values or to valuate company attributes before writing a part or an object except feature objects.
o ComputeValuesBeforeWrite(int,char* const,char* const,int*,int*,char***,char***)
Allows to check attribute values or to valuate company attributes before writing a part or an object.
o ConfigHandlerControl(char*,char*,char*,ObjID&,char*,CHAction)
User exit called to control the config-handlers management.
o ConfigHandlerVisibilityControl(char*,char*,char*,ObjID&,char*,int&,int&)
User exit called to specify the authorized Visibility values and the default value for config-handler creation/modification.
o DefaultModValidation(char*,char**,int&,char***,int&,int&,time_t&,time_t&)
User exit called when validating action and commiting PSN graph modifications.
o DictionaryControl(char*,char*,char*,ObjID&,char*,char*,char*,char*,DicoAction)
User exit called to control the option dictionary.
o DictionaryRulesControl(char*,char*,char*,ObjID&,char*,char*,char*,DicoRulesAction)
User exit called to control the rules in option dictionary.
o DuplicateLink(ObjID&,ObjID&)
Called after link duplicate.
o EndExpand(int)
User exit called at the end of expand in 3dcom

o ExecuteCommand(int&,char*&)
Execute code related to the one defined in V5 API CATBatchServices::ExecuteOnServer

To be used when Catia V5 UserExit needs to access VPM functionnality.

o ExecuteUsrMethod(char*,int&,ObjID*)
o ExitVPMConnectedSession()
Last user-exit called before Db deconnect.
o ExpandContextRoot(CATVPMNode*,ObjID&)

o ExpandSelections(CATVPMNode*,CATLISTP(CATVPMNode)&,ObjID&)

o FormatConfigHandlerId(ObjID&,char*,char**)
Called when user select OK in New config-handler panel.
o GetBGColorForPrint(char*,char*,char*)
User exit called when user print result panel.
o GetCGRPath(ObjID&,char*&)
User exit called when HasCgr has stated that customer can give a cgr.
o GetConfNameHistory(char[9],char[11],char***,int*)
Allows customization of the proposed values list in the Modification Name combo, when commiting changes on a configurable part in PSN.
o GetInputListOfValues(char*,char*,int*,int*,char***)
User exit called when user create new panel (insert, query or update) if $AUTHORIZEDVALUES or $HELPVALUES exist but empty.
o GetLastSuccessfullExportTimeStamp(ObjID&,char*,char*)
User exit called before Multi Site "Export" is called on an object.
o GetNewRevisionListOfValues(ObjID&,char*,char*,char*,int*,char***,int*)
Provides a list of proposed values upon creation/update of a revision.
o GetNewVersionListOfValues(ObjID&,char*,char*,char*,int*,char***,int*)
Provides a list of proposed values upon creation/update of a version.
o GetReadOnlyStatus(ObjID*,int&)
User exit called when loading representations to viewer that supports read only status.
o GetReplaceCustomParts(ObjID&,ObjID&,ObjID&,int&,ObjID*&)
Get candidate parts when performing a "Replace / part custom.
o GetRevisions(char*,ObjID&,int&,int&,ObjID*&)
Get candidate revisions when asking from V5 all revisions of a specified document.
o HasCGR(ObjID&)
User exit called when using 3dlive and no cgr is stored in db.
o IsAValidDuplicatedRevision(ObjID&,char*,char*)
Checks the validity of the keyed value for revision duplication when versioning a part.
o IsAValidFlagForCommit(char*,int,int*,ObjID*,ObjID*)
Allows user to validate keyed flag versus current modifications.
o IsAValidNewRevision(ObjID&,char*,char*,char*,RevVerAction)
Checks the validity of the keyed value for revision.
o IsAValidNewVersion(ObjID&,char*,char*,char*,RevVerAction)
Checks the validity of the keyed value for revision.
o IsAValidParamListForCommit(int,EffParam*,int,int*,ObjID*,ObjID*)
Allows user to validate keyed parameters versus current modifications.
o IsAValidRevisionVersion(ObjID&,char[4],char[4],char[4])
Checks the validity of the keyed value for version or revision.
o IsExistingParamValidForCommit(int,int*,ObjID*,ObjID*)
Allows user to validate the commit of current modifications with existing effectivity parameters.
o IsMassiveDuplicateAllowed(ObjID&,int)
Called before duplicating onject during Massiveduplicate.
o MilestonesControl(char*,char*,char*,ObjID&,char*,char*,int,MilestonesAction)
User exit called to control the milestones.
o ModCreateOwner(char*,char*)
User exit called when creating a modification.
o OpenGraph(int,ObjID&)
User exit called when a PSN graph is opened.
o OpenObject(char*,int,ObjID*)
User exit called when "open" is called on an object(s).
o OpenPSNWithUsrMethod(char*,int&,int*,PartAsmID**,double**)
o OptionListToDisplay(char*,char*,char*,ObjID&,int,int&,char***,char***,char***)
Called when display option selection box.
o PSNCopyCB(CATLISTP(CATVPMNode)&)
User exit called when "copy" is called on a PSN node.
o PSNCutCB(CATLISTP(CATVPMNode)&)
User exit called when "cut" is called on a PSN node.
o PSNPasteCB(CATVPMNode*,SdaiAppInstance*,SdaiAppInstance*)
User exit called when "paste" is called on a PSN node.
o Replace(ObjID&,ObjID&)
Called after replace (but before commit).
o SetVolumeFilter(int,ObjID&,int,int,double[6])
User exit called when a volume filter is applied on AT0EXPND or 3dcom.
o StartExpand(int&)
User exit called at the beginning of expand in 3dcom

o SuccessfullyCommitInGraph(char*,int,int*,ObjID*,ObjID*)
o SuccessfullyRollBackInGraph()
o UnixPathToWinPath(char*,int,char**)

o UpdateConfigViewValuesForSecurity(char* const,char* const,int*,char***,char***,int*)
o UpdateObject(ObjID&,int*,char***,char***)
Allows to check attribute values before updating an object.
o WinPathToUnixPath(char*,int,char**)

Methods


o ActionFlowCheck
public static int ActionFlowCheck( const char* iModificationFlag,
const char* iUser)
User exit called when saving Product Structure modifications.

Returns:
1 Action flow will test whether the current user/role has the right to write the modifications (maintenance phase)
0 Action flow won't be called when saving the modifications (development phase)
o AfterCommitUserAction
public static Error AfterCommitUserAction()
Allows user to perform specific action after commit.

Returns:
If the method return an error, an error message will be displayed in an error notification panel.
o AfterPartIsImported
public static Error AfterPartIsImported( const ObjID& iObj)
User exit called after a part gets imported by the import process

Parameters:
iObj
object to be imported
o AfterRollbackUserAction
public static void AfterRollbackUserAction()
Allows user to perform specific action after rollback.
o AfterWriteUserAction
public static Error AfterWriteUserAction( const ObjID& iObj)
Allows user to perform specific action after write.

Parameters:
iObj
object created

Returns:
If the method return an error, a rollback will be performed and an error message will be displayed in an error notification panel.
o AuthorizedCATIASave
public static int AuthorizedCATIASave( const ObjID& iObj)
Checks autorisation before saving model in CATIA V4.

Returns:
= 0 means save is authorized in CATIA V4
<>0 it is an error code => save in CATIA will not be performed
o AuthorizedCATIAV5Save
public static Error AuthorizedCATIAV5Save( const ObjID& iObj)
Checks autorisation before saving document in CATIA V5.

Returns:
= 0 means save is authorized in CATIA V5
<>0 it is an error code => save in CATIA will not be performed
o AuthorizedCheckIn
public static Error AuthorizedCheckIn( const ObjID& iObj)
o AuthorizedCheckOut
public static Error AuthorizedCheckOut( const ObjID& iObj)
o AuthorizedCopyInstance
public static Error AuthorizedCopyInstance( const int& NbSelectedInstances,
ObjID* iSelectedInstances)
o AuthorizedCreate
public static Error AuthorizedCreate( const ObjID& iObj)
o AuthorizedCreateZone
public static Error AuthorizedCreateZone( const ObjID& iObj)
User exit called when creating a zone

Returns:
If Error.Ier equals 0 create is allowed, else error message is displayed
o AuthorizedCut
public static Error AuthorizedCut( const ObjID& iLink)
o AuthorizedCutInstance
public static Error AuthorizedCutInstance( const int& NbSelectedInstances,
ObjID* iSelectedInstances)
o AuthorizedDefineInstance
public static Error AuthorizedDefineInstance( const ObjID& iRootObj,
const int& iLevel,
double* iLinksId)
o AuthorizedDefineInstance
public static Error AuthorizedDefineInstance( const int& NbSelectedInstances,
ObjID* iObj)
o AuthorizedDelete
public static Error AuthorizedDelete( const ObjID& iObj)
o AuthorizedDeleteZone
public static Error AuthorizedDeleteZone( const ObjID& iObj)
User exit called when deleting a zone

Returns:
If Error.Ier equals 0 delete is allowed, else error message is displayed
o AuthorizedDuplicate
public static Error AuthorizedDuplicate( const ObjID& iObj)
User exit called when "Duplicate" is called on an object.

Parameters:
iObj
objects onto which "Duplicate" action is performed
o AuthorizedDuplicatedAssemblyLinks
public static Error AuthorizedDuplicatedAssemblyLinks(int* ioNbObj,
ObjID** ioObjs)
User exit called when duplicating asssembly links from one part to another.

Parameters:
ioNbObj
Input  Number of candidate assembly links.
Output Number of asssembly links to duplicate.
ioObjs
Input  Candidate assembly links.
Output Assembly link to duplicate.

Returns:
If Error.Ier equals 0 duplication is allowed, else error message is displayed.
o AuthorizedDuplicatedRepresentations
public static Error AuthorizedDuplicatedRepresentations(int* ioNbObj,
ObjID** ioObjs)
User exit called when duplicating representations from one part to another.

Parameters:
ioNbObj
Input  Number of candidate representations.
Output Number of representations to duplicate.
ioObjs
Input  Candidate representations.
Output Representations to duplicate.

Returns:
If Error.Ier equals 0 duplication is allowed, else error message is displayed.
o AuthorizedEditInstance
public static Error AuthorizedEditInstance( const int& NbSelectedInstances,
ObjID* iObj)
o AuthorizedEffDefinition
public static Error AuthorizedEffDefinition( const char* iUser,
const char* iRole,
const char* iOrg,
const ObjID& iLink,
const int iNbEffParam,
EffParam* iEffParamPtr)
User exit called when defining effectivities on a link.

Parameters:
iUser
user ID
iRole
user role
iOrg
user organization
iLink
link associated to the effectivities to be defined
iNbEffParam
number of rows in the parameters matrix of the proposed effectivity
iEffParamPtr
list of parameters (with iNbEffParam rows) for the proposed effectivity

Returns:
If Error.Ier equals 0 modification is allowed, else error message is displayed.
o AuthorizedEffModification
public static Error AuthorizedEffModification( const char* iUser,
const char* iRole,
const char* iOrg,
const ObjID& iLink,
const EffParam& iOldEff,
const EffParam& iNewEff)
User exit called when modifying/creating/deleting an effectivity.

Parameters:
iUser
user ID
iRole
user role
iOrg
user organization
iLink
link associated to the effectivity to modify
iOldEff
old effectivity (initial effectivity to modify)
NB: iOldEff.Type = "" if creating a new effectivity
iNewEff
new effectivity (effectivity after modifications)
NB: iNewEff.Type = "" if deleting a new effectivity

Returns:
If Error.Ier equals 0 modification is allowed, else error message is displayed.
o AuthorizedMMLAccept
public static Error AuthorizedMMLAccept( const ObjID& iFrom,
const ObjID& iTo)
Allows user to Accept one MML Link between both object. The MML link is defined between iFrom and iTo in the MML graph. In an "Impacted By" graph: iFrom ---> iTo In an "Impacts On" graph: iTo <--- iFrom

Parameters:
iFrom
Object holder of the link, ie. the pointing Object
iTo
Object pointed by the link.

Returns:
If method return an error, the Accept process on link is not allowed.
o AuthorizedModDelete
public static Error AuthorizedModDelete( const char* iModification,
const char* iUser)
User exit called when deleting a modification.

Returns:
If Error.Ier equals 0 delete is allowed, else error message is displayed
o AuthorizedModDemote
public static Error AuthorizedModDemote( const char* iModification,
const char* iUser)
User exit called when demoting a modification.

Returns:
If Error.Ier equals 0 demote is allowed, else error message is displayed
o AuthorizedModPromote
public static Error AuthorizedModPromote( const char* iModification,
const char* iUser)
User exit called when promoting a modification.

Returns:
If Error.Ier equals 0 promote is allowed, else error message is displayed
o AuthorizedModValidation
public static Error AuthorizedModValidation( const char* iModification,
const char* iUser,
const char* iValidationType,
const int iNbOptions,
char** iOptionList,
const int iRangeBot,
const int iRangeTop,
const time_t iDateBeg,
const time_t iDateEnd)
User exit called when validating a modification.

Parameters:
iModification
Modification to validate
iUser
Identifier of the user
iValidationType
Type of the validation (option, range, date, pack, option_range, option_date, pack_range, pack_date)
iNbOptions
Number of options in iOptionList
= 1 if type is equal "option", "option_range" or "option_date"
= n if type is equal "pack", "pack_range" or "pack_date"
iOptionList
significant only if iValidationType is equal to "option", "option_range", "option_date", "pack", "pack_range" or "pack_date"
iRangeBot
significant only if iValidationType is equal to "range", "option_range" or "pack_range"
iRangeTop
significant only if iValidationType is equal to "range", "option_range" or "pack_range"
iDateBeg
significant only if iValidationType is equal to "date", "option_date" or "pack_date"
iDateEnd
significant only if iValidationType is equal to "date", "option_date" or "pack_date"

Returns:
If Error.Ier equals 0 validation is allowed, else error message is displayed
o AuthorizedMove
public static Error AuthorizedMove( const ObjID& iLink)
o AuthorizedNewDocumentV5
public static Error AuthorizedNewDocumentV5( const ObjID* iObj,
int& oDefaultValue,
int& oEditable)
User exit called when creating a new document from CATIA V5.

Parameters:
iObj
object to be saved
oDefaultValue
0 if the checkbox is not to be checked by default 1 if the checkbox is to be checked by default
oEditable
1 if the user is authorized to change the default value 0 if the user is not authorized to change the default value
o AuthorizedNewRevision
public static Error AuthorizedNewRevision( const ObjID& iObj)
Called before creating new representation revision.

Note: used in BOTH revisioning mode

Parameters:
iObj
object from which we want to create a new revision
o AuthorizedNewVersion
public static Error AuthorizedNewVersion( const ObjID& iObj,
const int iNewPartNumber)
Called before creating new part version.

Note: used in BOTH revisioning mode

Parameters:
iObj
object from which we want to create a new version
iNewPartNumber
0 same part number
1 new part number
o AuthorizedPaste
public static Error AuthorizedPaste( const ObjID& iFather,
const ObjID& iChild)
o AuthorizedPasteInstance
public static Error AuthorizedPasteInstance( const int& NbSelectedInstances,
ObjID* iSelectedInstances)
o AuthorizedPromotion
public static Error AuthorizedPromotion( const ObjID& iObj,
const char* iOldStatus,
const char* iNewStatus)
o AuthorizedProposedEffModification
public static Error AuthorizedProposedEffModification( const char* iUser,
const char* iRole,
const char* iOrg,
const char* iActionName,
const int iNbEffParam,
EffParam* iEffParamPtr)
User exit called when modifying/creating/deleting a proposed effectivity.

Parameters:
iUser
user ID
iRole
user role
iOrg
user organization
iActionName
action name for the proposed effectivity
iNbEffParam
number of rows in the parameters matrix of the proposed effectivity
iEffParamPtr
list of parameters (with iNbEffParam rows) for the proposed effectivity

Returns:
If method return an error, parameters must be changed or commit canceled.
o AuthorizedQueryOnInstance
public static Error AuthorizedQueryOnInstance( const ObjID& iInstance)
o AuthorizedReassign
public static Error AuthorizedReassign( const ObjID& iObj,
const char[9] iUser,
const char[11] iOrg,
const char[11] iSite)
User exit called when changing ownership.

Returns:
If Error.Ier equals 0 modification is allowed, else error message is displayed.
o AuthorizedReplace
public static Error AuthorizedReplace( const ObjID& iFather,
const ObjID& iLink,
const ObjID& iChild,
const ObjID& iNewChild)
o AuthorizedUpdate
public static Error AuthorizedUpdate( const ObjID& iObj)
o BckModR
public static int BckModR( const ObjID& iObj,
const int iNb,
char** iRType,
int* oNb,
int** oLnkOI,
char*** oRType)
User exit called to display the backup mode panel.

Parameters:
iObj
object on which action is performed
iNb
size iRType
iRType
value when REPRES_TYPE attribute is like 'old.backup%'
oNb
size of output tables (oLnkOI and oRType)
NB: only the "new" constructor shoud be used for ouput table allocation
oLnkOI
Link between oRType -> iRType
oRType
value to display

 Example:   iNb = 3         oNb = 2            
iRType oLnkOI oRType
+----+ +----+ +----+
0| x |<-+ +-- 0| 2 |<---- 0| z* |
+----+ | | +----+ +----+
1| y | +--o-- 1| 0 |<---- 1| x* |
+----+ | +----+ +----+
2| z |<----+
+----+

Returns:
not used
o BeforeAddPartToQueue
public static Error BeforeAddPartToQueue( const ObjID& iObj,
char* ioTargetSite,
char* ioUser,
char* ioOrg,
int& ioDoTransfertToSite)
User exit called before a part is sent to the Replication Queue.

Parameters:
iObj
object to be exported
ioTargetSite
Target Site to transfer (Max size of 10)
ioUser
User Responsible (Max size of 8)
ioOrg
Org Responsible (Max size of 10)
oTransfertToSite
1 if a transfert to the site is to be performed 0 if the transfert to site should not be performed
o BeforeCreateUserAction
public static Error BeforeCreateUserAction( const char* const iCaenv,
const char* const iObject)
Allows user to perform specific action before object creation.

Parameters:
iCaenv
Environment into which the object is going to be created
iObject
Object (type) to be created

Returns:
If the method return an error, the creation is canceled and an error message will be displayed in an error notification panel.
o BeforePartIsImported
public static Error BeforePartIsImported( const ObjID& iObj,
int& oAbortImport)
User exit called before a part gets imported by the import process

Parameters:
iObj
object to be imported
oAbortImport
set to 1 to abort the import
o CheckLFBeforeWrite
public static Error CheckLFBeforeWrite( const char* const iCaenv,
const char* const iCatab,
const int iSource,
char** ioPath,
ObjID* ioObj,
char** ioRepository)
Allows to check source location or to customize LF management.

Parameters:
iCaenv
Owner of the environment into which the object is being written
iCatab
Name of the table into which the object is being written
iSource
Where the LF (long field) comes from:
1 File
2 CATIA V4
3 New one (empty)
4 Object in database
5 Document
7 DENEB product
ioPath
Significant only when iSource is equal to "File" (1).It is the full path of the file.
ioObj
Significant only when iSource is equal to "Object in database" (4).
ioRepository
Where the LF is going to be written

Returns:
The method must return 0 if the operation is accepted or error code if it is refused. In such a case, an error message is displayed in an error notification panel and the operation is canceled.
o CloseGraph
public static void CloseGraph( const int iGraphNum,
const ObjID& iPart)
User exit called when a PSN graph is closed.

Parameters:
iPart
root part of the graph
o CommitModeControl
public static Error CommitModeControl( const char* iUser,
const char* iRole,
const char* iOrg,
int& oCommitModeToDisable)
User exit called to enable/disable each commit mode (it's possible to use context management GetTaskCaller() to know the current operation to commit).

Parameters:
iUser
user ID
iRole
user role
iOrg
user organization

oCommitModeToDisable
Modes to disable:
COMMIT_ACTION: To validate with Action
COMMIT_CFG_PARAM: Commit with parameters
COMMIT_EXISTING_EFF: Commit with existing effectivity parameters
COMMIT_STEP_FILE: Update with effectivities from STEP file

exple of use:
oCommitModeToDisable = COMMIT_CFG_PARAM | COMMIT_EXISTING_EFF; (to disable these two modes)

Returns:
If the method return an error, the error message will be displayed in an error notification panel.
o ComputeUserValuesBeforeWrite
public static Error ComputeUserValuesBeforeWrite( const int iUpdate,
const char* const iCaenv,
const char* const iCatab,
int* iNbAttPart,
int* iNbAttObj,
char*** ioAttNames,
char*** ioAttVals)
Allows to check attribute values or to valuate company attributes before writing a part or an object except feature objects.

This method is called before checking if an object with the input values already exists, and, thus before ComputeValuesBeforeWrite().
As opposed to the latter, this method shall only modify external attributes, that is, all but those prefixed by "$" and "C_" (except for C_NICKNAME and C_LAST_REPOSITORY for representations).
For example, it is possible to hide an "S_" (but mandatory) attribute from the user in the insert panel, and fill it here.

Parameters:
iUpdate
0 user-exit called in write context
1 user-exit called in update context
iCaenv
Owner of the environment into which the object is being written
iCatab
Name of the table into which the object is being written
iNbAttPart
Number of attributes given for the part
iNbAttObj
Number of attributes given for the object
ioAttNames
Names of the given attributes for the part and the object being written (array size: iNbAttPart + iNbAttObj)
ioAttVals
Values of the given attributes for the part and the object being written (array size: iNbAttPart + iNbAttObj)

Returns:
The method must return 0 if the operation is accepted or error code if it is refused. In such a case, an error message is displayed in an error notification panel and the operation is canceled.
The attributes given in the list are the ones that were valuated in the insert panel. If you wish to valuate a "hidden" attribute, you will have to reallocate AttNames and AttVals and add the attribute and its value.
o ComputeValuesBeforeWrite
public static Error ComputeValuesBeforeWrite( const int iUpdate,
const char* const iCaenv,
const char* const iCatab,
int* iNbAttPart,
int* iNbAttObj,
char*** ioAttNames,
char*** ioAttVals)
Allows to check attribute values or to valuate company attributes before writing a part or an object.

Parameters:
iUpdate
0 user-exit called in write context
1 user-exit called in update context
iCaenv
Owner of the environment into which the object is being written
iCatab
Name of the table into which the object is being written
iNbAttPart
Number of attributes given for the part
iNbAttObj
Number of attributes given for the object
ioAttNames
Names of the given attributes for the part and the object being written (array size: iNbAttPart + iNbAttObj)
ioAttVals
Values of the given attributes for the part and the object being written (array size: iNbAttPart + iNbAttObj)

Returns:
The method must return 0 if the operation is accepted or error code if it is refused. In such a case, an error message is displayed in an errornotification panel and the operation is canceled.
The attributes given in the list are the ones that were valuated in the insert panel. If you wish to valuate a "hidden" attribute, you will have to reallocate AttNames and AttVals and add the attribute and its value.
o ConfigHandlerControl
public static Error ConfigHandlerControl( const char* iUser,
const char* iRole,
const char* iOrg,
const ObjID& iProduct,
const char* iCHName,
const CHAction iAction)
User exit called to control the config-handlers management.

Parameters:
iUser
user ID
iRole
user role
iOrg
user organization
iProduct
product associated to the config-handler
iCHName
name of the config-handler to control the access
iAction
action to control on the config-handler (cf enum CHAction)

Returns:
If Error.Ier equals 0 modification is allowed, else error message is displayed.
o ConfigHandlerVisibilityControl
public static void ConfigHandlerVisibilityControl( const char* iUser,
const char* iRole,
const char* iOrg,
const ObjID& iProduct,
const char* iCHName,
int& oAuthorizedVisibility,
int& oDefaultVisibility)
User exit called to specify the authorized Visibility values and the default value for config-handler creation/modification.

Parameters:
iUser
user ID
iRole
user role
iOrg
user organization
iProduct
product associated to the config-handler
iCHName
name of the config-handler to control the authorized visibility (NULL for creation)
oAuthorizedVisibility
All authorized values to display (default = all):
CH_PUBLIC: Everyone can use the config-handler
CH_PRIVATE: Only the owner can use the config-handler
CH_DATAGROUP: Everyone with UseCH process with corresponding datagroup can use the config-handler

exple of use:
oAuthorizedVisibility = CH_PRIVATE | CH_DATAGROUP; (to authorized these two values)

oDefaultVisibility
Default value when creating new config-handler (default = PUBLIC if authorized)

exple of use: oDefaultVisibility = CH_PRIVATE;

o DefaultModValidation
public static Error DefaultModValidation( const char* iModif,
char** oType,
int& oOptListSize,
char*** oOptList,
int& oRangeBot,
int& oRangeTop,
time_t& oDateBeg,
time_t& oDateEnd)
User exit called when validating action and commiting PSN graph modifications.

Parameters:
iModif
Modification to validate
oType
Type of the validation (option, range, date, pack, option_range, option_date, pack_range, pack_date)
oOptListSize
Number of options in oOptList
= 1 if type is equal "option", "option_range" or "option_date"
= n if type is equal "pack", "pack_range" or "pack_date"
oOptList
significant only if oType is equal to "option", "option_range", "option_date", "pack", "pack_range" or "pack_date"
oRangeBot
significant only if oType is equal to "range", "option_range" or "pack_range"
oRangeTop
significant only if oType is equal to "range", "option_range" or "pack_range"
oDateBeg
significant only if oType is equal to "date", "option_date" or "pack_date"
oDateEnd
significant only if oType is equal to "date", "option_date" or "pack_date"

Returns:
If Error.Ier equals 0 validation is done, else error message is displayed
o DictionaryControl
public static Error DictionaryControl( const char* iUser,
const char* iRole,
const char* iOrg,
const ObjID& iProduct,
const char* iOptionName,
const char* iCategoryName,
const char* iCategoryOwner,
const char* iCategoryOrg,
const DicoAction iAction)
User exit called to control the option dictionary.

Parameters:
iUser
user ID
iRole
user role
iOrg
user organization
iProduct
dictionary product
iOptionName
name of the option to control the access
iCategoryName
name of the associated type(VPM1.2)/category(VPM1.3)
iCategoryOwner
owner of the category (used since VPM1.3 only)
iCategoryOrg
organization of the category (used since VPM1.3 only)
iAction
action to control on the dictionary (see enum
DicoAction )

Returns:
If Error.Ier equals 0 modification is allowed, else error message is displayed.
o DictionaryRulesControl
public static Error DictionaryRulesControl( const char* iUser,
const char* iRole,
const char* iOrg,
const ObjID& iProduct,
const char* iRuleId,
const char* iRuleOwner,
const char* iRuleOrg,
const DicoRulesAction iAction)
User exit called to control the rules in option dictionary.

Parameters:
iUser
user ID
iRole
user role
iOrg
user organization
iProduct
dictionary product
iRuleId
identifier of the rule to control the access
iRuleOwner
owner of the rule
iRuleOrg
organization of the rule
iAction
action to control on the rules of the dictionary (see enum
DicoRulesAction )

Returns:
If Error.Ier equals 0 modification is allowed, else error message is displayed.
o DuplicateLink
public static Error DuplicateLink( const ObjID& iOld,
const ObjID& iNew)
Called after link duplicate.

Parameters:
iOld
is the source link.
iNew
is the newly created link.
o EndExpand
public static int EndExpand(int iToken)
User exit called at the end of expand in 3dcom

Parameters:
iToken
token identifying the expand
Returns:
0 Ok <>0 Ko
o ExecuteCommand
public static void ExecuteCommand(int& ioLng,
char*& ioMsg)
Execute code related to the one defined in V5 API CATBatchServices::ExecuteOnServer

To be used when Catia V5 UserExit needs to access VPM functionnality. The Catia V5 command has to be defined in CATBatchServices::ExecuteOnServer The command is then sent to VPM where "ExecuteCommand" is called and the result sent back to CATIA V5

Parameters:
ioLng
User defined int
ioMsg
User defined char*
Returns:
not used
o ExecuteUsrMethod
public static Error ExecuteUsrMethod( const char* iMethodName,
const int& iNbSelectedInstances,
ObjID* iSelectedObjects)
o ExitVPMConnectedSession
public static void ExitVPMConnectedSession()
Last user-exit called before Db deconnect.
o ExpandContextRoot
public static void ExpandContextRoot(CATVPMNode* iRoot,
const ObjID& iObj)

Parameters:
iRoot
Root Node
iObj
Object used to build context
o ExpandSelections
public static void ExpandSelections(CATVPMNode* iRoot,
const CATLISTP(CATVPMNode)& iSelections,
const ObjID& iObj)

Parameters:
iRoot
Root Node
iSelections
selections
iObj
Object used to build context
o FormatConfigHandlerId
public static Error FormatConfigHandlerId( const ObjID& iObj,
const char* iCHUserId,
char** oCHNewId)
Called when user select OK in New config-handler panel.
Allows to format the config-handler Id.

Parameters:
iObj
object (product) associated to the config-handler
iCHUserId
user config-handler Id
oCHNewId
updated (formatted) config-handler Id

Returns:
If the method return an error, the creation will not be performed and an error message will be displayed in an error notification panel.
o GetBGColorForPrint
public static char* GetBGColorForPrint( const char* iCatab,
const char* iAttribute,
const char* iValue)
User exit called when user print result panel.

Returns:
an HTML color (for instance: "#FFFFFF") returned char* will be deleted by VPM
o GetCGRPath
public static int GetCGRPath( const ObjID& iObj,
char*& oCgrPath)
User exit called when HasCgr has stated that customer can give a cgr.

Parameters:
iObj
object to be checked
oCgrPath
use new char for allocation Path of the cgr to be displayed
Returns:
0 Ok (then oCgrPath != NULL) <>0 Ko
o GetConfNameHistory
public static void GetConfNameHistory( const char[9] iUser,
const char[11] iOrg,
char*** oHistory,
int* oHistSize)
Allows customization of the proposed values list in the Modification Name combo, when commiting changes on a configurable part in PSN.

If method does not provide a history list (oHistSize=0), the caller method will use default history.
Allocation of oHistory's elements has to be done in function GetConfNameHistory.
Desallocation is the responsability of VPM.

Parameters:
iUser
user name
iOrg
user organization
oHistory
points on the list of proposed values
oHistSize
number of proposed values
o GetInputListOfValues
public static void GetInputListOfValues( const char* iCatab,
const char* iAttribute,
int* oAuthorized=0,
int* oNbValues=0,
char*** oValues=0)
User exit called when user create new panel (insert, query or update) if $AUTHORIZEDVALUES or $HELPVALUES exist but empty.

This user-exit is called several times. At each call, you only have to fill the output parameters which are not NULL.

Parameters:
oAuthorized
-1 Help values without default value
-2 Help values with first value as default value
 1 Authorized values without default value
 2 Authorized values with first value as default value
oNbValues
number of values returned
oValues
list of values (this array is allocated and deleted by VPM)
o GetLastSuccessfullExportTimeStamp
public static Error GetLastSuccessfullExportTimeStamp( const ObjID& iObj,
const char* iTargetSite,
char* oLastTS)
User exit called before Multi Site "Export" is called on an object.

Parameters:
iObj
object onto which "Export" action is performed
iTargetSite
Export Target Site
oLastTS
times stamp value for last succesfull Export time stamp format YYYY-MO-DD-HH.MI.SS.NNNNNN time stamp exemple 2006-02-28-23.59.59.000000 time stamp ends with '\0' time stamp maximum length is 27 time stamp is compared with INFO_LF TS if LastTS > INFO_LF.TS LF are not copied in tarfile and during Import LF are not modified
o GetNewRevisionListOfValues
public static void GetNewRevisionListOfValues( const ObjID& iObj,
const char* iMaturity,
const char* iLastRev,
const char* iCurRev,
int* oNbRevValues,
char*** oRevValues,
int* oAuthorized)
Provides a list of proposed values upon creation/update of a revision.

If number of values is greater than 0, the values will be displayed in a list inside input panel.

Note: used in NEW revisioning mode

Parameters:
iObj
object from which we want to create a new revision
iMaturity
maturity of the object
iLastRev
last existing revision number
iCurRev
revision number of the object being handled
oNbRevValues
number of values returned
oAuthorized
decides if output values are to be taken as authorized values (default is: help values)
o GetNewVersionListOfValues
public static void GetNewVersionListOfValues( const ObjID& iObj,
const char* iMaturity,
const char* iLastVer,
const char* iCurVer,
int* oNbVerValues,
char*** oVerValues,
int* oIsAuthorized)
Provides a list of proposed values upon creation/update of a version.

If number of values is greater than 0, the values will be displayed in a list inside input panel.

Note: used in NEW revisioning mode

Parameters:
iobj
object from which we want to create a new version
iMaturity
maturity of the object
iLastRev
last existing version number
iCurRev
version number of the object being handled
oNbVerValues
number of values returned
oVerValues
list of values (memory has to be allocated within the user exit; it is freed by the caller)
oAuthorized
decides if output values are to be taken as authorized values (default is: help values)
o GetReadOnlyStatus
public static int GetReadOnlyStatus( const ObjID* iObj,
int& oCheckVPMReadOnly)
User exit called when loading representations to viewer that supports read only status.

Parameters:
iObj
object to be loaded
oCheckVPMReadOnly
1 if standard VPM readonly must be also looked at 0 otherwise (only parameter returns will be looked at)
Returns:
0 if not readonly 1 if readonly
o GetReplaceCustomParts
public static Error GetReplaceCustomParts( const ObjID& iFather,
const ObjID& iLink,
const ObjID& iChild,
int& oNbCandidateChild,
ObjID*& oCandidateChildren)
Get candidate parts when performing a "Replace / part custom...".

If provided, the output parts will be listed in VPM so the user can choose with which one the initial part should be replaced with.

Parameters:
iFather
Parent part object (when called from PSN graph).
iLink
Link object (when called from PSN graph).
iChild
Child part object to replace.
oNbCandidateChild
Number of candidate parts for replace.
oCandidateChildren
Candidate part objects.

Returns:
If Error.Ier equals 0, the replace operation continues, otherwise an error message is displayed.
o GetRevisions
public static Error GetRevisions( const char* iType,
const ObjID& iInitialObject,
int& oSearchedPerformed,
int& oNbRevisions,
ObjID*& oRevisions)
Get candidate revisions when asking from V5 all revisions of a specified document.

Parameters:
iTypeFather
Type of search
"All" : look for all revisions of all versions of the part of "iInitialObject"
"InWork": look for all revisions of the "InWork" part of "iInitialObject"
iInitialObject
Object used to search
oSearchedPerformed
= 1 if search has been performed
= 0 if search has not been performed
oNbRevisions
Number of candidate revisions
oRevisions
Candidate revisions

Returns:
If Error.Ier equals 0, processus has determined all revisions according to the specified Type
o HasCGR
public static int HasCGR( const ObjID& iObj)
User exit called when using 3dlive and no cgr is stored in db. aim is to determine if customer is able to give a cgr to display

Parameters:
iObj
object to be checked
Returns:
0 nothing <>0 has
o IsAValidDuplicatedRevision
public static Error IsAValidDuplicatedRevision( const ObjID& iObj,
const char* iPrevRev,
const char* iNewRev)
Checks the validity of the keyed value for revision duplication when versioning a part.

Note: used in NEW revisioning mode when declarative CATCDMA.VPM.VERSION.SELECTREVISION.INPUT is set to TRUE

Parameters:
iObj
object from which we want to create a new revision
iPrevRev
previous revision number of the object
iNewRev
new revision number

Returns:
The method must return an Error with Ier=0 if the operation is accepted or error code if it is refused.
In such a case, an error message is displayed in an error notification panel.
o IsAValidFlagForCommit
public static Error IsAValidFlagForCommit( const char* iModificationFlag,
const int iNbModifications,
int* iTypeOfModifications,
ObjID* iAddedLinks,
ObjID* iRemovedLinks)
Allows user to validate keyed flag versus current modifications.

Parameters:
iModificationFlag
flag which is going to be used in order to save following modifications
iNbModifications
number of modifications
iTypeOfModifications
list of types for each modification (with iNbModifications rows)
iAddedLinks
list of added links (with iNbModifications rows)
iRemovedLinks
list of removed links (with iNbModifications rows)

Returns:
If method return an error, another modification flag must be keyed or
commit canceled.
o IsAValidNewRevision
public static Error IsAValidNewRevision( const ObjID& iObj,
const char* iMaturity,
const char* iPrevRev,
const char* iNewRev,
const RevVerAction iAction)
Checks the validity of the keyed value for revision.

Note: used in NEW revisioning mode

Parameters:
iObj
object from which we want to create a new revision
iMaturity
maturity of the object
iPrevRev
previous revision number of the object
iNewRev
new revision number
iAction
create or update operation
Returns:
The method must return an Error with Ier=0 if the operation is accepted or error code if it is refused.
In such a case, an error message is displayed in an errornotification panel.
o IsAValidNewVersion
public static Error IsAValidNewVersion( const ObjID& iObj,
const char* iMaturity,
const char* iPrevVer,
const char* iNewVer,
const RevVerAction iAction)
Checks the validity of the keyed value for revision.

Note: used in NEW revisioning mode

Parameters:
iObj
object from which we want to create a new version
iMaturity
maturity of the object
iPrevVer
previous version number of the object
iNewVer
new version number
iAction
create or update operation

Returns:
The method must return an Error with Ier=0 if the operation is accepted or error code if it is refused.
In such a case, an error message is displayed in an error notification panel.
o IsAValidParamListForCommit
public static Error IsAValidParamListForCommit( const int iNbParam,
EffParam* iParamPtr,
const int iNbModifications,
int* iTypeOfModifications,
ObjID* iAddedLinks,
ObjID* iRemovedLinks)
Allows user to validate keyed parameters versus current modifications.

Parameters:
iNbParam
number of rows in the parameters matrix
iParamPtr
list of parameters (with iNbParam rows)
iNbModifications
number of modifications
iTypeOfModifications
list of types for each modification (with iNbModifications rows)
iAddedLinks
list of added links (with iNbModifications rows)
iRemovedLinks
list of removed links (with iNbModifications rows)

Returns:
If method return an error, parameters must be changed or commit canceled.
o IsAValidRevisionVersion
public static Error IsAValidRevisionVersion( const ObjID& iObj,
const char[4] iVersion,
const char[4] iOldVerRev,
const char[4] iNewVerRev)
Checks the validity of the keyed value for version or revision.

Note: used in OLD revisioning mode

Parameters:
iObj
object from witch we want to create a new version or revision
iVersion
version of the part
iOldVerRev
version or revision of iobj
iNewVerRev
version or revision keyed

Returns:
The method must return an Error with Ier=0 if the operation is accepted or error code if it is refused.
In such a case, an error message is displayed in an error notification panel.
o IsExistingParamValidForCommit
public static Error IsExistingParamValidForCommit( const int iNbModifications,
int* iTypeOfModifications,
ObjID* iAddedLinks,
ObjID* iRemovedLinks)
Allows user to validate the commit of current modifications with existing effectivity parameters.

Parameters:
iNbModifications
number of modifications
iTypeOfModifications
list of types for each modification (with iNbModifications rows)
iAddedLinks
list of added links (with iNbModifications rows)
iRemovedLinks
list of removed links (with iNbModifications rows)

Returns:
If method return an error, commit canceled.
o IsMassiveDuplicateAllowed
public static int IsMassiveDuplicateAllowed( const ObjID& iObj,
int iTypeOfCheck)
Called before duplicating onject during Massiveduplicate.

Parameters:
iObj
object we want to duplicate
iTypeOfCheck
type of check : 0 for check on part on which the command is called. 1 for check on intermidiate part

Returns:
0 id Duplication is not allowed, 1 if allowed
o MilestonesControl
public static Error MilestonesControl( const char* iUser,
const char* iRole,
const char* iOrg,
const ObjID& iProduct,
const char* iProgramName,
const char* iMilestoneName,
const int iMilestoneType,
const MilestonesAction iAction)
User exit called to control the milestones.

Parameters:
iUser
user ID
iRole
user role
iOrg
user organization
iProduct
product from milestone
iProgramName
name of the associated program
iMilestoneName
name of the milestone to control the access
iMilestoneType
type of the milestone to control the access (1 -> date ; 2 -> range)
iAction
action to control on the dictionary (see enum
MilestonesAction )

Returns:
If Error.Ier equals 0 modification is allowed, else error message is displayed.
o ModCreateOwner
public static int ModCreateOwner( const char* iModification,
const char* iUser)
User exit called when creating a modification.

Returns:
0 iModification will be of Personal type and belongs to iUser (only iUser will see iModification until promoted)
1 iModification will be of Public type (everybody can see it)
o OpenGraph
public static Error OpenGraph( const int iGraphNum,
const ObjID& iPart)
User exit called when a PSN graph is opened.

Parameters:
iPart
root part of the graph

Returns:
If the method return an error, graph will not be opened.
o OpenObject
public static Error OpenObject( const char* iViewer,
const int iNbObj,
ObjID* iObj)
User exit called when "open" is called on an object(s).

Parameters:
iObj
objects onto which "open" action is performed
o OpenPSNWithUsrMethod
public static Error OpenPSNWithUsrMethod( const char* iMethodName,
const int& iNbSelectedInstances,
int* iDepthArray,
PartAsmID** iObjArray,
double** iComputedXmatArray)
o OptionListToDisplay
public static Error OptionListToDisplay( const char* iUser,
const char* iRole,
const char* iOrg,
const ObjID& iObj,
const int iNbOpt,
int& oNbOpt,
char*** ioOptNameList,
char*** ioOptTypeList,
char*** ioOptDescList)
Called when display option selection box.
Allows to change options available.

Parameters:
iUser
user ID
iRole
user role
iOrg
user organization.
iObj
object (product) of current dictionary
ioNbOpt
number of proposed/returned options
ioOptNameList
list of options name proposed/returned
ioOptTypeList
list of options type proposed
iOptDescList
list of options description proposed/returned

Returns:
If the method return an error, the error message willbe displayed in an error notification panel.
o PSNCopyCB
public static void PSNCopyCB( const CATLISTP(CATVPMNode)& iObjs)
User exit called when "copy" is called on a PSN node.

Parameters:
iObjs
objects onto which "copy" action is performed
o PSNCutCB
public static void PSNCutCB( const CATLISTP(CATVPMNode)& iObjs)
User exit called when "cut" is called on a PSN node.

Parameters:
iObjs
objects onto which "cut" action is performed
o PSNPasteCB
public static void PSNPasteCB(CATVPMNode* iObj,
SdaiAppInstance* iLink,
SdaiAppInstance* iPaste)
User exit called when "paste" is called on a PSN node.

Parameters:
iObjs
objects onto which "paste" action is performed
iLink
link created by paste action
iPaste
pasted object
o Replace
public static void Replace( const ObjID& iOldLink,
const ObjID& iNewLink)
Called after replace (but before commit).

Parameters:
iOldLink
is the original link.
iNewLink
is the newly created link.
o SetVolumeFilter
public static void SetVolumeFilter( const int iGraphNum,
const ObjID& iPart,
const int iMode,
const int iType,
double[6] iBbx)
User exit called when a volume filter is applied on AT0EXPND or 3dcom.

Parameters:
iGraphNum
Graph Id on which filter is applied
iPart
Root part of the graph
iMode
0=Volume 1=SpaceMap
iType
Algorythm used in the filter : 0=fully in wo, 1=partly in, 2=fully out, 3=partly out
iBbx
Description of the Bounding box with : xmin, xmax, ymin, ymax, zmin, zmax
o StartExpand
public static int StartExpand(int& oToken)
User exit called at the beginning of expand in 3dcom

Parameters:
oToken
return a token to identify the expand
Returns:
0 Ok <>0 Ko
o SuccessfullyCommitInGraph
public static Error SuccessfullyCommitInGraph( const char* iModificationFlag,
const int iNbModifications,
int* iTypeOfModifications,
ObjID* iAddedLinks,
ObjID* iRemovedLinks)
o SuccessfullyRollBackInGraph
public static void SuccessfullyRollBackInGraph()
o UnixPathToWinPath
public static void UnixPathToWinPath( const char* iUnixPath,
int iMode,
char** oWinPath)

Parameters:
iUnixPath
Unix Path
iMode
iMode 0 ReadMode 1 WriteMode
oWinPath
Windows Path to file
o UpdateConfigViewValuesForSecurity
public static Error UpdateConfigViewValuesForSecurity( const char* const iCaenv,
const char* const iCatab,
int* ioNbAtt,
char*** ioAttNames,
char*** ioAttVals,
int* ioModified)
o UpdateObject
public static Error UpdateObject( const ObjID& iObj,
int* ioNbAtt,
char*** ioAttNames,
char*** ioAttVals)
Allows to check attribute values before updating an object.

Attributes given in the list are the ones that were valuated in the update panel. If you wish to valuate a "hidden" attribute, you will have to reallocate AttNames and AttVals and add the attribute and its value.

Parameters:
iobj
object which is going to be updated
iONbAtt
Number of attributes given for the object
ioAttNames
Names of the given attributes
ioAttVals
Values of the given attributes

Returns:
The method must return 0 if the operation is accepted or error code if it is refused. In such a case, an error message is displayed in an error notification panel and the operation is canceled.
o WinPathToUnixPath
public static void WinPathToUnixPath( const char* iWinPath,
int iMode,
char** oUnixPath)

Parameters:
iWinPath
Windows Path to file
iMode
iMode 0 ReadMode 1 WriteMode
oUnixPath
Unix Path

This object is included in the file: CATDMUsrMethod.h
If needed, your Imakefile.mk should include the module: LV0XUSR

Copyright © 2003, Dassault Systèmes. All rights reserved.