Error during GR(very very urgent)

Hi all,
i am using a developed program for GR.i used this program before.there was no error.but now i am facing error like
<b>PO ordered quqntity exceeded by 18,000 EA.</b>.i am using <b>BAPI_GOODSMVT_CREATE</b> for goods transfer.
In the selection screen, i am putting
PO number- PO1
material number- MAT
GR quantity- 18,000
delivery order-111
i want to receive the material MAT of quantity 18,000 from that PO.initially i have ordered PO quntity as 1 lakh. Till now i have received 42,000 materials,now i try to receive 18,000 materials.but it is showing this type of error.
This error is fired from the return parameter of that BAPI only.error having message class-M7 & error no-022
is comming.
i am giving my coding below.plz suggest where is the problem.it is very very urgent.recently my company has added some patches to update the SAP.is this the cause for that error.plz suggest.
any idea will be highly appreaciated.
Regards
REPORT zmui001
       LINE-SIZE 140
       LINE-COUNT 65
       NO STANDARD PAGE HEADING.
*-- DATA DECLARATION--
*-- tables
TABLES : ekpo,
            ekbe,
         marv.
*--Includes
INCLUDE : <icon>.                   " Include for Icons
*-- Types
TYPES : BEGIN OF t_mseg,
          ebeln LIKE ekko-ebeln,
          name1 LIKE lfa1-name1,
          lifnr LIKE lfa1-lifnr,
          eknam LIKE t024-eknam,
          mblnr LIKE mkpf-mblnr,
          matnr LIKE ekpo-matnr,
          maktx LIKE makt-maktx,
          lgort LIKE mseg-lgort,
          charg LIKE mseg-charg, "chg: 10/17/2005
          menge LIKE mseg-menge,
          budat LIKE mkpf-budat,
          bldat LIKE mkpf-bldat, " chg : 08/18/2003
          xblnr LIKE mkpf-xblnr,
          END OF t_mseg.
DATA:  BEGIN OF t_ekbe,
          ebeln LIKE ekbe-ebeln,
          ebelp LIKE ekbe-ebelp,
          bwart LIKE ekbe-bwart,
          matnr LIKE ekbe-matnr,
          menge LIKE ekbe-menge,
          END OF t_ekbe,
          BEGIN OF t_ekpo,
          ebeln LIKE ekpo-ebeln,
          ebelp LIKE ekpo-ebelp,
          matnr LIKE ekpo-matnr,
          menge LIKE ekpo-menge,
          END OF t_ekpo.
TYPES : BEGIN OF t_options.
        INCLUDE STRUCTURE itcpo.
TYPES : END OF t_options.
*--Internal tables
DATA: BEGIN OF i_item OCCURS 50.    "Create Material Document Item
        INCLUDE STRUCTURE bapi2017_gm_item_create.
DATA: END OF i_item .
DATA: BEGIN OF i_return OCCURS 20.  "Return parameter
        INCLUDE STRUCTURE bapiret2.
DATA: END OF i_return.
DATA: BEGIN OF i_part OCCURS 0,     " Internal table for split data
        part(20),
      END OF i_part.
DATA: BEGIN OF i_return1 OCCURS 20.  "Return parameter
        INCLUDE STRUCTURE bapiret1.
DATA: END OF i_return1.
*-- Work areas
DATA: BEGIN OF wa_header .       "Material Document Header Data
        INCLUDE STRUCTURE bapi2017_gm_head_01.
DATA: END OF wa_header .
DATA: BEGIN OF wa_return .       "Output Structure
        INCLUDE STRUCTURE bapi2017_gm_head_ret.
DATA: END OF wa_return .
*-- Work areas
DATA: wa_mseg TYPE t_mseg,
         wa_ekbe LIKE t_ekbe,
         wa_ekpo  LIKE t_ekpo,
      wa_options TYPE t_options,
       i_ekbe LIKE STANDARD TABLE OF  t_ekbe,
        i_ekbe2 LIKE STANDARD TABLE OF  t_ekbe,
       i_ekpo  LIKE STANDARD TABLE OF  t_ekpo.
*---Variables
DATA: v_first,         " variable to get first digit
      v_set TYPE c,
      v_found TYPE p,
      v_menge TYPE p,
      v_ebeln LIKE ekko-ebeln,
      v_lifnr LIKE ekko-lifnr,
      v_belnr LIKE ekbe-belnr,
      v_postdate LIKE mkpf-budat,
      v_bukrs LIKE marv-bukrs,
      v_datum LIKE sy-datum,
      v_lgort LIKE mard-lgort,   " Stge. location
      v_bwart LIKE mseg-bwart,   " Movement type
      v_infnr LIKE eina-infnr,   " Info record no.
      v_ltsnr LIKE eina-ltsnr.
*---Constants
CONSTANTS: c_comma TYPE c VALUE ',',   " For splitting data at commas
           c_01(2) TYPE c VALUE '01',  " For movement code in Bapi
           c_b     TYPE c VALUE 'B',   " For mvt. Indicator in Bapi
           c_save(4) TYPE c VALUE 'SAVE', " For button text
           c_clear(5) TYPE c VALUE 'CLEAR', " For clear button
           c_mvmt(4) TYPE c VALUE 'MVMT',
           c_ok(2)   TYPE c VALUE 'OK',
           c_error(5) TYPE c VALUE 'Error'.
*--SELECTION SCREEN DESIGN--
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME.
PARAMETERS:     p_bar(75) ,  " Scanned data from barcode
            p_ebeln LIKE ekko-ebeln, " PO number
            p_matnr LIKE ekpo-matnr, " Material number
            p_menge LIKE ekpo-menge, " Quantity
           p_lifnr LIKE ekko-lifnr, " Vendor code
            p_frbnr LIKE mkpf-frbnr, " Reference doc for goods mvt
            p_status(5) TYPE c.
SELECTION-SCREEN END OF BLOCK blk1.
SELECTION-SCREEN PUSHBUTTON 15(10) v_save USER-COMMAND mvmt.
SELECTION-SCREEN PUSHBUTTON 40(10) v_clear USER-COMMAND clear.
  INITIALIZATION -
INITIALIZATION.
  v_save = c_save .
  v_clear = c_clear.
*--AT SELECTION_SCREEN--
AT SELECTION-SCREEN .
  IF sy-ucomm = c_clear.
    PERFORM f_clear.
  ELSE.
    IF sy-ucomm <> c_mvmt.
       if not  sy-tabix is initial and  sy-ucomm <> c_mvmt.
*--- Extracting the data by splitting the scanned values.
      PERFORM f_get_split_data.
*--- Validating the input data.
      PERFORM f_check_inputs.
    ELSE .
*--- Validating the input data.
      PERFORM f_check_inputs.
*-- Determining the posting date and period check.
      PERFORM f_get_posting_date.
*---Post goods movement
      PERFORM f_post_receipt.
    ENDIF.
  ENDIF.
           SUBROUTINES                                               *
*&      Form  f_check_inputs
    Validating the input parameters
FORM f_check_inputs.
*-- Validating material no.
  SELECT SINGLE matnr INTO p_matnr
    FROM mara
      WHERE matnr = p_matnr.
  IF sy-subrc = 4.
    p_status =  c_error.
    MESSAGE e003(zm) WITH 'Material no.'.
  ENDIF.
*-- Validating JHT reference no.
  SELECT SINGLE ebeln
                lifnr
                bukrs
                INTO (p_ebeln, v_lifnr , v_bukrs)
                FROM ekko
        where unsez = p_unsez. chg:07072003
          WHERE ebeln = p_ebeln.
  IF sy-subrc = 4.
    p_status =  c_error.
    MESSAGE e003(zm) WITH 'Purchase order no.'.
  ENDIF.
*-- Validating material po combination
  SELECT SINGLE *
       FROM ekpo
         WHERE ebeln = p_ebeln
           AND matnr = p_matnr.
  IF sy-subrc = 4.
    p_status =  c_error.
    MESSAGE e003(zm) WITH 'Purchase order no.' ' and Material no.'.
  ENDIF.
*--- Checking for DO entry . (chng : 30/06/2003)
  IF  p_frbnr IS INITIAL.
    MESSAGE e018(m7) WITH 'Delivery no.'.
    p_status =  c_error.
    PERFORM f_clear.
  ENDIF.
*-- Validating material po do combination
  SELECT SINGLE a~belnr
                INTO v_belnr
                FROM ekbe AS a
                  INNER JOIN mkpf AS b
                   ON   abelnr = bmblnr
                   AND agjahr = bmjahr
                  WHERE a~ebeln = ekpo-ebeln
                    AND  a~ebelp = ekpo-ebelp
                    AND  b~xblnr = p_frbnr.
  IF sy-subrc = 0.
    MESSAGE e019(zm) WITH v_belnr.
    p_status = c_error.
    PERFORM f_clear.
  ENDIF.
  p_status =  c_ok.
ENDFORM.                    " f_check_inputs
*&      Form  f_get_split_data
   Extracting the data by splitting the Scanned data
FORM f_get_split_data.
*-- Splitting the data at commas
  SPLIT p_bar AT c_comma INTO TABLE i_part.
*-- Assigning the parts to variables.
  LOOP AT i_part.
    v_first = i_part-part+0(1).
    TRANSLATE  v_first TO UPPER CASE.
    CASE v_first .
     WHEN 'V'.
       p_lifnr =  i_part-part+1(10).
      WHEN 'P'.
        p_matnr = i_part-part+1(18).
      WHEN 'Q'.
        p_menge = i_part-part+1(13).
      WHEN 'K'.
        p_ebeln = i_part-part+1(10).
      WHEN 'D'.
        p_frbnr = i_part-part+2(16).
      WHEN OTHERS.
        CONTINUE.
    ENDCASE.
  ENDLOOP.
ENDFORM.                    " f_get_split_data
*&      Form  f_get_posting_date
Determing the posting date for document
FORM f_get_posting_date.
*-- get the current period for todays date.
  DATA: l_period LIKE t009b-poper.
  CALL FUNCTION 'DATE_TO_PERIOD_CONVERT'
    EXPORTING
      i_date               = sy-datum
      i_periv              = 'K4'
   IMPORTING
     e_buper               = l_period
  E_GJAHR              =
   EXCEPTIONS
     input_false          = 1
     t009_notfound        = 2
     t009b_notfound       = 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.
*-- Determining whether the open period
  SELECT SINGLE *
                FROM marv
                WHERE bukrs = v_bukrs.
  IF sy-subrc = 0.
    IF l_period = marv-lfmon .
      v_postdate = sy-datum.
    ELSE.
      CALL FUNCTION 'BAPI_CCODE_GET_FIRSTDAY_PERIOD'
           EXPORTING
                companycodeid       = v_bukrs
                fiscal_period       = marv-lfmon
                fiscal_year         = marv-lfgja
           IMPORTING
                first_day_of_period = v_postdate
                return              = i_return1.
      IF NOT i_return[] IS INITIAL.
        LOOP AT i_return1.
          MESSAGE i016(zm) WITH i_return-message.
        ENDLOOP.
      ENDIF.
    ENDIF.
  ENDIF.
ENDFORM.                    " f_get_posting_date
*&      Form  f_post_receipt
Post the goods receipt for entered data.
FORM f_post_receipt.
  PERFORM f_fill_item.
  PERFORM f_fill_header.
  PERFORM f_execute_transfer.
  PERFORM f_clear.
ENDFORM.                    " f_post_receipt
*&      Form  f_fill_item
  Updating the item data for the GR
FORM f_fill_item.
Checking for IQC cycle is done here.(chng : 23/07/2003)
  PERFORM f_check_iqc.
*---- Assigning movement type as per IQC cycle.(chng : 23/07/2003)
  IF v_lgort IS INITIAL.
    MOVE '101'   TO i_item-move_type.
    SELECT SINGLE lgort INTO i_item-stge_loc
    FROM ekpo
     where ebeln  = v_ebeln and  " chg :07/07/2003
       WHERE ebeln  = p_ebeln AND
           matnr = p_matnr .
  ELSE.
    MOVE v_lgort TO i_item-stge_loc.
    MOVE v_bwart TO i_item-move_type.
  ENDIF.
  MOVE p_matnr TO i_item-material.
  MOVE p_menge TO i_item-entry_qnt.
move v_ebeln to i_item-po_number. " 07/07/2003
  MOVE p_ebeln TO i_item-po_number.
  MOVE v_lifnr TO i_item-vendor.
  MOVE c_b TO i_item-mvt_ind.
select single ebelp into i_item-po_item " chg :29/07/2003
   from ekpo
      where ebeln  = p_ebeln
        and   matnr = p_matnr
       and elikz = ''.
  SELECT ebeln
            ebelp
            matnr
            menge
            INTO CORRESPONDING FIELDS OF TABLE i_ekpo
            FROM ekpo
            WHERE ebeln = p_ebeln
               AND matnr = p_matnr
               AND loekz = '' .
  SORT i_ekpo BY ebeln ebelp matnr.
  LOOP AT i_ekpo INTO wa_ekpo.
    IF v_found = 0.
      SELECT ebeln  ebelp
            bwart  menge
            INTO CORRESPONDING FIELDS OF TABLE i_ekbe
            FROM ekbe
            WHERE ebeln = p_ebeln
            AND ebelp = wa_ekpo-ebelp
            AND matnr = p_matnr.
                      and elikz = '' .  CHG -- 03/19/2004
      IF sy-subrc = 0.
        LOOP AT i_ekbe INTO wa_ekbe .
          IF wa_ekbe-bwart = '101'.
            v_menge = v_menge + wa_ekbe-menge.
          ENDIF.
          IF wa_ekbe-bwart = '102'.
            v_menge = v_menge - wa_ekbe-menge.
          ENDIF.
          IF wa_ekbe-bwart = '122'.
            v_menge = v_menge - wa_ekbe-menge.
          ENDIF.
        ENDLOOP.
chng: 03/19/2004 compare po qty against receipt
        v_menge = v_menge + p_menge .
        IF wa_ekpo-menge >= v_menge .
          v_found = 1.
          MOVE wa_ekpo-ebelp TO i_item-po_item.
        ENDIF.
      ELSE .
        v_found = 1.
        MOVE wa_ekpo-ebelp TO i_item-po_item.
      ENDIF.
    ENDIF.
    CLEAR : wa_ekbe, i_ekbe, v_menge.
  ENDLOOP.
  IF v_found = 0 .
    MESSAGE e003(zm) WITH ' delivery items'.
  ENDIF.
  APPEND i_item.
  CLEAR : i_item, v_found .
ENDFORM.                    " f_fill_item
*&      Form  f_check_iqc
Checking the storage location for the (chng : 23/07/2003)
FORM f_check_iqc.
  CALL FUNCTION 'Z_M_GET_IQC_STATUS'
       EXPORTING
            matnr          = p_matnr
            lifnr          = v_lifnr
       IMPORTING
            lgort          = v_lgort
            bwart          = v_bwart
            ltsnr          = v_ltsnr
            infnr          = v_infnr
       EXCEPTIONS
            non_iqc_vendor = 1
            OTHERS         = 2.
  IF sy-subrc <> 0.
    CLEAR : v_lgort , v_bwart , v_ltsnr.
  ENDIF.
ENDFORM.                    " f_check_iqc
*&      Form  f_fill_header
  Updating data in the header
FORM f_fill_header.
  MOVE v_postdate TO wa_header-pstng_date.
  MOVE sy-datum TO wa_header-doc_date.
  MOVE p_frbnr TO wa_header-ref_doc_no.
ENDFORM.                    " f_fill_header
*&      Form  f_execute_transfer
      Executing the goods movement.
FORM f_execute_transfer.
  CALL FUNCTION 'BAPI_GOODSMVT_CREATE'
       EXPORTING
            goodsmvt_header  = wa_header
            goodsmvt_code    = c_01
       IMPORTING
            goodsmvt_headret = wa_return
       TABLES
            goodsmvt_item    = i_item
            return           = i_return.
  IF i_return[] IS INITIAL .
    COMMIT WORK.
*---  UPdating Info record for IQC cycle ind.(chng : 23/07/2003)
    IF NOT v_ltsnr IS INITIAL.
      UPDATE eina SET ltsnr = v_ltsnr
      WHERE infnr = v_infnr.
    ENDIF.
    REFRESH : i_item.
    CLEAR : wa_header,v_ltsnr , v_infnr,v_bwart,v_lifnr.
    MESSAGE i012(migo) WITH wa_return-mat_doc.
    PERFORM f_do_print.
  ELSE.
    REFRESH : i_item.
    CLEAR : wa_header,v_ltsnr , v_infnr,v_bwart,v_lifnr.
    PERFORM write_errors.
  ENDIF.
ENDFORM.                    " f_execute_transfer
FORM write_errors.
  WRITE: 0(90) sy-uline ,
         /0'|',
          3 'System messages for GR posting',
          90 '|',
         /0(90) sy-uline .
  LOOP AT i_return.
    CASE  i_return-type.
      WHEN 'E'.
        MESSAGE i016(zm) WITH i_return-message.
      WHEN 'W'.
        MESSAGE i017(zm) WITH i_return-message.
      WHEN 'I'.
       WRITE: /0'|',
              icon_yellow_light AS ICON ,
              '|',
              10 i_return-message,
              90 '|'.
        MESSAGE i018(zm) WITH i_return-message.
      WHEN 'S'.
       WRITE: /0'|',
              icon_green_light AS ICON ,
              '|',
              10 i_return-message,
              90 '|'.
        MESSAGE i018(zm) WITH i_return-message.
      WHEN OTHERS.
       WRITE: /0'|',
              icon_red_light AS ICON ,
              '|',
              10 i_return-message,
              90 '|'.
        MESSAGE e016(zm) WITH i_return-message.
    ENDCASE.
   AT LAST .
     WRITE:/0(90) sy-uline .
   ENDAT.
  ENDLOOP.
ENDFORM.                    " write_errors
*&      Form  f_clear
Clearing the input parameters
FORM f_clear.
  CLEAR : p_ebeln ,
          p_bar,
          p_matnr,
          p_frbnr,
          v_lifnr,
          p_menge,
          p_status.

Hi all,
can anyone suggest any idea?
Regrds
pabitra

Similar Messages

  • Error during object generation - EEWB - Urgent

    Hi,
    We are using standalone CRM 5.0
    While trying to create custom fields via EEWB, we are getting the following error.
    Task BUPA_CI_FILL_CRDCLNT200
    No CRDCLNT200 transport request exists for System Workbench.
    When I double click on the system message, I get the following detail:
    "Error during object generation - Message no. OXT_MISC313"
    Error during object generation
        Message no. OXT_MISC313
    Diagnosis
        Errors occurred when generating objects of your extension.
    Procedure
        You can analyze the errors as tasks in the error log of your extension
        (register Log in the extension detail screen) or as tasks marked with
        errors in the navigation tree.
    Have anybody experienced this before? your inputs will be helpful.
    Regards,
    Anil

    Hi Anil,
    While you create EEWB extention, it will ask you for creation of transport request.
    Most likely reason is your transport system is not configured.
    Thus plz contact your basis admin to first configure transport landscape for your system and then try the same.
    Best Regards,
    Pratik Patel
    <b>Reward with Points!</b>

  • Error during P.O...urgent

    Hi Gurus,
    I am trying to release P.O for a raw material. But i am getting the error as "for quality reason only 0 ea remain release for procurement"
    Is it a QM issue?
    Can any one help me to find out what is the reason behind this?
    Thanks,
    D.Dutta
    Points guaranted

    Hi
    check for quality info record. If it is maintianed for that particular material then go and remove the check box, if it is blocked.
    Regards,
    satyajit

  • How to test Scenario with AS2 adapter..!!!Very Very Urgent..!!

    Hi All,
    We have provided the partner details like AS2ID,URL,Port and certificates.
    They ask me to do some sample testing whether files are reaching to partner system or not.
    I done all the required steps in IR and ID...
    1. Can anyone suggest me how to do the testing
    2. Where to monitor for AS2 messges?
    3. How to see the our output files whether we are sending the correct files or not?
    4. Outbound -- How we will come to know whether file reached to partner or not?If we set sync Mdn.. where we can see the MDN..?
    5. Inbound-- How we will come to know whether file has sent to us or not?
    Someone pls explain step by step how to do the testing using AS2 adapters for both Outbound and Inbound.
    Its Very Very urgent.
    Waiting for your replys..
    Regards
    Deepthi.

    Hi Deepthi,
    1. Can anyone suggest me how to do the testing
    A) Like message monitoring in RWB we have a particular link to monitor the message through differnt seeburger adapter.
    I dont remember the link right now.
    2. Where to monitor for AS2 messges?
    A) Through the same link.
    3. How to see the our output files whether we are sending the correct files or not?
    A) u mean to check the output file data or strucutre if strucutre is not proper then u will get the error message and ur mapping fails.
    4. Outbound -- How we will come to know whether file reached to partner or not?If we set sync Mdn.. where we can see the MDN..?
    I have no idea.
    5. Inbound-- How we will come to know whether file has sent to us or not?
    File is sent over wan so when it will be pickd up by XI.
    Thnx
    Chirag

  • Log4j problem  ----   VERY VERY URGENT PLEASE

    Hi,
    I am new to log4j. In my project( web application -- a testing framework ), there is a requirement to log the errors in a different filres for different requests ( the request may come simultaneously ) , by taking the log file path from the user interface.
    To achive the requirement , I am taking both the log file name and log4j.xml file path from the user interface and updating the log4j.xml at runtime, So I am able to log for different requst in different files , but while the 2nd log4j.xml ( the log4j.xml for 2nd request ) is configured ( using DOMConfigurator.configure ) , the errors which are belongs to 1st request are also wrriten in the 2nd log file ( which is configured by log4j.xml -- 2n request ) .
    Please help me to find out the solution for this problem( to log in different files for different request distinctly ).
    Thanks in advance

    chandan111 wrote:
    Please help me to find out the solution for this problem( to log in different files for different request distinctly ).Since this was "very very urgent", I'm probably too late. Anyway:
    The correct way to do this in Log4j would be to use the NDC (Nested Diagnostic Context ) class.
    Article

  • USER-EXIT for DELIVERY--very very urgent

    Hi all,
    can u plz tell me the user-exit for delivery i.e this exit should be called after the delivery order is created.
    plz suggest some specific exit.it is very very urgent.
    Regards
    pabitra

    Rout ,
    u cannt find out user exits after the Creation.
    V02V0001            Sales area determination for stock transport order
    V02V0002            User exit for storage location determination
    V02V0003            User exit for gate + matl staging area determination (headr)
    V02V0004            User Exit for Staging Area Determination (Item)
    V50PSTAT            Delivery: Item Status Calculation
    V50Q0001            Delivery Monitor: User Exits for Filling Display Fields
    V50R0001            Collective processing for delivery creation
    V50R0002            Collective processing for delivery creation
    V50R0004            Calculation of Stock for POs for Shipping Due Date List
    V50S0001            User Exits for Delivery Processing
    V53C0001            Rough workload calculation in time per item
    V53C0002            W&S: RWE enhancement - shipping material type/time slot
    V53W0001            User exits for creating picking waves
    VMDE0001            Shipping Interface: Error Handling - Inbound IDoc
    VMDE0002            Shipping Interface: Message PICKSD (Picking, Outbound)
    VMDE0003            Shipping Interface: Message SDPICK (Picking, Inbound)
    VMDE0004            Shipping Interface: Message SDPACK (Packing, Inbound)
    *        FORM-Routinen für Userexits
             include mv50afzz.
             include mv50afz1.
             include mv50afz2.
             include mv50afz3.          "Userexit neu zu Release 3.0A
             include mv50afzk.          "Userexit 4.6A (KOMKG/KOMPG)
             include mv50afzl.          "Userexit 4.6A Liefergruppen
                                                                   "n_693000
             include mv50afzp.          "Userexit for pricing screen input
    Regards
    Prabhu

  • UPDATE ROUTINE --- CUBE --- ODS Very Very URGENT

    Hi Collegues/Friends ,
    First I need to thank for the intiators of this site , as I came to know that for many
    problems we will get different best solutions ... Hoping the same I am posting a question
    which is very very very urgent as the client is running after me for this .
    My Requirement is as Follows. ..
    I Moving the data from Cube to ODS . While i need to write a routine for an extra field in
    ODS based on Billing Quantity in Base Unit of Measure . The Key Field in the ODS Is UNIQKEY
    Transaction and It is a Characterstic in the Cube and we have MAterial as another
    Characteristic  and core element as navigational attribute .
    In the Cube for every UNIQKEY transaction- there are more than One line items. 
    My data fields in the ODS are Billing Quantity in Base Unit of MEasure and and EXTRA FIELD
    : No of Items in Transaction . But the thing is that I have only Billing Quantity in Base
    Unit of Measure in cube as a key figure
    BAsing on the UNIQKEY transcation and Billing Quantity In Base Unit Of Measure I need to
    populate the No of Items in Transaction... For this i need to write a routine .
    Let suppose say that for the Materials the core elements are as follows
    Material  Core element
    10         1 -- fuel -- In liters
    20         2 -- Cigar - in PAck
    30         3 -- Coke - in Cans
    Now Lets see how the records are there in InfoCUbe
    Uniqkey  /  Material  / Core element /Billin Quantiy
    A          /   10      /     1        /    22
    B          /   30      /     3        /    2
    C          /   10      /    1         /  15
    C          /   30      /     3        /     2
    D          /   20      /     2        /    10
    D          /   30      /     3        /    2
    And IN the ODS -- I need to Populate the No OF items in Transaction.
    the Logic behind this as follows .
    1.if Materail is of type  1(Mean if the core element - 1)
    I need to Populate the No of items in tnx = 1
    2.If Material id of type 2 or 3 I need to populate the billing quantity to the no of
    transcations.
    3. If the Uniqkey tanscation contains two line items as  suppose that you have 20 litres of
    fuel and 2 cans of coke, then No of Items in the transaction should be 3 and Billing
    Quantity in BUoM 22
    billing quantity in BUoM = 20 litres for the first line item and 2 for the second line
    item...
    then as the first line item is fuel, field No OF Items in the Transcation should be 1
    (replacing the 20) + 2 = 3
    so the final result in the ODS should be billing quantity in BUoM = 22 and The Items in the
    Transcation = 3
    For this I have Written a Rouinte like this for that field
    PROGRAM UPDATE_ROUTINE.
    $$ begin of global - insert your declaration only below this line  -
    TABLES: /BI0/PMATERIAL.
    DATA: TITEMS LIKE /BIC/AZPOCODS00-/BIC/ZTITEMS,
           CORE_ELEMENT like /BI0/PMATERIAL-RPA_WGH1.
    $$ end of global - insert your declaration only before this line   -
    FORM compute_data_field
      TABLES   MONITOR STRUCTURE RSMONITOR "user defined monitoring
      USING    COMM_STRUCTURE LIKE /BIC/CS8ZPOCTUS04
               RECORD_NO LIKE SY-TABIX
               RECORD_ALL LIKE SY-TABIX
               SOURCE_SYSTEM LIKE RSUPDSIMULH-LOGSYS
      CHANGING RESULT LIKE /BIC/AZPOCODS00-/BIC/ZTITEMS
               RETURNCODE LIKE SY-SUBRC "Do not use!
               ABORT LIKE SY-SUBRC. "set ABORT <> 0 to cancel update
    $$ begin of routine - insert your code only below this line        -
    fill the internal table "MONITOR", to make monitor entries
    check not COMM_STRUCTURE-material is initial.
      select SINGLE RPA_WGH1
            INTO CORE_ELEMENT
            from /BI0/PMATERIAL
            where
            material = COMM_STRUCTURE-material
            and  OBJVERS <>'D'.
       IF CORE_ELEMENT EQ '1'.
       TITEMS = '1'.
         CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
           EXPORTING
             input         = titems
          IMPORTING
            OUTPUT        = titems
       ELSE.
       TITEMS = COMM_STRUCTURE-BILL_QTY.
       ENDIF.
    result value of the routine
      RESULT = TITEMS..
    if abort is not equal zero, the update process will be canceled
      ABORT = 0.
    $$ end of routine - insert your code only before this line         -
    Does it satisfy all the conditions ?? mentioned above if . As far As i know as the only key
    field in the transcation it will satisfy the first two conditions .
    I want to know or If possioble anybody pls take some pain for me to send the code or any
    Ideas for satisfying all the conditions.
    Hope I will get immediate replies....
    Mail me to [email protected]

    Reddy,
    Please do not post in all sections ... makes it hard to follow up on posts..
    Arun

  • My ipod 60gb classic is showing as fully charged until I connect it to my pc when it comes up with the error message, 'please wait very low battery' and the little wheel goes round and nothing happens, can anyone explain why this is and what i can do?

    My ipod 60gb classic is showing as fully charged until I connect it to my pc when it comes up with the error message, 'please wait very low battery' and the little wheel goes round and nothing happens, can anyone explain why this is and what i can do?

    I have worked my way through the assistant and nothing works. I have tried connecting in disc mode but although the screen on the ipod is showing that the device is charged and that it is in disc mode as soon as I connect it to the computer it comes up with the error message 'please wait very low battery' and stays like that until I disconnect when it appears to be OK again. I have tried on both pc and mac.
    BTW the ipod is an ipod video not classic if that makes any difference.
    Thanks

  • Searching for the fields of a table(very very urgent)

    Hi all,
    i am in graet trouble now.i am searching for the fields like
    1)country of origin where the finished good is created.
    2) customer sales order number
    3)customer sales order line number
    i am writing a report for delivery order.in this report i have to refer customer PO & customer SO .
      i mean, my company has a customer ( seagate) & seagate has a customer (let maxtor).initially maxtor will give a PO to seagate then seagate will raise a SO againest maxtor.
       Then seagate will send PO number(of maxtor), PO line number,SO number(seagate), SO line number(seagate) to our company.
       Then i have to write a report for sales order & delivery order.in these reports i have to refer seagate PO number & seagate SO number for reference.
    i got PO number as vbkd-bstkd but not getting any field for reference Sales order.plz advice me on this. it is very very urgent.
    ur idea is highly appreaciated.
    Thank u very much.
    Regards
    pabitra

    check out tables VBAK(sales order header), VBAP(sales items)

  • How to enable DFF for each line level on a Table Region - very very urgent

    Hi,
    I have a Master- Detail Page, Detail is Table region. I need to enable DFF (Context Based) for each line. If any one has done similar requirement please share how to do this. Its very very urgent.
    It is a standard page.
    Thanks,
    Edited by: user8996062 on Jun 29, 2011 2:58 AM

    Can any one please help me on this it is very urgent.
    Thanks,

  • AS2 Sender Adapter -- Need clarity.. Very Very Urgent...!!!

    Hi AS2 experts,
    Regarding AS2 sender adapter:
    We will provide the details
    TP:  HTTP
    MP:  AS2
    *Message Subject = **
    1. Can anyone please clarify what is this message subject ??
    Its the incoming file name we need to provide?
    According to few blogs,
    2. We will be providing the below URl to the partner system to send there messages.
    HTTP://<your-xi-server>:50000/SeeburgerAS2/AS2Server
    Consider im having partner systems A,B,C .
    and we will be creating 3 communication channels(CC1 ,CC2 ,CC3) to three partner systems.
    If i provide same URL to all the three partner systems.
    Then how it will differentiate like which file is belongs to which interface (from which partner it is coming)?
    And im not providing anything specific in all the AS2 sender comunication channels to differentiate these files.
    What is this AS2ID which we will provide in Party Configuration.
    WIll it makes any difference to above problem?
    Kindly suggest me if anyone has idea about this asap.
    Its Very very urgent.
    ThankYou.
    Regards
    Deepthi.

    Hi,
    >>>>1. We need to provide the below URl and Port to the partner to receive the messages?? HTTP://<your-xi-server>:50000/SeeburgerAS2/AS2Server
    I guess yes . you need to provide this URI.
    >>>>>2.Is it possible to do content based routing by using Message Subject?
    yes it is possible to determine the receiver depending upon ur condition. Please provide the context object at design time and at the time of Configuration , using XPATH you can determine conditional receiver.
    please look in to this links u will come to know about seeburger adapter.
    /people/bla.suranyi/blog/2006/06/08/sap-xi-supports-edifact
    /people/william.li/blog/2006/03/17/how-to-get-started-using-conversion-agent-from-itemfield
    /people/paul.medaille/blog/2005/11/17/more-on-the-sap-conversion-agent-by-itemfield
    http://www.stylusstudio.com/edi/XML_to_X12.html
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/b0b355ae-0501-0010-3b83-8f2bb566fa47
    Details on XI EDI adapter from seeburger
    /people/bla.suranyi/blog/2006/06/08/sap-xi-supports-edifact
    http://www.seeburger.it/fileadmin/it/pdf/2005_04_sapphire_Ferrero_transcript.pdf
    http://www.seeburger.com/fileadmin/com/pdf/Butler_Group_SEEBURGER_Technology_Audit.pdf
    http://www.seeburger.com/fileadmin/com/pdf/AS2_General_Overview.pdf
    SAP Adapters
    EDI with XI
    http://www.seeburger.com
    http://www.seeburger.com/fileadmin/com/pdf/AS2_General_Overview.pdf
    http://www.seeburger.it/fileadmin/it/pdf/2005_04_sapphire_Ferrero_transcript.pdf
    http://www.seeburger.com/fileadmin/com/pdf/SEEBURGER_SAP_Adapter_engl.pdf
    http://www.seeburger.com/fileadmin/com/pdf/Butler_Group_SEEBURGER_Technology_Audit.pdf
    http://www.sap.com/france/company/events/2006/02-01-Automotive-Seeburger.pdf
    http://h41123.www4.hp.com/presentations/ISUG/XISeeBurger.ppt
    http://www.sap.com/asia/company/events/nwtechdays/presentation/australia-slides/Pre-Built_Integration.pdf
    http://www.seeburger.com
    http://www.seeburger.it/fileadmin/it/pdf/2005_04_sapphire_Ferrero_transcript.pdf
    http://www.seeburger.com/fileadmin/com/pdf/Butler_Group_SEEBURGER_Technology_Audit.pdf
    http://www.sap.com/france/company/events/2006/02-01-Automotive-Seeburger.pdf
    http://h41123.www4.hp.com/presentations/ISUG/XISeeBurger.ppt
    Hope this will help you.
    Regards
    Aashish Sinha
    PS : reward points if helpful

  • How to use a DropDownList in Java Swing.Its very very Urgent

    Hi Sir,
    Here i need to know how to do (or) create a dropdownlist by using Java Swing.I know that there is JMenuBar & JMenuItems without using that when i click a JButton for example the dropdownlist should come from the top to bottom.I have already posted this quesion once.And i found that it has been removed.So i hope that this time i will get a better answer.Pls.do provide the code as well sir.So that i will be very thankful to u.Since i am involved in a project which contains this
    feature.It is very very Urgent.So pls.do provide the code i will be waiting for the reply.
    Thanx,
    m.ananthu

    use JComboBox
    JComboBox liste = new JComboBox(new Object[]{"azerty","qwerty});the api documentation :
    http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JComboBox.html
    the turotial on combobox :
    http://java.sun.com/docs/books/tutorial/uiswing/components/combobox.html

  • Consignment price (very very urgent)

    Hi all,
    i am writting a report on consignment stock.i am taking material from MKOL table where as i am taking consignment price from MKOP(konpr) table if TCURM-konsi = ''.
    that means if tcurm-konsi is initial then it will extract the pricing data from MKOP.
    i checked the TCURM table in which konsi field is 'X'.that means tcurm-konsi is not initial.so it will not go for MKOP data.
    IN the mean while , i checked MKOP table but there is no records present at all.it is fully empty.
    Now, if not TCURM-konsi is initial.
    then from which tables, i will get the related pricing data for consignment.
    so, from which table i have to take the consignment price & per unit price as well.
    any idea will be highly appreaciated.
    it is very urgent.plz advice me on this.
    Thanks & regards
    pabitra

    Hi ravi kanth,
    Thank u very much.i have already used that FM ME_READ_INFORECORD to get the price.but the price is comming wrongly.The price for all the materials are same.i am getting same price for every material but in MB54, the price is different.
    can u plz provide some code for the condition
    if tcurm-konsi = 'x'.
    i am really confused. i have already followed the steps ,what the program RM07MKBS is doing. but getting the same price for every material.plz suggest.
    it is very very urgent.
    Regards
    pabitra

  • To insert the xml data's generated dynamically it to orac very very urgent

    I AM WORKING IN A PROJECT WHICH RECEIVES THE DATA FROM FLAT FILES
    AND CONVERT IT TO XML FILE>
    I am in need to convert the xml file generated dynamically through out the year map it to correct datafield it the database and insert it in to oracle data base using java and jsp, servlets.
    i also need mechanism to be explained detailed and some sample codeings
    of converting the data from database to xml because
    and i also need to convert the data taken from sql server7.0 put it in xml file and once again read parse and insert in to oracle database.
    some sample codeings of the mechanisma and explaninations.
    I am in very very urgent-

    Hello sir,
    Thanks for the guidence.
    I need to insert data's into database columns where i should fetch data from xml file.
    please
    urgent.

  • JSP Question..Very Very Urgent....Please help....

    Hi...
    I am working on customizing existing JSP Page. The idea is to retrieve the customer name as show in 1 and send is as run time parameter to SQL query and use the result of select statement to pass it to 2.
    <INPUT TYPE="HIDDEN" NAME="soldtoCustPartyName" VALUE="<%= soldtoCustPartyName %>">.............1
    The above line of code gives the customer name. We need to find the site id for the above customer and pass it to the following line of code. site id will replace the hardcoded number '7945'.
    pageContext.setAttribute("party_site_id", new BigDecimal(7945), PageContext.REQUEST_SCOPE);...............2
    Hence we create database connection to find out site id. The query will return the site id depending upon the customer name as in 1. SQL statement will be something like:
    select site_id from ..... where fixed conditions and sitename = (from 1).
    How can we create SQL statement to take run time values.
    For eg. we do the following to execute Query after connecting to the databse..
    Statement statement = connection.createStatement();
    ResultSet rs = null;
    rs = statement.executeQuery("SELECT party_id from apps.hz_party_sites where cust_name='IBM'");
    <% rs.next(); %>
    <% out.print(rs.getInt("party_id")); %>
    How can the above query be modified to take run time value for cust_name.
    THIS IS VERY VERY URGENT.....PLEASE HELP.......

    Where are these run time values coming from? The user is entering the values into a form with that input?
    If so, then the user will need to submit the form, you need a servlet to process the form, take the value from the parameter with the same name as the input, insert it into the SQL statement, and run the database query, get the results and store them in the context you want.

Maybe you are looking for