Programme SAP CACS_SEGASS_MIGRATE_BZO - Migration of Segments and Assignments in Portfolio Assignment

Purpose
Migration of segments and/or assignments fromsegment assignment in thecommission system to portfolioassignment

Integration
According to the selection, this program migrates the following objectsfrom the commission system to portfolio assignment:

  • Segments

  • Assignments between commission contracts and segments

  • Segments and assignments from segment assignment

  • The assignments and segments are created with the current status inportfolio assignment.
    If the objects are to be maintained in segment assignment after themigration, and are then to be migrated to portfolio assignment, then allobjects that already exist in portfolio assignment are rejected. Forthis reason, the maintenance of objects after the migration should onlytake place in portfolio assignment.

    Prerequisites
    To be able to create assignments and segments in portfolio assignment,the appropriate Customizing settings must have been maintained inportfolio assignment. It is particularly important that segment typesand roles are maintained. This migration report does not convertprocesses (such as the procurement of data from segment assignment foradditional commission cases). Additional activities are required forthis purpose.
    Prerequisite for creating assignments is that both the segment and theassignment object (the commission contracts) already exist in portfolioassignment when this program is executed (you can use theCACS_CTRTBU_MIGRATION_BZO program to migrate commission cases). Thismeans that it is not possible to create segments and assignmentssimultaneously in test mode.

    Features
    A test mode is available for creating segments and assignmentsseparately. The log, which you can view after each processing, lists theobjects that could and could not (for example, due to missing assignmentobjects) be created.
    In accordance with the standard portfolio assignment scenario, thesegments are created in portfolio assignment as the object kind SG(segment) and the object type 0CCS (FS-ICM: Commission contract). Inaccordance with the portfolio assignment logic, only the active versionsof a segment are transferred, rather than the entire history. However,these versions are grouped together in a single version for portfolioassignment. All active versions of the segment are read first. Theearliest effective start date (BUSI_BEGIN) and the latest effective enddate (BUSI_END) form the effective validity period for the portfolioassignment version.
    Assignments can only be created if both the corresponding segments andthe assignment objects (in this case commission contracts) already existin portfolio assignment.
    You must take into consideration the following peculiarities: Firstly,in segment assignment you can create various assignments (SEGAGRID) forthe same commission contract, the same segment, and the same role. Theseattributes, together with the types of assignment object (in this case,always 00CC), form the effective key for an assignment between segmentand assignment object in portfolio assignment. For this reason youcannot create these assignments in portfolio assignment. This also meansthat this key is used to merge all assignments in the segment assignmentinto one single assignment for portfolio assignment. The effectivevalidity of this assignment is determined in the segments (see above).
    Secondly, you can assign various commission contracts to an assignmentbetween segment and assignment object. As this is not possible in theportfolio assignment, this assignment is split. This is done by creatinga separate assignment for each commission contract. The effectivevalidity of this assignment is defined as for the segments (see above).
    When executing the program, you can use methods from theCACS_MIGRATION_BZO BAdI. You can use the ADD_WHERE_CLAUSE_SEGMENTSmethod to add selection criteria to the standard selections.
    In the ADD_CUST_FIELDS_SEG and ADD_CUST_FIELDS_SZO methods you canenhance the fields (that are maintained as default) from portfoliostructures for segments (PFO_S_SEGCOMM) and assignments (PFO_S_SZO)before creation in portfolio assignment (for example, if specificattributes have been added to these structures.
    To do this, you must implement both methods accordingly.

    Selection
    If the portfolio assignment is located in a system other than FS-ICM,then the creation takes place using a remote function call (RFC). Inthis case, you must enter the RFC destination. If no entry is made, thenthe system presumes that the portfolio assignment runs in the samesystem as this program.
    In order for portfolio assignment to know from which system the objectsare to be imported, an appropriate origin entry (ORIGIN) must be made inCustomizing for portfolio assignment. The origin name is mandatory here.
    Both the segment and segment type attributes are available forselections made according to segments. The assignment ID, assignmentrole and contract number are also available for the selection ofassignments. You can use the ADD_WHERE_CLAUSE_SEGMENTS method from theCACS_MIGRATION_BZO BAdI if you want to use other attributes to make theselection.
    The creation is simulated in a test run without data being saved in thedatabase (this is not possible for the simultaneous creation of segmentsand assignments).
    When migrating segments, you can only specify the segment type andsegment ID as selection criteria for the selection options.

    Standard_variants
    The test run indicator is set in the standard setting. Werecommend that you execute the migration in test mode first. You shouldonly start the program in production mode if the log shows that thecreation was executed without errors.

    Output
    The log lists which objects could be created without problems, and whichobjects could not be created.

    Activities
    We recommend that you proceed as follows:
    Create the segments and assignments in separate steps. You can use thetest mode for this. Once the corresponding processing is complete, thelog indicates whether all objects can be created. If the log shows thatproblems occurred during the creation, you should clean up theseproblems before starting an update run.
    If this program is executed more than once, then portfolio assignmentdoes not allow you to create the same segments or assignments again.