Function Module working only in debug mode

Hi all,
The following Function Module works only in debug mode. The purpose of this FM is to create a notification and to put it in progress status. If I put a breakpoint before "CALL FUNCTION 'BAPI_ALM_NOTIF_PUTINPROGRESS'" it works. If I execute this FM without putting a breakpoint at that place it creates the notification but doesnt put it in progress status.
In other words, the last BAPI call doesnot work if I dont put a breakpoint before.
Can somebody help me to find out where is the problem?
Thanks,
Younes
FUNCTION ZFM_CREATE_NOTIF_IN_PROCESS.
""Local interface:
*"  IMPORTING
*"     VALUE(NOTIFTYP) TYPE  CHAR2
*"     VALUE(NOTIFHEADER) TYPE  BAPI2080_NOTHDRI
*"  EXPORTING
*"     VALUE(NOTIFNUMBER) TYPE  CHAR12
*"     VALUE(NOTIFCURSTATUS) TYPE  CHAR40
DATA: gs_bapi2080_nothdre TYPE bapi2080_nothdre,
      gt_return TYPE TABLE OF bapiret2.
The notification is created with a temporary number
CALL FUNCTION 'BAPI_ALM_NOTIF_CREATE'
  EXPORTING
    notif_type         = NOTIFTYP
    notifheader        = NOTIFHEADER
  IMPORTING
    notifheader_export = gs_bapi2080_nothdre
  TABLES
    return             = gt_return.
READ TABLE gt_return TRANSPORTING NO FIELDS WITH KEY type = 'E'.
CHECK sy-subrc IS NOT INITIAL.
*The notication will be saved with a number which isnt temporary
CALL FUNCTION 'BAPI_ALM_NOTIF_SAVE'
  EXPORTING
    number      = gs_bapi2080_nothdre-notif_no
  IMPORTING
    notifheader = gs_bapi2080_nothdre
  TABLES
    return      = gt_return.
READ TABLE gt_return TRANSPORTING NO FIELDS WITH KEY type = 'E'.
CHECK sy-subrc IS NOT INITIAL.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
The Notif is already created, it will be put in progress status
NOTIFNUMBER = gs_bapi2080_nothdre-notif_no.
   CALL FUNCTION 'BAPI_ALM_NOTIF_PUTINPROGRESS'
        EXPORTING
          NUMBER             = NOTIFNUMBER
          LANGU              = SY-LANGU
       IMPORTING
         SYSTEMSTATUS       = NOTIFCURSTATUS
       TABLES
         RETURN             = gt_return.

Hi Emmanuel,
Now I get your problem: you want to wait to have the commit finished! The call to BAPI_TRANSACTION_COMMIT has an optional parameter 'WAIT' which is space by default which causes only a commit. When you set this parameter to 'X' it will do a commit work and wait.
This should solve your problem!
Regards,
John.

Similar Messages

  • CRM_ORDER_MAINTAIN works only in debug mode

    Hi Experts,
    I am currently facing a strange issue. I am trying to add a line item to a service ticket, but the code works only in debug mode. Sample code is given below:
    lv_product_i-ref_handle = '0000000001'.
    lv_product_i-ref_guid = lv_header_guid.
    INSERT lv_product_i INTO TABLE lt_product_i.
    ls_orderadm_i-header = lv_header_guid.
    ls_orderadm_i-itm_type = 'ZSG5'.
    ls_orderadm_i-number_int = '0000000010'.
    ls_orderadm_i-ordered_prod = 'SERVICEITEM_SG5'.
    ls_orderadm_i-handle = '0000000001'.
    ls_orderadm_i-mode = 'A'.
    ls_orderadm_i-itm_proc_ident = 'SRVC'.
    INSERT ls_orderadm_i INTO TABLE lt_orderadm_i.
    ls_input_fields-ref_handle = '0000000001'.
    ls_input_fields-objectname = 'ORDERADM_I'.
    CLEAR ls_field_names.
    ls_field_names-fieldname = 'HANDLE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'HEADER'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ITM_PROC_IDENT'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ITM_TYPE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'MODE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'NUMBER_INT'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ORDERED_PROD'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    INSERT ls_input_fields INTO TABLE lt_input_fields.
    CALL FUNCTION 'CRM_ORDER_MAINTAIN'
    EXPORTING
    it_product_i = lt_product_i
    CHANGING
    ct_orderadm_i = lt_orderadm_i
    ct_input_fields = lt_input_fields
    EXCEPTIONS
    error_occurred = 1
    document_locked = 2
    no_change_allowed = 3
    no_authority = 4
    OTHERS = 5.
    LOOP AT lt_orderadm_i INTO lv_tempvar.
    lv_item_guid = lv_tempvar-guid.
    ENDLOOP.
    The item guid is coming as initial and no item is being added.But if i put a breakpoint in CRM_ORDER_MAINTIAN, then the guid is being generated properly. Any pointers why the code is behaving like this or someone has faced a similar issue before?
    Thanks and Regards,
    Rohit

    Hi Rohit,
    The above said is also correct + U have to write
      CALL FUNCTION 'CRM_ORDER_SAVE'
        EXPORTING
          IT_OBJECTS_TO_SAVE = GT_OBJ_GUIDS
        IMPORTING
          ET_SAVED_OBJECTS   = GT_SAVED_OBJECTS
        EXCEPTIONS
          OTHERS             = 2.
      COMMIT WORK.

  • CRM_ORDER_MAINTIAN works only in debug mode!

    Hi Experts,
    I am currently facing a strange issue. I am trying to add a line item to a service ticket, but the code works only in debug mode. Sample code is given below:
    lv_product_i-ref_handle = '0000000001'.
    lv_product_i-ref_guid = lv_header_guid.
    INSERT lv_product_i INTO TABLE lt_product_i.
    ls_orderadm_i-header = lv_header_guid.
    ls_orderadm_i-itm_type = 'ZSG5'.
    ls_orderadm_i-number_int = '0000000010'.
    ls_orderadm_i-ordered_prod = 'SERVICEITEM_SG5'.
    ls_orderadm_i-handle = '0000000001'.
    ls_orderadm_i-mode = 'A'.
    ls_orderadm_i-itm_proc_ident = 'SRVC'.
    INSERT ls_orderadm_i INTO TABLE lt_orderadm_i.
    ls_input_fields-ref_handle = '0000000001'.
    ls_input_fields-objectname = 'ORDERADM_I'.
    CLEAR ls_field_names.
    ls_field_names-fieldname = 'HANDLE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'HEADER'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ITM_PROC_IDENT'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ITM_TYPE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'MODE'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'NUMBER_INT'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    ls_field_names-fieldname = 'ORDERED_PROD'.
    APPEND ls_field_names TO ls_input_fields-field_names.
    INSERT ls_input_fields INTO TABLE lt_input_fields.
    CALL FUNCTION 'CRM_ORDER_MAINTAIN'
    EXPORTING
    it_product_i = lt_product_i
    CHANGING
    ct_orderadm_i = lt_orderadm_i
    ct_input_fields = lt_input_fields
    EXCEPTIONS
    error_occurred = 1
    document_locked = 2
    no_change_allowed = 3
    no_authority = 4
    OTHERS = 5.
    LOOP AT lt_orderadm_i INTO lv_tempvar.
    lv_item_guid = lv_tempvar-guid.
    ENDLOOP.
    The item guid is coming as initial and no item is being added.But if i put a breakpoint in CRM_ORDER_MAINTIAN, then the guid is being generated properly. Any pointers why the code is behaving like this or someone has faced a similar issue before?
    Thanks and Regards,
    Rohit

    Well, during debugging an implicit COMMIT WORK is executed on a regular basis. This might cause the ITEM GUID to be created during debugging.
    However, normally, after CRM_ORDER_MAINTAIN, you should use the CRM_ORDER_SAVE as well. This will return a list of SAVED_OBJECTS. If all objects were saved correctly, do an explicit COMMIT WORK.
    Works fine for us.....

  • Deserialization works only in debug mode

    When I try to deserialize an XML document (defined via File-Connection) it works fine in debug mode but I get an error in non-debug-mode. What's the problem here?
    Error: 2011-12-29 19:31:40.25
    Code: 0x00000001
    Source: Read data from SAP
    Description: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: There is an error in X
    ML document (0, 0). ---> System.TypeInitializationException: The type initializer for 'Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderList1' threw an exception
    . ---> System.NullReferenceException: Object reference not set to an instance of an object.
    at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderList1..cctor()
    --- End of inner exception stack trace ---
    at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderList1..ctor()
    at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializerContract.get_Reader()
    at System.Xml.Serialization.TempAssembly.InvokeReader(XmlMapping mapping, XmlReader xmlReader, XmlDeserializationEvents events, String encodingStyle)
    at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
    --- End of inner exception stack trace ---
    at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
    at System.Xml.Serialization.XmlSerializer.Deserialize(TextReader textReader)

    Yes, there is a potential for a bug. Thus, feel free to log it in
    MS Connect.
    You need to deploy it to the GAC, too. I will better point you to a blog post that covers this: http://www.hoekstra.co.uk/index.php/software-mainmenu-36/ssis-mainmenu-75/73-create-and-use-a-c-assembly-for-ssis.html?start=1
    I suggest when you go live you create a script that will take care of all, but it is not too too laborious.
    Arthur My Blog
    Are you 100% sure? Because I can see that SSIS seeks for the dll in ...DTS/binn. So I see no need to pollute the GAC with this dll.
    My dll is not deployed into the GAC and when I remove it, it will no longer work. I think it works in DTS/binn because the DTExec.exe is located there?
    LOG: This bind starts in default load context.
    LOG: Using application configuration file: c:\Program Files\Microsoft SQL Server\100\DTS\binn\DTExec.exe.Config
    LOG: Using machine configuration file from c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\config\machine.config.
    LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).
    LOG: Attempting download of new URL file:///c:/Program Files/Microsoft SQL Server/100/DTS/binn/ClassLibrary1.DLL.
    LOG: Attempting download of new URL file:///c:/Program Files/Microsoft SQL Server/100/DTS/binn/ClassLibrary1/ClassLibrary1.DLL.
    LOG: Attempting download of new URL file:///c:/Program Files/Microsoft SQL Server/100/DTS/binn/ClassLibrary1.EXE.
    LOG: Attempting download of new URL file:///c:/Program Files/Microsoft SQL Server/100/DTS/binn/ClassLibrary1/ClassLibrary1.EXE.

  • My program works only in debugging mode

    Dear All,
    I am just starting to use LabVIEW and developing a instumental driver. 
    The program is rather sequentially designed because I am only used to work with text-based program. 
    The current program is working in debugging mode without any error message.
    To give an idea of how it is composed:
    1. Set up the serial port setting (machine address, baud rate, parity, etc)
    2. Send to the instument the name of a short program to be run. 
    3. Send mutiple string commands to the instruments.  Those string commands construct a short program to control the instrument.
    4. Send another string command to run the short program
    The issue is that it does not work in excution mode.  It looks to me that the communication between the instrument and computer seems to be too fast. 
    Since the program is designed in a sequential manner, it does not have any while-loop or for-loop so I cannot add any timing function. 
    Could anyone give me a hint or a right direction to fix this issue?  It would be really appreciated.  Thank you.
    Solved!
    Go to Solution.

    You could do something like the attached modification.Note how I modified the connector pane for the subVI to use the conventional 4-2-2-4 pattern and notice where I connected the terminals.
    NOTE: I am assuming the VI is supposed to run just once, and that you're not using the Run Continuously button in the toolbar. You're not, right?
    Attachments:
    NE-100_StairFlow_w_RUN00 MOD.vi ‏27 KB
    NE-100_RAT_00_XX MOD.vi ‏18 KB

  • Badi working only in Debug mode

    Hi experts,
    It's my first time with Badi, and I'm facing a issue I can't understand.
    I've activated badi ME_PROCESS_PO_CUST , and everything work's fine .
    From the method "Close" I call a Z... function which writes data on a custom table.
    I've tested  it and the system correctly update the table , but when I deactivate  the debug  in the badi's method , it looks like the badi is not implemented and the system doesn't pass trough the function. 
    Can somebody adress me to solve it ?
    Thank you in advance for any help.
    Ciao.

    Thank you for your help Sudhir , but the table update it's done by the custom function which should be called by the BAdI. My issue is that the BAdI's method works only if I set a break-point on it. If I do not put a break-point on the BAdI , the function is not called at all !!.
    Thanks again for your suggestion.

  • Enhancement works only in debug mode

    Hi all,
    Need help with the issue that I have.I have written an enhancement , in one of the includes that is being called by MIRA(LMR1MF1H) tcode, to set the document type , based on condition.Below is the code snippet :
    Import the flags from memory id
    import is_invo from memory id 'IS_INVO'.
    import is_crme from memory id 'IS_CRME'.
    import is_pdf from memory id 'IS_PDF'.
    * Check whether PDF or scanned document and change doc type to Y3 or Y4
      if is_pdf eq 'X'.
    *    Check if invoice
         if is_invo eq 'X'.
           rbkpv-blart = 'Y3'.
         elseif is_crme eq 'X'.
           rbkpv-blart = 'Y4'.
         endif.
      wait up to 1 seconds.
      endif.
    * Free memory
      free memory id 'IS_INVO'.
      free memory id 'IS_CRME'.
      free memory id 'IS_PDF'.
    Now, When I execute directly, the document type is not getting set...I assume the control is not going to my code at all..as there is no other place where the doc type gets modified...
    However, when i execute in debug mode, it works perfectly fine...Any inputs on why this behaviour ?

    Hi ,
    I am not sure what is going wrong..I think the control is not going to the enhancement point at all ! I set a default value for the flag and still the document type doesnt change..Let me explain the flow of the code, that is written, it may help you guys in understanding..
    I have a Z report, in which, I am preparing the bdc data and also setting the flag is_pdf, based on some criteria.
    In this Z report, I am calling transaction MIRA.Now, MIRA tcode is calling FORM init_miro( in the include LMR1MF1H).Just before this form ends , I have my enhancement code(given above in my first post) written, to change  the doc type...
    Now, to test, I set the is_pdf flag to 'X', but still the doc type doesnt change...so I assume the control is not going there at all
    Also, I am not sure how to use the shared buffer concept..please suggest..

  • Poweroff works only in debug mode

    Hello,
    I am running a fully updated (30.4.14 ) Arch on an oldish P4, and my problem is that the computer does not poweroff of shutdown and reboots instead. The cmd I tried were "systemctl poweroff"  ,"poweroff", "shutdown -P now"
    For some reason, if I append "debug" to the cmdline, powering off works as expected but then the pc boots slowly and i get my logfiles spammed.
    The machine was running Ubuntu 10.04 with kernel 2.6 before where everything worked fine.
    I tried to to add various acpi commands such as "acpi=noirg" or acpi_os_name="Microsoft Windows"
    Whats different in debug mode that makes shutdown work?

    I had the opposite problem on my new system in that it would not reboot; it would always power down but never power back up. My problem was solved by blacklisting the Intel Management Engine driver “mei_me”. I don't know if that driver is your problem or not, but if your system has that driver loaded you could check to see if blacklisting would work by unbinding it before the poweroff:
    Get the device id bound to the driver:
    ls -1L /sys/bus/pci/drivers/mei_me/ | grep ':'
    E.g. 0000:00:1f.0
    Now write (as root) that value to unbind:
    echo 0000:00:1f.0 > /sys/bus/pci/drivers/mei_me/unbind
    Obviously replace 0000:00:1f.0 with your device id.
    If your system still fails to power off, the problem is not with mei_me.
    Otherwise, to save you from having to unbind the driver each time, you can blacklist the mei_me driver:
    E.g.:
    echo blacklist mei_me >> /etc/modprobe.d/fix-poweroff-problem.conf
    And reboot

  • ERMS - Email Linking works only in DEBUG mode!

    Hi All,
    We are on ERMS in CRM 7.0 SP04.
    I am facing a strange issue.
    I have configured a Rule Policy so that when a user send an email to a particular email id a service ticket is created. A small subset of this functionality is that the email that the user sends should get liked to the service ticket that is created under the Processing Log assignment block.
    Now the strange thing is that during normal execution the email does not get logged with the service ticket but when I debug the workflow step using crm_erms_logging the functionality works perfectly and the email gets logged with the service ticket.
    I suspected issues with authorization of the WF-BATCH user but after assigning auths similar to the debug user also the problem is not resolved.
    Quick response would be highly appreciated.
    Kind regards,
    Gaurav

    Hi Gaurav,
    Role: WF_BATCH  has access to the follwoing:
    CRM_ORD_LP
    CRM_ORD_OE
    CRM_ORD_OP
    CRM_ORD_PR
    These objects are responsible for the CRM Order access and needs access to transaction types which you are using in the system. Use "*" or enter transaction type which you are using.
    Let me knwo if it still does not work.
    Regards,
    Namita
    Edited by: Namita Singh on Oct 14, 2009 10:32 AM

  • Weblogic 10.3.3 JRE1.6_0_23 SHA2 Certificates works only in debug mode

    Hello All,
    I have received the new certificates which are using SHA2 algorithm. However my weblogic application server 10.3.3 together with JRE1.6 and default SSL provider (certicom) cannot handle this new SHA2 algorithm (Previously sha1). After reading some post I have changed the ssl provder to Sun standard by enabling the JSSE flag true. (<jsse-enabled>true</jsse-enabled>)
    Unfortunately with this change to the config.xml neither Admin Server nor the managed server starts. Server simply hangs on this step and no error message to find in any of the logs.
    So to be able to see the error I have enabled the debug flag in the weblogic start up options.
    -Djavax.net.debug=ssl
    Suddenly after enabling this (debug) flag Admin server could start, managed server still hangs. This behaviour was tested multiple times by removing and putting the debug flag.
    Has anybody encountered such problem? What changes after setting the debug flag which led the Admin server to start? Even if the Admin server starts why the Managed server still hangs?
    Looking forward for the help.
    Best Regards
    Prasad

    By default, WebLogic Server uses the Certicom SSL implementation, which does not support SHA2* algorithms.
    WebLogic Server 10.3.3 and higher offers the option to switch to the JSSE SSL implementation instead which does support such algorithms.
    Note that in WLS 10.3.3 and higher, the Certicom SSL implementation is deprecated.
    So in WLS 10.3.3 and higher, this issue can be resolved by enabling (argument added to JAVA_OPTIONS) the JSEE SSL provider with the following JVM startup argument:
    -Dweblogic.security.SSL.enableJSSE=true
    The below link offers more details on the JSSE SSL implementation.
    http://docs.oracle.com/cd/E24329_01/web.1211/e24422/ssl.htm#SECMG494
    Thanks,
    Vijaya

  • Updating Custom Table Only in Debug Mode

    Hi All!
    I have been encountering issues in updating a custom table. It would work successfully only in debug mode otherwise it won't update an entry in the table.
    This is the piece of code that would update an entry in the table specifically used in a user exit. The functionality of this code is to automatically remove a transportation block:
    SELECT SINGLE *
    INTO wa_zblock
    FROM zblock
    WHERE zzblknum EQ c_tr01
    AND vbeln EQ p_lvbeln
    AND zzprocessed EQ space.
    IF sy-subrc EQ 0.
    DO.
    CALL FUNCTION 'ENQUEUE_E_TABLES'
    EXPORTING
    MODE_RSTABLE = 'S'
    TABNAME = c_lzblock
    EXCEPTIONS
    FOREIGN_LOCK = 1
    SYSTEM_FAILURE = 2
    OTHERS = 3.
    IF sy-subrc EQ 0.
    wa_zblock-zzprocessed = c_x.
    wa_zblock-zzapproveby = sy-uname.
    wa_zblock-zzapproveon = sy-datum.
    MODIFY zblock FROM wa_zblock.
    if sy-subrc EQ 0.
    COMMIT WORK AND WAIT.
    endif.
    EXIT.
    ENDIF.
    ENDDO.
    CALL FUNCTION 'DEQUEUE_E_TABLES'
    EXPORTING
    MODE_RSTABLE = 'S'
    TABNAME = c_lzblock.
    ENDIF.
    How can I make this update the custom table successful in undebugged mode? Please let me know your thoughts on this.
    Thanks!

    I also suggest you to lock only the entry that will be updated (and not the whole table!) : you will have then far less problems of conflict with updating this table.
    For that, you have to create a lock object on your table (via SE11 - for example EZ_MY_TABLE). This will create 2 function modules named ENQUEUE_E<name of your lock object> (in my example ENQUEUE_EZ_MY_TABLE) and DEQUEUE_E<...>.
    You can then call those FM like this :
    CALL FUNCTION 'ENQUEUE_EZ_MY_TABLE'
      EXPORTING
        MODE_RSTABLE = 'S'
        KEYFIELD1 = ld_keyfield1  " Here are the key values for the entry that you have to update
        KEYFIELD2 = ld_keyfield2
      EXCEPTIONS
        FOREIGN_LOCK = 1
        SYSTEM_FAILURE = 2
        OTHERS = 3.
    Best regards,
    Samuel

  • CRM_ORDER_SAVE works properly only in debug mode

    I have a scenario where I'm creating two order documents (using CRM_ORDER_MAINTAIN and CRM_ORDER_SAVE), then linking them with function module CRM_CREATE_BREL_TO_CONTRACT.  After calling CRM_ORDER_SAVE and before CRM_CREATE_BREL_TO_CONTRACT, I "commit work and wait" and call CRM_ORDER_INITIALIZE.  When I set a breakpoint immediately before CRM_CREATE_BREL_TO_CONTRACT (and thus have to pass through debug mode), CRM_CREATE_BREL_TO_CONTRACT works with no problem.  If I don't pass through debug mode, it fails and returns the flag EV_LOCKING_PROBLEM = true.
    I have added "wait X seconds" and have even added a while loop that calls CRM_ORDER_CHECK_CHANGE_ALLOWED.  But when I don't enter debug mode, this while loop runs forever.
    Does anybody know what's happening here?  I suspect there is some kind of problem with document distribution, but I'm not sure.
    Many thanks,
    Tom Peng

    Hello Tom,
    As you may already known, the lock is added in FM CRM_CREATE_BREL_TO_CONTRACT with the following coding:
          IF ls_active_switch-lock_contract <> gc_act_switch-inactive.
    *       Lock contract
            CALL FUNCTION 'CRM_ORDER_ENQUEUE'
              EXPORTING
                iv_guid           = iv_contract_header
              IMPORTING
                ev_already_locked = lv_already_locked
              EXCEPTIONS
                foreign_lock      = 1
                system_failure    = 2
                distributed_lock  = 3
                no_change_allowed = 4
                transferring      = 5
                OTHERS            = 6.
            IF sy-subrc <> 0.
    Here system checks whether activ_switch is active. If yes, the error issued.
    Thus you need to pass the parameter t_active_switch with value false when call FM crm_order_save.
    Hope this information could be helpful.

  • SRM purchasing document updated in enhancement only in Debug mode

    Hi everybody,
    I created an enhancement for a SRM include ( LBBP_SOCO_APPF0R -> Form CREATE_FOLLOW_ON_DOCUMENT) because existing BAdI are not called at necessary moment to update Shopping Cart (purchasing document) CUF items.
    ABAP code i added allows to get data from follow-on document, then i get details from parent document, i update this document with values for CUF fields, i save this document and finally i run function module BAPI_TRANSACTION_COMMIT (with or without export parameter 'WAIT').
    Nevertheless, those CUF fields are correctly updated but only when i am in debugging process flow with an external break-point.
    When i delete this debug point, CUF fields are not updated any more !
    Is anyone have an idea to solve this problem ?
    Regards.
    Laurent.

    The problem may come from the network system or something's wrong in the system Because I have run the tcode and It work properly.
    Thanks,
    Hung

  • Processing happens only in debug mode.

    Hi,
    I am calling an RFC enabled FM BAPI_ALM_NOTIF_DATA_MODIFY and BAPI_ALM_NOTIF_SAVE to modify the data of a notification. These function modules are called within another FM which is also a RFC called in background as a separate task. The problem here is that, the data gets modified fine only when I am in the debugging mode and execute it. But if I execute without going to the debug mode, I cannot modify the notification data. Kindly suggest why this is happening and what the solution is. Thanks

    I am not using any destination. The code is as shown:
      WAIT UP TO 5 SECONDS.
      CALL FUNCTION 'BAPI_ALM_ORDER_GET_DETAIL'
        EXPORTING
          number                 = aufnr
       IMPORTING
         es_header              = gf_header
        TABLES
         et_olist               = it_ord_notif
          return                 = it_ret
    CALL FUNCTION 'BAPI_ALM_NOTIF_GET_DETAIL'
      EXPORTING
        number                   = gf_header-notif_no
    IMPORTING
       NOTIFHEADER_EXPORT       = gf_notif_exp
            CLEAR: gf_notif_no.
            DESCRIBE TABLE it_notif_no LINES g_line.
            READ TABLE it_notif_no into gf_notif_no INDEX g_line.
            IF gf_notif_no-short_text+0(3) = 'PRB'.
             clear: gf_notif_imp, gf_notif_imp_x.
                gf_notif_imp-desstdate = gf_notif_exp-desstdate.
                gf_notif_imp-desenddate = gf_notif_exp-desenddate.
                gf_notif_imp_x-desstdate = 'X'.
                gf_notif_imp_x-desenddate = 'X'.
                CALL FUNCTION 'BAPI_ALM_NOTIF_DATA_MODIFY'
                      EXPORTING
                        number                   = gf_notif_no-notif_no
                       NOTIFHEADER              = gf_notif_imp
                       NOTIFHEADER_X            = gf_notif_imp_x
                     IMPORTING
                       NOTIFHEADER_EXPORT       = gf_notif_result
                     TABLES
               CALL FUNCTION 'BAPI_ALM_NOTIF_SAVE'
      EXPORTING
        number            = gf_notif_no-notif_no
    IMPORTING
      NOTIFHEADER       = gf_qmnum_save
    TABLES
       RETURN            = it_ret2.
              endif.
                clear: gf_notif_no.
            LOOP AT it_notif_no INTO gf_notif_no.
              IF gf_notif_no-short_text+0(3) = 'PRB'.
                SELECT SINGLE objnr FROM viqmel
                                                      INTO g_objnr
                                                     WHERE qmnum = gf_notif_no-notif_no.
                SELECT SINGLE stsma INTO g_stsma FROM jsto WHERE objnr = g_objnr.
                SELECT SINGLE estat INTO g_stat FROM tj30t WHERE stsma = g_stsma AND
                  spras = 'EN'
                  AND txt04 = 'SFMR'.
                CALL FUNCTION 'STATUS_CHANGE_EXTERN'
                  EXPORTING
                    check_only          = ' '
                    client              = sy-mandt
                    objnr               = g_objnr
                    user_status         = g_stat
                    set_inact           = ' '
                    set_chgkz           = 'X'
                    no_check            = ' '
                  EXCEPTIONS
                    object_not_found    = 1
                    status_inconsistent = 2
                    status_not_allowed  = 3
                    OTHERS              = 4.
                IF sy-subrc = 0.
                ENDIF.
              ENDIF.
            ENDLOOP.
          ENDIF.
        ENDIF.
      ENDIF.

  • RFC Function module-With Only Request message

    Hi
    i need a RFC with only Request message and Response message is not required.
    please help me, how to create a RFC function module with out Response message, and it should contain only Request message.
    i have created RFC in this way:
    RFC doesn't contain neither import nor export parameters. and i have defined one table in TABLE tab which refers to a ztable created already.
    when i imported RFC into XI i came to know that RFC has both Request and Response messages, but i don't need Response message.
    Thanks in advance..help would be appreciated
    Regards,
    Rajesh

    Thankx Michal,
    I have written ZRFC this way:
    insert ZMM_AUTO_GR from INPUT_TABLE .
      if sy-subrc = 0.
        commit work.
      else.
       rollback work.
    im not using neither import nor export parameters..but using only tables parameters. but when imported in XI im getting same table  structure in both request an response.
    please suggest what changes required in above code to invoke my ZRFC in async way.
    you will not get any response in XI- what chages required in my code to dnt get .reponse in XI.
    appreciate your help.
    Regards,
    Rajesh.

Maybe you are looking for

  • How do I install iTunes on my ipad2 without a computer?

    My macbook died and I now don't have a computer to connect my iPad to. I never noticed that I did not have iTunes on my iPad until recently when I tried to purchase music and could not figure out why my music app is not connecting to the iTunes store

  • Publish settings Export frame set to 2 kills flvPlayback

    To let my tiny preloader show up before its at 75% I changed the export frame for classes to 2 in the publish settings. This works for the preloader but now the flvPlayback doesnt work. (except it does still work if I hit control enter a second time

  • Connecting a NEC lcd to ADC port on G4

    Here's my problem. I have a G4 with VGA and ADC connections. I also have a NEC 17" lcd with a DVI-D and VGA connections. I am using the VGA port on my LCD so I have to use the DVI-D connection if I want to go to my G4. Is this possible to do without

  • Performance Testing on Oracle 11g

    Hello all, I am trying to run many joins for testing purpose and need to clear the buffer/cache before each run to time it. Note: I am not trying to emulate real world production-just want to run a few test on the time the query is complete. I am usi

  • Java.lang.NoClassDefFoundError in ESS screen.

    Hi All, We had configured ESS, but i am facing an error in one of the screen like when i am going to Personal information> Family members/dependents> (Under the child) EDIT--> click on review button. i am seeing the following error. java.lang.NoClass