Problem in functional extension of standard datasource 0CO_OM_CCA_9

Hello SAP BI Gurus,
I would like to submit a question here regarding an annoying problem I'm facing with the functional extension of the datasource 0CO_OM_CCA_9 on our SAP/R3 system.
The extension was required to fill the Vendor column (LIFNR) in some cases where the standard extractor was leaving the field empty.
To fulfil such a requirement I put some custom code in the customer exit modules relating to the transactional datasources (function module EXIT_SAPLRSAP_001, include module ZXRSAU01), as shown below:
In include module ZXRSAU01:
CASE i_datasource.
when ...
  when '0CO_OM_CCA_9'.
    CALL FUNCTION 'ZZ0CO_OM_CCA_9'
      TABLES
        c_t_data = c_t_data.
ENDCASE.
The function module ZZ0CO_OM_CCA_9 finally contains the actual logic that fills the LIFNR field when it is empty and the other fields in the extracted structure enable the search of LIFNR in table MSEG:
data: begin of mov_cdc.
        include structure ICCTRCSTA1.
data: end of mov_cdc.
If field LIFNR is empty its value is searched for in
table MSEG:
  loop at c_t_data into mov_cdc.
    if ( mov_cdc-lifnr is initial ).
      select single lifnr into mov_cdc-lifnr from mseg
        where MBLNR = mov_cdc-REFBN
        and MJAHR = mov_cdc-REFGJ
        and ZEILE = mov_cdc-REFBZ
        and MATNR = mov_cdc-MATNR
        and WERKS = mov_cdc-werks.
      if ( sy-subrc = 0 ).
          modify c_t_data from mov_cdc INDEX sy-tabix.
      endif.
    endif.
  endloop.
ENDFUNCTION.
With this customer exit saved and activated, the datasource extractor works fine when launched locally on the R/3 system with the execution test utility for datasources (transaction RSA6).
The weird behaviour that I really can't explain arises when the extractor is activated remotely by our BW system.
In this case, differently from the local execution case, when the custom code is executed we see that the fields REFBN, REFGJ and REFBZ of the extracted structure are always empty and therefore the query select always fails.
Of course, we have replicated the datasource in the BW system more than once to be sure to make the datasource changes visible.
Since the R/3 user launching the extractor remotely (BWREMOTE) was different from the user that launched it successfully in local tests, as a first trial we tried to assign the SAP_ALL profile to BWREMOTE, but nothing has changed.
To summarize, the datasource extractor 0CO_OM_CCA_9 seems not to be extracting the fields
REFBN,
REFGJ ,
REFBZ
when started remotely, whereas it fills those fields when it is run locally.
Could anyone please give me an explanation of that?
Thank you in advance for your support.
Virginio D'Amico

Hello Simon,
here you are my answers:
1. Yes, I've run both ipak and RSA3 in the same mode (full), with the same selection parameters.
2. I find this suggestion about debugging background processes very useful. I've been wondering several times about how to debug pieces of code in similar situations but could never find a good solution: now I know how to do in these cases. Thank you!
In this specific case, to see what was going on in the extraction process in R/3, as an alternative to debugging I have put some logging messages in the cmod code with the WRITE statement, and then inspected the spool output of the ipak execution.
The result of this test was that the query for selecting the LIFNR value
select single lifnr into mov_cdc-lifnr from mseg
       where MBLNR = mov_cdc-REFBN
       and MJAHR = mov_cdc-REFGJ
       and ZEILE = mov_cdc-REFBZ
       and MATNR = mov_cdc-MATNR
       and WERKS = mov_cdc-werks.
fails (sy-subrc = 4) because the fields REFBN, REFGJ and REFBZ are not filled (initial) in the extract structure passed to the custom function module.
When the extraction is executed with RSA3, instead, the above mentioned fields are filled and the query works correctly.
Thank you so much for your suggestions.
Regards,
Virginio D'Amico

Similar Messages

  • Error in adding a field to standard datasource

    Hi all,
    R/3 Side:
    I'm trying to add an field KDAUF to the standard datasource "2LIS_03_UM" from the transaction code LBWE.
    I'm getting the following error,
    Struct. from appl. 03 due to open V3 proc. not changed -> Long text
    Message no. MCEX140
    Diagnosis
    Changing the extract structure MC03UM0 of application 03 is not allowed as there are no V3 update entries for the update module MCEX_UPDATE_03.
    If an extract structure is changed for which there are still open V3 updates, these can no longer be updated and the V3 collective update is terminated.
    Procedure
    Start the V3 update using the "Job Control" function in the customizing cockpit (transaction yDS:TRAN.LBWE>LBWE) or delete those update entries that are already incorrect. You will find these in the update overview.
    I've deleted the delta queue form RSA7, deleted the data in setup tables, deleted from LBWQ and also from SM13.
    But still i'm getting the same error.
    Kindly help me in solving this error.
    Thanks in advance.

    Hi,
    Have you followed the path:
    LBWE >>> Click on "Job Control" >>> Click on "Job Overview"
    If yes, then in the next screen you will find the list of all the job in various states, e.g. Scheduled, Released, Ready, Active, Completed.
    In your case, the relevant job  should be "LIS-BW-VB_APPLICATION_03_***". Select the one with status as Released.
    Also try verifying the same in sm37.
    Also please go through the Note 396647 - FAQ: V3 update: Questions and answers.
    I hope this helps.
    Regards,
    Nitin Suvarna

  • Performance problem with Function Group

    Hi All,
    when we call a FM .. all the function modules which are present in that function group will be copied into the Main memory .
    so how to solve the performance problems that occur..
    Regards,
    Sravan.

    you should analyse your problem more carefully before asking:
    + you can have performance problems related to the execution of function modules.
    + you can also have memory related performance problems by loading huge function groups (non standard).
    The fix for the second are smaller and welldefined function groups.
    The solutions for the second are constantly discussed here.
    Siegfried

  • Problem to initialize delta queue of datasource from CRM 7.0.

    Hi all,
    I've some problem to initialize delta queue of datasource from CRM 7.0.  After initialize the Init in BW, the delta queue was created but after the user changed data, this changed didn't populated into delta queue.
    I tried the steps below  but without any success. Anybody know how can I correct this issue?
    Suggestion 3: Please check the following.
    Please Check if the services have been generated in transaction GNRWB.
    If they are not active(not marked 'X' before their names) then activate
    the services following the steps here.
    Go to transaction GNRWB
    Select BUS_TRANS_MSG
    Select (on the right, the services) : BWA_DELTA3, BWA_FILL, BWA_queue
    Press Generate.
    Also check for the following:
    1. The delta should have been initialized successfully.
    2. Confirm that all Bdocs of type BUS_TRANS_MSG
    are processed with success in SMW01.
    3. If there are queues in SMQ1 with erroneous status then activate
    these queues.
    In Transaction SMQ1 if there are Queues existing with
    names beginning with CRM_BWAn (n is number) then
    activate these queues in the same transaction.
    4.a)If required activate the datasource
    Go to transaction BWA5 > select the required datasource and
    activate.
    4 b) The Delta may not be active ,activate the delta in BWA7 by
    selecting the name of the datsource and pressing the candle icon for
    'activate delta'.
    5. In BW system
    Go to transaction RSA1 > modeling > infosources > select the
    infosource > right mouse click on the selected
    infosource > choose option replicate datasource
    Activate the infosource.
    6. Go to the scheduler for the infosource > select delta in the
    update >choose the option PSA only (in the Processing tab)

    Hi Peter,
    Thank you for your answer.
    But we need to find out what the reason for this import error is.
    Our customer will not be very pleased to see that all IDocs from CRM system cannot be found in the IDOC folder.
    IDX2 import of metadata is no issue.
    We were successful for standard and customer Idocs here.
    Additional information:
    We are already importing Idocs from a SAP ECC 6.0 system into PI in another SWCV
    successfully. So this is a CRM system specific issue in our environment.
    Regards
    Dirk
    Edited by: Meinhard Dirk on Aug 27, 2010 10:30 AM

  • Standard Datasource

    Hi Gurus,
    Where we can check that a particular field of a standard datasource is coming from which table?
    Thanks in advance.
    Regards,
    Vijay

    Hi
    You can check this through TCode RSO2. You can check if the data source is baed on a table view or function module of Info set.
    based on the above information you can find out the corrsponding field.
    regards,
    Amol

  • Standard datasource "HR_PT_01".

    guru's,
    im unable to edit my standard datasource "HR_PT_01".
    plz help me out.
    thankyou

    Hi,
    It may be authorization problem, contact your admistrator

  • Standard datasource Copy

    Hi,
    is it possible to copy a standard datasource ?
    If so How to do ...
    T&R
    Rakesh.

    Hi Rakesh
    No standard way to Copy DataSource.  But you can implement manual copy.
    First Check if the DataSource is based on View or Func Module or InfoSet.
    Most of the DataSource would be based on function module . So you can use the same function module to populate fields of your new data source.
    Like for a FM based DataSource we need to create the structure first in this case you can create your structure from SE11.
    In the extraction method put the same function module name.
    But I assume when you are copying standard DataSource you also have the requirement of getting some additional fields. In that case you can use normal DS enhancement option to get the new fields.
    Regards
    Anindya

  • Unable to extend the standard datasource 2LIS_13_VDKON

    Hi
    we are unable to extend the standard datasource 2LIS_13_VDKON on the
    SAP by the following fields: MCKOMV-KNUMA_BO, MCKOMV-KNUMH and MCKOMV-KNUMV. We allways get the error message "End phase 002 - D0322".
    best regard

    Hi farchid,
    i checked that one, but you can ignore that one.
    please check the data source status is green that's it. after including that fields in the data source the status change to red. then go to data source maintenance screenselect the field selection check boxand then save it.
    now the status changes to yellow.
    now select inactive link against your data source in job control--status will turn as green.
    now you can do the set up table fill up for that data source.
    before doing the transport please make sure the following conditions. this will be displayed when your enhancing the data source.
    Extract structure MC13VD0KON generated successfully, see long text
         Notifications MCEX 027
    Diagnosis
         The extract structure was generated successfully.
    Procedure
         Now choose the maintenance screen of the DataSource. After that, the
         status display (traffic light) jumps from red to yellow.
         Please make note of the following before you transport the changed
         structure MC13VD0KON into another system:
         o   Run the transport when the target system is not being booked.
             Otherwise you will need to initialize it because documents are lost
             during this time. 
          o   None of the clients in the target system in the V3 update for the
         application 13 should contain data. If you are unsure, start the V3
         update of the application 13 in all clients.
    o   If there is still data in the central delta management of the target
         system, it must be retrieved by BW before the transport takes place.
    o   If you have already reconstructed within this target system, it may
         be that the data still exists in the reconstruction tables. After
         the transport, you can no longer transfer these entries into BW. You
         must delete the contents of the reconstruction tables of the
         application 13 in the target system and run another reconstruction
         if need be.
    o   If there is an update log in the target system, you cannot read the
         log data of the application 13 after the transport has been run. You
         can only read it again once data is booked and the last log entry
         overwritten.
    Use the report RMCSBWCC to display a log for the changed extract
    structure in the target system, to see if any of the above problems
    exist. An additional switch deletes all update logs for the application
    of the selected extractor.
    Please also note that you must reactivate the transfer structures when
    you change the extract structure after replicating a DataSource.
    hope this help you
    regards
    harikrishna N

  • Suggest good strategy for data load through standard datasources

    Hi BW Gurus,
    we currently are using standard purhasing related datasources. We forsee new reports coming in later based on the standard datasources.
    Can you please suggest a good general startegy to follow to bring in R/3 data. Our concerns are towards data loads [ initializations etc..] as some of the standard datasources are already in production.
    please advice.

    Hi
    go through these web-blogs -  From Roberto Negro it may help you.
    /people/sap.user72/blog/2004/12/16/logistic-cockpit-delta-mechanism--episode-one-v3-update-the-145serializer146
    /people/sap.user72/blog/2004/12/23/logistic-cockpit-delta-mechanism--episode-two-v3-update-when-some-problems-can-occur
    /people/sap.user72/blog/2005/01/19/logistic-cockpit-delta-mechanism--episode-three-the-new-update-methods
    Regards,
    Rajesh.

  • [iPhone] Calling Objective-C function from a standard-C function

    How can I call an Objective-C function from a standard-C function?
    I can call standard-C functions from an Objective-C functions but I can't do the inverse, how can I solve the problem of the *error: 'self' undeclared* ?
    Here below is the example code:
    - (void)animateView: (UIImage *)image fromPosition:(CGPoint) location1 toPosition:(CGPoint) location2
    - (void) touchesEnded:(NSSet*)touches withEvent:(UIEvent*)event
    [self animateView:newImage fromPosition:location1 toPosition:location2];
    void dessineItemesAnim(int iteme, int final)
    [self animateView:newImage1 fromPosition:location1 toPosition:location2];
    *error: 'self' undeclared (first use in this function)*
    }

    Either add another parameter that contains a reference to the instance you are trying to call (just like many of the various API functions that use a 'C' language callback offer a 'user data ' parameter that can be used for this purpose) or create a global variable reference to the instance.
    Once you have the instance reference, then you can use it in the same way that you would from within an obj-c function.
    Of course, all of this assumes that you are using the standard GCC compiler that is told that your source is objective-c.
    Susan

  • How to transport a standard datasource from sap to biw?

    hi friends,
    I have one standard Datasource which is extracting data from a function module.
    But if we see that Data source thr RSO2 then ,there a msg comes with 'Extraction from function module' with some name.
    and i saw that function module separately thr se37.
    but in RSO2 , i din find that function module name in this Datasource.
    so anybody pls tell me how this datasource works and what can i do if i want to transport this data source to BIW?
    pls help me out...

    Hi Manisha,
    You posted this under an ABAP forum, you should have posted it under a BI-forum.
    You don't transport from SAP to BI, you just replicate from within BI. (ask you BI consultant).
    regards, André

  • Require Standard DataSources for Purchase Orders

    Hi,
    Please provide me the standard datasources for purchase orders to get the data updated automatically in a BI System.
    I have to display report containing the purchase orders details of each day.
    Regards
    Sunil Kumar

    Hi,
    Following link will give you complete details of purchase order deports and data sources.
    http://help.sap.com/saphelp_nw70/helpdata/en/df/cfb839f6a7a307e10000000a11402f/frameset.htm
    Regards,
    Vishnu

  • Existing Function modules or Standard upload Programs

    Hi,
    Can any one tell, Are there any Function modules or Standard upload programs exists for following transactions:
    Creating production version(C223)
    Creating Master recipe(C201)
    Creation Apportionment Structure(C202)
    Creation BOM Allocation(CS08)
    (This all tcodes comes under Production planning.)
    Thanks in advance.

    Hi Vanitha,
    Check this
    for C223
    CM_FV_PROD_VERS_MAINTAIN
    CM_FV_PROD_VERS_SAVE
    CM_FV_PROD_VERS_SAVE_ALL
    CY01_ORDER_MODIFY_PROD_VERSION
    For C201
    C2_CU_RECIPE_EXCLUDE_CREATE
    CONTROL_RECIPE_CREATE
    For C202
    APPOINTMENT_GRP_CREATE
    APPOINTMENT_CREATE
    APPOINTMENT_GENERATE
    APPOINTMENT_GENERATE_2
    For CS08
    CSAP_MAT_BOM_ALLOC_CREATE
    Hope it helps...
    Lokesh
    pls. reward appropriate points
    Message was edited by: Lokesh Aggarwal

  • The problem of function-based reuse

    I read the quoted text as follows from a book authored by a Microsoft developer. I googled and found a lots of quotes of it, but did not find any explanation.
    ============
    With languages like C, the basic unit of reuse is the function. The problem with function-based reuse is that the function is coupled to the data it manipulates. and if the data is global, a change to benefit one function in one reuse context damages another function used somewhere else.
    ============
    C uses libraries widely,which is of function-based reuse. Can anybody kindly give me a scenario when this problem happens?
    Java is typically object-based reuse, and I admit that my question is not a Java one. But I feel it would help to understand more about the concept or benefits of design of Java language. So, thank you to allow me to post this question here,
    Edited by: 799160 on Sep 30, 2010 12:38 PM
    Edited by: 799160 on Sep 30, 2010 12:57 PM

    This is what I got out of reading the quote you posted:
    I suppose something like the following could happen:
    You (being a general person) have been given a class to modify. You look at the code for the first time and it has a bunch of methods and some class variables in it. Some of the methods use the class variables. How can you be sure if you change the functionality to change a class variable in one method won't affect the other methods when they are used? This problem can be solved by learning what everything does, how it interacts and the correct way to use it. But then again, if you don't think about it and just make changes...Oops!
    Perhaps another abstract example would make sense:
    Imagine a calculator that could be used by 2 people at the same time? I bet it'd come up with some funny answers :)
    I wrote up a short example of this, hopefully it makes some sense:
    public class SuperBigProgram
         private int globalVar;
         public static void main ( String[] args )
              new SuperBigProgram();
         public SuperBigProgram()
              System.out.println("I'm a super big program.");
              globalVar = 0;
              //Let's pretend these series of events occur during the program:
              doItHighChanceActivity(); //1
              doItHighChanceActivity(); //2
              doItHighChanceActivity(); //3
              //Whoops super rare event occured!
              doesNotHappenALot();
              doItHighChanceActivity(); //4????    but is really 5.
          * This happens A LOT!
         private void doItHighChanceActivity ()
              superUtilityMethod();
              System.out.println("globalVar: " + globalVar);
          * This utility method does some awesome utility stuff for our Super Big Program.
          * This changes some global data.
         private void superUtilityMethod()
              globalVar++;
          * This does not happen a lot, if at all.
         private void doesNotHappenALot()
              //Hey I don't happen a lot but I'm reusing this really cool utility method that contains global data...
              //Code reuse for the win!
              superUtilityMethod();
    }Here is the output:
    I'm a super big program.
    globalVar: 1
    globalVar: 2
    globalVar: 3
    globalVar: 5
    Edited by: kilosi on Sep 30, 2010 1:22 PM

  • Problem to update Extension Manager

    Problem to update Extension Manager 6.0.7
    Errore Code: U44M1P7
    MAC OS X 10.8.4
    For 4 times I contact via chat the support but someone answer me and tell Please wait while I transfer the chat to the appropriate group.
    But nobody taka care me of the problem!

    Nereis can you please check your installation logs for error messages?  Please see Troubleshoot with install logs | CS5, CS5.5, CS6, CC - http://helpx.adobe.com/creative-suite/kb/troubleshoot-install-logs-cs5-cs5.html for information on how to locate and interpret your installation log files.  Please feel free to post any specific error messages you discover to this discussion.

Maybe you are looking for

  • Substitution of Split Line Items that appear only in FI - New GL?

    Hi, The new GL incorporation has brought in a functionality to automatically split user entered line items during GL Posting to create ledger balance at Profit Centre(or Company code) level in-case line items have multiple Pofit Centres(or Co.Code) e

  • How many clients subscribed to shared variable engine

    Hi,     I have shared variable engine deployed on RT and want to know how many clients get access to the shared variables. Is it possible? Thanks!    Tom

  • Flex incompatibility issue with SDK 3.5.0.12683 and IE6

    Anyone have experience with issues for IE6 and Flex SDK 3.5.0.12683? As a secondary issue, does anyone know of a way to force a browser cache refresh? thanks Simon

  • Database Adapter Problem

    Hi, I have a BPEL process that whenever I try to edit any of the database adapters I get an "java.lang.nullpointerexception" error. The only place where I can think the problem could be is at the toplink mappings, as when I go there I get the error "

  • Sqlplus &file elimination

    Hi all, I would like update a field in the table. Varchar2 field contains "&file= " string. I execute; update table_name set F1='XXX&file=XX' where ... ; However, sqlplus parses the statement and prompts me Enter value for file: How can I update my f