Missed deadline batch job giving dump.

Hi All,
In my PO release  workflow  scenario, deadline is not working . On searching in this forum  I come to know that a batch  job u201CSWWDHEXu201D with step u201CRSWWDHEXu201D  needs to be scheduled with frequency 3 mins, so i did this. Now the issue is no workitem is getting created and the above batch job is also getting cancelled due to error. The error description is as follows :
Runtime Errors         MOVE_NOT_SUPPORTED.
Short text
    Conversion from type "D" to "T" not supported.
Error analysis
    The fields "ABAPFIELD" (type "D") and "<SWC_CONT>" (type "T")
    cannot normally be transported to each other.
Is there any SAP note to be implemented to resolve this issue ?
Can anyone help me in resolving this issue . I would greatly appreciate your help.
regards,
Trimurty

Hi Akshay,
II have copied the Std workflow WS20000075 into a custom one and in the latest end tab, i have selected "Workitem creaton" for Refer Date/Time field and given 5 mins. I have deactivated the workflow in which i have created the containers for date and time and used "Expresion" for latest end and also commented the zmethod in delegated object. Even now also the job is getting cancelled with the same error.
Any idea why is it happening ?
regards,
Trimurty

Similar Messages

  • FM ARCHIVE_SCHEDULE_JOB giving dump as background job?

    Hello Everyone,
                       I am scheduling a report in SM37 which consists of FM ARCHIVE_SCHEDULE_JOB.
                       And based on the output of FM, some Ztables are updated and some jobs are created in sm37.
    Now, when i debugged the background job, i found out that Fm is giving Dump 'NO_RUNTIME_INFO' since sy-batch is not initial.
    Due to which Ztables are not updated but the jobs are created....
    Can anyone please help me what should i do on this case?
    Edited by: Suruchi Razdan on Jun 2, 2011 9:45 AM

    Hi Akshay,
    II have copied the Std workflow WS20000075 into a custom one and in the latest end tab, i have selected "Workitem creaton" for Refer Date/Time field and given 5 mins. I have deactivated the workflow in which i have created the containers for date and time and used "Expresion" for latest end and also commented the zmethod in delegated object. Even now also the job is getting cancelled with the same error.
    Any idea why is it happening ?
    regards,
    Trimurty

  • Batch job missing in SM37

    hi,
           How to find the missing batch job in sm37 which was scheduled to run on 10th jan 2012 but now if i go n check it the job is missing..Please help me in this..

    Hi,
    Please try executing by giving the part of the job name with wild cards (For ex., Z_SDVF06)and giving user name as * and give the time limit.  There might be some error in batch job name or user name or combination you were giving.
    Also please confirm was it working fine last time and executed successfully.  The causes could be one of these.
    1.  Is there any stack upgrade / Support pack upgrade going on?  Pl check with your basis whether they have stopped the mentioned BG jobs?
    2.  The user ID which schedules the job might have been expired.  Try scheduling the job now and check.
    3.  There would have been some connection error before job execution.
    Regards,
    P Gomatheeswaran

  • Deadline monitoring batch jobs

    Hi batch jobs for deadline monitoring are getting hanged for few times. Sometimes it works fine.
    I am not getting why it is getting hang out for few times.
    If anybody faced this problem, pls share the possibilities.
    regards,
    Kedar

    Hi,
    Please check parameters of deadline monitoring especially parameter "Interval for call objects".If its very long in future then possible reason is system is trying to generate calls for this long period and it may that job is not completed with time parameters set by basis administrator.And this may resulting into termination of job.
    So try to limit this parameter and also no of maintenace plan if you have a very huge list.Also check with basis person if any such jobs terminated due to very long time they are running
    regds,
    atul

  • Batch job print parameters missing

    I have 4 BATCH jobs that output to a pdf via MAIL. The data is shrunk so small that it cannot be read. If I am in SP01, and I try to reprint with changed parameters, only a select few formats are available. (All the ABAP/4 lists).
    I went to SPAD -> Full Administration -> Device Types -> Choose the device type -> Formats
    I see the the output DEVICE associated with MAIL is PDF1. I checked the formats that are already listed. It seems that some of these will suit my needs - however, most of them are not available to choose when I edit the batch job.
    How can I add a different format? I need to test several to find a size that will accommodate a very wide table.
    All suggestions welcome.
    Thanks!

    It's pretty huge. Columns A-W. The length varies, but this week's was 195 rows. I tried to create a new format, but I supposed it will never fit on a normal sheet of paper.
    Is it possible to "print" to an Excel file from a batch job?
    Right now, I am going back into SP01 and downloading to excel and emailing it out.
    Think this can be automated?
    Thanks for your input

  • Batch job to follow up WBT participation in LSO (confirm participation)

    Hi,
    We are finding a lot of our users in LSO are neglecting to click on "Confirm Participation" in the Learning Portal after successfully completing their web-based training.
    Of course, this means that the course remains in their "current" training activities area and most importantly, this means that the qualification related to this course type is not imparted.
    Due to this, we are looking at setting up a batch job to run nightly.  This job will look for situations where a person has successfully completed eLearning but neglects to confirm participation.  In these cases, the system will confirm participation for them.
    What is the best way to make this happen?
    Thanks
    Shaun

    Hi JP,
    "Our WBT courses do not get followed up at all in the new standard way."
    We experienced this as well after implementing the solution in note 1796928. The cause of our problem turned out to be a missing authorization on the user account we use to run the web content player. In our case, the user had no read authority for infotype 1001 so function LSO_LA_SAVE_LEARNINFO_C never made the call to function ZLSO_IF_AUTO_CONFIRM.
    To discover the cause, we needed to debug function LSO_LA_SAVE_LEARNINFO_C, however since it runs in a separate task we couldn't debug directly.
    To get around this, we added messages of type X at various points in the function's enhancement code. This forced the function to dump at runtime, and we then looked at the runtime error log to see the contents of the dump message. This enabled us to find the problem. Maybe you could try this same debug-via-dump approach to identify the source of your problem.
    Another thing to check is that users have authorization object P_LSO_FOUP.
    I also want to mention that as part of our implementation, we made the same enhancement to function LSO_CP_WRITE_SCORMDATA as was made to function LSO_LA_SAVE_LEARNINFO_C so that function LSO_CP_WRITE_SCORMDATA also calls function ZLSO_IF_AUTO_CONFIRM.
    Cheers,
    Amy

  • Batch job

    Hi I am working on batch job .
    my program is printing invoice as well as downloading and I have run this program in batch,
    I am using the FM job_open , job_submit and job_close.
    but it is failing in job_submit with sy-subrc eq 1 .
    giving me error bad print parameter , I haven;t done this before.
    I think it should be option.
    CALL FUNCTION 'JOB_SUBMIT'
        EXPORTING
          authcknam = SY-UNAME  "tbtcjob-authcknam
          jobcount  = tbtcjob-jobcount
          jobname   = p_jobnam
          language  = sy-langu
           report    = c_reprot
          variant   = pvariant
        EXCEPTIONS
          OTHERS    = 01.
    could anybody pls guide me why it is so???
    Regards.
    Kusum.

    you can below code
    OPEN DATASET gv_file FOR INPUT IN TEXT MODE ENCODING DEFAULT
                                WITH SMART LINEFEED.
        IF sy-subrc EQ 0.
          WHILE sy-subrc IS INITIAL.
            READ DATASET gv_file INTO gwa_header_file.
            IF sy-subrc NE 0.
              EXIT.
            ELSE.
              APPEND gwa_header_file TO gt_header_file.
            ENDIF.
          ENDWHILE.
          CLOSE DATASET gv_file.
        ENDIF.
      ENDIF.

  • Submit batch job daynamically using batch user id

    Hi,
    I need to submit the background job dynamically from ABAP program with BATCH user id.
    I have created new program. Users will execute program in foreground.
    Had issue with USER id. If I give my user id then batch job successfully creating. If I give u2018BAICHu2019 id then it is giving the error.
    Am I doing any thing wrong here?
    Code:
    Open Job
      CALL FUNCTION 'JOB_OPEN'
        EXPORTING
          jobname  = jobname
        IMPORTING
          jobcount = w_jobcount.
        SUBMIT zrufilep WITH p_file1 = sourfile
                        WITH p_file2 = destfile
                        VIA JOB jobname NUMBER w_jobcount
                        USER 'BATCH_FI'
                        AND RETURN.
    Schedule and close job.
          CALL FUNCTION 'JOB_CLOSE'
            EXPORTING
              jobcount  = w_jobcount
              jobname   = jobname
              sdlstrtdt = sy-datum
              sdlstrttm = sy-uzeit.
    Thanks

    Can any body tell me if that authorization is given to the user, can he submit any other job from front end?
    As you can see if he can, it will conflict security issues of business. So If he is not permitted to execute these kind of statements in any other program, would he be confined to using diff user in this program only?
    Or is there any other way-out to confine the user for getting this authorization for a single T-code or such?

  • Creating a simple batch job to run every month and perform a deletion

    dear all;
    This is just for learning purposes
    I have created a simple table below
    create table t1
      vid varchar2(30),
      quantity number(6,2),
      primary key (vid)
    insert into t1
        (vid, quantity)
    values
        ('G1', 2);
    insert into t1
        (vid, quantity)
    values
        ('G2', 3);
    insert into t1
        (vid, quantity)
    values
        ('G3', 0);Now, I would like to create a simple batch job, that runs every month which is used to delete all vid that has a quantity of 0...How do i go about doing that. I have searched the web but can't seems to find any useful info so far..
    Edited by: user13328581 on Sep 8, 2010 8:32 AM

    you are missing a semi-colon in your package procedure call inside your begin ... end.
    begin
      dbms_scheduler.create_job
        job_name => 'jobdeletezeroquantity'
        , program_name => 'PLSQL_BLOCK'
        , job_action => 'BEGIN mfg.testpkg.deletezeroquantity END;'             <-- missing semi-colon on mfg.testpkg.deletezeroquantity
        , start_date => systimestamp
        , repeat_interval => 'freq=monthly; byday = 1'
        , end_date => null
        , enabled => True
        , comments => 'used to run a delete procedure every month'
    end;should be:
    begin
      dbms_scheduler.create_job
        job_name => 'jobdeletezeroquantity'
        , program_name => 'PLSQL_BLOCK'
        , job_action => 'BEGIN mfg.testpkg.deletezeroquantity; END;'
        , start_date => systimestamp
        , repeat_interval => 'freq=monthly; byday = 1'
        , end_date => null
        , enabled => TRUE
        , comments => 'used to run a delete procedure every month'
    end;

  • Report (uses LDB's) giving dump due to memory problem

    Hi,
    I have a report which is giving dump in production due to memory problem.
    Memory is increased from basis part,but still getting same error.
    the report uses Logical DataBases.
    Can anyone suggest solution to solve this problem.
    regards
    Mallik

    Hi Amit,
    thanks for ur quick reply and ur idea "make changes in development and write the logic to read records in chunks".
    I have n't worked on LDB's till now.So i Don't know how I can read the data in chunks from LDB's.
    Can u Plz give some idea how to read data in chunks.
    Iam also sending the code,if possible ,plz go thru it and give me some idea.
    Hope u will help me.
    CODE.
    REPORT ZAROP028
    ABLES: PROJ,                          " Project definition
            PRPS_R,                        " WBS element
            PRPS,                          " WBS elements
            TJ02T,                         " System Status Values
            TCJ1,                          " Project Types
            JEST,                          " Active System Status
            COSP1,                         " cost totals - external postings
            COSS1,                         " cost totals - internal postings
            COVP11,                        " Line Items by Prd & Doc Header
            COVP12,                        " Line Items by Prd & Doc Header
            BHDGD,                         " Page heading table.
            AUFK,                          " Order Master Data for WBS (LDB)
            ANEP,                          " Asset line item
            COBRB,                         "Distribution Rules Settlement Ru
            SETHIER,                       "Hierarchy Structure
            TKA02,                         "Controlling Area Assignment
            CEPC,                          "Profit Center Master Data
            PSDYPD,                        "Dummy struct for GET proj late
            PSDYPR,                        "Dummy struct for GET PRPS_R late
            PSDYNP.                        "Dummy struct for GET AUFK late
    CONSTANTS:
              C_E                   TYPE C VALUE 'E',
              C_I                   TYPE C VALUE 'I',
              C_N                   TYPE C VALUE 'N',
              C_X                   TYPE C VALUE 'X',
              C_Y                   TYPE C VALUE 'Y',
              C_NE(2)               TYPE C VALUE 'NE',
              C_EQ(2)               TYPE C VALUE 'EQ',
              C_USD(3)              TYPE C VALUE 'USD',
              C_04(2)               TYPE C VALUE '04',
              C_I0046(5)            TYPE C VALUE 'I0046'
    various working storage
    DATA:
         W_TXT04(4)  TYPE C.                      " make status uppercase
    DATA: ACTIVE(1)        TYPE C VALUE 'A',       " type for status_flag
          INACTIVE(1)      TYPE C VALUE 'I',       " type for status_flag
          STATUS_FLAG(1)   TYPE C VALUE 'I',       " wbs active or inactive?
          INACTIVEDT       LIKE SY-DATUM,          " inactive date for wbs
          REC_FLAG         TYPE C VALUE 'N',       " records retrieved?
          DAYS_INACTIVE    TYPE I,                 " days wbs has been inac
          W_LOWINACT       TYPE I,                 " smallest inactive days
          WBS_CNT          TYPE I,                 " cnt for wbs in status
          W_AUC_COST       TYPE P DECIMALS 2,      " unsettled auc cost
          W_VNAME          LIKE PRPS_R-VNAME.      " venture number storage
    DATA:  BEGIN OF ITAB OCCURS 0,                              "MELI-5F2KMH
            COMPCODE       LIKE PROJ-VBUKR,    " company code
            PLANT          LIKE PROJ-WERKS,    " plant
            PROJECT        LIKE PROJ-PSPID,    " project
            NAME           LIKE PROJ-POST1,    " project description
            DINACT         TYPE I,             " days proj inactive
            PRCTR          LIKE PROJ-PRCTR,    " profit center
            SETID          LIKE SETHIER-SETID, " level 2 pc hier
            DESCRIPT       LIKE SETHEADERT-DESCRIPT,
            VERNA          LIKE PROJ-VERNA,    " person responsible
            AUC            TYPE P DECIMALS 2,  " AUC unsettled amount
          END OF ITAB.
    DATA: BEGIN OF I_INACT OCCURS 0,
            STAT  LIKE JEST-STAT,
            INACT LIKE JEST-INACT,
          END OF I_INACT.
    DATA: EQ_FLAG TYPE C,                       " system status flag
          NE_FLAG TYPE C.                       " system status flag
    TYPES:  BEGIN OF T_COSTS,
              PSPID  LIKE PROJ-PSPID,
              BUDAT  LIKE COVP11-BUDAT,
            END OF T_COSTS.
    DATA:  I_PROJ LIKE PROJ OCCURS 0 WITH HEADER LINE,
           I_PRPS_R LIKE PRPS_R OCCURS 0 WITH HEADER LINE,
           I_COSTS TYPE T_COSTS OCCURS 0 WITH HEADER LINE.
    DATA:  W_RECORDS TYPE I.
    DATA: FOUND_FLAG TYPE C.                        " CHAD-4PRPDE
    DATA: BEGIN OF I_HIER OCCURS 0.                             "FEAT-5BNRRP
            INCLUDE STRUCTURE SETHIER.                          "FEAT-5BNRRP
    DATA: END OF I_HIER.                                        "FEAT-5BNRRP
    RANGES: R_TJ02T FOR TJ02T-ISTAT.
    DATA: W_LVL2 LIKE SETHIER-SETID.                            "MELI-5F2KMH
    SELECTION-SCREEN BEGIN OF BLOCK PROJECT WITH FRAME TITLE TEXT-B01.
    PARAMETERS:       P_BUDAT LIKE COVP11-BUDAT,
                      DAYINACT(3) TYPE N DEFAULT '090'.
    SELECTION-SCREEN SKIP.                                      "FEAT-5BNRRP
    PARAMETERS:       P_PC-SET LIKE CEPC-KHINR OBLIGATORY       "FEAT-5BNRRP
                      DEFAULT 'SCH_STREAM'.                     "FEAT-5BNRRP
    SELECTION-SCREEN END OF BLOCK PROJECT.
    SELECTION-SCREEN BEGIN OF BLOCK SORT WITH FRAME TITLE TEXT-B02.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(13) TEXT-C01.
    SELECTION-SCREEN POSITION 15.
    PARAMETERS:  P_PLANT RADIOBUTTON GROUP SORT DEFAULT 'X'.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(13) TEXT-C03.                    "FEAT-5BNRRP
    SELECTION-SCREEN POSITION 15.
    PARAMETERS:  P_PRCTR RADIOBUTTON GROUP SORT.                "FEAT-5BNRRP
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(13) TEXT-C04.
    SELECTION-SCREEN POSITION 15.
    PARAMETERS:  P_DAYS RADIOBUTTON GROUP SORT.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK SORT.
    AT SELECTION-SCREEN OUTPUT.
      PERFORM USER_PARM_INIT.
    AT SELECTION-SCREEN.
      PERFORM CHECK_PROJ_CRITERIA.
    START-OF-SELECTION.
    PERFORM BUILD_PC_HIER USING P_PC-SET.  
    Project Definition                                                  *
    GET PROJ.
      MOVE-CORRESPONDING PROJ TO I_PROJ.                        "MELI-5F2KMH
      APPEND I_PROJ.                                            "MELI-5F2KMH
      CLEAR I_PROJ.
    WBS element table
    GET PRPS_R.
      MOVE-CORRESPONDING PRPS_R TO I_PRPS_R.
      APPEND I_PRPS_R.
      CLEAR I_PRPS_R.
    GET all order and cost objects associated with order and elements
    GET AUFK.
    GET COSP1.
    CHECK COSP1-WRTTP EQ C_04.      " check if value type '04'
      Get last date that the wbselement was updated and determine status
    GET COVP11.
      MOVE PROJ-PSPID TO I_COSTS-PSPID.
      MOVE COVP11-BUDAT TO I_COSTS-BUDAT.
      APPEND I_COSTS.
      CLEAR I_COSTS.
      Loop through Internal cost statements
    GET COSS1.
    CHECK COSS1-WRTTP EQ C_04.           " if value type is 04
      Get last date that the wbselement was updated and determine status
    GET COVP12.
      MOVE PROJ-PSPID TO I_COSTS-PSPID.
      MOVE COVP12-BUDAT TO I_COSTS-BUDAT.
      APPEND I_COSTS.
      CLEAR I_COSTS.
    END-OF-SELECTION.
      PERFORM BUILD_TABLE.
      DELETE ITAB WHERE DINACT < DAYINACT.
      DESCRIBE TABLE ITAB LINES W_RECORDS.
      IF W_RECORDS = 0.
        MESSAGE I024.
      ENDIF.
      PERFORM WRITE_REPORT.
          FORM  CHECK_PROJ_CRITERIA                                      *
    This form verifies correct selection criteria has been entered from *
    the selection screen inputs.  If incorrect data has been entered the*
    valid information messages are displayed.                           *
    FORM CHECK_PROJ_CRITERIA.
    check for either posting date or inactivity criteria but not both
      IF NOT P_BUDAT IS INITIAL AND NOT DAYINACT IS INITIAL.
        MESSAGE E119.
      ENDIF.
      IF NOT DAYINACT IS INITIAL.          "check s/o day inactive
        IF NOT DAYINACT <= 998.
          MESSAGE E018.
        ELSE.
          INACTIVEDT = SY-DATUM - DAYINACT.
        ENDIF.
    if days inactive is initial set INACTIVEDT using the posting date
      ELSE.
        INACTIVEDT = P_BUDAT.
      ENDIF.
    ENDFORM.                    " CHECK_PROJ_CRITERIA
          FORM  GET_AUC_COSTS                                            *
    This form retrieves AUC costs for records based on AUFK2 where they *
    meet project criteria.  This pulls the unsettled amount on a AUC as *
    a settlement receiver.                                              *
    FORM GET_AUC_COSTS USING F_OBJNR F_BUKRS.
      CONSTANTS:
       C_SETLEMENT_ANNUAL LIKE COBRB-PERBZ VALUE 'JHR',   "Annual Settlement
        C_DEP_AREA_STD     LIKE ANEP-AFABE  VALUE '01'.    "Std depreciation
      DATA: L_ANLC LIKE ANLC  OCCURS 0 WITH HEADER LINE,
            L_ANLCV LIKE ANLCV OCCURS 0 WITH HEADER LINE,
            BEGIN OF L_COBRB OCCURS 0,                       "SRIN-6ZNEAR
            ANLN1 LIKE COBRB-ANLN1,
            ANLN2 LIKE COBRB-ANLN2,
            END OF L_COBRB,
            F_H_COST TYPE P DECIMALS 2.
      SELECT ANLN1 ANLN2 FROM COBRB
        INTO TABLE L_COBRB                                    " SRIN-6ZNEAR
         WHERE OBJNR = F_OBJNR
           AND PERBZ = C_SETLEMENT_ANNUAL.
      IF SY-SUBRC NE 0.                                        " gary-463qbd
        EXIT.                                                  " gary-463qbd
      ENDIF.                                                   " gary-463qbd
    LOOP AT L_COBRB.                                           " gary-463qbd
      CLEAR: F_H_COST.
      SELECT SINGLE * FROM ANLC
        INTO L_ANLC
        WHERE BUKRS = F_BUKRS AND
                ANLN1 = L_COBRB-ANLN1 AND
                ANLN2 = L_COBRB-ANLN2 AND
                GJAHR = SY-DATUM(4) AND
                AFABE = C_DEP_AREA_STD AND
                ZUJHR = '0000' AND
                ZUCOD = '0000'.
        IF SY-SUBRC = 0.
          CALL FUNCTION 'FI_AA_VALUES_CALCULATE'
               EXPORTING
                    I_ANLC  = L_ANLC
               IMPORTING
                    E_ANLCV = L_ANLCV.
          F_H_COST = L_ANLCV-BCHWRT_LFD.
        ENDIF.
      ADD: F_H_COST TO W_AUC_COST.
    ENDLOOP.                                                   " gary-463qbd
    ENDFORM.                    " GET_AUC_COSTS
          FORM  CHECK_INACTIVE_DATE                                      *
    This form checks the computed inactive date based on the formal     *
    parameter DAYS_INACTIVE.  If DAYS_INACTIVE is more current than the *
    current lowest inactive date W_LOWINACT then W_LOWINACT is replaced *
    with this value.                                                    *
    FORM CHECK_INACTIVE_DATE USING DAYS_INACTIVE.
      IF DAYS_INACTIVE < W_LOWINACT.
        MOVE DAYS_INACTIVE TO W_LOWINACT.
      ELSEIF W_LOWINACT EQ 0.
        MOVE: DAYS_INACTIVE TO W_LOWINACT,
              W_LOWINACT    TO ITAB-DINACT.
      ENDIF.
    ENDFORM.                    " CHECK_INACTIVE_DATE
          FORM build_table                                               *
    collect fields to the internal table ITAB                           *
    FORM  BUILD_TABLE.
      SORT I_COSTS BY PSPID ASCENDING BUDAT DESCENDING.
      LOOP AT I_PROJ.
        CLEAR W_AUC_COST.
        READ TABLE I_COSTS WITH KEY PSPID = I_PROJ-PSPID
                                BINARY SEARCH.
        IF SY-SUBRC = 0.
          ITAB-DINACT = SY-DATUM - I_COSTS-BUDAT.
        ELSE.
          ITAB-DINACT = SY-DATUM - I_PROJ-ERDAT.
        ENDIF.
        LOOP AT I_PRPS_R WHERE PSPHI = I_PROJ-PSPNR AND
                               BELKZ = 'X'.
          IF NOT I_PRPS_R-IMPRF IS INITIAL.
            PERFORM GET_AUC_COSTS USING I_PRPS_R-OBJNR
                                        I_PRPS_R-PBUKR.
          ELSE.
            CONTINUE.
          ENDIF.
        ENDLOOP.
        ITAB-COMPCODE = I_PROJ-VBUKR.
        ITAB-PLANT    = I_PROJ-WERKS.
        ITAB-PROJECT  = I_PROJ-PSPID.
        ITAB-NAME     = I_PROJ-POST1.
        ITAB-PRCTR    = I_PROJ-PRCTR.
        ITAB-VERNA    = I_PROJ-VERNA.
        ITAB-AUC      = W_AUC_COST.
        IF ITAB-DINACT > DAYINACT.
          PERFORM GET_HIER_INFO.
        ENDIF.
        APPEND ITAB.
        CLEAR ITAB.
      ENDLOOP.
    ENDFORM.                    " BUILD_TABLE
          FORM STATUS_CHECK                                              *
    Checks the active status of the project definition for the          *
    parameter values assigned.                                          *
    FORM  STATUS_CHECK USING F_OBJNR.
    begin of GARY-463QBD
      CLEAR: I_INACT.
      REFRESH: I_INACT.
      MOVE: C_N TO EQ_FLAG,
            C_Y TO NE_FLAG.
    retrieve status for a given record
      SELECT STAT INACT
        INTO TABLE I_INACT
        FROM JEST
        WHERE OBJNR EQ F_OBJNR AND
              INACT NE C_X.
    sort internal status entered by user
      SORT R_TJ02T BY OPTION DESCENDING.
    check all current object statuses meet user entered criteria
      LOOP AT R_TJ02T WHERE OPTION EQ C_NE.
    check for user selected options
        READ TABLE I_INACT WITH KEY STAT = R_TJ02T-LOW.
        IF SY-SUBRC EQ 0.
          MOVE C_N TO NE_FLAG.
          EXIT.
        ENDIF.
      ENDLOOP.
      LOOP AT R_TJ02T WHERE OPTION EQ C_EQ.
    check for user selected options
        READ TABLE I_INACT WITH KEY STAT = R_TJ02T-LOW.
        IF SY-SUBRC EQ 0.
          MOVE C_Y TO EQ_FLAG.
          EXIT.
        ENDIF.
      ENDLOOP.
    check for no statuses entered as EQ option
      LOOP AT R_TJ02T WHERE OPTION EQ C_EQ.
        EXIT.
      ENDLOOP.
    if so move c_y to eq_flag
      IF SY-SUBRC NE 0.
        MOVE C_Y TO EQ_FLAG.
      ENDIF.
    if both eq_flag or ne_flag are true(c_y) move true to valid_flag
      IF ( EQ_FLAG EQ C_N OR
           NE_FLAG EQ C_N ).
        REJECT 'PRPS_R'.
      ENDIF.
    end of GARY-463QBD
    ENDFORM.                    " STATUS_CHECK
          Form  WRITE_REPORT
    FORM WRITE_REPORT.
      IF P_PLANT EQ 'X'.
    SORT ASCENDING BY ITAB-BUSAREA                           "FEAT-5BNRRP
        SORT ITAB ASCENDING BY PLANT
                               PROJECT.
      ELSEIF P_PRCTR EQ 'X'.
       SORT ITAB ASCENDING BY PRCTR                             "FEAT-5BNRRP
                                PROJECT.
      ELSE.
       SORT ITAB ASCENDING BY DINACT
                                PROJECT.
      ENDIF.
      FORMAT COLOR COL_BACKGROUND INTENSIFIED ON.
                                                         "MELI-5F2KMH
    LOOP AT ITAB.                                               "MELI-5F2KMH
        WRITE:   /     ITAB-COMPCODE,
                 9(4)  ITAB-PLANT,
                17(12) ITAB-SETID,
                33(40) ITAB-DESCRIPT,
                77(10) ITAB-PRCTR,
                91(24) ITAB-PROJECT,
               119(40) ITAB-NAME,
               163(25) ITAB-VERNA,
               192(15) ITAB-AUC CURRENCY C_USD,
               211(8)  ITAB-DINACT.
      ENDLOOP.
    ENDFORM.                    " WRITE_REPORT
          Form  USER_PARM_INIT
    Initializes user parameter settings
    FORM USER_PARM_INIT.
    ENDFORM.                    " USER_PARM_INIT
    At top of every page, generate Amoco-standard header.
    TOP-OF-PAGE.
      MOVE: '0'       TO BHDGD-INIFL,
           SY-LINSZ   TO BHDGD-LINES,
           SY-UNAME   TO BHDGD-UNAME,
           SY-REPID   TO BHDGD-REPID,
           SY-TITLE   TO BHDGD-LINE1,
           SPACE      TO BHDGD-DOMAI,
           SPACE      TO BHDGD-SEPAR,
           SPACE      TO BHDGD-MIFFL.
      IF P_PLANT EQ 'X'.
        MOVE TEXT-H01 TO BHDGD-LINE2.
      ELSE.
        MOVE TEXT-H03 TO BHDGD-LINE2.                          "FEAT-5BNRRP
      ENDIF.
    temporarily clear sy-mandt to remove "europe" from header "FEAT-5BNRRP
      DATA:  W_MANDT LIKE SY-MANDT.
      BHDGD-BUKRS = SPACE.
      W_MANDT     = SY-MANDT.
      CLEAR  SY-MANDT.
      FORMAT  COLOR COL_BACKGROUND INTENSIFIED OFF.
      PERFORM BATCH-HEADING(RSBTCHH0).
      FORMAT RESET.
    reset sy-mandt                                            "FEAT-5BNRRP
      SY-MANDT = W_MANDT.
      PERFORM PGH_WRITE_HEADING USING TEXT-003 INACTIVEDT.      "MELI-5F2KMH
      SKIP 1.
      ULINE.
    write heading info
      FORMAT COLOR COL_TOTAL INTENSIFIED ON.
      WRITE: /1(5)'CCode',
              9(5)'Plant',
              17(12)'Level 2 Node',
              33(40)'Level 2 Node Description',
              77(10)'Profit Ctr',
              91(18)'Project Definition',
             119(19)'Project Description',
              163(18)'Person Responsible',
              192(15)' AUC Unsettled',
              211(13)'Days Inactive'.
    end FEAT-5BNRRP
    BEGIN FEAT-5BNRRP NEW FORMS
    FORM BUILD_PC_HIER
    FORM BUILD_PC_HIER USING SETID.
      DATA:  W_SETID LIKE SETHIER-SETID,
             W_NEWSETID LIKE SETHIER-SETID.
      CONCATENATE '0H' SETID INTO W_SETID.
      CALL FUNCTION 'G_SET_GET_ID_FROM_NAME'
           EXPORTING
                SHORTNAME     = W_SETID
                TABNAME       = 'GLPCT'
                SETCLASS      = '0106'
                SUPRESS_POPUP = 'X'
                OLD_SETID     = W_NEWSETID
           IMPORTING
                NEW_SETID     = W_NEWSETID.
      CALL FUNCTION 'G_SET_TREE_IMPORT'
           EXPORTING
                CLIENT                    = SY-MANDT
                LANGU                     = SY-LANGU
                SETID                     = W_NEWSETID
                TABNAME                   = 'GLPCT'
           TABLES
                SET_HIERARCHY             = I_HIER
           EXCEPTIONS
                SET_NOT_FOUND             = 1
                ILLEGAL_FIELD_REPLACEMENT = 2
                ILLEGAL_TABLE_REPLACEMENT = 3
                OTHERS                    = 4.
      CLEAR I_HIER.
    ENDFORM.
    FORM GET_HIER_INFO
    FORM GET_HIER_INFO.
      DATA:  W_SETID LIKE SETHIER-SETID,
             W_KHINR LIKE CEPC-KHINR,
             W_INDEX  TYPE I.
      CLEAR: W_SETID,
             W_KHINR,
             W_INDEX.
    DETERMINE PROFIT CENTER NODE
      SELECT SINGLE KHINR
        FROM CEPC
        INTO W_KHINR
        WHERE PRCTR EQ ITAB-PRCTR.
      CONCATENATE '0106' I_PROJ-VKOKR W_KHINR
        INTO W_SETID.
      READ TABLE I_HIER WITH KEY
                        SETID = W_SETID.
      IF SY-SUBRC EQ 0.
        W_INDEX = SY-TABIX.
        DO.
          READ TABLE I_HIER INDEX W_INDEX.
          IF W_INDEX = 0.
            ITAB-SETID = 'Not Found'.
            EXIT.
          ENDIF.
          IF I_HIER-LEVEL = 1.
            ITAB-SETID = I_HIER-SETID+8(12).
            ITAB-DESCRIPT = I_HIER-DESCRIPT.
            EXIT.
          ENDIF.
          IF I_HIER-LEVEL = 2.
            ITAB-SETID = I_HIER-SETID+8(12).
            ITAB-DESCRIPT = I_HIER-DESCRIPT.
            EXIT.
          ENDIF.
          W_INDEX = W_INDEX - 1.
        ENDDO.
      ELSE.
        ITAB-SETID = 'Not Found'.
      ENDIF.
    ENDFORM.
    END FEAT-5BNRRP NEW FORMS
    *&      Form  PGH_WRITE_HEADING WR MELI-5F2KMH
    FORM PGH_WRITE_HEADING USING L_V1 L_V2.
      DATA:  L_LINSZ    LIKE SY-LINSZ.
      DATA:  L_TITLEL   LIKE SY-TABIX.
      DATA:  L_START    LIKE SY-TABIX.
      DATA:  L_DATE     LIKE SY-DATUM.
      DATA:  L_FORMATTED_DATE(10) TYPE C.
      DATA:  L_TITLE(27) TYPE C.
      MOVE L_V2 TO L_DATE.
      WRITE L_DATE TO L_FORMATTED_DATE.
      CONCATENATE L_V1 L_FORMATTED_DATE INTO L_TITLE
        SEPARATED BY SPACE.
      L_LINSZ = SY-LINSZ.
      L_TITLEL = STRLEN( L_TITLE ).
      L_START = ( L_LINSZ / 2 ) - ( L_TITLEL / 2 ) - 2.
      NEW-LINE.
      POSITION L_START.
      WRITE: L_TITLE.
    regards
    Mallik

  • Batch job in a report program

    Hi Abappers,
    I have a peculiar scenario.
    My report has 2 PERFORMS lets say
    PERFORM1:
    PERFORM2:
    I have a DATE criterion in PERFORM 1.
    Based on that date only I have to execute my PERFORM2.
    Ex:   The Date consideration is Suspension of a Contract Date: which is 01/12/2010.(dd/mm/yyyy)
    Now based on the this date I have to execute the 2nd PERFORM.
    I mean I have to create a Sales Order on this date only.
    To summarize,Execution of a program in a future date whose date is dynamic in nature
    Can i achieve this using a BATCH JOB.
    Please tell me how to schedule a BATCH JOB for a future date.
    Can i call a BATCH JOB froma  REPORT.
    Please your inputs shall be of great help to me in solving my problem.
    Thanks and Regards
    Srikanth.P

    Hi Sakshi,
    In that case of using the FM
    g_date is sy-datum.
    g_time is sy-uzeit.
    CALL FUNCTION 'JOB_OPEN'
      EXPORTING
    *   DELANFREP              = ' '
    *   JOBGROUP               = ' '
        JOBNAME                = 'Z_BATCHJOB_TRGT'
        SDLSTRTDT              = g_date
       SDLSTRTTM               = g_time.
    *   JOBCLASS               =
    * IMPORTING
    *   JOBCOUNT               =
    * CHANGING
    *   RET                    =
    * 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.
    In the above case how would the Job name get mapped to the Report. / Or / How can we assign the Job Name to the Report.
    There is no scope of giving the Report name in the FM.
    Can you please elucidate.(EXP parameters)
    By the way Thanks for your quick response.
    Thanks and Regards
    Srikanth

  • How to start a batch job through a web service call

    I have a batch job created Data Services that I would like to be able to start through a web service call.
    I have exposed the batch job as a Web Service through the mangement console.
    The Integrators guide is not the clearest piece of documentation that I have ever read so I'm now having a little trouble.
    In C# I'm issuing the following statements:
                DataServices.Batch_JobsClient batchClient = new DataServices.Batch_JobsClient();
                batchClient.Open();
                DataServices.Testjob_Match_GlobalVariables myVar = new DataServices.Testjob_Match_GlobalVariables();
                myVar.ptd_FilePath = "D:
    Jobs
    Test";
                batchClient.Testjob_Match(myVar);
    That all executes without error -- but the job is not started. Obviously I'm missing a step here but I can not figure out what is needed to acutally start the job execution from the Integrators Guide.
    Any help would be appricated.

    first test invoking the batch job webservice using SoapUI
    does your client application logs the SOAP message that is sent to DS WebServer ?
    Check the %LINK_DIR%\lg\webservices.log if there is any errors logged in it ?

  • Force FM execution on batch job work process

    Hi!
    Is it possible to asynchronously start FM execution on batch job work process?
    Additions:
    CALL FUNCTION func STARTING NEW TASK taskname.
    CALL FUNCTION func IN BACKGROUND TASK.
    starts FM execution just on another dialog process.
    Context of requirement:
    There is a program that may be logically splitted into two parts:
    - dialog part where data is collected from user input
    - BAPI call with a tons of parameters(structures, internal tables) formed on user input
    So the problem - system dump by timeout during BAPI execution.
    The only solution is to execute BAPI functionality on work process without timeout limitations - batch job work process.
    There may be two approaches:
    - pass parameters to report and schedule its execution in background job. But here arise question how to pass these dynamic parameters? SAP memory doesn't available for background job work process and "SUBMIT WITH FREE SELECTIONS texpr" seems to be intended for LDB or anyway not for such purposes.
    - force FM execution on background job work process - so how if it possible?
    Appreciate your suggestions.
    Regards,
    Maxim.

    Hi Maxim,
    Look at this example program where the user can run it online to enter the input values in the selection screen and then the program just goes into background mode, basically achieved by submitting the same program again skipping the selection screen. This is one more option for you.
    REPORT ztest.
    PARAMETERS: p_vbeln LIKE vbak-vbeln,
                p_bkrun NO-DISPLAY.
    DATA: ls_vbak LIKE vbak.
    DATA: v_answer,
          v_jobcount LIKE tbtcjob-jobcount.
      IF p_bkrun IS INITIAL.
    *-- not background processing
        CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'
             EXPORTING
                  textline1      = 'This may time out.'
                  textline2      = 'Do you want to run in background?'
                  titel          = 'Warning!!!'
                  cancel_display = space
             IMPORTING
                  answer         = v_answer.
        IF v_answer = 'J'.
    *-- run in the background
          CALL FUNCTION 'JOB_OPEN'
               EXPORTING
                    jobname          = 'ZTEST'
               IMPORTING
                    jobcount         = v_jobcount
               EXCEPTIONS
                    cant_create_job  = 1
                    invalid_job_data = 2
                    jobname_missing  = 3
                    OTHERS           = 4.
          IF sy-subrc <> 0.
            MESSAGE ID sy-msgid TYPE 'E' NUMBER sy-msgno
                    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
            EXIT.
          ENDIF.
    *-- submit the program in the background
          SUBMIT ztest
            WITH p_bkrun = 'X'
            WITH p_vbeln = p_vbeln
            USER sy-uname
            VIA JOB 'ZTEST' NUMBER v_jobcount AND RETURN.
    *-- close the job
          CALL FUNCTION 'JOB_CLOSE'
               EXPORTING
                    jobcount             = v_jobcount
                    jobname              = 'ZTEST'
                    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.
            MESSAGE ID sy-msgid TYPE 'W' NUMBER sy-msgno
                    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
          ENDIF.
          EXIT.
        ELSE.
          CLEAR v_answer.
        ENDIF.
      ENDIF.
      CHECK v_answer IS INITIAL.
      SELECT SINGLE * FROM vbak
                      INTO ls_vbak
                     WHERE vbeln = p_vbeln.
      IF sy-subrc <> 0.
        WRITE:/ 'Invalid Order Id.'.
      ENDIF.
    END-OF-SELECTION.
      CHECK v_answer IS INITIAL.
      IF p_bkrun IS INITIAL.
        WRITE:/ 'Here is the result running the program in foreground.'.
      ELSE.
        WRITE:/ 'Here is the result running the program in background.'.
      ENDIF.
      WRITE:/ ls_vbak-vbeln,
              ls_vbak-vkorg.
    Let me know if you have any questions.
    Srinivas

  • Time restriction on Batch Job

    Hi Friends,
    I have a requirement to set up a batch job to run every 15 minutes to print some labels. The catch is that it has to run only on working days between 6:15 AM and 6:15 PM. I believe that we can schieve the working days part by giving the factory calendar in restrictions and selecting the option 'Do not execute job on Sundays or Holid.' but I am unable to find a way to restrict is based on time. Is there any setting ro parameter in SM36 that can help achieve this or is there any other workaround for this.
    Thanks in advance for any hekp you can provide.
    ~ Praveen

    Hi Praveen,
    we had faced a similar issue and were not able to find anything substantial.
    What can be done as a workaround is to schedule the job periodically based on calendar to run every fifteen minutes and in the program code you could write the logic to terminate the program if time is not between the stipulated hours.

  • MRP Batch job RMMRP000 not woking but MD01 works

    Hi Gurus,
    We have a batch job running nightly for program RMMRP000 (MRP) in the morning when we check it, it does not propose any requirment. But when we run MD01 in the morning. It proposes requirments for materials. Why is this happening? I was told to check if the material is in the planning file and it is.
    What Am i missing.
    Thanks,
    Jograd

    Hi,
    That's okay, I think your background job running is no problem, because there are 64 materials planned. You should double check the other parts' planning file entry, whether they should be taken into account the MRP run? Normally there are the following prerequisitions:
    Material master data changed, e.g. some fields in MRP1, 2, 3 and 4 views;
    BoM or Routing changed;
    The requirements of parts with Higher Low-Level code changed, e.g. sales order, sales scheduling agreement;
    Production plan changed.
    And so on, all data is relevant to MRP. Check your production plan, it's daily plan or weekly plan!
    Regards
    Tao

Maybe you are looking for