MM module,Purchase order

HI experts,
I can call 'BAPI_PO_GETITEMS' to get all items in a PO#. Now I have some question.
1. I can get vendor number (HEADERS-VENDOR). how to get vendor name?
2. I get some articlenum in that PO#. Now I want to get UPC/pack/size of every articlenum in this PO#.  I try read MARA table, or call BAPI_MATERIAL_GET_DETAIL, but all failed.
Who will help me?Many thanks.

Hi,
1. You could get the vendor name and address by calling the BAPI BAPI_VENDOR_GETDETAIL where  GENERALDETAIL-VENDOR = PO_HEADERS-VENDOR from the PO BAPI. The vendor name is returned in GENERALDETAIL-NAME.
2. You could get the material details by calling the BAPI BAPI_MATERIAL_GET_DETAIL where MATERIAL = PO_ITEMS-PUR_MAT from the PO BAPI. The UPC is returned in MATERIAL_GENERAL_DATA-EAN_UPC. The pack/size depends on how it is implemented at your site but MATERIAL_GENERAL_DATA-SIZE_DIM could be used for that.
Regards Jack

Similar Messages

  • Problem of Query of Module Purchase Order, Good Receipt PO, Good Return

    Hi,
    I would like to seek for assistance regarding double entries of documents,  I have used the query and found out lately the it has a problem, Please refer to thread "Query of Module Purchase Order, Good Receipt PO, Good Return" for details.
    You help is very much appreciated.
    Regards,
    Clint

    Hi Clint,
    Try this one:
    SELECT DISTINCT 'GRPO' AS TYPE, T1.DOCNUM
    'GRPO/RET#', T3.DOCNUM 'PO#',T1.CARDCODE,
    T1.CARDNAME , T1.DOCDATE, T0.ITEMCODE, T0.QUANTITY,
    T0.PRICE, T0.LINETOTAL
    FROM DBO.PDN1 T0
    INNER JOIN DBO.OPDN T1 ON T1.DOCENTRY = T0.DOCENTRY
    LEFT JOIN DBO.POR1 T2 ON T0.BASEENTRY = T2.DOCENTRY
    INNER JOIN DBO.OPOR T3 ON T2.DOCENTRY = T3.DOCENTRY
    WHERE T1.DOCNUM = '[%0]' AND T0.ITEMCODE IS NOT NULL
    UNION ALL
    SELECT DISTINCT 'RETR', T1.DOCNUM,T3.DOCNUM,
    T1.CARDCODE, T1.CARDNAME , T1.DOCDATE, T0.ITEMCODE,
    T0.QUANTITY, T0.PRICE, T0.LINETOTAL
    FROM PDN1 T0
    INNER JOIN OPDN T1 ON T1.DOCENTRY = T0.DOCENTRY
    LEFT JOIN RPD1 T2 ON T0.TRGETENTRY = T2.DOCENTRY
    INNER JOIN ORPD T3 ON T2.DOCENTRY = T3.DOCENTRY
    WHERE T1.DOCNUM = '[%0]' AND T0.ITEMCODE IS NOT NULL
    If you still have duplicates, let me know any differences in those lines.
    Thanks,
    Gordon

  • Query of Module Purchase Order, Good Receipt PO,  Good Return

    Hi,
    Like to ask assistance regarding Module Purchase Order, Good Receipt PO,  Good Return under Purchasing A/P.
    I have a hard time to linking the tables above:
    PO Module have table : OPOR and OPOR1
    GRPO have table : OPDN and PDN1
    Good Return have table : ORPD and RPD1
    Its very mind bubling linking this 6 tables can anyone please can assist regarding the situation, a query that shows that they are connected to each other.
    Thank very much!
    Clint

    Clint,
    Like Suda said, this query assumes your have normal business practise.
    One more thing to mention, the lower part of union all needs some other change.  Here is the complete query:
    SELECT     DISTINCT 'GRPO' AS TYPE, T1.DOCNUM "GRPO/RET#", T3.DOCNUM PO#,T1.CARDCODE, T1.CARDNAME , T1.DOCDATE, T0.ITEMCODE, T0.QUANTITY, T0.PRICE, T0.LINETOTAL, T0.TOTALFRGN, T0.RATE
    FROM         PDN1 T0
    INNER JOIN OPDN T1 ON T1.DOCENTRY = T0.DOCENTRY
    LEFT JOIN POR1 T2 ON T0.BASEENTRY = T2.DOCENTRY
    INNER JOIN OPOR T3 ON T2.DOCENTRY = T3.DOCENTRY
    WHERE    T1.DOCNUM LIKE '[%0]'
    UNION ALL
    SELECT     DISTINCT 'RETR', T1.DOCNUM,T3.DOCNUM, T1.CARDCODE, T1.CARDNAME , T1.DOCDATE, T0.ITEMCODE, T0.QUANTITY, T0.PRICE, T0.LINETOTAL, T0.TOTALFRGN, T0.RATE
    FROM         PDN1 T0
    INNER JOIN OPDN T1 ON T1.DOCENTRY = T0.DOCENTRY
    LEFT JOIN RPD1 T2 ON T0.TRGETENTRY = T2.DOCENTRY
    INNER JOIN ORPD T3 ON T2.DOCENTRY = T3.DOCENTRY
    WHERE    T1.DOCNUM LIKE '[%0]'

  • AP Module - Purchase Order Level Detail

    Guys, is it safe to say that there is limited information for a Purchase Order available via Financials - AP modules?
    This is what i see:
    Purchase Order Date
    Purchase Order Item
    Purchase Order Number
    Where is some additional PO level detail? Is it available in the "Procurement and Spend" analytic module? Thanks for sharing your insight into this.
    Thanks for your help.
    Regards,

    Guys, any pointers on this is greatly appreciated.
    Regards,

  • Function module to get GR IR details for Purchase Order

    Hi
    Is there any function module available in SAP to get the list of Goods Received and Invoice Reciept for a purchase order.
    One way to create a custom fuction to fetch the details from MSEG and BKPF.
    Can somebody suggest a better solution.
    Thanks in advance.
    Ruhi Hira

    Hi,
    u can get the GR/IR Information from purchase Order history table EKBE..The field VGABE will contain value for GR/IR as '1' and '2'.
    Regards,
    Nagaraj

  • Is there any Function module available for GR IR for purchase order

    Hi
    Is there any function module available in SAP to get the list of Goods Received and Invoice Reciept for a purchase order.
    One way to create a custom fuction to fetch the details from MSEG and BKPF.
    Can somebody suggest a better solution.
    Thanks in advance.
    Ruhi Hira

    Which table in BAPI_PO_GETDETAILS exactly has these information ?
    PO_HEADER_TEXTS
    PO_ITEMS
    PO_ITEM_ACCOUNT_ASSIGNMENT
    PO_ITEM_SCHEDULES
    PO_ITEM_CONFIRMATIONS
    PO_ITEM_TEXTS
    PO_ITEM_HISTORY
    PO_ITEM_HISTORY_TOTALS
    PO_ITEM_LIMITS
    PO_ITEM_CONTRACT_LIMITS
    PO_ITEM_SERVICES
    PO_ITEM_SRV_ACCASS_VALUES
    RETURN
    PO_SERVICES_TEXTS
    EXTENSIONOUT
    NFMETALLITMS
    Regards
    Ruhi Hira

  • Function Module for open Purchase Order & Sales Order?

    Hi, commonly I read the data from tables and calculate the open quantity for sales order and purchase order, but I want to know, are there any standard function modules for getting the list of open "purchase order" and "sales order" respectively?
    Thanks and Regards.

    hi Ren,
    u can check all these bapi's related to salesorder
    BAPI_SALESORDER_CHANGE Sales order: Change Sales Order
    BAPI_SALESORDER_CONFIRMDELVRY Sales Order: Confirmation of Delivery; Document Flow Update
    BAPI_SALESORDER_CREATEFROMDAT1 Sales order: Create Sales Order
    BAPI_SALESORDER_CREATEFROMDAT2 Sales order: Create Sales Order
    BAPI_SALESORDER_CREATEFROMDATA Create Sales Order, No More Maintenance
    BAPI_SALESORDER_GETLIST Sales order: List of all Orders for Customer
    BAPI_SALESORDER_GETSTATUS Sales Order: Display Status
    BAPI_SALESORDER_SIMULATE Sales Order: Simulate Sales Order
    May be this FM can help you
    MB_ADD_PURCHASE_ORDER_QUANTITY (Reading and adding open purchase order quantities)
    Regards,
    Naveen

  • Function module to check whether Goods Receipt of a Purchase Order is done.

    Hi,
    Is there any function module to check whether Goods Receipt of a Purchase Order is already done?
    Taking into consideration reversals.
    Thanks.

    Hi,
    I think u can do this by using a simple select query.
    u have to go in EKBE table.
    put the PO no. in field EBELN + EBELP(line item)  and get the material docuement no.  in field BELNR + BUZEI(line item).
    Thanks
    Jitendra

  • Purchase Order Module  - Goods Receipt PO - Goods Return - AP Invoice

    Hi all expert,
    I have a senario is :-
    Open Purchase Order Module  -> Goods Receipt PO -> Goods Return -> AP Invoice
    Puchase Product A by "Purchase Order" with Qty 6,000 After "Good Receipt PO", found out 3,500 pcs is out of spec then "Goods Returns" 3,500 pcs. Then continue do "AP Invoice" with Qty 2,500 pcs.
    Question is 1 week later, the supplier replacement back 3,500 pcs, so how am i going to start to steps? since PO have been close.
    When i at  "Goods Receipt PO" wanna to copy from "Goods Return", it is show nothing.
    Your advise is highly appreciated.
    Thanks.
    Regards,
    Danny

    Hi Danny
    i think you have to create a new PO then GRN then PI...since you copied the PO to GRN it will show as closed as there is a target doc. linked to the PO. A PO can be changed only if there is no target doc linked to it .
    Hope this helps.
    Bongani

  • Function module to create Inbound delivery with reference to Purchase Order

    Hi experts,
    I want to create Inbound delivery with refernce to Purchase Order. But I want to create item wise. For example If one purchase order is there with 10 line items. 10, 20, 30, 40, 50......100.
    If I am showing report for Purchase Order with select option and if I select first 5 line items 10, 20, 30, 40, 50 then my program should be create one Inbound delivery for selected line items only. I have tried BDC for Tcode VL31N, but its not worked. Is there any Function module to create Inbound delivery with reference to Purchase Order for selected line items????????

    Hi,
    Try FM RV_DELIVERY_CREATE or GN_DELIVERY_CREATE.
    For creating a delivery wrt PO u 1st need to have a sales order i guess.
    Regards,
    Amit

  • Function Module / BAPI for Inbound Delivery from Purchase Order

    Hi,
    I need to create an inbound delivery from Purchase Order items and am looking out for some Function Module or BAPI for the same.
    The requirement is that i should be able to specify selected line items from PO for delivery.
    I tried the BDC method for VL31N , but the particular item selection is problem, since by default it shows all the items of PO and i want only selected items.
    Do reply.
    Thanks in advance.

    check these and their documentations.
    BAPI_INB_DELIVERY_CHANGE       Change inbound delivery
    BAPI_INB_DELIVERY_CONFIRM_DEC  BAPI for inbound delivery verification from a decentralized system
    BAPI_INB_DELIVERY_SAVEREPLICA  BAPI Function Module for Replication of Inbound Deliveries
    Regards
    Prabhu

  • I am trying to generate purchase order and i create a BAPI also which is active. But when i call the BAPI from SYbase Mobile Object RFC then after calling it gives an Error "Conflict when calling a Function Module (Field Length)".

    i am trying to generate purchase order and i create a BAPI also which is active.
    But when i call the BAPI from SYbase Mobile Object RFC then after calling it gives an Error "Conflict when calling a Function Module (Field Length)".

    Hi,
    Yeah i tried my Z_BAPI in R3 and then giving some ERROR.
    This is my CODE-
    FUNCTION ZBAPIPOTV2.
    *"*"Local Interface:
    *"  IMPORTING
    *"     VALUE(POHD) TYPE  ZPOHD OPTIONAL
    *"     VALUE(POITEM) TYPE  ZPOITEM OPTIONAL
    *"  TABLES
    *"      RETURN STRUCTURE  BAPIRET1 OPTIONAL
    data: ls_pohd type bapimepoheader,
             ls_pohdx TYPE bapimepoheaderx,
             lt_poit TYPE TABLE OF bapimepoitem,
             lt_poitx TYPE TABLE OF bapimepoitemx,
             ls_poit TYPE bapimepoitem,
             ls_poitx TYPE bapimepoitemx.
       MOVE-CORRESPONDING pohd to ls_pohd.
       MOVE-CORRESPONDING poitem to ls_poit.
       ls_pohdx-comp_code = 'x'.
       ls_pohdx-doc_type = 'x'.
       ls_pohdx-vendor = 'x'.
       ls_pohdx-purch_org = 'x'.
       ls_pohdx-pur_group = 'x'.
       ls_poit-po_item = '00010'.
       APPEND ls_poit to lt_poit.
       ls_poitx-po_item = '00010'.
       ls_poitx-po_itemx = 'x'.
       ls_poitx-material = 'x'.
       ls_poitx-plant = 'x'.
       ls_poitx-quantity = 'x'.
       APPEND ls_poitx to lt_poitx.
    CALL FUNCTION 'BAPI_PO_CREATE1'
       EXPORTING
         POHEADER                     = ls_pohd
        POHEADERX                    =  ls_pohdx
    *   POADDRVENDOR                 =
    *   TESTRUN                      =
    *   MEMORY_UNCOMPLETE            =
    *   MEMORY_COMPLETE              =
    *   POEXPIMPHEADER               =
    *   POEXPIMPHEADERX              =
    *   VERSIONS                     =
    *   NO_MESSAGING                 =
    *   NO_MESSAGE_REQ               =
    *   NO_AUTHORITY                 =
    *   NO_PRICE_FROM_PO             =
    *   PARK_COMPLETE                =
    *   PARK_UNCOMPLETE              =
    * IMPORTING
    *   EXPPURCHASEORDER             =
    *   EXPHEADER                    =
    *   EXPPOEXPIMPHEADER            =
      TABLES
        RETURN                       = return
        POITEM                       = lt_poit
        POITEMX                      = lt_poitx
    *   POADDRDELIVERY               =
    *   POSCHEDULE                   =
    *   POSCHEDULEX                  =
    *   POACCOUNT                    =
    *   POACCOUNTPROFITSEGMENT       =
    *   POACCOUNTX                   =
    *   POCONDHEADER                 =
    *   POCONDHEADERX                =
    *   POCOND                       =
    *   POCONDX                      =
    *   POLIMITS                     =
    *   POCONTRACTLIMITS             =
    *   POSERVICES                   =
    *   POSRVACCESSVALUES            =
    *   POSERVICESTEXT               =
    *   EXTENSIONIN                  =
    *   EXTENSIONOUT                 =
    *   POEXPIMPITEM                 =
    *   POEXPIMPITEMX                =
    *   POTEXTHEADER                 =
    *   POTEXTITEM                   =
    *   ALLVERSIONS                  =
    *   POPARTNER                    =
    *   POCOMPONENTS                 =
    *   POCOMPONENTSX                =
    *   POSHIPPING                   =
    *   POSHIPPINGX                  =
    *   POSHIPPINGEXP                =
    *   SERIALNUMBER                 =
    *   SERIALNUMBERX                =
    *   INVPLANHEADER                =
    *   INVPLANHEADERX               =
    *   INVPLANITEM                  =
    *   INVPLANITEMX                 =
    ENDFUNCTION.
    i am trying to generate purchase order and i create a BAPI also which is active. But when i call the BAPI from SYbase Mobile Object RFC then after calling it gives an Error "Conflict when calling a Function Module (Field Length)". 

  • BADI or function module for updating open purchase orders

    Hi all,
    Does anyone know of a BADI or function module which can be used for updating item prices in open purchase orders?
    All helpful answers are highly appreciated!
    Regards,
    MV

    1 ) execute this program  in se38 .enter the input as transaction code  for which you want list of User
    Exit.
    REPORT z_find_userexit NO STANDARD PAGE HEADING.
    *&  Enter the transaction code that you want to search through in order
    *&  to find which Standard SAP® User Exits exists.
    *& Tables
    TABLES : tstc,     "SAP® Transaction Codes
             tadir,    "Directory of Repository Objects
             modsapt,  "SAP® Enhancements - Short Texts
             modact,   "Modifications
             trdir,    "System table TRDIR
             tfdir,    "Function Module
             enlfdir,  "Additional Attributes for Function Modules
             tstct.    "Transaction Code Texts
    *& Variables
    DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
    DATA : field1(30).
    DATA : v_devclass LIKE tadir-devclass.
    *& Selection Screen Parameters
    SELECTION-SCREEN BEGIN OF BLOCK a01 WITH FRAME TITLE text-001.
    SELECTION-SCREEN SKIP.
    PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN END OF BLOCK a01.
    *& Start of main program
    START-OF-SELECTION.
    Validate Transaction Code
      SELECT SINGLE * FROM tstc
        WHERE tcode EQ p_tcode.
    Find Repository Objects for transaction code
      IF sy-subrc EQ 0.
        SELECT SINGLE * FROM tadir
           WHERE pgmid    = 'R3TR'
             AND object   = 'PROG'
             AND obj_name = tstc-pgmna.
        MOVE : tadir-devclass TO v_devclass.
        IF sy-subrc NE 0.
          SELECT SINGLE * FROM trdir
             WHERE name = tstc-pgmna.
          IF trdir-subc EQ 'F'.
            SELECT SINGLE * FROM tfdir
              WHERE pname = tstc-pgmna.
            SELECT SINGLE * FROM enlfdir
              WHERE funcname = tfdir-funcname.
            SELECT SINGLE * FROM tadir
              WHERE pgmid    = 'R3TR'
                AND object   = 'FUGR'
                AND obj_name = enlfdir-area.
            MOVE : tadir-devclass TO v_devclass.
          ENDIF.
        ENDIF.
    Find SAP® Modifications
        SELECT * FROM tadir
          INTO TABLE jtab
          WHERE pgmid    = 'R3TR'
            AND object   = 'SMOD'
            AND devclass = v_devclass.
        SELECT SINGLE * FROM tstct
          WHERE sprsl EQ sy-langu
            AND tcode EQ p_tcode.
        FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.
        WRITE:/(19) 'Transaction Code - ',
        20(20) p_tcode,
        45(50) tstct-ttext.
        SKIP.
        IF NOT jtab[] IS INITIAL.
          WRITE:/(95) sy-uline.
          FORMAT COLOR COL_HEADING INTENSIFIED ON.
          WRITE:/1 sy-vline,
          2 'Exit Name',
          21 sy-vline ,
          22 'Description',
          95 sy-vline.
          WRITE:/(95) sy-uline.
          LOOP AT jtab.
            SELECT SINGLE * FROM modsapt
            WHERE sprsl = sy-langu AND
            name = jtab-obj_name.
            FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
            WRITE:/1 sy-vline,
            2 jtab-obj_name HOTSPOT ON,
            21 sy-vline ,
            22 modsapt-modtext,
            95 sy-vline.
          ENDLOOP.
          WRITE:/(95) sy-uline.
          DESCRIBE TABLE jtab.
          SKIP.
          FORMAT COLOR COL_TOTAL INTENSIFIED ON.
          WRITE:/ 'No of Exits:' , sy-tfill.
        ELSE.
          FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
          WRITE:/(95) 'No User Exit exists'.
        ENDIF.
      ELSE.
        FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
        WRITE:/(95) 'Transaction Code Does Not Exist'.
      ENDIF.
    Take the user to SMOD for the Exit that was selected.
    AT LINE-SELECTION.
      GET CURSOR FIELD field1.
      CHECK field1(4) EQ 'JTAB'.
      SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).
      CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
    2) Second way is to go to transaction code SE93 .enter transaction code click on display.
    There you will see the package. Copy that package name.
    Go to transaction code se84
    Enhancements -customer exits-enhancementsu2014enter package there and execute.
    You will get list of exits.
    3) BAPI for PO change is
    BAPI_PO_CHANGE

  • BAPI or Function Module for getting Pending Purchase Orders Information

    Dear Sir,
    We have input information comprising of  :
    List of Item Codes
    Plant
    WBS Element
    For this input data set , We want to know the list of Pending Purchase Orders information . To get the desired information , we are looking for the suitable  BAPI / Function Module which can provide the desired information .
    I understand that there is ME2L tcode availavle which can give the desired information .
    But as we need to use the information in one of our Z program , so we need the  BAPI / Function Module  .
    Kindly help us to know the suitable  BAPI / Function Module  available for getting the desired information .
    With Thanks and Rgds
    Sonia Agarwal

    Hi
    Check if this is helpfull:
    BAPI_PO_GETDETAIL
    BAPI_PO_GETDETAIL1
    regards,

  • Problem to print Purchase Order created in RFC module function

    Hi
    I created a specific RFC function module for using in a BSP application. In this specific function module, I have created a Purchase Order (PO) thanks to the standard module "BAPI_PO_CREATE". The PO is well created but I don't manage to print immediately this PO but the spool is queued. Whereas using SE37, the PO is well created and printed.
    But the customer wants to find the PO immediately in the printer
    Do you know a simply way to solve my problem? I have the feeling that something is lost using RFC module function and the standard module function.
    Thank a lot of for your reply
    Regards
    Francois

    The issue may be because, its used in BSP application.
    may be you need to implement whats explained in this weblog.
    /people/thomas.jung3/blog/2005/08/23/bsp-server-side-printing-for-tableviews
    Regards
    Raja

Maybe you are looking for

  • World's easiest Acrobat 9 Pro question: how do I save the file & bookmark order of source?

    I am creating a PDF from a bunch of HTML files. Each time I do so I have to order the files in the Create PDF dialog. When I make minor changes to the file order I have to recreate the file list again. I would like a way to save the order of the inpu

  • Convert mp4 to mp3

    Hi, I was told that I posted on the wrong message board... so maybe I can get some help hear.. my husband has a ipod and I just go a mp3 player, But all the music in iTunes are mp4, so I can't convert the music over to my mp3. With out burning a cd f

  • Where do files reside?

    I have never used iCloud for anything other than my iPhone. If I was to start using iCloud for Pages  and Numbers (new version 3.0?). Would my file only reside in iCloud or would it be on my Mac (OS 10.9.2) too? If so if I edited the file on my Mac I

  • Password protect xdp file

    Hi experts, I need to distribute an xdp file generated with lc8. Is there any way to password protect this file (not the related dynamic xml pdf)? Best regards, Dariush.

  • ColorChecker Passport-Color Profiles

    Hi there, I am photographing paintings with Elinchrom flashes with an even light and I use the ColorChecker Passport from X-Rite to keep a reference in order to match the colors. Till now, I've been using the software DNG profile manager, provided wi