CRM Ibase Component Warranty Details....Very Very Urgent

I have created a component in an ibase using the fm CRM_ICSS_CREATE_COMPONENT and added the warranty details using the fm CRM_IBCWTY_IL_API_CREATE. Now i need to update the counter and Qualification Requirement in the component relationships.
Can anyone help me in this.
It is very urgent....
Edited by: Bharath Srinivas on Apr 17, 2008 5:20 PM
Edited by: Bharath Srinivas on Apr 17, 2008 5:43 PM

Here you go :-
Use method ENLARGE_COMPONENT_DATA.
Create warranty link
DATA: it_interlinkage_to_create TYPE crmt_il_ibcwty_maint_ext_tab,
is_interlinkage_to_create TYPE crmt_il_ibcwty_maint_ext,
lv_object_guid TYPE comt_product_guid,
lv_object_reference TYPE crmt_il_wty_reference,
ls_prwty TYPE crmm_prwty,
ls_product_id TYPE comt_product_id,
ls_warranty_guid TYPE comt_product_guid.
ls_product_id = 'STD_WAR_1Y'. "Default warranty product
SELECT SINGLE product_guid FROM comm_product INTO ls_warranty_guid
WHERE product_id = ls_product_id.
is_interlinkage_to_create-warranty_guid = ls_warranty_guid.
is_interlinkage_to_create-start_date = ls_comp_det3-valfr.
is_interlinkage_to_create-end_date = ls_comp_det3-valto .
is_interlinkage_to_create-determine_dates = 'X'.
INSERT is_interlinkage_to_create INTO TABLE it_interlinkage_to_create.
lv_object_reference = '02'.
LOOP AT it_ibap_struc1_tab INTO is_ibap_struc1_tab.
lv_object_guid = is_ibap_struc1_tab-guid_compc.
ENDLOOP.
DATA: it_messages TYPE comt_il_error_tab,
it_interlinkage TYPE crmt_il_data_ibcwty_tab.
CALL FUNCTION 'CRM_IBCWTY_IL_API_CREATE'
EXPORTING
iv_object_guid = lv_object_guid
iv_object_reference = lv_object_reference
iv_timestamp = l_timestamp
iv_enqmode = 'E'
iv_raise_exception = 'X'
iv_save = 'X'
it_interlinkage_to_create = it_interlinkage_to_create
IMPORTING
et_messages = it_messages
et_interlinkage = it_interlinkage
EXCEPTIONS
error_occurred = 1
OTHERS = 2.
IF sy-subrc 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

Similar Messages

  • Very Very Urgent Please help me  Integration between OIM and Siebel CRM

    1.The system is proprietary of nature and hence not out of the box provisioning agents exist to integrate the system.
    Integration options for COPS(Customer Organisation Profiling System) ) is a proprietary CRM system holding contact, billing and other profile information as the authoritative source on customers;
    I need complete solution.Please help me its very very urgent.

    As mentioned in your Subject, if it is integration between OIM and Siebel CRM, we have an OOTB connector available for it. Even if your application is similar to Siebel CRM, you can refer the OOTB Siebel connector and do some reverse engineering on it to make a similar one..
    Hope it helps.. otherwise .. all the best and go ahead with writing a new connector and share your exp with the other forum members.
    cheers

  • CRM-T-code-IB52 Attaching warranty to ibase component automatically.

    Hi,
    In CRM IB52 transcation how to attach warranty to the Ibase component realtionship Automaticaly.
    Please provide your suggestions and solutions.
    Thanks in Advance.
    Regards
    Anbu

    Hello,
    I am aware of the fact that this topic is almost a year old but perhaps my answer will be beneficial for someone else.
    To assign Warranty to IBase Component use FM: CRM_IBWTY_IL_API_CREATE.
    Export parameters:
    iv_object_guid              " GUID of the Product/Component/IBase/IObject
                                  to which you want to assign warranty
    iv_object_reference = '01'  " Product
                          '02'  " Installed Base Component
                          '03'  " Installed Base Header
                          '04'  " Individual Object
    it_interlinkage_to_create   " internal table with Warranty GUID, start
                                  date and dates determination method.
    The actual data containing thhese relations is retained in CDBD_IL_IBCWTY table.
    Cheers,
    Mark

  • Material Number and Serial Number are not getting filled...Very very urgent

    I have my code in the badi...CRM_EQUI_LOAD...method PERFORM_LOAD.In this i try to to create a component for the ibase using the function module... CRM_ICSS_CREATE_COMPONENT...The component gets created but the material and serial number are not getting updated...It is very very urgent..please help....

    I am not sure what information you are passing in given FM.
    But in my case I have used FM 'CRM_CREATE_IBASE_FROM_EQUI' to create Ibase and component. It creates IBase and Component along with other details like material number and serial number.
    you may refer the below code for the same >
    Call the standard handling for crm equi load.
      call function 'CRM_CREATE_IBASE_FROM_EQUI'
        exporting
          is_header         = is_header
          it_equi_dmbdoc    = it_equi_dmbdoc
        changing
          et_error_segments = ct_error_segment
        exceptions
          technical_error   = 1
          others            = 2.
      if sy-subrc <> 0.
        raise equi_load_badi_error.
      endif.
    Cheers,
    Ashish

  • 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,

  • 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

  • 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

  • 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.

  • PCUI 4.0 Cookbook/Documentation very very urgent

    Dearest experts
    I have been having problems trying to access the pcui and have tried going through the forum but its still not helping. I need it case management implementation. I know there's a documentation link that was created but there is not pcui 4.0 documentation.
    I therefore request for the pcui cookbook, or any documentation required for setting up my pcui. your co-operation will be greatly rewarded in the form of marks.It is very very urgent
    my email address is <removed by SDN Forum Moderator>

    Hello,
    I close this Topic because the Documents requested are available via the Topic Links to CRM Documentation.
    Regards
    Gregor Wolf
    SDN CRM Forum Moderator

  • BADI(very very urgent)

    Hi all,
       i got the badi for post goods issue  but in which TRANSACTION, i have to use this badi.i am new to badi.plz tell me , how can i use the LE_SHP_GOODSMOVEMENT.
    plz tell me the procedure to follow?
    it is very very urgent.i will reward the point.
    Regards
    pabitra

    Hi gudia,
      Thanks very much.i am really sorry because i have not  replied u till now.i am very busy with other issue.so i forgot to open this mail.
      anyway, my mail id is [email protected]
    my gmail id is [email protected] will be always online in gmail messenger.plz give me some message to my gmail messenger so that i will give u instant reply if i will be in office.
    plz describe me clearly so that i can solve that issue using BADI.
    i have set some 20 break points in that program while pressing the post goods issue button in delivery(VL02n).but control is not going to that program.plz suggest me details.
    Thanks very much for ur help.waiting for ur reply.
    Regards
    pabitra

  • 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

  • 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)

  • 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

  • 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

Maybe you are looking for

  • How do I delete an iCloud account from my iPad that I no longer know the password for and have no access to the email account to change it?

    How do I delete an iCloud account from my iPad that I no longer know the password for and have no access to the email account to change it?

  • RFC_ERROR_SYSTEM_FAILURE: Error in ASSIGN: Memory protection error.

    HI, I need an urgent help in this error. I am getting this error, while i am trying to access the R3 from portal. i.e While saving the employee info. ESS -> PERSONAL INFO -> PROJECT EXP-> SAVE (dump) error msg in portal Error while saving: com.sap.mw

  • E1200 as an access point

    I have purchased the EA6900 router to replace my old E1200 router. 1.  Will I be able (by following the instructions in the EA owner's manual), set up my old E1200 as an access point? 2.  Will I then be able to attach devices to the E1200? Thanks

  • Short Dump Applicant Infotype

    Dear All, we have to create a client infotype for an applicant implementation. We create succesfully the infotype in transaction PM01. The problem is that when we want to test the new infotype in PB30, the system show us a short dump: The current ABA

  • Updating iPod software

    When I connect my iPod to my PC, I receive the following message: A new iPod software version (1.1.2) is available for the iPod "Tim's iPod". So I click Download and Install, and a few seconds later, I receive the following message: There was a probl