Problem in executing the SO_NEW_DOCUMENT_SEND_API1 in background task

Hi All,
I have specific requirement in which I need to put the workflow into an error whenever posting of the journal document fails (which is a background task in my workflow) and before that I should send the notification to the initiator's lotus notes ID a mail with error description. So that user can repost the document after removing the error in standard SAP. For that I am using function module SO_NEW_DOCUMENT_SEND_API1. But when I execute the workflow then it is not sending any notification to the e-mail ID. But when I debug in foreground then it is sending an e-mail notification to initiator's e-mail address.
I think this FM will not execute in background, if any one is having idea how to make this run then please let me know.
If any one knows any alternate solution that will also help me to meet my requirement.
Please let me know if anything else requires.
Thanks in advance.
Prashant P. Raichurkar

hello,
If you use this FM in a background task then the user is different. probably this is user wf-batch.
Can you verify if the user has a correct email address assigned in his user master data?
What you also can try is to logon with user WF-BATCH (change type of user for that) and run the FM.
/Peter

Similar Messages

  • Database Alert Macros issue while executing the macros in Background

    Hi All,
    I am facing some problems while executing the Database alert macros in Background/Process Chain.
    There are two macros for which the problem exists.
    1.Excess Projected Inventory above Max
    The logic here is, the alert should work for Only Fixed Lot size Procedure.
    If the Stock on hand (projected EA) > (Safety Stock (EA) + Full SOQ (EA)) then alert = "Projected inventory is XX% above MAX".
    XX is the Percent above Max. 
    Note: SOQ => fixed lot size.
    2.Excess Actual Days of Supply
    The Logic here is, the alert should work for all Lot size Procedures except for "Fixed lot size".
    Actual Days Supply >=180 days. (current -> future buckets)
    -  For every receipt cell check the Actual Days Supply - if >= 180 days.
    The macros are working perfectly as expected.

    Hi Abhi,
    Hope you are doing good.
    Yes exactly, the macros are working in foreground/Interactively but not in the Background via Process chain. Let me send the details again.
    Issue :
    I am facing some problems while executing the Database alert macros in Background/Process Chain.
    There are two macros for which the problem exists.
    1.Excess Projected Inventory above Max
    The logic here is, the alert should work for Only Fixed Lot size Procedure. But in Background the alerts are getting created for Lot for Lot and other Planning procedures..
    If the Stock on hand (projected EA) > (Safety Stock (EA) + Full SOQ (EA)) then alert = "Projected inventory is XX% above MAX".
    XX is the Percent above Max. 
    Note: SOQ => fixed lot size.
    2.Excess Actual Days of Supply
    The Logic here is, the alert should work for all Lot size Procedures except for "Fixed lot size". But in Background the alerts are getting created for the Fixed Lot size procedures too..
    Actual Days Supply >=180 days. (current -> future buckets)
    -  For every receipt cell check the Actual Days Supply - if >= 180 days.
    The macros are working perfectly as expected in Foreground/Interactively but the samething is not happening while executing the macro in Background/Process Chain.
    I have tried running these macros in different sequences(Default/Start/Macro) but couldn't able to resolve the issue.
    Thanks in Advance,
    Jay.

  • Executing the program in Background

    Hi experts i'm trying to Execute the Program in background.
    Given the Input and output file locations and Press F9 for process the program in background from SE38. cause i want to run my program as a batch(Background)
    but its not accepting. can you please help me how to resolve this issue.
    i'm providing the code can you please verify that.
    Many Thanks
    SELECTION-SCREEN                                                     *
    selection-screen begin of block b1 with frame title text-001.
    *.. Filename
    PARAMETERS: f_name TYPE char100,     "Upload filename
                d_name TYPE char100.     " Download filename
    selection-screen end of block b1 .
    SELECTION-SCREEN: BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
    PARAMETERS: p_serv radiobutton group RAD1,
                p_frnt radiobutton group RAD1 default 'X'.
    SELECTION-SCREEN: END OF BLOCK b2.
    AT SELECTION-SCREEN ON VALUE-REQUEST  FOR f_name.
    *.. Data Declaration
      DATA: lt_file TYPE filetable,
            lv_file TYPE LINE OF filetable,
            rc_i TYPE i,
            cl_gui TYPE REF TO cl_gui_frontend_services,
            w_path  LIKE dxfields-longpath.
    *.. Check if from server or frontend
      IF p_frnt = 'X'.
    *.. Create objects for method
      CREATE OBJECT cl_gui.
    *.. Clear the filename
      CLEAR f_name.
    *.. Call method to search for file
      CALL METHOD cl_gui_frontend_services=>file_open_dialog
        EXPORTING
          window_title = 'Choose Input File'
        CHANGING
          file_table   = lt_file
          rc           = rc_i
        EXCEPTIONS
          OTHERS       = 4.
    *.. Check if file found
      IF sy-subrc EQ 0.
    *.. Check that file path not empty
        CHECK NOT lt_file[] IS INITIAL.
        LOOP AT lt_file INTO lv_file.
    *..   Set parameter to filename
          f_name = lv_file-filename.
        ENDLOOP.
      ENDIF.
    *.. Free object
      FREE cl_gui.
    *.. Upload from Server
      ELSE.
    Retrieve filename
        CALL FUNCTION 'F4_DXFILENAME_TOPRECURSION'
          EXPORTING
            i_location_flag       = 'A'
            i_server              = ' '
            i_path                = '/sap_ftp/'
            filemask              = '**'
            fileoperation         = 'R'
          IMPORTING
      O_LOCATION_FLAG       =
      O_SERVER              =
            o_path                = w_path
      ABEND_FLAG            =
          EXCEPTIONS
           rfc_error             = 1
           error_with_gui        = 2
           OTHERS                = 3.
    Set file path
        f_name = w_path.
      ENDIF.
    *.. File selection for output file
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR d_name.
    *.. Only allow search for front-end
      IF p_frnt = 'X'.
    *.. Data Declaration
        DATA: lt_file TYPE filetable,
              lv_file TYPE LINE OF filetable,
              rc_i TYPE i,
              cl_gui TYPE REF TO cl_gui_frontend_services.
    *.. Create objects for method
        CREATE OBJECT cl_gui.
    *.. Clear the filename
        CLEAR d_name.
    *.. Call method to search for file
        CALL METHOD cl_gui_frontend_services=>file_open_dialog
          EXPORTING
            window_title = 'Choose Input File'
          CHANGING
            file_table   = lt_file
            rc           = rc_i
          EXCEPTIONS
            OTHERS       = 4.
    *.. Check if file found
        IF sy-subrc EQ 0.
    *.. Check that file path not empty
          CHECK NOT lt_file[] IS INITIAL.
          LOOP AT lt_file INTO lv_file.
    *..   Set parameter to filename
            d_name = lv_file-filename.
          ENDLOOP.
        ENDIF.
    *.. Free object
        FREE cl_gui.
      ENDIF.
    *.. General Checks for Selection screen
    AT SELECTION-SCREEN.
    *.. Check if program run in batch mode and ping directory
      IF sy-batch = 'X'.
    *.. Move filename to file_name
        file_name = d_name.
    *.. Check if path can be reached
        OPEN DATASET file_name FOR INPUT IN TEXT MODE.
        IF sy-subrc NE 0.
          MESSAGE e082(zsomerfield).
        ENDIF.
      ENDIF.
    NITIALIZATION.
    *.. ALV Variables
      variant_save = 'A'.
      w_repid   = sy-repid.
      w_variant_handle = c_handl.
    START-OF-SELECTION                                                   *
    START-OF-SELECTION.
    *.. Check if batch program running in batch mode or not
      IF sy-batch = 'X'.
    *.. Open file on application server for reading
      OPEN DATASET file_name FOR INPUT IN TEXT MODE.
      DO.
    *.. Upload entries
        READ DATASET file_name INTO zpernr.
    *.. IF end of file reached then exit DO statement
        IF sy-subrc = '4'.
          EXIT.
        ELSE.
    *.. IF entry found then add to employee table
          in_file-empnum = zpernr.
    *..     Add entries to table
          APPEND: in_file.
    *..     Clear header lines
          CLEAR: in_file, zpernr.
        ENDIF.
      ENDDO.
    *.. Close dataset
      CLOSE DATASET file_name.
    *.. Get file from frontend and run in foreground
      ELSE.
    *.. Upload from local machine.
    DATA: file_name TYPE string.  "LIKE rlgrap-filename,
    *.. Set filename to filename from screen
      file_name = f_name.
    *.. Upload the information from the file into the table in_file
      CALL FUNCTION 'GUI_UPLOAD'
           EXPORTING
                filename                = file_name
           TABLES
                data_tab                = in_file
           EXCEPTIONS
                file_open_error         = 1
                file_read_error         = 2
                no_batch                = 3
                gui_refuse_filetransfer = 4
                invalid_type            = 5
                no_authority            = 6
                unknown_error           = 7
                bad_data_format         = 8
                header_not_allowed      = 9
                separator_not_allowed   = 10
                header_too_long         = 11
                unknown_dp_error        = 12
                access_denied           = 13
                dp_out_of_memory        = 14
                disk_full               = 15
                dp_timeout              = 16
                OTHERS                  = 17.
    *..   Make sure file uploaded correctly
      IF sy-subrc <> 0.
       MESSAGE E018(ZHR_MESSAGES).
      ELSE.
      MESSAGE i017(ZHR_MESSAGES).
      ENDIF.
      ENDIF.

    Hi Vamsi,
    <b>First Check in the Foreground your program is working for the application server file or not</b>
    When you will Execute your program in Background internal table "ZPERNR" will be populated from the file that is there on the application server.
    After that what you want to do with the internal table.I think you have not sent the whole code.
    In background FM GUI_UPLOAD willl not work.
    If you want to debug your code put wait for 100 seconds at the place where you want to dubug your code.Go to transaction code SM50 your job will be running there.
    Select Your job
    Go to  Menu Bar Program/Mode - > program - > Debugging.
    In this way you can debug your code.
    First Check in the Foreground your program is working for the application server file or not

  • Problem while executing the transaction code FMBV (Reconstruct)

    We are facing a problem while executing the transaction code FMBV
    (Reconstruct Availability Control in Funds Management) in it when we
    execute this transaction system only updates the expenditure which is
    made before technical upgrade from 4.6c to ECC6 EHP6, against the
    Assigned Budget (KBFC budget type) in the Annual Budget Table (BPJA)
    and
    the expenditure which we made after the upgrade, the program just
    ignore
    it. We can also see the expenditure in the standard FBL3N report.
    Please guide us.
    Thanks and Best Regards,

    Dear Abrar
    In your description, you refer to missing update after an upgrade. First of all, see if table FMIT is consistent, as it is the basis for calculating the assigned values during AVC reconstruction.
    Refer to this note:
    977016 FMIT: Missing totals records in Funds Management  And perform following steps:
    1.- Run program RGZZGLUX
    2.- Run program RFFMRC04 to match totals table with line items. A test run after a successful effective run should not find inconsistencies.
    3.- If RFFMRC04 does not show more inconsistencies, run FMBV as final step.
    Note that this reconstruction must be done without any other budgeting/posting activities at the same time, otherwise you may cause  other inconsistencies.
    Please let me know the results.
    Best regards,
    977016 - FMIT: Missing totals records in Funds Management
    Symptom
    After the upgrade to ERP 2004 or higher you realize that the FMIT totals table is no longer updated in Funds Management. You start the RFFMRC04 report to reconstruct the totals, but the report still displays the missing totals after an update run.
    Other Terms
    FMIT, EA-PS, ECC 5.00, ECC 6.00, ECC 7.00
    Reason and Prerequisites
    This problem occurs due to a generation error.
    Solution
    Start the RGZZGLUX report to generate missing source code in FI-SL. Then start the RFFMRC04 report to reconstruct the totals, now another run of the report should no longer display any errors.

  • BDC is not working in when executing the program in background

    Hi gurus,
    I have a problem that in BDC is not working when i'm executing the upload program in background thru scheduling(SM36) , while it works fine when i execute directly with NO screen display mode

    Many transactions behave differently when executed in foreground and background. The fields on the screen may be different.
    In transaction SHBD when starting a recording there is a checkbox where you can select 'Simulate Background Mode'. If you do your recording using this option you will get the code suitable for background mode. If you do not select this option you will get a code for foreground mode.
    By compairing the two codes you will know the changes required for background mode.
    Hope this helps you

  • Background location updates with the help of background task in ios

    Hi,
    we are building a navigation application, that updates location in background. The application receives location updates while in background by using CLLocation manager delegates. In order to reduce battery usage we take updates only on regular intervals say 5 min. For this are using NSTimer to fire an event that starts location update, fetch location and stop location updates for next 5 mins. This approach works well in foreground. But once the application is background this fails. When application fetches the location and stops the location updates for first time, the app gets suspended and never fires event to start location manger for subsequent times.
    The solution we found, for keeping the timer alive is to track it using a background task. This way even if the location updates are stopped for a particular interval the application stays live to keep the timer running. My question is, is this method, a good approach for timed location updates in background states. Is this approach in any way prone to app store rejection as the 'background tasks' are designed to serve other specific scenarios.
    Please share your thoughts on these

    Bill & stephen,
    Not much help I'm afraid, but I just saw your post & wanted to let you know that I have the same problem, but for me it manifests itself in many apps. The only thing I've noticed is that it only seems to happen when I first start typing after not using the keyboard for a while (I'm not sure how long a while is, but maybe 30 seconds or so). Then I'll type & the first few letters will be fine, and then one letter double-types, and then it's fine again until I stop using it for whatever the threshold amount of time is. I'm guessing that it has something to do with the iPad's battery management & that it's shutting off the connection to the keyboard or something & once it picks it back up, then it double-types that letter.
    At least in Pages, it isn't as big of a deal because I know it's coming, I can correct it & then type for a long time. In Numbers, my keyboard use is much less consistent, so I need to be more cognisant of it.

  • Performance Problem when executing the report for the first time.

    Hi,
    We have a Zreport...to improve the performance i created Index on few Data Base table..before my changes it used to take more than 15 minutes after the changes it taking less than 1 min for the same variant and for other variants also.
    But when executing the first in morning its taking the same time more than 15 min.Please let me know how to increase the performance when executing first time also,
    Thanks,
    Kiran.

    Hi all,
    Appreciate your valuable replies...
    @ Thomas: i do accept with your solution running a background job..but user is not accepting for it..thanks for your reply.
    @Siegfried Boes  : for testing purpose Im running this manytimes..but for user they may
    require when ever they need to know open oders.the volume of the data is barongs 300-350 at
    max.
    @Brad Bohn  : After creating the index the repose time reduced to half ...i hope  i have
    created a right index.
    Observation here...I executed the report in production system more than 5 times it took the
    same time, my changes are still in quality..so i think may be for selecting the right index
    its taking this much time.and for the next time is taking right index n doing it so it taking
    less.
    Do you accept it?.if so Please let me know how to explicitly say the select statement to
    use my index.
    Thanks,
    kiran.

  • Problem in executing the adobe form

    Hi,
    Using the SFP tcode i have createda an interface and a form for that interface.
    i have to import parameters from vbap table which i have mapped in the form..there is no problem while executing and activating the form...
    but while i am executing the form after passing the values i am getting an exception : SYSTEM ERROR
    Meassage ID: FPRUNX
    ADS: SOAP Runtime Exception: CSoap Exception Transport.
    Are the forms craeted using SFP tcode are Standalone forms i.e. non-interactive forms?

    Hi friend,
    Its not like that the Adobe created using SFP is non interactive.
    We can create interactive forms using SFP transaction using java code.
    I think it will be the problem with ADS just check with your basis people i think they will configure you the settings which works fine.
    To check whether the settings are perfect you can try executing the standard programs FP_TEST_00 and
    FP_PDF_TEST_00. If it works fine then some other problem exists else check with your basis team.
    Just check this and revert me if you have any issues. I will help you
    Thanks,
    Sri Hari

  • Problem in executing the stored procedure

    I am trying to execute the following procedure which is used to capture data from 4 different tables:
    The table structure is as follows with the sample data:
    AREA
    ======
    area_id area_type preferred_name
    A1 Country India
    A2 State AP
    A3 Country Finland
    A4 State Finland's State
    A5 Country USA
    T_CREATE_STAGE
    =============
    we_name we_num country_nm state_nm operator
    B1 C1 A1 A2 O1
    B1 C2 A3 A4 O1
    ASSOCIATE
    ==========
    ba_name busi_associate
    ABC O1
    XYZ O2
    The IN-Paremeters of the procedure takes the Country name & State name (Prefered Name in table AREA) Operator Name (ba_name in table ASSOCIATE), at a time at least one parameter would come as Input and that could also be a Wild Card search.
    The problem is that in the following procedure the query is taking the first match and returning it infinite times. Please suggest a suitable way to run the query in the procedure so that it returns the appropriate result.
    CREATE OR REPLACE PROCEDURE proc_new_search (
    p_recordset OUT sys_refcursor,
    countryName VARCHAR2 ,
    stateName VARCHAR2 ,
    opName VARCHAR2 ,
    fieldName VARCHAR2
    AS
    BEGIN
    DECLARE
    BEGIN
    OPEN p_recordset FOR 'select b.preferred_name,d.preferred_name,a.we_name,a.we_num,c.ba_name,'
    || 'a.fluid_type,e.preferred_name FROM T_CREATE_STAGE a, AREA b,AREA d,AREA e,ASSOCIATE c '
    || 'where (upper('''||countryName||''') IS NULL or instr(b.preferred_name, upper('''||countryName||''') ) > 0) AND a.country_nm = b.area_id AND b.area_type=''COUNTRY'' AND b.active_ind=''Y'''
    ||' AND (upper('''||opName||''') IS NULL or instr(c.ba_name,upper('''|| opName||''') ) > 0) AND a.operator = c.busi_associate'
    ||' AND (upper('''||stateName||''') IS NULL or instr(d.preferred_name,upper('''|| stateName ||''') ) > 0) AND a.province_state = d.area_id AND d.area_type=''STATE_PROVINCE'' AND d.active_ind=''Y'''
    || ' AND (upper('''||fieldName||''') IS NULL or instr(a.field, upper('''||fieldName||''' )) > 0) ';
    END;
    Thanks in advance,
    Regards,
    Priya

    OK, I have extracted the SQL from the code you posted. I notice that there are FIVE tables in the FROM clause of the SQL:
    FROM T_CREATE_STAGE a,
           AREA b,
           AREA d,
           AREA e,
           ASSOCIATE cwhereas there are only THREE join-conditions joining FOUR tables [5th table AREA e has not been joined with any of the tables]:
    /* other conditions in the WHERE clause are filters, not table joins */
           AND a.country_nm = b.area_id
           AND a.operator = c.busi_associate
           AND a.province_state = d.area_idIn order to get valid expected result from a query involving FIVE tables, at least FOUR joins are required. *[ in a query involving N tables, at least N-1 joins are required ]*. Otherwise, the result will have duplication and hence will not be valid/as-expected.
    So add a join involving AREA e table with other(s) and see if this improves the result.
    HTH

  • Problem in executing the external webservice in a web dynpro java

    Hi,
    I have imported the Adaptive Web Service Model in web dynpro application and while executing the model, I am receiving the following error,
    Exception when retrieving the WS invoker using the execution destination
    I have tested the webservice in ws navigator which works fine.
    I have defined the destinations under destination management template of SOA.
    If anyone has encountered and solved this problem, please advise.
    Thanks,
    Appachi

    Hi Robin,
    Yes I have defined the stack trace and have defined the system & host name in configuring the destinations.
    Yes, I have given HTTP authentication to webservice.
    Advise me if anymore configurations have to be done.
    Thanks,
    Appachi

  • Problem when executing the same subVI in parallel.

    Hey!
    I have created a subVI that I am using in two applications that executes in parallel. For some reason the applications is using the same instance of the subVI, which creates conflicts when the applications are trying to use the same subVI at the same time. Is it possible to solve this problem?
    /Jakob

    Open the SubVI and go to File>>VI Properties. Select Execution and check "Make VI reentrant". This should solve your problem. You should read more about reentant VIs and how they work in the site. They have different kind of uses.
    Try to take over the world!

  • Problem while running the program in background

    hi SDNs,
    i have problem while i run report in background. in background, last three columns  are not appearing in the report. whereas it showing all columns in foreground.
    i have increased the line-size, even then it is giving truncating last some columns.
    could you any one pls help me out, what to do ?
    Thanking you,
    Ramakrishna S

    hi prakash ramu,
    even it is not working. it is directly talking me to spool request..
    i think it is not possible, while ur running the report in background.,
    any how if possible could u pls send me the code...
    thanks
    ramu

  • Problem while executing the query

    Hi,
    I have a query when iam trying to execute the query it is giving following error
    Error Summary
    Exception occured while processing the current request; this exception cannot be handled by the application or framework
    If the information on this page does not help you locate and correct the cause of the problem, contact your system administrator
    To facilitate analysis of the problem, keep a copy of this error page Hint: Most Web browsers allow you to select all content, and copy and paste it into an empty document (such as in an email or simple text file)
    Root Cause
    The initial exception that caused the request to fail was:
         Select a valid Date (OR) Fiscal Period (OR) Calendar Month         
    com.sap.mw.jco.JCO$Exception: (104) RFC_ERROR_SYSTEM_FAILURE:      Select a valid Date (OR) Fiscal Period (OR) Calendar Month         
    at com.sap.mw.jco.MiddlewareJRfc.generateJCoException(MiddlewareJRfc.java:455)
    at com.sap.mw.jco.MiddlewareJRfc$Client.execute(MiddlewareJRfc.java:1452)
    at com.sap.mw.jco.JCO$Client.execute(JCO.java:3979)
    at com.sap.mw.jco.JCO$Client.execute(JCO.java:3416)
    at com.sap.ip.bi.base.application.service.rfcproxy.impl.jco640.Jco640Proxy.executeFunction(Jco640Proxy.java:267)
    Iam not sure why i could not able to execute this query.I could able to execute and run other queries.
    Please help me..
    thanks in advance

    Hi,
    Please check if you have used any formulae or function modules to derive the fiscal period/month from calday. Maybe the date being assigned is not of the same format as expected due to which the error (input valid date or calmonth or fiscal period) is being generated.
    Regards,
    Manoj

  • Strange problem while executing the Query.......

    Hi,
    I have created a new query and I am facing the strange behaviour.
    When I execute it , it works fine but when one of my colleague execute it , it does not return any value for one of the Price variable.
    It works fine with most of the people I have checked except one.
    Can somebody let me know the reason.....?
    Thanks , Jeetu

    Hello,
    If it is authorization problem go to transaction st01 and mark the first check for authorization. Under filter insert the user. Click Trace On.
    Execute the query with that user and just after the lack of authorization message click trace off.
    Read the trace.
    Do the same with your user and compare the log of the two.
    You'll see what is missing.
    Assign points if helpful.
    Diogo.

  • Problem while executing the package

    Hi Guys,
    I am getting the problem while executin the package for 1 of the interface named PRE_SYNC_EX_ARMY_VEH_DEL.
    The source tables are EX_ARMY_VEH_TMP and CONTROL_DEL & target table is CONTROL_DEL
    All the three tables are in the same schema named RTO_STAGE.
    I am looking in the operator as at the first session is in the process(running mode) with "DROP FLOW TABLE" as the message while all other sessions are in the waiting mode related to that interface PRE_SYNC_EX_ARMY_VEH_DEL.The previous interface before it ie PRE_SYNC_AXLE_DEL & PRE_SYNC_AXLE_DELNR is running okk(with all succesful session).
    **In one statement I can summerize that execution of package is halting/stopped at one interface & not showing error in operator(showing running)**
    what would be the problem?
    Thanx
    Edited by: user8849294 on Mar 1, 2010 10:17 PM
    Edited by: user8849294 on Mar 2, 2010 9:36 PM
    Edited by: user8849294 on Mar 2, 2010 9:43 PM

    Hi,
    You didn't mention the exact error.
    Did you check if your interface succeeds outside the Package?
    If yes, have you included any odiFileWait event which's why other tasks are kept in Wait mode?
    In any case, if there's an error, the task with the red-colored icon shows the one with problem. Double-click it & go to the Execution tab to get the exact error

Maybe you are looking for