Ibase Component and Partner Update - Data Corruption

Hello Everyone,
I'm facing a pecular issue with updating parters of an Ibase component through a custom program.
This is the requirement:
Under certain conditions, Partner A attached to the components of an Ibase have to be replaced by Partner B for the same partner function.
If the ibase have more than 1 component and if both have the same partner, then a data corruption results. Teh data corruption is a double entry in table IBPART where i end up getting 2 valid entries for a PARTNERSET record.
I'm using FM CRM_ICSS_CHANGE_COMPONENT to carry out the partner update.
Here are the steps i'm using:
1. I'm Looping at the Ibase
2. I fill in the Component structure I_COMP with the Ibase and the Instance 1.
3. I fill the partner structure I_PARTNER with the two partner records- Partner A (For Deletion by setting field UPDIND as 'D') and Partner B (For addition by setting Field UPDIND as 'I').
4. Then the loop continues for updating the second Component.with the same details.
After the Update, the following is happening at the table level.
1. Table IBPART gets 2 records which are valid for each Instance. (Ideally, there should be only 1 record for each component which then links to multiple partner functions in tale CRMD_PARTNER). the two records are just slightly different in theoir VALID FROM timestamp. But both records are valid in Current Time.
This is resulting in a short dump when i try to go to the partner section from IB52 transaction.
I think the main reason for this is that table IBPART is not locaking down when the first update is happening (deletion) and hence i end up with two records
Can any one help me out in this
Regards
Dharmendra

Hi,
we couldnt completely solve the issue. I could find no way to lock up the partner update to a component. But this is what we managed to do and so far we havent received any more data corruption error. We made a copy of the FM CRM_ICSS_CHANGE_COMPONENT and made it as an UPDATE FM instead of a Normal FM. This somehow mitigated the issue and till now we havent seen the problem re-surface. I'm not sure if this work for you.
Thanks n Regards
Dharmendra

Similar Messages

  • Can I call a C program in trigger, and pass updated data to this program?

    Can I call a C program in Oracle trigger, and pass updated data to this program?
    Thank you

    An update trigger has access to both the old and new values. Your update trigger can call an external procedure (a C program) and pass the old and new values as parameters. For example:
    CREATE OR REPLACE TRIGGER <tname> BEFORE UPDATE OF <tab> FOR EACH ROW
    BEGIN
    pkg.proc(:old.col, :new.col);
    END;
    Where pkg.proc has been created as an external procedure.

  • Significance of IBase, Component and Product ID while creating Change Reque

    Hello,
    When we create a change request via SOLMAN_WORK_CENTER, we are supposed to provide values for
    1) IBase
    2) Component
    3) Product ID
    Ibase can be defined as the way SAP differentiates in a multiple system (APO, CRM, ECC) environment, the corresponding environment.
    The values corresponding to IBase can be obtained via IB51,52 and 53 tcodes.
    Can the value for IBase obtained via SMSY t code also?
    What does component and Product ID signify?
    Where can we get values for Component and Product ID?
    Is Product ID the same as value we get from menu Option System->Status->Installation Number
    Is it necessary to provide all 3 values (i.e. IBase, Component , Product ID) while creating change request?
    If Not, how will SolMan identify which system the change should point to?
    Or only value for Ibase is enough?
    Thanks,
    Vikas

    Ibase can be defined as the way SAP differentiates in a multiple system (APO, CRM, ECC) environment, the corresponding environment.
    The values corresponding to IBase can be obtained via IB51,52 and 53 tcodes.
    Can the value for IBase obtained via SMSY t code also?
    No
    What does component and Product ID signify?
    Product ID is not mandatory. I actually hide it in the CRMD_ORDER screen.
    Where can we get values for Component and Product ID?
    Is Product ID the same as value we get from menu Option System->Status->Installation Number
    Component  - IB52 as you already mentioned
    Product ID - in a customizing table, I've seen it once but can't remember where honestly. As stated, I don't bother with the field
    Is it necessary to provide all 3 values (i.e. IBase, Component , Product ID) while creating change request?
    The iBase and component are mandatory, odd thing is if you enter the component without entering 1 in the iBase, SolMan will fill the 1 in for you.
    If Not, how will SolMan identify which system the change should point to?
    By the logical components assigned to your maintenance project. You can actually have transports for more than one production assigned to your change document. For instance you could have a BI and ECC transport assigned to the sane change document. Your tak list will have the dev, testing and production systems for each logical component assigned.
    Or only value for Ibase is enough?
    I was having this discussion with someone the other day. Since the logical components assigned to the mianteance project really determines what systems you can create transports for, what is the value of the component field? Best I could determine was when you use the Logon on to System action, it points to the one listed in the component field only. other than that, I'm not sure.

  • Dimension Current Flag and Last Update date not updated - SLD issue!

    Hi.
    ODI is running pretty well now. I have created several interfaces from flats, multi database tables, but still have to test the services and cdc, etc... later I will do this.
    I am having a small issue here when dealing with Slowly Changing Dimensions. I am trying to populate a product dimension. I use a Load KM and the SLD KM. Then I update a product row in the source, and I wish to make sure that type-II runs OK for major and minor changes after running the interface.
    Well minor changes run ok, deletes don't run at all, and update for major changes should generate another surrogate key and turn the old record "current flag" to zero and "close"/update the last update date as well!!!
    What am I missing here? Is this related to the KM restrictions?
    "Restrictions:
    - Make sure to map ALL target table columns flagged as: "Surrogate Key", "Natural Key", "Current Record Flag", "Start Timestamp" and "End Timestamp". Notice that mappings set for the "Current Record Flag", "Start Timestamp" and "End Timestamp" columns are not used."
    Do I need to implement somehow that behaviour or use another KM?
    Another question regarding data warehousing: Well usually in a bespoke DW we can have N sources, N staging areas, and several data marts. Using ODI, for instance what are the best practises to create or simulate this behaviour??
    I know that using a Knowledge Module I can load/extract (to temp tables in the source work schema), then integrate in the target schema.. using the same schema to temp staging tables or another schema.... what is the best aproach?
    Any dw people wants to share some experiences here?
    Thank you all.
    Best regards,
    Alvaro
    Message was edited by:
    Alvaro Silva

    Thanks Cezar :)
    Well Updates work if I unckeck 262!!! :) But deletes are not setting the CURR to zero!!!
    PS: um abraço para ti também .... o mundo é pequeno! :) será que podes adicionar-me no messenger para alguma troca de experiências? [email protected]
    Alvaro
    Message was edited by:
    Guest

  • Code for Custom Business Object and Adding/Updating Data

    Hi,
    I would like to update/insert data thru Custom Business Object to sql Server.Pls let me know is it possible in MSA.If yes I would appreciate if you can share the code/Process in this forum.
    Thanks and Regds
    Harish

    Harish
    Depending on what data you update you need to do the following:
    If updating SAP tables or customer tables which are an extension of a SAP object like business partner, material, activity or similar:
    1. Create the extension of the data object via the easy enhancement workbench (EEWB). This will also create mapping functionality from MSA to CRM Server and extend the BDocs.
    2. Go to the BDoc modeler. Find the sBDoc for data exchange (type Write BDoc), that contains your object and check whether the new segment is there.
    3. In the Mobile Application Studio (MAS) you can now create a custom business object related to the standard sBDoc mentioned in 2 which is mapped to the new segment. This way the data exchange happens together with the main object
    4. Drag & drop the fields of the new BO to a new tile, and link that tile to the existing main object in the UI via the appropriate relation.
    If you would create a new business object / BDoc for a set of attributes belonging to a main object and not use an extension of the existing BDoc then the data would get its own flow and when replicating it would not come together with the main data. This can lead to data inconsistencies and in surplus effort administrating this data.
    If you have your own objects not related to a SAP object, you can do it the following way:
    1. Create your own table(s)
    2. Create a Write sBDoc on the table(s)
    3. Create BO's on each BDoc segment / table
    4. (as above)
    Hope this helps,
    Kai

  • Relation between (IBASE)Premise and Partner

    Hello, Thanks in advance.
    Is there any field or way  to relation  Premise with Partner ??
    Thanks.

    Hi,
    I believe you are talking in the IS-U /CRM  context. Well according to the data model there is no direct relationship between Premise and BP, but in case you are using CRM contracts in your implementation then there is a direct linkage provided out of the box. Even if you are not using CRM contract and are using IS-U contracts only you can use one of the data environment views in order to view the linkage between your BP and the chosen premise.
    Hope this helps.
    Regards,
    Shalabh Jain.

  • Creating an IBase Component WITH Connection Object (ISU_CONNOBJ)

    Hello
    I want to create an IBase Component with relation to a Connection Object. I am able to create the first one (IBase Component) but I do not know how to create a Connection Object for the newly created IBase Component.
    I am doing everything using the BOL framework and was unable to find a proper relation from IBase Component or Product to Connection Object.
    Can you help me out?
    regards
    Mateusz

    Solved!
    Apparently after creating new IBase Component and new Product (assigned to the newly created IBase Component) it is required to execute transaction save and commit for the object of newly created Product. After that system sees newly created objects.
    Required code (after creation of a new Product):
    DATA:
      lo_core TYPE REF TO cl_crm_bol_core,
      lo_new_product TYPE REF TO cl_crm_bol_entity,
      lo_factory TYPE REF TO cl_crm_bol_entity_factory,
      lo_transaction TYPE REF TO if_bol_transaction_context.
      lo_core = cl_crm_bol_core=>get_instance( ).
      lo_factory = lo_core->get_entity_factory( 'Product' ).
      lo_new_product = lo_factory->create( )
      lo_transaction = lo_core->get_transaction( iv_entity = lo_new_product ).
      lo_transaction->save( iv_force_save = abap_true ).
      lo_transaction->commit( ).

  • How to know last updated date of screen

    Dear all my friends,
    Please help to show me : How can i know which screen has been updated by when ?
    or help to show me the table name which contain all screen in system with creatation date and last updated date.
    many thanks

    hi, go to the attribute tab. you can see there when it was last updated.
    hope this helps.
    best regards,
    benedict

  • Iobject assigned to an Ibase component

    Hi Everyone,
    I need to get the iobject number assigned to an ibase component. I have tried lot of Function Modules and also the gone through tables, but not able to find the link between ibase component and iobject assigned to  it.
    Can anyone please help me with this.
    Reagrds,
    Bhargava

    Hi there
    It took me ages to find this and SAP has not documented it! The field is in a structure called IB0030 and there are no clues on how to find it.
    The I-object is found in table CRMV_PR_LOC_ADDR, field "PRODUCT_ID". It can be linked to other tables, using the PRODUCT GUID.
    Good luck
    Doug

  • HT1338 Tried to install update to Mountain Lion and get this message: OSXUpdCombo 10-1.8 image data corrupted.

    Tried to install update to Mountain Lion and get this message: OSXUpdCombo 10-1.8 image data corrupted.

    Try booting into the Safe Mode.  Shut down the computer and then power it back up. Immediately after hearing the startup chime, hold down the shift key and continue to hold it until the gray Apple icon and a progress bar appear. The boot up is significantly slower than normal. This will reset some caches, forces a directory check, and disables all startup and login items, among other things. If the system operates normally, there may be 3rd party applications which are causing a problem. Try deleting/disabling the third party applications after a restart. For each disable/delete, you will need to restart if you don't do them all at once. You can download from the Safe Mode.
    Safe Mode
    Safe Mode - About

  • Hiding organization data and partner block in IC_AGENT role

    Hello,
       For  Business role : IC_AGENT and under  Work Center  : Interaction record ,we have a screen with three different blocks:
       Overview  Organizational Data  Partner.
       My requirement is to hide Organization Data and Partner block.
       Please suggest how can i do that?
       Regards
       Najm

    Hello Najm,
    for the same purpose I've done in the following way.
    Enhance component ICCMP_BT_INR in BSP_WD_CMPWB if it's not been done yet.
    Enhance view InrHeaderViewSet if it's not been done yet.
    In view controller implementation class for this view (in my case it was ZL_ICCMP_BT_INRHEADERVIEW_IMPL) redefine GET_TAB_LINK_TABLE method in the following way:
    METHOD get_tab_link_table.
    CONSTANTS: c_orgdata TYPE string VALUE 'InrOrgData.BTORGSET/OrgSet',
                c_partner TYPE string VALUE 'InrPartnerId.MainWindow'.
    CALL METHOD super->get_tab_link_table
       RECEIVING
         rt_result = rt_result.
    * hide org. data tab
    DELETE rt_result WHERE id CP c_orgdata.
    * hide partners tab
    DELETE rt_result WHERE id CP c_partner.
    ENDMETHOD.
    Other way is:
    Enhance component ICCMP_BT_INR in BSP_WD_CMPWB if it's not been done yet.
    Go to Runtime Repository Editor there.
    Delete InrPartnerId.MainWindow and InrOrgData.BTORGSET/OrgSet views from the viewarea Header of the ICCMP_BT_INR/InrHeaderViewSet.
    But personally I've preffered first one. Just to remember what was actually there in standard.

  • How to get new and updated data into LO Excel in Xcelsius

    Dear Experts,
    I have created dashboard on top of webi report by using Live-Office connection. Latest data of webi report is imported into excel and mapped data with components and generated SWF file and exported into server.
    To day my webi report has latest instance with new and updated data. But until unless by clicking "Refresh All Objects" i am not getting updated data into excel.
    When i am trying to open dashboard in BI Launch Pad/CMC it is showing data whatever exist in excel(i.e yesterday data). But here we need to show data of latest instance of webi report.(i.e New and updated data as of now).
    I have selected option "Latest instance: From latest instance scheduled by" in "refresh options".
    My Question & Doubts:
    1) Is it mandatory to open dashboard every day and need to click on "Refresh All Objects" to get updated data into excel or dashboard.
    2) Is there any option to automate this process.
    Regards,
    PRK.

    Hi,
    Schedule the webi report to get the latest data from the source. To answer your query no is doesn't require to open the dashboard every time to refresh the excel to get the latest data.
    Please use the Refresh Before Components are Loaded: Select this option to refresh the data each time the model loads and to use that data as the initial data for the model (using a Reset Button component, it will reset the data to the values from the last time the model was loaded).
    You are using the Live Office  so here automatic refresh is not possible without touch the swf file, you need to use the refresh but to get the latest data. If you are using QAAWS, Web Service & XML then automatic refresh is possible.
    For more information please check the below document for in-depth idea on the design pattern.
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b02e31fb-3568-2e10-e78f-92412c3c0a96?overridelayout=t…
    Kindly revert for more clarification!!!
    --SumanT

  • Firefox 10.0.2 causes "image data corrupted" warning message during update try on OSX 10.7.3?

    I tried to update firefox 10.0.0 to 10.0.2 on Mac Pro OSX 10.7.3 which failed with warning "Image data corrupted". Any ideas what to do?

    If there are problems with updating or with the permissions then easiest is to download the full version and trash the currently installed version to do a clean install of the new version.
    Download a new copy of the Firefox program and save the disk image (dmg) file to the desktop
    *Firefox 10.0.x: http://www.mozilla.org/en-US/firefox/all.html
    *Trash the current Firefox application to do a clean (re-)install
    *Install the new version that you have downloaded
    Your profile data is stored elsewhere in the Firefox Profile Folder, so you won't lose your bookmarks and other personal data if you uninstall and (re)install Firefox.
    *http://kb.mozillazine.org/Profile_folder_-_Firefox

  • All Appstore and  Mac updates Fail saying "...could not be verified or may have become corrupt"

    Recently my Mac started to become glitchy so I decided to wipe the hard drive and reinstall my OSX Mountain Lion. After doing so almost all of my updates fail showing this msg "...could not be verified or may have become corrupt". Not to mention downloading updates take ridiculously long. I have 80mbps down and small updates say they could take up to 2 days. I wanted to try upgrading to the the newest OS however that also has the error msg…not to mention a 4 days estimated download!
    any help with this would be greatly appreciated!
    and yes I did set my date and time to automatic.

    Mavericks Download can’t be verified

  • Using Update data action to update data in job data component

    hi, I'm trying to update data in job component using CI_JOB_DATA, im setting action as updatedata. but i'm getting error.
    "UPDATEDATA - updating existing keyed child records
    Example - updating an existing row of data by using the key value(s) and enough child fields to single out the distinct record. "
    Is the above statement correct?

    For example ExceltoCi uses ComponentInterfaces to load data.
    Snipet from PeopleBooks:
    PeopleBooks > PeopleTools 8.52: PeopleSoft Component Interfaces > Using the Excel-to-Component Interface Utility
    UpdateData.
    Use this option to update specific non-key values that already exist. The system uses the keys to locate the row, and when a match is found, the row is updated with new data. If a key match is not found by the system, it displays an error message indicating which collection was missing a key match.
    When using the UpdateData action, you must provide all keys for the collection for the system to modify the data.
    Note. If you want to insert an effective-dated collection at Level 1 containing a child collection at Level 2, you may need to use UPDATE to insert the parent row at level 1 and then use UPDATEDATA to insert the child row at level 2. This is because child rows are copied forward from the current effective-dated collection as a result of the insertion of a new effective-dated parent row. These child rows will be updated by the component processor with the new effective date, and may have the same level 2 keys as the Level 2 child row that you are trying to submit from ExcelToCI.

Maybe you are looking for