CALL_TRANSACTION in Background

Hi.
We want to execute CALL_TRANSACTION SP12 in background job.
And we did Migration from 46B to ERP2005.
Before Migration we could do it normaly, but now we can't do it.
In addition, we can do it on foreground, but we can't do it
in background,---- rc = 1001.
And we didn't modify Program(Add-on).
I can't clarify the reason.
Please tell me the changes between 46B and ERP2005
on the point CALL_TRANSACTION.
And SP Level is following.
[46B]
SAPKB46B24
SAPKA46B19
[ERP2005]
  SAPKA70010
  SAPKB70010
Thanks in Advance.
Toshi

Hi,
If breakpoints are set in a transaction tcod called using the CALL TRANSACTION tcod USING itab variant, these are not actually reached in 'N' mode. The system tries to insert data in the Debugger screen; the call ends with SY-SUBRC = 1001
aRs

Similar Messages

  • Report in background

    Hi Experts,
    how can i run report in background with out going sm35,
    Pls reply with sample code ,
    points will be rewarded.
    Thanks,
    Leena.

    Hi,
    Go through this hope u can understand might be u dont want all the programe what i have given , just try to analyze whether is any points r useful in this .
    When you generate the BDC (Batch Data Communication options define the processing mode for a batch input session) program with SHDB, you can remove a lot of unwanted fields by copying this customize abap include program.  It allows you to execute the BDC program immediately without filling up those SAP generate fields.  To run background, just run it as a background job.
    Execute BDC immediately by replacing the include BDCRECX1
    ***INCLUDE ZBDCRECX1.
    When you generate the program using SHDB, you can replace it
    with this if you want to execute it immediately without having
    to process it using SM35.
    During testing you can used the original include.
    For example,
    include zbdcrecx1.   "After test
    include bdcrecx.     "Before test
    Declare your internal table as RECORD
    for programs doing a data transfer by creating a batch-input session
    and
    for programs doing a data transfer by CALL TRANSACTION USING
    *SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS SESSION RADIOBUTTON GROUP CTU.  "create session
    SELECTION-SCREEN COMMENT 3(20) TEXT-S07 FOR FIELD SESSION.
    selection-screen position 45.
    PARAMETERS CTU RADIOBUTTON GROUP CTU DEFAULT 'X'. "call transaction
    SELECTION-SCREEN COMMENT 48(20) TEXT-S08 FOR FIELD CTU.
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: SESSION NO-DISPLAY,
                CTU     NO-DISPLAY DEFAULT 'X'.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) TEXT-S01 FOR FIELD GROUP.
    selection-screen position 25.
    PARAMETERS GROUP(12).                      "group name of session
    SELECTION-SCREEN COMMENT 48(20) TEXT-S05 FOR FIELD CTUMODE.
    selection-screen position 70.
    PARAMETERS CTUMODE LIKE CTU_PARAMS-DISMODE DEFAULT 'N'.
                                         "A: show all dynpros
                                         "E: show dynpro on error only
                                         "N: do not display dynpro
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: GROUP(12) NO-DISPLAY,
                CTUMODE   NO-DISPLAY DEFAULT 'N'.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) TEXT-S02 FOR FIELD USER.
    selection-screen position 25.
    PARAMETERS: USER(12) DEFAULT SY-UNAME.    "user for session in batch
    SELECTION-SCREEN COMMENT 48(20) TEXT-S06 FOR FIELD CUPDATE.
    selection-screen position 70.
    PARAMETERS CUPDATE LIKE CTU_PARAMS-UPDMODE DEFAULT 'L'.
                                         "S: synchronously
                                         "A: asynchronously
                                         "L: local
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: USER(12) NO-DISPLAY DEFAULT SY-UNAME,
                CUPDATE LIKE CTU_PARAMS-UPDMODE DEFAULT 'L' NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) TEXT-S03 FOR FIELD KEEP.
    selection-screen position 25.
    PARAMETERS: KEEP AS CHECKBOX.       "' ' = delete session if finished
                                         "'X' = keep   session if finished
    SELECTION-SCREEN COMMENT 48(20) TEXT-S09 FOR FIELD E_GROUP.
    selection-screen position 70.
    parameters E_GROUP(12).             "group name of error-session
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: KEEP        NO-DISPLAY,
                E_GROUP(12) NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) TEXT-S04 FOR FIELD HOLDDATE.
    selection-screen position 25.
    PARAMETERS: HOLDDATE LIKE SY-DATUM.
    SELECTION-SCREEN COMMENT 51(17) TEXT-S02 FOR FIELD E_USER.
    selection-screen position 70.
    PARAMETERS: E_USER(12) DEFAULT SY-UNAME.    "user for error-session
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: HOLDDATE LIKE SY-DATUM NO-DISPLAY,
               E_USER(12) DEFAULT SY-UNAME NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 51(17) TEXT-S03 FOR FIELD E_KEEP.
    selection-screen position 70.
    PARAMETERS: E_KEEP AS CHECKBOX.     "' ' = delete session if finished
                                         "'X' = keep   session if finished
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: E_KEEP NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 51(17) TEXT-S04 FOR FIELD E_HDATE.
    selection-screen position 70.
    PARAMETERS: E_HDATE LIKE SY-DATUM.
    *SELECTION-SCREEN END OF LINE.
    *SELECTION-SCREEN SKIP.
    PARAMETERS: E_HDATE LIKE SY-DATUM NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(33) TEXT-S10 FOR FIELD NODATA.
    PARAMETERS: NODATA DEFAULT '/' LOWER CASE.          "nodata
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: NODATA DEFAULT '/' LOWER CASE NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(33) FOR FIELD SMALLLOG.
    PARAMETERS: SMALLLOG as checkbox.  "' ' = log all transactions
                                        "'X' = no transaction logging
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: SMALLLOG NO-DISPLAY.
      data definition
          Batchinputdata of single transaction
    DATA:   BDCDATA LIKE BDCDATA    OCCURS 0 WITH HEADER LINE.
          messages of call transaction
    DATA:   MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
          error session opened (' ' or 'X')
    DATA:   E_GROUP_OPENED.
          message texts
    TABLES: T100.
      at selection screen                                                *
    AT SELECTION-SCREEN.
    group and user must be filled for create session
      IF SESSION = 'X' AND
         GROUP = SPACE OR USER = SPACE.
        MESSAGE E613(MS).
      ENDIF.
      open dataset                                                       *
    FORM OPEN_DATASET USING P_DATASET.
      OPEN DATASET P_DATASET IN TEXT MODE.
      IF SY-SUBRC <> 0.
        WRITE: / TEXT-E00, SY-SUBRC.
        STOP.
      ENDIF.
    ENDFORM.
      close dataset                                                      *
    FORM CLOSE_DATASET USING P_DATASET.
      CLOSE DATASET P_DATASET.
    ENDFORM.
      create batchinput session                                          *
      (not for call transaction using...)                                *
    FORM OPEN_GROUP.
      IF SESSION = 'X'.
        SKIP.
        WRITE: /(20) 'Create group'(I01), GROUP.
        SKIP.
      open batchinput group
        CALL FUNCTION 'BDC_OPEN_GROUP'
             EXPORTING  CLIENT   = SY-MANDT
                        GROUP    = GROUP
                        USER     = USER
                        KEEP     = KEEP
                        HOLDDATE = HOLDDATE.
        WRITE: /(30) 'BDC_OPEN_GROUP'(I02),
                (12) 'returncode:'(I05),
                     SY-SUBRC.
      ENDIF.
    ENDFORM.
      end batchinput session                                             *
      (call transaction using...: error session)                         *
    FORM CLOSE_GROUP.
      IF SESSION = 'X'.
      close batchinput group
        CALL FUNCTION 'BDC_CLOSE_GROUP'.
        WRITE: /(30) 'BDC_CLOSE_GROUP'(I04),
                (12) 'returncode:'(I05),
                     SY-SUBRC.
      ELSE.
        IF E_GROUP_OPENED = 'X'.
          CALL FUNCTION 'BDC_CLOSE_GROUP'.
          WRITE: /.
          WRITE: /(30) 'Fehlermappe wurde erzeugt'(I06).
        ENDIF.
      ENDIF.
    ENDFORM.
           Start new transaction according to parameters                 *
    FORM BDC_TRANSACTION USING TCODE.
      DATA: L_MSTRING(480).
      DATA: L_SUBRC LIKE SY-SUBRC.
    batch input session
      IF SESSION = 'X'.
        CALL FUNCTION 'BDC_INSERT'
             EXPORTING TCODE     = TCODE
             TABLES    DYNPROTAB = BDCDATA.
        IF SMALLLOG <> 'X'.
          WRITE: / 'BDC_INSERT'(I03),
                   TCODE,
                   'returncode:'(I05),
                   SY-SUBRC,
                   'RECORD:',
                   SY-INDEX.
        ENDIF.
    call transaction using
      ELSE.
        REFRESH MESSTAB.
        CALL TRANSACTION TCODE USING BDCDATA
                         MODE   CTUMODE
                         UPDATE CUPDATE
                         MESSAGES INTO MESSTAB.
        L_SUBRC = SY-SUBRC.
        IF SMALLLOG <> 'X'.
         WRITE: / 'CALL_TRANSACTION',
                  TCODE,
                  'returncode:'(I05),
                  L_SUBRC,
                  'RECORD:',
                  SY-INDEX.
          IF SY-SUBRC = 0.
             FORMAT COLOR OFF.
             WRITE:/ 'Successfully Process ', MESSTAB, RECORD.
          ELSE.
             FORMAT COLOR COL_NEGATIVE.
             WRITE:/ 'Failed Process ', MESSTAB, RECORD.
          ENDIF.
          LOOP AT MESSTAB.
            SELECT SINGLE * FROM T100 WHERE SPRSL = MESSTAB-MSGSPRA
                                      AND   ARBGB = MESSTAB-MSGID
                                      AND   MSGNR = MESSTAB-MSGNR.
            IF SY-SUBRC = 0.
              L_MSTRING = T100-TEXT.
              IF L_MSTRING CS '&1'.
                REPLACE '&1' WITH MESSTAB-MSGV1 INTO L_MSTRING.
                REPLACE '&2' WITH MESSTAB-MSGV2 INTO L_MSTRING.
                REPLACE '&3' WITH MESSTAB-MSGV3 INTO L_MSTRING.
                REPLACE '&4' WITH MESSTAB-MSGV4 INTO L_MSTRING.
              ELSE.
                REPLACE '&' WITH MESSTAB-MSGV1 INTO L_MSTRING.
                REPLACE '&' WITH MESSTAB-MSGV2 INTO L_MSTRING.
                REPLACE '&' WITH MESSTAB-MSGV3 INTO L_MSTRING.
                REPLACE '&' WITH MESSTAB-MSGV4 INTO L_MSTRING.
              ENDIF.
              CONDENSE L_MSTRING.
              WRITE: / MESSTAB-MSGTYP, L_MSTRING(250).
            ELSE.
              WRITE: / MESSTAB.
            ENDIF.
          ENDLOOP.
          SKIP.
        ENDIF.
    Erzeugen fehlermappe ************************************************
        IF L_SUBRC <> 0 AND E_GROUP <> SPACE.
          IF E_GROUP_OPENED = ' '.
            CALL FUNCTION 'BDC_OPEN_GROUP'
                 EXPORTING  CLIENT   = SY-MANDT
                            GROUP    = E_GROUP
                            USER     = E_USER
                            KEEP     = E_KEEP
                            HOLDDATE = E_HDATE.
             E_GROUP_OPENED = 'X'.
          ENDIF.
          CALL FUNCTION 'BDC_INSERT'
               EXPORTING TCODE     = TCODE
               TABLES    DYNPROTAB = BDCDATA.
        ENDIF.
      ENDIF.
      REFRESH BDCDATA.
    ENDFORM.
           Start new screen                                              *
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      CLEAR BDCDATA.
      BDCDATA-PROGRAM  = PROGRAM.
      BDCDATA-DYNPRO   = DYNPRO.
      BDCDATA-DYNBEGIN = 'X'.
      APPEND BDCDATA.
    ENDFORM.
           Insert field                                                  *
    FORM BDC_FIELD USING FNAM FVAL.
      IF FVAL <> NODATA.
        CLEAR BDCDATA.
        BDCDATA-FNAM = FNAM.
        BDCDATA-FVAL = FVAL.
        APPEND BDCDATA.
      ENDIF.
    ENDFORM. 
    if u think i havent understand properly just execuse me.
    Reward points if  helpful.
    Thanks
    Naveen khan
    Message was edited by:
            Pattan Naveen

  • Tcode MIGO Background Job Not working

    Hi All,
    I am facing problem in TCode : MIGO for Background JOB of BDC Program with below details,
    CALL_TRANSACTION MIGO returncode: 1,001  RECORD:          0
    MIGO                 017 S
    The front end is not suitable for the transaction (see long text)
    DC                   006 S
    Control Framework: Fatal error - GUI cannot be reached
    00                   341 A
    Runtime error RAISE_EXCEPTION has occurred
    Please let me know above error what needs to be done.
    Thanks in Advance,
    Mahesh Devershetty

    I am facing the same problem while calling MIGO from RFC
    CALL_TRANSACTION MIGO returncode: 1,001 RECORD: 0
    MIGO 017 S
    The front end is not suitable for the transaction (see long text)
    DC 006 S
    Control Framework: Fatal error - GUI cannot be reached
    00 341 A
    Runtime error RAISE_EXCEPTION has occurred
    BDCMSGCOLL Returns the following :
    TCODE                   MIGO
    DYNAME               SAPLMIGO
    DYNUMB               0001
    MSGTYP               A
    MSGSPRA            E
    MSGID                  00
    MSGNR                341
    MSGV1                RAISE_EXCEPTION
    please help me as soon as possible
    giving thanks in advance
    goutam roy

  • How to give Common Background color for all JPanels in My Swing application

    Hi All,
    I am developing a swing application using The Swing Application Framework(SAF)(JSR 296). I this application i have multiple JPanel's embedded in a JTabbedPane. In this way i have three JTabbedPane embedded in a JFrame.
    Now is there any way to set a common background color for the all the JPanel's available in the application??
    I have tried using UIManager.put("Panel.background",new Color.PINK);. But it did not work.
    Also let me know if SAF has some inbuilt method or way to do this.
    Your inputs are valuable.
    Thanks in Advance,
    Nishanth.C

    It is not the fault of NetBeans' GUI builder, JPanels are opaque by default, I mean whether you use Netbeans or not.Thank you!
    I stand corrected (which is short for +"I jumped red-eyed on my feet and rushed to create an SSCCE to demonstrate that JPanels are... mmm... oh well, they are opaque by default... ;-[]"+)
    NetBeans's definitely innocent then, and indeed using it would be an advantage (ctrl-click all JPanels in a form and edit the common opaque property to false) over manually coding
    To handle this it would be better idea to make a subclass of JPanel and override isOpaque() to return false. Then use this 'Trasparent Panel' for all the panels where ever transparency is required.I beg to differ. From a design standpoint, I'd find it terrible (in the pejorative sense of the word) to design a subclass to inconsistently override a getter whereas the standard API already exposes the property (both get and set) for what it's meant: specify whether the panel is opaque.
    Leveraging this subclass would mean changing all lines where a would-be-transparent JPanel is currently instantiated, and instantiate the subclass instead.
    If you're editing all such lines anyway, you might as well change the explicit new JPanel() for a call to a factory method createTransparentJPanel(); this latter could, at the programmer's discretion, implement transparency whichever way makes the programmer's life easier (subclass if he pleases, although that makes me shudder, or simply call thePanel.setOpaque(false) before returning the panel). That way the "transparency" code is centralized in a single easy to maintain location.
    I had to read the code for that latter's UI classes to find out the keys to use (+Panel.background+, Label.foreground, etc.), as I happened to not find this info in an authoritative document - I see that you seem to know thoses keys, may I ask you where you got them from?
    One of best utilities I got from this forum, written by camickr makes getting these keys and their values very easy. You can get it from his blog [(->link)|http://tips4java.wordpress.com/2008/10/09/uimanager-defaults/]
    Definitely. I bit a pair of knucles off when discovered it monthes after cumbersomely traversing the BasicL&F code...
    Still, it is a matter-of-fact approach (and this time I don't mean that to sound pejorative), that works if you can test the result for a given JDK version and L&F, but doesn't guarantee that these keys are there to stand - an observation, but not a specification.
    Thanks TBM for highlighting this blog entry, that's the best keys list device I have found so far, but the questions still holds as to what specifies the keys.
    Edited by: jduprez on Feb 15, 2010 10:07 AM

  • Closing the Background report engine

    I use a menu that can call several reports, and when they open, the Reports Background Engine runs. I understand why it is useful to keep this open while the main app is on, but it does not close out automatically when the app closes. Is there a command that will do this?
    Thanks,
    Sara

    I Guess,
    Add_Parameter(pl_id, 'ORACLE_SHUTDOWN', TEXT_PARAMETER, 'YES') will do (pl_id is the parameter list that you must have created to run each individual report)

  • Report program when run in background job getting cancelled immediately

    Hi
    When i run a program in foreground i am able to see the output. But when run in background not able to run the job successfully. The job is getting cancelled immediately.
    I am using the below function module for output display. Should i need to pass any parameters in the below function module so that i can run the program in background  successfully.
      CALL METHOD DETAIL_GRID->SET_TABLE_FOR_FIRST_DISPLAY     
          EXPORTING                                            
            IS_LAYOUT         = IS_LAYOUT                    
            I_SAVE            = 'A'                        
            IS_VARIANT        = GS_VARIANT                   
          CHANGING                                           
            IT_FIELDCATALOG   = IT_FIELDCATALOG               
            IT_OUTTAB         = BLOCKED_STOCK_TAB_ALV[].     
    Please suggest.
    Thanks and regards
    Rajani Yeluri

    Hi Rajani.
      ALV require the DRYPOR(screen) for display but incase you run in back ground which have to write to spool but in spool we can only write in format of LIST REPORT not inter-active report like ALV. That why
    system cancelled your process immediately.
    Hope it helps.
    Sayan.

  • Layout variant is not working in background in ALV report

    Hi,
    I have one LAV report to send the report output through mail in foreground and backgroud.Final internal table is having 46 fileds to display the output.But here user is saving the layout variant and sending that layout variant output to mail id in excel format with zip file.Its working in foreground.But in background its not working.Even if we select the layout variant,its sending all the 46 fileds to mail.
    here we have used the below FM to update the fieldcat itab.
    CALL FUNCTION 'REUSE_ALV_GRID_LAYOUT_INFO_GET'
        IMPORTING
          et_fieldcat   = it_fieldcat[]
          es_variant    = v_disvariant
        EXCEPTIONS
          no_infos      = 1
          program_error = 2
          OTHERS        = 3.
    In for ground NO_OUT = 'x' for non selected fields and NO_OUT = ' ' for selected fields.
    But in background NO_OUT = ' ' for all the fileds, even if we select the layout variant.
    Please suggest me  with the solution.
    Regards,
    Jayaram

    hi ,
    Do according to this
    SORT t_ekbe by belnr.
      if  t_ekbe[] is not initial  .
          SELECT  MBLNR
            BWART
            SMBLN
            ERFMG   " This is the new added field
            erfme     " This is the new added field
          INTO CORRESPONDING FIELDS OF TABLE t_mseg
        for all entries in t_ekbe
          from mseg
          where mblnr = t_ekbe-belnr
          AND   bwart = '101'.
      endif.
    after this
    loop at t_ekbe .
    loop at t_mseg  where mblnr  = t_ekbe-belnr .
      t_ekbe-ERFMG = t_mseg-ERFMG .
    t_ekbe-erfme =   t_mseg-erfme  .
    modify t_ekbe transporting ERFMG  erfme .
    clear t_mseg .
    endloop.
    clear t_ekbe .
    endloop.
    Regards
    Deepak .

  • Problems creating background job for program (job open, submit and close)

    Hi gurus,
    im trying to start a background job using the FM BP_START_DATE_EDITOR to show the start date to the job or if it's imediate. this FM it's working fine, after call it im opening a job, submiting it and call the job close FM and the job close FM creates me the job.
    The problem it's when i go to the sm37 to see the job status the job has been canceled, and the job log says that i have to give a start date to the job.
    What i dont understand it's either the job is imediate or i choose a date to start the job always gives me this error...
    Below goes my code,
    any ideas will be rewarded
      CLEAR: stdt_modify_type, stdt_output.
      CALL FUNCTION 'BP_START_DATE_EDITOR'
           EXPORTING
                stdt_dialog                    = 'Y'
                stdt_input                     = stdt_input
                stdt_opcode                    = 14
           IMPORTING
                stdt_modify_type               = stdt_modify_type
                stdt_output                    = stdt_output
           EXCEPTIONS
                fcal_id_not_defined            = 1
                incomplete_last_startdate      = 2
                incomplete_startdate           = 3
                invalid_dialog_type            = 4
                invalid_eventid                = 5
                invalid_opcode                 = 6
                invalid_opmode_name            = 7
                invalid_periodbehaviour        = 8
                invalid_predecessor_jobname    = 9
                last_startdate_in_the_past     = 10
                no_period_data_given           = 11
                no_startdate_given             = 12
                period_and_predjob_no_way      = 13
                period_too_small_for_limit     = 14
                predecessor_jobname_not_unique = 15
                startdate_interval_too_large   = 16
                startdate_in_the_past          = 17
                startdate_is_a_holiday         = 18
                startdate_out_of_fcal_range    = 19
                stdt_before_holiday_in_past    = 20
                unknown_fcal_error_occured     = 21
                no_workday_nr_given            = 22
                invalid_workday_countdir       = 23
                invalid_workday_nr             = 24
                notbefore_stdt_missing         = 25
                workday_starttime_missing      = 26
                no_eventid_given               = 27
                OTHERS                         = 28.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        MOVE 'X' TO gv_flag.
      ENDIF.
      DATA jobname LIKE tbtcjob-jobname.
      DATA jobcount LIKE tbtcjob-jobcount.
      DATA job_release LIKE  btch0000-char1.
      DATA job_imediate TYPE c.
      CLEAR: jobname, jobcount, job_release.
      CONCATENATE 'MAPAEXEC' sy-uname sy-datum
                   INTO jobname SEPARATED BY space.
      CALL FUNCTION 'JOB_OPEN'
           EXPORTING
                jobname          = jobname
           IMPORTING
                jobcount         = jobcount
           EXCEPTIONS
                cant_create_job  = 1
                invalid_job_data = 2
                jobname_missing  = 3
                OTHERS           = 4.
      IF sy-subrc <> 0.
        MESSAGE i003(zmapas).
        EXIT.
      ENDIF.
      SUBMIT z_mapa_execucao_orcamental
             VIA JOB jobname NUMBER jobcount
             WITH ano EQ ano
             WITH so_perio IN so_perio
             WITH so_date IN so_date
             WITH so_org EQ so_org
             WITH so_num IN so_num
             AND RETURN.
      IF stdt_output-startdttyp EQ 'I'.
        CLEAR job_imediate.
        job_imediate = 'X'.
      ENDIF.
      CALL FUNCTION 'JOB_CLOSE'
           EXPORTING
                calendar_id                 = stdt_output-calendarid
                event_id                    = stdt_output-eventid
                event_param                 = stdt_output-eventparm
                event_periodic              = stdt_output-periodic  "?
                jobcount                    = jobcount
                jobname                     = jobname
                laststrtdt                  = stdt_output-laststrtdt
                laststrttm                  = stdt_output-laststrttm
                prddays                     = stdt_output-prddays  "??
                prdhours                    = stdt_output-prdhours  "?
                prdmins                     = stdt_output-prdmins  "??
                prdmonths                   = stdt_output-prdmonths
                prdweeks                    = stdt_output-prdweeks  "?
                predjob_checkstat           = stdt_output-checkstat
                pred_jobcount               = stdt_output-predjobcnt
                pred_jobname                = stdt_output-predjob
                sdlstrtdt                   = stdt_output-sdlstrtdt
                sdlstrttm                   = stdt_output-sdlstrttm
                strtimmed                   = job_imediate
                targetsystem                = stdt_output-instname
                start_on_workday_not_before = stdt_output-notbefore
                start_on_workday_nr         = stdt_output-wdayno
                workday_count_direction     = stdt_output-wdaycdir
           IMPORTING
                job_was_released            = job_release
           EXCEPTIONS
                cant_start_immediate        = 1
                invalid_startdate           = 2
                jobname_missing             = 3
                job_close_failed            = 4
                job_nosteps                 = 5
                job_notex                   = 6
                lock_failed                 = 7
                OTHERS                      = 8.
      IF sy-subrc <> 0.
        MESSAGE i003(zmapas).
        EXIT.
      ELSE.
        MESSAGE i004(zmapas) WITH jobname.
      ENDIF.
    Thanks in advance,
    Best Regards
    João Martins

    Hello João.
    In debug mode, check the value of variables you passed to parameters sdlstrtdt and sdlstrttm.
    As aditional info, I usually achieve your goal without FM BP_START_DATE_EDITOR.
    Check this code:
    CALL FUNCTION 'JOB_OPEN'
          EXPORTING
               jobname          = w_jobname
          IMPORTING
               jobcount         = w_jobcount
          EXCEPTIONS
               cant_create_job  = 1
               invalid_job_data = 2
               jobname_missing  = 3
               OTHERS           = 4.
    CHECK sy-subrc = 0.
    CLEAR seltab_wa.
    MOVE: t_jobs-param TO seltab_wa-selname,
    t_processar-line+34 TO seltab_wa-low.
    APPEND seltab_wa TO seltab.
    seltab_wa-selname = 'P_LOJA'.
    seltab_wa-low = t_processar-ficheiro+7(4).
    APPEND seltab_wa TO seltab.
    *** Submete o programa para o JOB
    SUBMIT (t_jobs-repid)
      WITH  SELECTION-TABLE seltab
      USER sy-uname
       VIA JOB w_jobname NUMBER w_jobcount
       AND RETURN.
    *** Encerra o JOB
      l_hora = sy-uzeit.
      ADD 60 TO l_hora.
    CALL FUNCTION 'JOB_CLOSE'
       EXPORTING
          jobcount           = w_jobcount
          jobname           = w_jobname
          sdlstrtdt            = sy-datum
          sdlstrttm           = l_hora
          targetserver       = w_servidor
       IMPORTING
          job_was_released     = l_liberado
       EXCEPTIONS
          cant_start_immediate = 1
          invalid_startdate    = 2
          jobname_missing      = 3
          job_close_failed     = 4
          job_nosteps          = 5
          job_notex            = 6
          lock_failed          = 7
          OTHERS               = 8.
    Regards.
    Valter Oliveira.

  • Background jobs

    Hi,
            We can schedule the programs or transactions in background through SM36 and we can see the status through SM37.Then what is the use of FM's JOb_open,Job_submit and Job_close.When we will use these FM's.
    Can anybody tell me the difference between these two methods for scheduling the jobs in background....with sample code if possible
    Thanks & Regards,
    Rakesh.

    hi,
    chk this,
    call funcatio.
    ****Open a job to submit the Post Program into
    call function 'JOB_OPEN'
    exporting
    jobname = jobname
    importing
    jobcount = jobcount
    exceptions
    cant_create_job = 1
    invalid_job_data = 2
    jobname_missing = 3
    others = 4.
    if sy-subrc 0.
    raise job_open_failed.
    endif.
    submit zefu_currency_load_callbak_ack
    via job jobname
    number jobcount
    with com_num = com_num
    with relay_nu = relay_num
    and return.
    if sy-subrc 0.
    raise job_step_failed.
    endif.
    ****Close the Job and start it immediately
    call function 'JOB_CLOSE'
    exporting
    jobcount = jobcount
    jobname = jobname
    strtimmed = 'X'
    exceptions
    cant_start_immediate = 1
    invalid_startdate = 2
    jobname_missing = 3
    job_close_failed = 4
    job_nosteps = 5
    job_notex = 6
    lock_failed = 7
    others = 8.
    if sy-subrc 0.
    raise job_close_failed.
    endif.
    Also,
    Create a Variant for the Program and
    Schedule JOB in background:
    Go to SM36 create a Job
    enter Program and Variant for that program in STEP..
    click on Start Condition
    Click on DATE and TIME enter date scheduled Start and END times
    click on Period Values
    Click on HOURLY/WEEKLY etc
    CLick on RESTRICTIONS also to use further criteria.
    so your job will be scheduled and run as per your requirement.
    and in SM37 Transaction check the status of that JOB
    Check this link for scheduling jobs..
    http://help.sap.com/saphelp_nw2004s/helpdata/en/c4/3a7f87505211d189550000e829fbbd/content.htm
    You can also use the fun modules JOB_OPEN,JOB_CLOSE etc for job
    scheduling.
    hope this helps.
    regs,
    hema.

  • Running a report in Background

    Hi Guys,
                  I am designing a ALV report.
    This report have option in the selection screen, to run immediately or Background.
    I am using JOB_OPEN, JOB_SUBMIT and JOB_CLOSE FM's.
    My doubt is at which point I have to use these FM's.
    Immediately in START-OF-SELECTION ?
    If this is the case, I can write rest of my code after JOB_CLOSE FM.. Right ?.
    Thanks

    Hi Naresh,
                    Thanks for the reply.
    My doubt is, can I use these FM's in the report itself, or I have to write separate program for this ?
    If I can use in the same report, where exactly i can use it.
    For example.
    I have form to print ALV - GENERATE_ALV and send email - SEND_MAIL.
    do I use like this.
    start-of-selection.
    JOB_OPEN..
    JOB_SUBMIT..
    JOB_CLOSE..
    GENERATE_ALV
    SEND_MAIL
    Thanks

  • Background schedule

    dear experts,
    i am using these code to schedule a program to run in background
    export 'value' to memory id 'table'.
    call function job_open.
    submit 'zprogram' via job job_name  number job_number and return.
    call function job_close.
    in program 'zprogram' i have used the syntax
    import so_input  from memory id 'table'.
    in event initialization.
    but i thin data is not importing in called program using import statement. can anyone suggest me how to schedule it properly.
    is there any problem in my code??
    Edited by: shekharamit on Jul 20, 2010 6:53 AM

    Your export statement:
    export 'value' to memory id 'table'.
    and your IMPORT statement:
    import so_input from memory id 'table'.
    Don't you think there is definitely some problem with this. Read the F1 help & figure it out yourself.
    BR,
    Suhas

  • To delay a program submitted in background from another transaction.

    Hi All,
    There are 2 programs 'A' and 'B' . During execution of 'A' , 'B'  is called and submitted in background using FM Job_open & Job_close and submit query.
    My requirement is to Delay the Program 'B' by 2-3 mins without delaying Program 'A' .
    I tried using FM JOB_OPEN export condition sdlstrttm   = w_starttm but was of no help.
    I also tried using statement wait up to 120 seconds but this also makes wait to program 'A'.
    Please suggest solutions to this.
    Regards,
    Nibha

    Hi Prashant,
    I am not able to understand ur suggestion.
    My piece of code is
        call function 'JOB_OPEN'
          exporting
            jobname          = 'YI90C_BG'
           sdlstrtdt        = w_startdt
           sdlstrttm        = w_starttm
          importing
            jobcount         = job_count
          exceptions
            cant_create_job  = 1
            invalid_job_data = 2
            jobname_missing  = 3
            others           = 4.
        if sy-subrc <> 0.
          message id sy-msgid type sy-msgty number sy-msgno
                  with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        endif.
        if sy-subrc = 0.
          submit ympic_source_list_contr_upload
          with selection-table it_selcr
          and return
          via job 'YI90C_BG'
          number job_count.
          if sy-subrc = 0.
            call function 'JOB_CLOSE'
              exporting
                jobcount             = job_count
                jobname              = 'YI90C_BG'
                strtimmed            = 'X'
              importing
                job_was_released     = w_status
              exceptions
                cant_start_immediate = 1
                invalid_startdate    = 2
                jobname_missing      = 3
                job_close_failed     = 4
                job_nosteps          = 5
                job_notex            = 6
                lock_failed          = 7
                others               = 8.
          endif.
        endif.
    Please tell what changes should I make?
    Regards,
    Nibha

  • Scheduling one background job inside another

    Hi All,
    Is it possible to Scheduling one background job inside another.? i.e In my Z program I am calling job_open, job_submit, job_close and to execute one standard report in background. And after that I am executing my Z program itself  from SE38 as Program->Execute->Background->Execute Immediately. Is this logically correct? I am asking this because I am not getting the desired result
    Thanks & Regards,
    Neethu.

    HI,
    Check the job steps in SM36.
    First schedule the Standard job and in the job steps schedule the z report.
    Schedule job in chain

  • Background in SM37

    Hi all,
    I am trying to create a background job in a program using FMs JOB_OPEN,JOB_SUBMIT ....  and dont want the job to be executed immediately , but the user should go to SM37 and schedule the job for the job name created by the above program.
    How do i achieve this. PLs help with your ideas.
    Thanks,
    Stock

    stock sys,
      Scheduling Background Jobs:
    1.        Background jobs are scheduled by Basis administrators using transaction SM36.
    2.        To run a report in a background, a job needs to be created with a step using the report name
    and a variant for selection parameters. It is recommended to create a separate variant for each
    scheduled job to produce results for specific dates (e.g. previous month) or organizational units (e.g.
    company codes).
    3.        While defining the step, the spool parameters needs to be specified
    (Step-> Print Specifications->Properties) to secure the output of the report and help authorized users
    to find the spool request. The following parameters needs to be maintained:
    a.        Time of printing: set to “Send to SAP spooler Only for now”
    b.        Name – abbreviated name to identify the job output
    c.        Title – free form description for the report output
    d.        Authorization – a value defined by Security in user profiles to allow those users to access
    this spool request (authorization object  S_SPO_ACT, value SPOAUTH).  Only users with matching
    authorization value in their profiles will be able to see the output.
    e.        Department – set to appropriate department/functional area name. This field can be used in
    a search later.
    f.        Retention period – set to “Do not delete” if the report output needs to be retained for more
    than 8 days. Once the archiving/document repository solution is in place the spool requests could
    be automatically moved to the archive/repository. Storage Mode parameter on the same screen
    could be used to immediately send the output to archive instead of creating a spool request.
    Configuring user access:
    1.        To access a report output created by a background job, a user must have at
    least access to SP01 (Spool requests) transaction without restriction on the user
    name (however by itself it will not let the user to see all spool requests). To have
    that access the user must have S_ADMI_FCD authorization object in the profile with
    SPOR (or SP01) value of S_ADMI_FCD parameter (maintained by Security).
    2.        To access a particular job’s output in the spool, the user must have
    S_SPO_ACT object in the profile with SPOAUTH parameter matching the value used
    in the Print Specifications of the job (see p. 3.d above).
    3.        Levels of access to the spool (display, print once, reprint, download, etc) are
    controlled by SPOACTION parameter of S_SPO_ACT. The user must have at least
    BASE access (display).
    On-line reports:
    1.        Exactly the same configuration can be maintained for any output produced
    from R/3. If a user clicks “Parameters” button on a SAP Printer selection dialog, it
    allows to specify all the parameters as described in p. 3 of
    “Scheduling background jobs” section. Thus any output created by an online report
    can be saved and accessed by any user authorized to access that spool request
    (access restriction provided by the Authorization field of the spool request
    attributes, see p. 3.d of “Scheduling background jobs” section).
    Access to report’s output:
    1.        A user that had proper access (see Configuring user access above) can
    retrieve a job/report output through transaction SP01.
    2.        The selection screen can be configured by clicking “Further selection
    criteria…” button (e.g. to bring “Spool request name (suffix 2)” field or hide other
    fields).
    3.        The following fields can be used to search for a specific output (Note that
    Created By must be blank when searching for scheduled job’s outputs)
    a.        Spool request name (suffix 2) – corresponds to a spool name in p. 3.b in
    “Scheduling background jobs” section above).
    b.        Date created – to find an output of a job that ran within a certain date range.
    c.        Title – corresponds to spool Title in p. 3.c in “Scheduling background jobs”
    section above).
    d.        Department - corresponds to spool Department in p. 3.e in “Scheduling
    background jobs” section above).
    4.        Upon entering selection criteria, the user clicks the Execute button   to
    retrieve the list of matching spool requests.
    5.        From the spool list the user can use several function such as view the
    content of a spool request, print the spool request, view attributed of the spool
    request, etc. (some functions may need special authorization, see p.3 in
    Configuring user access)
    a.        Click the Print button   to print the spool request with the default attributes
    (usually defined with the job definition). It will print it on a printer that was
    specified when a job was created.
    b.        Click the “Print with changed attributed” button   to print the spool request
    with the different attributes (e.g. changing the printer name).
    c.        Click the “Display contents” button   to preview the spool request contents. A
    Print    and Download   functions are available from the preview mode.
    Don't forget to reward if useful

  • Background Job pass value

    Hi, I am calling a Background job in my program. I am using JOB_OPEN, JOB_SUBMIT and JOB_CLOSE FM to start a job. My need is to pass a value to the job program(job program doesnt have any selection screen values). Is their any way without creating variants each time to pass value to it.
    Please advice.....

    Hello,
    You can first use  JOB_OPEN which returns job number. Then build ranges or parameters to use SUBMIT to call the program.
    Eg: SUBMIT RM06BB20 AND RETURN
          WITH S_EKGRP IN R_EKGRP
          WITH S_EKORG IN R_EKORG
          WITH S_FLIEF IN R_FLIEF
          WITH S_KONNR IN R_KONNR
          USER sy-uname VIA JOB w_jobname
          NUMBER w_job_number.
    Now use JOB_CLOSE.
    Thanks,
    Venu

Maybe you are looking for

  • Open close sub vi front panal

    I have a sub vi which returns a true or false. I'm using a case statement to open and close the front panal of the sub vi.  If true I'm using a invoke FPpen to open the sub vi and if false I'm using an invoke FP:close to close the front panal. The su

  • When a group of files is selected, how can I copy just the file names?

    I used to be able to select a group of files in a finder window, copy, then paste the names in an email or document. It no longer allows this. Is there away around this other than copying each file name individually?

  • OS 9 Classic?

    I had a HD crash and when I installed a new one, then reinstalled Tiger OS 10.4 it did not install OS 9 Classic in the applications. Can I get it back? If so how?

  • Synchronizing movement of two layers

    I have a feeling I'm using the hard way to accomplish something simple, so I hope someone here can straighten me out. What I'm doing is drawing an "indiana jones" type line over a moving 'map' layer (approx. 18" x 36") - moving generally left to righ

  • Any tool to check functionalitiy of AS code for Flash Lite?

    As I am porting Flash games to Flash Lite, I often come to this question: if there is some tool that can scan the actionscript codes and check for the function accessibility on Flash Lite. Just like those HTML editors checking for validation of HTML