Functions | |
int | xchg_cpl_set_pra (const char *param1, const char *param2) |
More... | |
int | xchg_set_rel_cre_id (const char *param1, const char *param2) |
More... | |
int | xchg_std_rel_pra (const char *param1, const char *param2) |
More... | |
int | xcps_elm_cmp_rel (const char *param1, const char *param2) |
More... | |
int | xcps_grp_cmp_rel (const char *param1, const char *param2) |
More... | |
int | xcps_vrf_bom_pos_tra (const char *param1, const char *param2) |
More... | |
int | xcps_vrf_sgl_bom_tra (const char *param1, const char *param2) |
More... | |
int | xedbstr_tor_ref_rel (const char *param1, const char *param2) |
More... | |
int | xedbusr_chk_no_obj_ews (const char *param1, const char *param2) |
More... | |
int | xedbusr_chk_obj_ews (const char *param1, const char *param2) |
More... | |
int | xedbusr_is_owner () |
Checks, if the current user is the owner of the record. More... | |
int | xedbusr_not_owner () |
Checks, if current user is NOT the owner of the record. More... | |
int | xedbusr_pre_sta_lgv () |
Pre-transition userexit that executes a LogiView procedure. More... | |
int | xedbusr_tor_chk_rel (const char *param1, const char *param2) |
More... | |
int | xedbusr_tor_ref_rel (const char *param1, const char *param2) |
More... | |
int | xedbusr_tor_rr_vr (const char *param1, const char *param2) |
More... | |
int | xedbusr_tor_var_rel (const char *param1, const char *param2) |
More... | |
int | xedbusr_tor_ver_rel (const char *param1, const char *param2) |
More... | |
int | xstate_chk_obj_sta_prt (const char *param1, const char *param2) |
More... | |
int | xstate_slv_nxt_sta (const char *param1, const char *param2) |
More... | |
int | xtxt_gls_upd_tra (const char *param1, const char *param2) |
More... | |
int | xtxt_ins_upd_tra (const char *param1, const char *param2) |
More... | |
int | xtxt_ins_xtr_tra (const char *param1, const char *param2) |
More... | |
int | xtxt_tpl_ctr_tra (const char *param1, const char *param2) |
More... | |
int xchg_cpl_set_pra | ( | const char * | param1, |
const char * | param2 | ||
) |
Pre-release transition userexit for Work Sets. This userexit is called before the transition from "In Work" to "Complete" of a Work Set is executed. It calls a user defined pre-release function for each change operation which is assigned to the work set (without customization this is the userexit xchg_std_rel_pra). This pre-release function can perform any necessary check on the affected objects, for example: The effectivity date is finally set in the field EDB_EFF_DATE of the Work Set.
context | The transition userexit context. | |||
param | Parameter to control the behavior of this userexit. Syntax like: "[/EFF-TARGET[=date]]" with possible arguments:
|
0 | OK |
---|---|
Else | One of the pre-release functions failed. |
int xchg_set_rel_cre_id | ( | const char * | param1, |
const char * | param2 | ||
) |
Userexit that calls the "Create persistent ID" userexit for all preliminary objects assigned to a Work Set.
Exactly one Work Set must be selected as otherwise the user will get an error message and the execution of this userexit is aborted.
The default implementation removes the preliminary flag of the assigned objects and corrects the current flag of the predecessor (see CRM ). A specific implementation may be defined by the customizer to control the creation of persistent IDs. In this case the default implementation does nothing except managing the preliminary and the current flag.
context | The context of the userexit |
param | [/NO_CURFLAG] if /NO_CURFLAG option is set then the correction of the current flag of the predecessor is not done (not recommended!). |
0 | OK |
---|---|
Else | Error |
int xchg_std_rel_pra | ( | const char * | param1, |
const char * | param2 | ||
) |
Standard pre-release transition userexit for change operations. This userexit is called for each change operation of a Work Set before a Work Set is completed. It is the default pre-transition function which is executed when no other user defined a pre-transition function.
For all new objects (objects which become valid through this change operation), it checks if the objects are persistent (i.e. not preliminary) and if a transition exists which can change the object's state from its current (approved) state into a released state. If the object is not under control of the Change Management, it is checked if the object is released.
For all obsolete objects (objects which become invalid through this change operation), it is checked if there exists a transition which can change the current state of the object into an inactive state.
Any failed check is printed interactively to the client's message window.
usxContext | The userexit context. |
param | Reserved |
0 | OK |
---|---|
1 | At least one of the checks failed. |
int xcps_elm_cmp_rel | ( | const char * | param1, |
const char * | param2 | ||
) |
Pre-transition userexit for product structure elements. Checks if the assigned product component is released, because the product component must be released before the product structure element can be released.
The userexit prints a message if the assigned product component is not released.
context | Transition userexit context |
param | Reserved |
0 | Ok |
---|---|
Else | Error |
int xcps_grp_cmp_rel | ( | const char * | param1, |
const char * | param2 | ||
) |
Transition userexit for the product family - product component relation. Checks if the assigned product component is released, because the product component must be released before the class - product component relation can be released.
The userexit prints a message if the assigned product component is not released.
context | Transition userexit context |
param | Reserved |
0 | OK |
---|---|
Else | Error |
int xcps_vrf_bom_pos_tra | ( | const char * | param1, |
const char * | param2 | ||
) |
Pre-transition userexit for BOM position. If the item structure is verified, the BOM position will be verified against the effective conceptual product structures for the parent item.
The userexit supports the following view scopes:
Production view (PRD) | In production view the product component, product structure element, classification and the relation between them have to be released or set effective to be considered in the verification process. If the flag /SOFT is set, BOM positions that are not released yet are also considered. The objects which will be released are also considered and the effectivity of the assigned work sets is used. |
---|---|
Development view (DEV) | Same as the production view, but product strucure elements of the conceptual product structure that are not released yet are also considered during the verification. |
context | Action userexit context | ||||||||||||||||
param | Parameter to control the behavior of this function. Syntax is: "/PRD|/DEV [/SOFT] [/STRICT][/SILENT][/SHORTMSG][/ALT={ALL|DETECT}][/ANALYSE]" With possible arguments:
|
0 | OK |
---|---|
Else | Error |
int xcps_vrf_sgl_bom_tra | ( | const char * | param1, |
const char * | param2 | ||
) |
Pre-transition userexit for items. If the structure of an item is verified the BOM positions will be verified against the effective conceptual product structures for the item.
The userexit supports the following view scopes:
Production view (PRD) | In production view the product component, product structure element, classification and the relation between them have to be released or set effective to be considered in the verification process. If the flag /SOFT is set, BOM positions that are not released yet are also considered. The objects which will be released are also considered and the effectivity of the assigned work sets is used. |
---|---|
Development view (DEV) | Same as the production view, but product strucure elements of the conceptual product structure that are not released yet are also considered during the verification. |
context | Transition userexit context | |||||||||||||
param | Parameter to control the behavior of this function. Syntax is: "/PRD|/DEV [/SOFT][/STRICT][/SILENT][/ANALYSE]" With possible arguments:
|
0 | OK |
---|---|
1 | Verification failed (only if option /STRICT is set) |
int xedbstr_tor_ref_rel | ( | const char * | param1, |
const char * | param2 | ||
) |
Userexit checks certain conditions for the Change & Release Management. This userexit checks, if the child element of a relation record has already been released. If Change Management is activated, it also checks, if the "from" Work Set has already been released.
This userexit works on relation records.
usxContext | This is the context for a transition userexit. Unlike DataView action userexit contexts, the first character describing the mode can be either 'y' for a forward transition (new progress indicator > old progress indicator) or 'n' for a backward transition (new progress indicator < old progress indicator). The following characters describe the affected row number. Example: "y23", "n4". | |||
param | Parameter to control the behavior of this userexit. Syntax like: "[/FLAGONLY]" With possible arguments:
|
0 | All relevant elements are released. |
---|---|
-1 | Not all relevant elements are released, or an error occurred. |
int xedbusr_chk_no_obj_ews | ( | const char * | param1, |
const char * | param2 | ||
) |
Checks if an object is not assigned to a Work Set (via a change operation).
usxContext | The userexit context. This is the context for a transition userexit. Unlike DataView action userexit contexts, the first character describing the mode can be either 'y' for a forward transition (new level indicator > old level indicator) or 'n' for a backward transition (new level indicator < old level indicator). The following characters represent the affected row. Example: "y23", "n4". |
param | Reserved. |
0 | The object is not assigned to a Work Set. |
---|---|
1 | The object is assigned to a Work Set. |
int xedbusr_chk_obj_ews | ( | const char * | param1, |
const char * | param2 | ||
) |
Pre-transition userexit of the Change & Release management checks, if an object is assigned to a released Work Set (via a change operation).
usxContext | The userexit context. This is the context for a transition userexit. Unlike DataView action userexit contexts, the first character describing the mode can be either 'y' for a forward transition (new level indicator > old level indicator) or 'n' for a backward transition (new level indicator < old level indicator). The following characters describe the affected row. Example: "y23", "n4". |
param | Reserved. |
0 | Object is assigned to a Work Set. |
---|---|
1 | Object is not assigned to a Work Set. |
int xedbusr_is_owner | ( | ) |
Checks, if the current user is the owner of the record.
Pre-transition userexit for the change & release management. Only the owner of the element may execute the transition.
cp_Status | Standard transition parameter with direction mode and current row.
| ||||||
cp_Arguments | Reserved. |
0 | OK |
---|---|
1 | Error occurred |
int xedbusr_not_owner | ( | ) |
Checks, if current user is NOT the owner of the record.
Pre-transition userexit for the change & release management. It prevents the owner of the element from executing the transition.
cp_Status | Standard transition parameter with direction mode and current row.
| ||||||
cp_Arguments | Reserved. |
0 | OK |
---|---|
1 | Error occurred |
int xedbusr_pre_sta_lgv | ( | ) |
Pre-transition userexit that executes a LogiView procedure.
Pre-transition userexit for the change & release management. It calls a LogiView decision table / procedure.
cp_Status | Standard transition parameter with direction mode and current row.
| ||||||
cp_Arguments | Reserved. |
0 | Success |
---|---|
1 | Error occurred |
int xedbusr_tor_chk_rel | ( | const char * | param1, |
const char * | param2 | ||
) |
This userexit checks, if all relation records for the structure view STR
are released. It will be checked, if all relation elements of the structure relation of this object are released. Only the refine relation to the same entity is checked! Sub-elements to other entities are not checked.
This userexit checks the relation records of an entity record. To check the assigned entity records instead, use xedbusr_tor_ref_rel
.
This userexit works on entity records.
usxContext | This is the context for a transition userexit. Unlike DataView action userexit contexts, the first character describing the mode can be either 'y' for a forward transition (new progress indicator > old progress indicator) or 'n' for a backward transition (new progress indicator < old progress indicator). The following characters describe the affected row. Example: "y23", "n4". | |||
param | Parameter to control the behavior of this userexit. Syntax like: "[/FLAGONLY]" With possible arguments:
|
0 | All elements are released. |
---|---|
-1 | Not all relations are released, or an error occurred. |
int xedbusr_tor_ref_rel | ( | const char * | param1, |
const char * | param2 | ||
) |
This userexit checks, if all sub-elements of the structure relation of this object are released. Only the refine relation to the same entity is checked. Sub-elements of other entities are not checked.
This userexit checks the assigned entity records. To check the relation records instead, use xedbusr_tor_chk_rel
.
This userexit works on entity records.
usxContext | This is the context for a transition userexit. Unlike DataView action userexit contexts, the first character describing the mode can be either 'y' for a forward transition (new progress indicator > old progress indicator) or 'n' for a backward transition (new progress indicator < old progress indicator). The following characters describe the affected row. Example: "y23", "n4". | |||
param | Parameter to control the behavior of this userexit. Syntax like: "[/FLAGONLY]" With possible arguments:
|
0 | All elements are released. |
---|---|
-1 | Not all relations are released, or an error occurred. |
int xedbusr_tor_rr_vr | ( | const char * | param1, |
const char * | param2 | ||
) |
Pre-transition userexit which calls xedbusr_tor_ref_rel
followed by xedbusr_tor_ver_rel
.
usxContext | This is the context for a transition userexit. Unlike DataView action userexit contexts, the first character describing the mode can be either 'y' for a forward transition (new progress indicator > old progress indicator) or 'n' for a backward transition (new progress indicator < old progress indicator). The following characters describe the affected row. Example: "y23", "n4". |
param | Parameter to control the behavior of this userexit. Please refer to xedbusr_tor_ref_rel and xedbusr_tor_ver_rel for a description of possible parameters. |
0 | OK |
---|---|
-1 | Error in userexit xedbusr_tor_ref_rel . |
-2 | Error in userexit xedbusr_tor_ver_rel . |
int xedbusr_tor_var_rel | ( | const char * | param1, |
const char * | param2 | ||
) |
Pre-transition (to release) userexit that checks the release state of all elements in a variant list. It checks if all elements in the variant list of the current element (variant placeholder) are released, when this element is going to be released.
If the Change Management is activated, it also checks, if the "from" Work Set has already been released.
usxContext | This is the context for a transition userexit. Unlike DataView action userexit contexts, the first character describing the mode can be either 'y' for a forward transition (new progress indicator > old progress indicator) or 'n' for a backward transition (new progress indicator < old progress indicator). The following characters describe the affected row. Example: "y23", "n4". | |||
param | Parameter to control the behavior of this userexit. Syntax like: "[/FLAGONLY]" With possible arguments:
|
0 | All relevant elements are released. |
---|---|
-1 | Not all relevant elements are released, or an error occurred. |
int xedbusr_tor_ver_rel | ( | const char * | param1, |
const char * | param2 | ||
) |
This userexit checks, if an element in the version structure has already been released. Pre-transition (to release) userexit to check, if there is already a released element in the version structure.
usxContext | This is the context for a transition userexit. Unlike DataView action userexit contexts, the first character describing the mode can be either 'y' for a forward transition (new progress indicator > old progress indicator) or 'n' for a backward transition (new progress indicator < old progress indicator). The following characters describe the affected row. Example: "y23", "n4". |
param | Additional userexit parameters. Currently none. |
0 | The version structure does not contain any released elements. |
---|---|
1 | At least one released element exists in the version structure. |
int xstate_chk_obj_sta_prt | ( | const char * | param1, |
const char * | param2 | ||
) |
Pre-transition userexit to check if related objects have a certain state. This userexit works on relation records and can be used to check the parent- or the child record of the relation record. It checks if related objects given by the parameter /PARENT, /CHILD or /USX have the state given by the parameter /STATE.
usxContext | The userexit context. | ||||||||||||
param | Parameter to control the behavior of this userexit. Syntax like: "/STATE=state /CHILD|/PARENT|/USX [/S][/ALLCTX]" with possible arguments:
|
The following parameters are optional: <table><tr><th>S</th><td> </td><td>Strict check. Also perform the checks if the current user is a DataView manager user. The default setting is not to check in this case</td></tr><tr> <th>ALLCTX</th><td> </td><td>Checks all related records, not only those which are valid in the currently set context.</td></tr></table>
0 | The related objects have the right state. |
---|---|
>0 | At least one of the related objects does not have the right state. |
int xstate_slv_nxt_sta | ( | const char * | param1, |
const char * | param2 | ||
) |
Processes all slave release procedures of the master record. For the slave records a single level structure explosion is performed, all records are selected and the standard function xstate_nxt_sta is called for these records. During the release all post-/pre-action userexits of the release steps of the master release procedure are called. The flag "valall" is temporarily set to 1 to indicate that the fields VAL_FROM and VAL_UNTIL shall be taken from the master record.
usxContext | The userexit context. |
param | Reserved. |
0 | OK |
---|---|
1 | Error during the release of the child with a slave release procedure. |
int xtxt_gls_upd_tra | ( | const char * | param1, |
const char * | param2 | ||
) |
Tries to update all Where-Used objects corresponding this Glossary. It is possible to update objects through 1-3 levels. This depends on the configuration. Regarding the configuration, the fields EDB_VALUE_1 (Object 1 Update Field), EDB_VALUE_2 (Object 2 Update Field), and EDB_VALUE_3 (Object 3 Update Field) contain the field (and therefore the object/value) which should be updated.
EDB_VALUE_x (Object x Update Field) | Contains the name of the field, which should be updated on level x. Depending on the status of the object and the status configuration (for level x). The states in which the object should be updatable are defined with the fields EDB_IN_WORKx (IW), EDB_APPROVEDx (AP), EDB_RELEASEDx (RL), EDB_REVISIONINGx (RV). |
---|
In addition, the state of the updatable object has to be checked (except the parameter /IGNORE_STATE is set), therefore, the following entries in the Where-Used configuration have to be taken into account (the x stands for the level 1,2,3):
EDB_IN_WORKx (IW) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "In Work" then proceed updating! |
---|---|
EDB_APPROVEDx (AP) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "Approved" then proceed updating! |
EDB_RELEASEDx (RL) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "Released" then proceed updating! |
EDB_REVISIONINGx (RV) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "Revisioning" then proceed updating! |
If one state is set to '' the object has no state (no LEV_IND) | |
If all states are set to '' ==> the check for the state of the corresponding updatable object is ignored. | |
If all states are set to 'n' a error message "No state set for object_x -> CID:'CID of object' Table:'table name of object'" occurs! |
The lifecycle of the object is identified by the table name of the updatable object (first part of the EDB_VALUx-content) and the CHK_NAME field. The current state of the object is identified by the table name (first part of the EDB_VALUx content) and the LEV_IND field.
Therefore, the updatable mechanism is able to check if the selected state in the Where-Used configuration (IW, AP, RL, RV) regarding the lifecycle name of the current object and the current state value of the object matches. If it matches, the update will proceed, otherwise, an "Object_x is NOT in correct state -> Table:'object-table' CID:'object-C_ID'" occurs and the whole transaction is rolled back.
ctx | Userexit context | ||||
param | Parameter to control the behavior of this function. Syntax is: "/IGNORE_STATE /STRICT" With possible arguments:
|
0 | OK |
---|---|
Else | Error |
int xtxt_ins_upd_tra | ( | const char * | param1, |
const char * | param2 | ||
) |
Tries to update all Where-Used objects corresponding to this Text-Instance. It is possible to update objects through 1-3 levels. This depends on the configuration. Regarding the configuration, the fields EDB_VALUE_1 (Object 1 Update Field), EDB_VALUE_2 (Object 2 Update Field), and EDB_VALUE_3 (Object 3 Update Field) contain the field (and therefore the object/value) which should be updated.
EDB_VALUE_x (Object x Update Field) | Contains the name of the field, which should be updated on level x. Depending on the status of the object and the status configuration (for level x). The states in which the object should be updatable are defined with the fields EDB_IN_WORKx (IW), EDB_APPROVEDx (AP), EDB_RELEASEDx (RL), EDB_REVISIONINGx (RV). |
---|
In addition, the state of the updatable object has to be checked (except the parameter /IGNORE_STATE is set), therefore the following entries in the Where-Used configuration have to be taken into account (the x stands for the level 1,2,3):
EDB_IN_WORKx (IW) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "In Work" then proceed updating! |
---|---|
EDB_APPROVEDx (AP) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "Approved" then proceed updating! |
EDB_RELEASEDx (RL) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "Released" then proceed updating! |
EDB_REVISIONINGx (RV) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "Revisioning" then proceed updating! |
If one state is set to '' the object has no state (no LEV_IND) | |
If all states are set to '' ==> the check for the state of the corresponding updatable object is ignored. | |
If all states are set to 'n' a error message "No state set for object_x -> CID:'CID of object' Table:'table name of object'" occurs! |
The lifecycle of the object is identified by the table name of the updatable object (first part of the EDB_VALUx-content) and the CHK_NAME field. The current state of the object is identified by the table name (first part of the EDB_VALUx content) and the LEV_IND field.
Therefore, the updatable mechanism is able to check if the selected state in the Where-Used configuration (IW, AP, RL, RV) regarding the lifecycle name of the current object and the current state value of the object matches. If it matches, the update will proceed, otherwise, an "Object_x is NOT in correct state -> Table:'object-table' CID:'object-C_ID'" occurs and the whole transaction is rolled back.
ctx | Userexit context | ||||
param | Parameter to control the behavior of this function. Syntax is: "/IGNORE_STATE /STRICT" With possible arguments:
|
0 | OK |
---|---|
Else | Error |
int xtxt_ins_xtr_tra | ( | const char * | param1, |
const char * | param2 | ||
) |
Checks for instance match.
cpParameter | Standard parameter with working mode and current row. | |||||||||
cpArguments | Parameter to control the behavior of this function. Syntax is: "/STRICT /NON_STRICT" With possible arguments:
|
0 | OK |
---|---|
Else | Error |
int xtxt_tpl_ctr_tra | ( | const char * | param1, |
const char * | param2 | ||
) |
Tries to update all Where-Used objects corresponding this Text-Template. It is possible to update objects through 1-3 levels. This depends on the configuration. Regarding the configuration, the fields EDB_VALUE_1 (Object 1 Update Field), EDB_VALUE_2 (Object 2 Update Field), and EDB_VALUE_3 (Object 3 Update Field) contain the field (and therefore the object/value) which should be updated.
EDB_VALUE_x (Object x Update Field) | Contains the name of the field, which should be updated on level x. Depending on the status of the object and the status configuration (for level x). The states in which the object should be updatable are defined with the fields EDB_IN_WORKx (IW), EDB_APPROVEDx (AP), EDB_RELEASEDx (RL), EDB_REVISIONINGx (RV). |
---|
In addition, the state of the updatable object has to be checked (except the parameter /IGNORE_STATE is set), therefore, the following entries in the Where-Used configuration have to be taken into account (the x stands for the level 1,2,3):
EDB_IN_WORKx (IW) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "In Work" then proceed updating! |
---|---|
EDB_APPROVEDx (AP) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "Approved" then proceed updating! |
EDB_RELEASEDx (RL) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "Released" then proceed updating! |
EDB_REVISIONINGx (RV) | Value = 'y', is the object of level x (EDB_Value_1 (Object x Update Field)) in state "Revisioning" then proceed updating! |
If one state is set to '' the object has no state (no LEV_IND) | |
If all states are set to '' ==> the check for the state of the corresponding updatable object is ignored. | |
If all states are set to 'n' a error message "No state set for object_x -> CID:'CID of object' Table:'table name of object'" occurs! |
The lifecycle of the object is identified by the table name of the updatable object (first part of the EDB_VALUx-content) and the CHK_NAME field. The current state of the object is identified by the table name (first part of the EDB_VALUx content) and the LEV_IND field.
Therefore, the updatable mechanism is able to check if the selected state in the Where-Used configuration (IW, AP, RL, RV) regarding the lifecycle name of the current object and the current state value of the object matches. If it matches, the update will proceed, otherwise, an "Object_x is NOT in correct state -> Table:'object-table' CID:'object-C_ID'" occurs and the whole transaction is rolled back.
ctx | Userexit context | ||||
param | Parameter to control the behavior of this function. Syntax is: "/IGNORE_STATE /STRICT" With possible arguments:
|
0 | OK |
---|---|
Else | Error |