Background Job, a same JOBCOUNT is assigned to multiple jobs

Hello,
When I create multiple R/3 jobs by running my program, which uses series of BAPI functions such as:
BAPI_XBP_JOB_OPEN
BAPI_XBP_JOB_ADD_ABAP_STEP
BAPI_XBP_JOB_CLOSE
the generated JOBCOUNT for each R/3 jobs are the same, that is, not unique.
Is this a correct result?
Regards,
Harumi Shibata

Don't know of a quick way to do this, but it is probably one of two things.  Either the caller ID tag shows as the first person who was assigned that number, or the first person (alphabetically) in your contact list with that number.  So, you can try to delete that number from everybody and add it to who you want it to show as, or put an "a" in front of their name to force them to the top of the list.  Me, personally, I just have it as something generic, home, work, etc.

Similar Messages

  • Can One technical system be assigned to multiple BS system

    Hi All,
    I just need small confirmation, i want to know wether one technical system(ABAP) with same client be assigned to multiple busines system..
    Regards,
    Raj

    Hi ,
    No, you cannot have 2 BS for the same technical system and same client.
    (you can have different BS for every client of a technical system)
    Raghu

  • Background job - programs all running at the same time...

    Hi experts,
    i have an issue regarding background job.i have to run multple programs in background one after another in one program.so i am using function modules job_open,submit and job_close.
    my problem all the jobs are statrting at same time .but i want to run after completion of first job second job should start.
    please guide me
    Thanks
    sai
    Edited by: Julius Bussche on Feb 19, 2009 9:36 AM
    Please use meaningfull subject titles

    Try something like
    LOOP AT it_filenames INTO ts_filenames.
      CALL FUNCTION 'JOB_OPEN'
           EXPORTING
                jobname  = jobname
           IMPORTING
                jobcount = jobcount.
      SUBMIT program
        WITH p_file1 = ts_filenames-zzfname
        VIA JOB jobname NUMBER jobcount
        AND RETURN.
      IF sy-tabix EQ 1.
        CLEAR: pred_jobcount,
               pred_jobname.
        GET TIME.
        IF sy-uzeit LT '235950'.
          sdlsstrttm = sy-uzeit + 10.
          sdlstrtdt = sy-datum.
        ELSE.
          sdlsstrttm = '000010'.
          sdlstrtdt = sy-datum + 1.
        ENDIF.
      ELSE.
        sdlsstrttm = '      '. " no_time from LBTCHTOP
        sdlstrtdt = '        '. " no_date from LBTCHTOP
      ENDIF.
      CALL FUNCTION 'JOB_CLOSE'
           EXPORTING
                jobcount             = jobcount
                jobname              = jobname
                predjob_checkstat    = ' '
                pred_jobcount        = pred_jobcount
                pred_jobname         = pred_jobname
                sdlstrtdt            = sdlstrtdt
                sdlstrttm            = sdlstrttm
           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.
      pred_jobcount = jobcount.
      pred_jobname = jobname.
    ENDLOOP.
    I removed the checkstat, cause if you want to check the status you only have to submit one job with multiple steps. (Put JOB_OPEN and JOB_CLOSE out of the loop)
    CALL FUNCTION 'JOB_OPEN'
         EXPORTING
              jobname  = jobname
         IMPORTING
              jobcount = jobcount.
    LOOP AT it_filenames INTO ts_filenames.
      SUBMIT program
        WITH p_file1 = ts_filenames-zzfname
        VIA JOB jobname NUMBER jobcount
        AND RETURN.
    ENDLOOP.
    CALL FUNCTION 'JOB_CLOSE'
         EXPORTING
              jobcount  = jobcount
              jobname   = jobname
              strtimmed = 'X'.
    Regards

  • Background Job Hanged but no work process assigned

    Hi,
    Background job has hanged When i see in SM37. But no work process assigned to this job. All work process are waiting status.
    What could be the reason. What is the resolution process.
    Thanks,
    Dayakar

    How did you come to a conclusion that the bg job is hangend.
    What is the status of the job. ? I guess  Job defined, but not yet eligible to run even if the start condition has been fulfilled so it should be in Scheduled status.

  • Simultaneous background jobs using the same BAPI issue

    I scheduled 2 simultaneous background jobs on a custom program using the same BAPI (closing PM orders).
    Run 1 to CLSD orders created on year 2001
    Run 2 to CLSD orders created on year 2000
    What happened was while run 1 was still active, run 2 encountered a dump and was cancelled.
    Upon checking in ST22, dump was generated in CO_ZV_CONSISTENCY_CHECK.
    Also, Run 2's dump happened when it encountered a data inconsistency for an order number being processed for Run 1.
    Since the BAPI is being accessed at the same time by the two jobs, Is it possible that the commit work on run 1 could affect the processing for the Run 2, hence the data inconsistency?
    Is this a buffer issue?
    Additionally, no dump is encountered when Run 1 or Run 2 is run by itself.
    I also encountered this issue before for creating Project and WBS using BAPI, but the solution we came up with was not to do parallel runs to avoid the error as this was a one time upload only.

    If the second job is dependent on the 1st job, then use following logic which will let you know the status of 1st job. Once 1st job is completed, call JOB_OPEN of 2nd job.
    ENDLESS loop till 1st job is completed
    DO.
    CALL FUNCTION 'BP_JOB_READ'
        EXPORTING
          job_read_jobcount     = w_jobcount
          job_read_jobname      = w_jobname
          job_read_opcode       = '20'
        IMPORTING
          job_read_jobhead      = wa_jobhead
        TABLES
          job_read_steplist     = i_jobsteplist
        EXCEPTIONS
          invalid_opcode        = 1
          job_doesnt_exist      = 2
          job_doesnt_have_steps = 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.
    To Display the status text as per the status type
      CASE wa_jobhead-status.
        WHEN 'S'. WRITE: / text-006. "'Scheduled'.
        WHEN 'R'. WRITE: / text-007. "'Released'.
        WHEN 'F'. WRITE: / text-008. "'Completed'.
        WHEN 'A'. WRITE: / text-009. "'Cancelled'.
        WHEN OTHERS.
      ENDCASE.
    IF wa_jobhead-status = 'F'.
    exit.
    ENDIF.
    ENDDO.
    PERFORM OPEN_2nd_JOb.

  • Assign Server to Background Job

    Hi all,
    I need a help in  Background Job,
    we got two servers i need to  assigning one of the server to my background job running through report using 1)JOB_OPEN 2) Submit Report and 3) JOB_CLOSE.
    Thank you all in Advance,
    Jagan.

    You can do this easily via SM36 by filling the Exec. Target while creating the Job.. But if you would like to set the SERVER name vai your Program.... try this
    after the function call JOB_OPEN & before the SUBMIT statement, update the field EXECSERVER  of the TBTCS dbTable with the server name. ( SInce it is your own Job & all you are doing is trying to force it to a server, a direct db UPDATE should not be an issue)
    ~Suresh

  • Assigning Jobclass to Background Jobs

    Dear BW Gurus,
                           Regards.We got an situation : We schedule an Infopackage as Background Job  (JOB A),with default Jobclass-> C.Hence the background job runs with Jobclass>C in the Source system(SAP R/3) aswell.Now when the Endusers run programs in the Background(Source system(SAP R/3 )  (JOB B),they assign Jobclass-->A(High Priority),Hence the sytem allocates the Workprocess id (assigned to our JOB A) to the Background Job(JOB B) with High priority,and finally our Background job is still "ACTIVE",but without no WorkProcess id assigned to it !!!(For more than 30 hours!!!).This has happened earlier aswell and it would be really helpful if some one could throw light on this issue.Should we
    1) Leave the Job undisturbed (would the system allocate anyother WP to the job??)
    2) Kill the Background job ??
    Thanks
    Shiv

    Dear BW Gurus,
                           Regards.We got an situation : We schedule an Infopackage as Background Job  (JOB A),with default Jobclass-> C.Hence the background job runs with Jobclass>C in the Source system(SAP R/3) aswell.Now when the Endusers run programs in the Background(Source system(SAP R/3 )  (JOB B),they assign Jobclass-->A(High Priority),Hence the sytem allocates the Workprocess id (assigned to our JOB A) to the Background Job(JOB B) with High priority,and finally our Background job is still "ACTIVE",but without no WorkProcess id assigned to it !!!(For more than 30 hours!!!).This has happened earlier aswell and it would be really helpful if some one could throw light on this issue.Should we
    1) Leave the Job undisturbed (would the system allocate anyother WP to the job??)
    2) Kill the Background job ??
    Thanks
    Shiv

  • Will it be possible to run several jobs in background at the same time?

    Hi!
    The new release looks promising. Look forward to hear more in Birmingham.
    Just now we have a problem. It have to do with functionality In Toad compared to SQL Developer.
    Will it be possible to run several jobs in background at the same time. Toad allows that.
    If yes: How can we make that happen?

    "Jobs" are always background.
    But I take you mean queries. Yes, since v1.5.x you can open an Unshared SQL Worksheet (ctrl-shift-n or the toolbar button).
    Have fun,
    K.

  • Parallel (same) background jobs:  Memory and locking issues

    <b>Scenerio:</b>  Multiple concurrent inbound asynchronous XI messages need to be processed in SAP.  We have the XI proxy initiating an RFC. This RFC exports internal tables (essentially the XI payload) to a unique shared memory ID (for each XI message). RFC then submits an abap (submit..and return)  in a background job. This abap reads (via IMPORT) the shared memory ID to get the data then process it.
    <b>Problem:</b>  : When multiple concurrent jobs/abap are running, often, but not always, one of the submitted abaps either gets a non-zero return code from the IMPORT, or the IMPORT from shared memory seems to work fine, but the table contents contains data from the other (parallel) run, even though the memory ID used is correct and unique.
    I have attempted to resolve this by using various methods (memory IDs, SPA/GPA parameter, ENQUEUE) of locking in the RFC (unlocking at end of abap), so that only one background job is executed at a time.  However, the best I can do is having two or three running in parallel.
    So I'm wondering how to solve this memory issue and/or how to make the abap processing synchronous?  Any help appreciated. Thanks.

    There is a limitation on Amt of data you can store in ABAP Memory and SAP Memory .. check those limitation ..per user ..
    also check for Number of external session granted by urr basis ppl...
    it may be possible that only 3-4 session are allowed coz each background process create and external session ..

  • How to create a background job in CE and assign a Web Service to it?

    Hi,
    We have a specific requirement here.
    We have an application service which perform some updates based on timestamp etc, it will be exposed as a Web Service.
    The requirement here is that a background job should invoke this Web Service everyday at Midnight.
    But here I don't know how to implement this functionality in SAP CE 7.1.
    Please reply ASAP.
    Regards,
    Manish

    Hi Manish,
    Job Scheduler is available as part of the app server,
    Create a class and extend MDBJobImplementation override the method onJob in this method trigger your webservice.
    for more details please go through this document
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/10fed553-0e01-0010-9bb8-ed55659e1236
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/90a95132-8785-2b10-bda5-90d82a76431e
    Regards
    Ayyapparaj

  • Performance issues-assigning background jobs to a designated server

    Hello all, we have been having peformance issues in our production enviorment and were entertaining the idea of running all our our background jobs on a separate/designated server.  Has anyone had any experience with this and if so any insight on how you did this would be appreciated?  Thanks.

    I suppose your performance issues are then for the online users? In general, the best option should be to distribute the workload as much as possible, to avoid performance problems for online users as well as background jobs.
    I agree with Atish, this is something for Basis people. Ask them (hopefully that's not you to look at their application server settings. I know where I used to work before they had set up the system so only a certain part of the dialog processes could be occupied by background jobs. I am sure SAP has a lot of parameters that can be tweaked, possibly also with time-dependent settings?

  • Background job cancelled

    Hi Experts
           I have defined and scheduled a background job using variant, but when i try to execute the job, but it is cancelled and gives the job log as follows.
    Job started                                                                                00 516 S 
    Step 001 started (program ZCUT1, variant ZONE, user ID SAP01)  00 550  S 
    ABAP/4 processor: OBJECTS_OBJREF_NOT_ASSIGNED           00  671  A 
    Job cancelled                                                                            00  518  A 
    What could be the reason, pls help me solve it out.
    Thanks in advance.
    Regards
    Rajaram

    HI,
    refer this once.
    There are two ways for you to handle,
    one manually setting up the job through SM36 which is better and convinient,
    secondly through program using FM's JOB_OPEN, SUBMIT, JOB_CLOSE.
    Find below steps in doing both:
    Procedure 1:
    1. Goto Trans -> SM36
    2. Define a job with the program and variant if any
    3. Click on start condition in application tool bar
    4. In the pop-up window, click on Date/Time
    5. Below you can see a check box "Periodic Job"
    6. Next click on Period Values
    7. Select "Other Period"
    8. Now give '15' for Minutes
    9. Save the job
    In SM37 u can check the status of the jobs that u have assigned to background...
    Here u mention the job name or the report name to check the status of the job...
    After mentioning the job name or program name u just execute it.. ( without any name also u can execute then it gives u all the jobs set by your user name..
    the status colud be released,active,finished etc..
    Procedure 2 via Program:
    Below is a sample code for the same. Note the ZTEMP2 is the program i am scheduling with 15mins frequency.
    DATA: P_JOBCNT LIKE TBTCJOB-JOBCOUNT,
    L_RELEASE(1) TYPE c.
    CALL FUNCTION 'JOB_OPEN'
    EXPORTING
    JOBNAME = 'ZTEMP2'
    IMPORTING
    JOBCOUNT = P_JOBCNT
    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.
    SUBMIT ZTEMP2 VIA JOB 'ZTEMP2' NUMBER P_JOBCNT
    TO SAP-SPOOL WITHOUT SPOOL DYNPRO
    WITH DESTINATION = 'HPMISPRT'
    WITH IMMEDIATELY = SPACE
    WITH KEEP_IN_SPOOL = 'X' AND RETURN.
    CALL FUNCTION 'JOB_CLOSE'
    EXPORTING
    JOBCOUNT = P_JOBCNT
    JOBNAME = 'ZTEMP2'
    STRTIMMED = 'X'
    PRDMINS = 15
    IMPORTING
    JOB_WAS_RELEASED = L_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
    INVALID_TARGET = 8
    OTHERS = 9.
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.

  • Background Job Scheduling

    Hi,
      I am scheduling a report to run in background.
    In this report it is creating background jobs automatically for different company codes.
    It submits the 1st background job and waits until it finishes.
    Then 2nd job starts in background and continues with other jobs.
    At end it finishes all the jobs and closes.
    Now my problem is.
    1.       Whether is it possible for us to submit all the jobs at 1 time. And execute at same time. Ie., 1st, 2nd job will start at same time.
    2.       If possible how can we do that.
    What I have written is
    loop at companycode.
    Create job name.
    call fun 'Job_Open'.
    submit xxxx user sy-uname via job job_name numer job_count
    to sap-spool
    spool parameters l_spool_parameter
    without spool dynpro
    with companycode
    with ......
    and return.
    endloop.
    Please help ASAP, urgent.

    hi praveen,
    Job Scheduling Explained
    Definition
    Before any background processing can actually begin, background jobs must be defined and scheduled. The scheduled time for when a job runs is one part of the job’s definition. There are several ways to schedule jobs:
    From Transaction SM36 (Define Background Job)
    With the "start program in the background" option of either Transaction SA38 (ABAP: Execute Program) or Transaction SE38 (the ABAP editor)
    Through the background processing system’s own programming interface. (Many SAP applications use the internal programming interface to schedule long-running reports for background processing.)
    Through an external interface.
    Scheduling Background Jobs   
    Use
    You can define and schedule background jobs in two ways from the Job Overview:
    ·         Directly from Transaction SM36. This is best for users already familiar with background job scheduling.
    ·         The Job Scheduling Wizard. This is best for users unfamiliar with SAP background job scheduling. To use the Job Wizard, start from Transaction SM36, and either select Goto ® Wizard version or simply use the Job Wizard button.
    Procedure
           1.      Call Transaction SM36 or choose CCMS ® Jobs ® Definition.
           2.      Assign a job name. Decide on a name for the job you are defining and enter it in the Job Name field.
           3.      Set the job’s priority, or “Job Class”:
    ·         High priority:      Class A
    ·         Medium priority: Class B
    ·         Low priority: Class C
           4.      In the Target server field, indicate whether to use system load balancing.
    ·         For the system to use system load balancing to automatically select the most efficient application server to use at the moment, leave this field empty.
    ·         To use a particular application server to run the job, enter a specific target server.
           5.      If spool requests generated by this job are to be sent to someone as email, specify the email address. Choose the Spool list recipient button.
           6.      Define when the job is to start by choosing Start Condition and completing the appropriate selections. If the job is to repeat, or be periodic, check the box at the bottom of this screen.
           7.      Define the job’s steps by choosing Step, then specify the ABAP program, external command, or external program to be used for each step.
           8.      Save the fully defined job to submit it to the background processing system.
           9.      When you need to modify, reschedule, or otherwise manipulate a job after you've scheduled it the first time, you'll manage jobs from the Job Overview.
    Note: Release the job so that it can run. No job, even those scheduled for immediate processing, can run without first being released.
    Specifying Job Start Conditions
    Use
    When scheduling a background job (either from Transaction SM36, Define Background Job or CCMS ® Jobs ® Definition), you must specify conditions that will trigger the job to start.
    Procedure
    Choose the Start condition button at the top of the Define Background Job screen.
    Choose the button at the top of the Start Time screen for the type of start condition you want to use (Immediate, Date/Time, After job, After event, or At operation mode) and complete the start time definition in the screen that appears.
    For the job to repeat, check the Periodic job box at the bottom of the Start Time screen and choose the Period values button below it to define the frequency of repetition (hourly, daily, weekly, monthly, or another specific time-related period). Then choose the Save button in the Period values screen to accept the periodicity and return to the Start Time screen.
    Once you’ve completed specifying the job start conditions, choose the Save button at the bottom of the Start Time screen to return to the Define Background Job screen.
    No job can be started until it is released, including jobs scheduled to start immediately. Since releasing jobs can be done only by a system administrator from the job management screen (Transaction SM37) or by other users who have been granted the appropriate Authorizations for Background Processing, no unauthorized user can start a job without explicit permission
    Managing Jobs from the Job Overview
    Use
    The Job Overview, or Job Maintenance, screen is the single, central area for completing a wide range of tasks related to monitoring and managing jobs, including defining jobs; scheduling, rescheduling, and copying existing jobs; rescheduling and editing jobs and job steps; repeating a job; debugging an active job; reviewing information about a job; canceling a job's release status; canceling and deleting jobs; comparing the specifications of several jobs; checking the status of jobs; reviewing job logs; and releasing a job so it can run.
    Procedures
    To display the Job Overview screen, choose CCMS ® Jobs ® Maintenance or call Transaction SM37. Before entering the Job Overview screen, the system first displays the Select Background Jobs screen. You'll need to complete this Job Selection screen to define the criteria for the jobs you want to manage. Once you've selected jobs to manage, you can choose from a wide range of management tasks:
    To copy a single existing job, choose Job ® Copy.
    To reschedule or edit job steps or attributes of a single job, choose Job ® Change. A job step is an independent unit of work within a background job. Each job step can execute an ABAP or external program. Other variants or authorizations may be used for each job step. The system allows you to display ABAP programs and variants. You can scan a program for syntax errors. You can also display the authorizations for an authorized user of an ABAP job step.
    To repeat a single job, choose Job ® Repeat scheduling.
    To debug an active job, choose Job ® Capture: active job. Only a single selection is allowed. If an active job seems to be running incorrectly (e.g., running for an excessively long time), you can interrupt and analyze it in debugging mode in a background process, and then either release it again or stop it altogether.
    You will be able to capture a background job only if you are logged on to the SAP server on which the job is running. To find server information in the Job Overview, select and mark the job, then choose Job ® Job details.
    To review information about a job, choose Job ® Job details. Details displayed can include:
    current job status
    periodicity, or the repetition interval
    other jobs linked to the current job, either as previous or subsequent jobs
    defined job steps
    spool requests generated by the current job
    To cancel a job's "Released" status, select the job or jobs from the Job Overview list and choose Job ® Release -> Scheduled.
    To cancel a job from running but keep the job definition available, select the job or jobs from the Job Overview list and choose Job ® Cancel active job.
    To delete a job entirely, select the job or jobs from the Job Overview list and choose Job ® Delete. Jobs with the status of Ready or Running cannot be deleted.
    To compare the specifications of more than one job, select the jobs from the Job Overview list and choose Job ® Compare jobs.
    To check the status of jobs, select the job or jobs from the Overview Job list and choose Job ® Check status. This allows you to either change the job status back to Planned or cancel the job altogether. This is especially useful when a job has malfunctioned.
    To review job logs, select a job or jobs with the status Completed or Canceled from the Job Overview list and
    regards
    karthik
    reward me points if helpfull

  • Page-break in alv background job for alv output variant not coming correctl

    Hi,
    I have created an ALV grid report. When i run the report in background i get the output with correct page-break on FIELD1. Now when i run the report in background with an "ALV output variant" (its the ALV variant that controls the fields display in the output; this is not the program variant), i do not get the page-break on FIELD1.  I have already build the sort criteria and using:
    gs_sort-group = '* '.     "New-Page
    Please let me know what could be reason for not getting the page-break in background when i am using the alv output variant and how do i correct this problem.
    Regards,
    Rakesh

    Hello Everyone,
    I have solved the problem. While running the program in background, we get the page-breaks when we use the below part of code in the sort catalogue with the condition that the program variant should not use any ALV layout variant.
    gs_sort-group = '* '.     "New-Page
    If you are using the ALV layout variant in the program variant then we can check the ROWPOS, COLPOS, and NO_OUT for that ALV layout variant and pass them along in the fieldcatalog table. You should be careful with not to pass the layout variant in the DISVARIANT. You can notice that i have cleared it and simply passing the program name into that.
    *C-- Process separately for jobs running in Background. Actually
    *C-- sortcat-group solves the problem only in Foreground. In background
    *C-- when ALV layout variant is not selected then it works otherwise it
    *C-- fails. So for background jobs we are reading the fieldcat and then
    *C-- passing the same in the display FM.
      IF sy-batch = 'X'.
        CALL FUNCTION 'REUSE_ALV_VARIANT_SELECT'
          EXPORTING
           i_dialog                  = ' '
           i_user_specific           = ' '
           i_default                 = ' '
    *   I_TABNAME_HEADER          =
    *   I_TABNAME_ITEM            =
            it_default_fieldcat       = gt_fieldcat
            i_layout                  = gs_layout
    *   I_BYPASSING_BUFFER        =
    *   I_BUFFER_ACTIVE           =
         IMPORTING
    *   E_EXIT                    =
           et_fieldcat               = lt_fieldcat
    *     et_sort                   = gt_sort[]
    *   ET_FILTER                 =
    *     es_layout                 = gs_layout
         CHANGING
           cs_variant                = gs_disvariant
         EXCEPTIONS
           wrong_input               = 1
           fc_not_complete           = 2
           not_found                 = 3
           program_error             = 4
           OTHERS                    = 5
        IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
        CLEAR gs_fieldcat.
        LOOP AT gt_fieldcat INTO gs_fieldcat.
    *C-- Transfer all position changes to gt_fieldcat from lt_fieldcat
          CLEAR ls_fieldcat.
          READ TABLE lt_fieldcat
                INTO ls_fieldcat
                WITH KEY fieldname = gs_fieldcat-fieldname.
          IF sy-subrc = 0.
            gs_fieldcat-row_pos = ls_fieldcat-row_pos.
            gs_fieldcat-col_pos = ls_fieldcat-col_pos.
            gs_fieldcat-no_out = ls_fieldcat-no_out.
            MODIFY gt_fieldcat FROM gs_fieldcat INDEX sy-tabix.
            CLEAR gs_fieldcat.
          ENDIF.
        ENDLOOP.
    *C-- Clear the disvariant for the background job as it contains the ALV
    *C-- layout varinat
        CLEAR gs_disvariant.
        gs_disvariant-report = 'ZGPPMP0001'.
    Then pass gt_fieldcat to 'REUSE_ALV_GRID_DISPLAY'.
    The reason i'm doing it this way is that when we pass the layout variant name, the contents in gt_fieldcat were getting modified.
    One more thing i'd like to point out is that that, i tried to delete the fields with no_out = 'x'. Now when i ran the program in background with all the fields in sort catalog (suppose there are 2 fields field1 and field2) also in fieldcatalog it ran fine. In the next run in background i removed one of the fields in sort catalog from the fieldcatalog (delete the fields with no_out = 'x') and i got dump. Basically i had hidden field1 and so the code which was deleting fields with no_out = 'x' deleted this field from gt_fieldcat. So basically we should not delete fields with no_out = 'x'.
    I was getting ABAP runtime errors    MESSAGE_TYPE_X in the following part of the standard code.
    000310     LOOP AT CT_SORT INTO LS_SORT.
    000320
    000330       READ TABLE IT_FIELDCAT ASSIGNING <LS_FIELDCAT>
    000340            WITH KEY FIELDNAME = LS_SORT-FIELDNAME BINARY SEARCH.
    000350       IF SY-SUBRC NE 0.
         >         MESSAGE X000(0K).
    000370       ENDIF.
    000380
    000390       LS_SORT-SELTEXT = <LS_FIELDCAT>-SELTEXT.
    i have just mentioned this part because when i checked the forum many people were getting such errors "MESSAGE_TYPE_X". This could also be one of the reasons.

  • Background job not showing full output of Report

    Dear Experts
    we have created zpgm for stad report and try to take output as mail to particular user for future analysis bcaz stad gives only 2 days report only we need keep report for months together so when we run job in foreground it shows proper output but when same thing when we run from background it shows only some part of report in mail (we are unable to get full output through background job )
    we send mail through spool receipts we have created folder and maintain user for getting mails through so15 distribution list
    we need some input to come out of this major issue
    if there is any other workaround let me know
    Regards

    Hello,
    If a job is defined by transaction SM36, the print format parameters will only be taken into account, if they are saved as user specific print parameters of the batch user. If no user specific print format
    is defined,  the ALV standard logic will be processed adjusting the print format to the actual line size of the report.
    For example, the list line size is about 132 characters, the widest available format of the chosen printer will be selected X_65_132.
    The problem would be solved by defining a device type which is no format assigned to print, or by defining user specific print format parameters for the batch user, who creates the jobs in SM36 (see
    SAP note 1179399, item 6).
    Regards,
    David

Maybe you are looking for

  • PDF not rendering right in firefox

    I have a PDF file I created on my website and noticed that in FF it is not rendering the images correctly (specifically the background image) The file renders fine in IE and Chrome but not in FF, which produces a lot of odd lines in some images and t

  • HT1937 How I can find carrier for iPhone 4

    Hi I want to activate iPhone 4 which I bought it from eBay I got no idea how to find carrier please help me with this matter thanks

  • Change in House bank currency

    Dear All, If I change the House Bank Currency, do I also have to change the currency in the GL account too or it can remain the local currency? Thanx Rosalyn

  • NI-DAQmx: Impact Test real-imagine plot

    Hello. I am a student of mechanical engineering and I am not familiar with signal proccessing. I have to use LABView for a measurement experiment. In that project I have to use an impact hammer and an accelerometer to test surfaces of some specific m

  • HT5019 how do i set display / video mirroring to be default?

    I've got a TV connected to my Mac, and when I boot up, I have to manually set display mirroring.  Can this be configured as a default setting?