Purchase order Migration

HI Experts,
I am doing Purchase Orders migration from One SAp to another SAP. For this I thought i can use the goto - > messages -> output option and send An idoc from Current SAP to new SAP. It has generated the IDOC type as ORDERS and moved successfully to the new system as well. in the inbound system the This IDOC is trying to create a Sales order than a PO. I Couldnt fine any applicable processcodes for the Inbound IDOC partner profile to create a PO. Any suggestions is much welcomed.
Regards
Elphi

Hi,
Partner Profile should of type "LS" (Logical System). It appears that you are using a Partner Profile of type "VN" (Vendor).
It will create a Purchase Order if you use "LS".
Regards,
Srilatha.

Similar Messages

  • Open Purchase order migration between systems

    Hi Folks,
    I have to migrate open purchase orders from 2 legacy systems into 1 new upgraded system. I do not want to change the PO number and therefore i have decided to set an external number range for all the Open POs.
    Now my problem is in legacy system, there are open POs with different document types, in legacy system. Is it ok if I convert all open POs as a new custom document type in new system. let me know what problems could i face if i do this.
    if not any other solution is most welcome
    thanks n advance

    Kartikey,
    ???? You are asking the wrong people.  We couldn't possibly know for sure. It sounds to me like you are already designing the conversion process when you are not yet sure about the design of the solution.
    During the sessions when you are interviewing the client, you must ask multiple questions about his business.  For one, you need to discover the existing business requirements that caused the client to use multiple document types in legacy in the first place.  This information only can come from your client.
    Once you discover his reasons (or lack of reasons), you then have to determine in your 'To-be' solution if you still will need to satisfy that same business requirement.  If you do, then you have to determine if the solution that you design will require multiple document types in SAP, or if you will instead utilize a different method to satisfy the requirement.
    Good Luck & Best Regards,
    DB49

  • Migration of Purchase Order History using RM06EEI1

    Hi
    I have migrated Open Purchase Orders from one SAP system to another SAP system.
    I have loaded the Purchase Order details using business object BUS2012  and the PO History using program RM06EEI1.
    Only open quantities were loaded to facilitate subsequent Goods Receipts and Invoice Receipts.
    The records were loaded without errors.
    The Material Ledger was inactive during the migration and activated after the migration.
    Everything looks ok from a migration perspective.  The correct quantities are created on the PO, the GR shows on the History tab, and the correct GL Accounts were posted to i.e the GRIR Clearing Account and the IR Account.
    However, I am unable to perform Invoice Verification (MIRO) and Reversal of Goods Receipts (MIGO) on these records.
    The error message is "No (suitable) item found for purchase order".
    Has anyone encountered this scenario and can shed some light on this issue?
    Regards
    Magan

    Hi,
    I think the best solution would be,
    Identify the open POs in legacy system
    Migrate the data for these POs for table EKKO, EKPO, EKET and long texts.
    Once migrated run tcode OMQ5. this will generate the correct file so that you can upload correct PO history.
    Susequently, upload this file through the tcode OMQ2.
    Check that you provide correct conversion accounts..
    you will get correct Open POs and PO history of open POs from legacy to new system.

  • Data Migration for Open Purchase Order

    Hi, All,
    Is there anyone know how to Count the volume for Open Purchase Order. What's the normal strategy for the Data Migration and Cut-over stage?
    My client want to know how many Open Purchase Order in the legacy system and then determine manual or automatic data migration. If manual, how to do? If automatic, how to do? Because all materials and vendors, plants are different number. How to track? How to find out to match between new and old?
    Thank you very much

    JC,
    Sounds a bit early to be making decisions about the realization phase.  It doesn't sound like you have finished the Blueprinting phase yet, much less the testing phase.
    Anyhow, in my experience I typically use LSMW (Legacy system migration workbench) to load MM master data (material masters), Inventory (WIP, RM, FG, etc) Purchasing Master data (Vendors, Purchase Info Records, Source Lists, Quota Arrangements), and Purchasing transactional documents (POs, PurReqs, Scheduling Agreements, etc).  Depending on the complexity and volume of data, it  may be necessary to write custom programs to load the data.  You will find this out during your requirements gathering.
    It is uncommon but possible to load all of these data manually.  I have never run across a client that wants to pay a consultant's hourly rate to sit at a terminal to peck away loading master data, so if the client intends to have his own users enter the data manually, the project manager should make provision that there will be qualified TRAINED client employees available for this data entry.  I did help with a portion of a conversion once manually; of Sales Credits, but there were only about 30 SD docs to load.   I did this the evening before go-live day, while I was waiting for some of my LSMW projects to complete in the background.
    A good opportunity to 'practice' your data loads is right after you have completed your development and customization, and you have gotten the approval from the client to proceed from the pilot build to the full test environment.  Once you have moved your workbench and customization into the client's test environment, but before integration testing, you can mass load all, or a substantial portion of your conversion data into the qual system.  You can treat it like a dry run for go-live, and fine tune your processes, as well as your LSMW projects.
    Yes, it is good practice to generate comparisons between legacy and SAP even if the client doesn't ask for it. For Purchase orders on the SAP side, you could use any of the standard SAP Purchasing reports, such as ME2W, ME2M, ME2C, ME2L, ME2N.  If these reports do not meet the requirements of the client, you could write a query to display the loaded data, or have an ABAPer write a custom report.
    You didn't ask, but you should also do comparisons of ALL loaded data - including master data.
    It sounds like you are implying that the client wants YOU to extract the legacy data.  For an SAP consultant, this is not very realistic (unless the legacy system is another SAP system).  Most of us do not understand the workings of the myriad legacy systems.  The client is usually expected to produce one or more legacy system technical experts for you to liase with.  You normally negotiate with the technical expert about every facet of of the data migration.  In addition, you will liase with business users, who will help you and the implementation team to logically validate that the final solution (turnkey SAP production system, fully loaded with data) will meet the client's business needs.
    Finally, you mentioned how do you track the mapping of master data between legacy and SAP.  There are many ways to do this.  I normally try to get the legacy person do the conversion on his end, eg, when he gives you the load file, you would like to have already translated the master data and inserted the SAP relevant values into the file.  If this is not possible, I usually use MS Access databases to maintain a master map, and I perform the mapping on a PC.  If your data package is small, you can probably get by using MS Excel or similar.
    Good Luck,
    DB49

  • Migrate Open items - Sales orders/ purchase orders and unbilled deliveries

    Hello All
    Can you please tell me the best practice to migrate open sales orders, purchase orders and deliveries due for billing at Cutover to the new system?
    Also how can the historical data be migrated? What all comes under historical data?
    Many Thanks
    CM

    The way the sales order data is migrated is largely dependent on the number of orders you are intending to migrate. 'Best practice' would suggest you do the following:
    1) Do not migrate any completed orders (they should be kept as 'read only' in the legacy system)
    2) Get the business to close as many orders as possible before the cutover 
    3) Stop entry of any new orders during the cutover the period - hold them back and enter them directly into SAP.
    Once you have a manageable numebr of orders to migrate you really have two options:
    Upload the basic order into SAP (we have usually done this from a spreadsheet using ALE or some similar tool). The basic data is confirmed to order type, order number, order date, customer number, material code and quantity. Any data in addition to this is then added manually to the system by the users e.g. pricing info (this is really important as pricing data is really difficult to map). To do this you will need to have sequenced this correctly e.g. ensuring that the data and config for both the materials and customers are all already in the system before you load the orders.
    The second option would be to load them all completely manually - which is why I said at the beginning that really, the best approach is determined by the quantity of orders you need to migrate.
    I am sure other people will have used other methods but these two are the ones we usually use.
    (edit) P.S. you must remember that 'open' sales orders are any orders that are not yet billed so even if an order is delivered in your legacy system if it has not been invoiced you MAY need to migrate it. But as I metioned at the beginning - it would really be better to complete that order (i.e. bill it) before you close the legacy system so that it does not need to be migrated.
    ========
    For deliveries - again, there is no simple fix for this. Because the migration of a delivery demands the migration of an open sales order, the best approach is probably to load the sales order basic data, get the users to complete the sales orders (as described above) and then run the delivery due lists or manually and individually deliver each sales order item.  
    You cannot migrate ONLY the deliveries, you need to migrate the preceeding order(s) as well. But, again, if you take the approach of closing as many as possible in the legacy system, it will be much easier than migrating them.
    Edited by: charlieclown on Jun 25, 2009 4:19 PM

  • Migrating Purchase order with intransit receipt and 3way matched invoice

    Hi All
    Does oracle support to convert the following case from an old SOB to new SOB or from a legacy system to Oracle ebs:
    Purchase Order
    PO receipt only made till Receive AND Deliver is still not done.
    Invoice is already made and matched with PO and Receipt.
    Does oracle interfaces support the above
    Please share your inputs
    Rgds
    Emm

    Dear Sandeep
    Thanks for your inputs and apologies for a late reply
    I am asking whether oracle has such an interface to migrate the folllowing kind of case from one SOB to another SOB
    PO made
    Standard receipt made but only the receive part, not the deliver part
    Invoice is made and matched with the PO and receipt but is yet unpaid
    The above case remains till the cutover hence we need to migrate the PO, receipt and the invoice..right?
    How to do that
    migrate the above all or cancel the invoice, cancel the receipt and cancel the PO than recreate the PO, Receipt and Invoice in the new SOB
    Please give your valuable inputs
    Regards
    emm

  • MIGRATING SAPSRIPT TO SMART FORM Purchase Order

    Hi all
       my requirement is that here existing customised script of purchase order . i need to migrate customised script to smart form.(i need to develop what ever the output of customised script that i have to show in smartform)
      i went to smart form Trasaction and migrated, while activating this form it is showing so many errors
    please help me on this ..
    Regards
    Nagendra

    Hi
    In this case I think you should copy the std report to drive the print: the layout has to be different, but the data to be printed are the same. So It's better to use the std program because the get all data you need: if you want to use the smartform here you should consider only the part to select the data, because the part to print them will be included in the sf; so these std program can be very helpful for you.
    I believe the problem can be the layout, if it's very different from std one you should create a new one without to worry the old/std layout, but these can depend on only you.
    Max

  • Migrating PO using Import Standard Purchase Orders program

    Hi All,
    When am trying to migrating auto created PO's, First i imported Requisition sucessfully and i took the newly generated DISTRIBUTION_ID for the
    imported REQ and i populated the value in REQ_DISTRIBUTION_ID column (PO_DISTRIBUTIONS_INTERFACE table) and then submited program.
    PO is imported sucessfully but the DISTRIBUTION_ID is not populated in the PO_DISTRIBUTIONS_ALL table. If any knows please help on this issuse ASAP.
    Details:
    ORACLE R12
    Version: 12.1.3
    Programs used:
    Requisition Import program
    Import Standard Purchase Orders program
    Regards,
    Siva.

    Hi Siva,
    THis forum is intended for migrating from non-Oracle to Oracle databases. Your questions looks like an EBS issue so try one of the forums that are listed under E-Business -
    Category: E-Business Suite
    https://forums.oracle.com/forums/category.jspa?categoryID=3
    or this fourm where I found a reference to the same table -
    Forum: SCM - General Discussion
    General SCM Discussion
    Regards,
    Mike

  • Urgent :Doubt on open Purchase orders

    Hi friends,
    i will be more help full if anybody can help me on below issue how to find open PO and partially open PO.
    Only “open” purchase orders will be extracted for conversion into Destination Server. An “open” purchase order is defined as any unshipped, non-cancelled with “open quantities”. In regards to, partially “open” purchase orders, we will only convert “open” units (i.e. Original ordered qty was 300; 70 have shipped, 230 remain open…Target Server sales order will have an original order qty of 230).
    also where to find that Sub Contracting orders and Sample orders.
    • Orders not considered for migration because they will have either shipped in full or deleted prior to data migration as a part of data clean-up: ALL subcontracting orders; sample orders
    please help me on the above two issues.
    thanks and Regards,
    Gokul.

    Hi
    First take the ALL Po's from EKKO and EKPO tables and check for the different GR's and GI's qty's from MKPF and MSEG tables and you have to compare the PO qty with the total GR/GI qty's and to find the OPEN po's
    see the sample report
    *& Report  ZMM_PO_REPORT
    REPORT  ZMM_PO_REPORT message-Id yb
           NO STANDARD PAGE HEADING
           LINE-COUNT 60(1)
           LINE-SIZE 230.
           D A T A B A S E  T A B L E S   D E C L A R A T I O N
    TABLES: lfa1,           " Vendor Master
            t161,           " PO Doc Types
            t024,           " Purchase Groups
            ekko.           " PO Header
                   T Y P E S  D E C L A R A T I O N S
    Purchase Orders Main Structure
    TYPES: BEGIN OF s_po,
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            bstyp TYPE bstyp,           " PO Category
            bukrs TYPE bukrs,           " Company Code
            bsart TYPE bbsrt,           " PO Type
            lifnr TYPE lifnr,           " Vendor No
            ekgrp TYPE bkgrp,           " Purchase Group
            waers TYPE waers,           " Currency
            bedat TYPE etbdt,           " PO Date
            txz01 TYPE txz01,           " Material Text
            werks TYPE ewerk,           " Plant
            lgort TYPE lgort_d,         " Storage Location
            matkl TYPE matkl,           " Material Group
            menge TYPE bamng,           " PR Quantity
            meins TYPE bamei,           " UOM
            bprme TYPE bbprm,           " Price Unit
            netpr TYPE netpr,           " Net price
            peinh TYPE peinh,           " Price Unit UOM
            pstyp TYPE pstyp,           " Item Category
            knttp TYPE knttp,           " Account Assignment Category
           END OF s_po.
    Purchase Orders History Structure
    TYPES: BEGIN OF s_account,
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            gjahr TYPE mjahr,           " Fiscal Year
            belnr TYPE mblnr,           " PO Invoice No
            menge TYPE menge_d,         " PR Quantity
            wrbtr TYPE wrbtr,           " Price in Local Currency
            dmbtr TYPE dmbtr,           " Price in Foreign Currency
            waers TYPE waers,           " Currency
            shkzg TYPE shkzg,           " Dr/Cr Indicator
           END OF s_account.
    Purchase Orders History Structure(Item Sum)
    TYPES: BEGIN OF s_inv_sum,
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            menge TYPE menge_d,         " PR Quantity
            wrbtr TYPE wrbtr,           " Price in Foreign Currency
            waers TYPE waers,           " Currency
           END OF s_inv_sum.
    Purchase Orders Main Structure
    TYPES: BEGIN OF s_rep,
            lifnr TYPE lifnr,           " Vendor No
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            bstyp TYPE bstyp,           " PO Category
            bsart TYPE bbsrt,           " PO Type
            ekgrp TYPE bkgrp,           " Purchase Group
            waers TYPE waers,           " Currency
            bedat TYPE etbdt,           " PO Date
            txz01 TYPE txz01,           " Material Text
            werks TYPE ewerk,           " Plant
            lgort TYPE lgort_d,         " Storage Location
            matkl TYPE matkl,           " Material Group
            menge TYPE bamng,           " PR Quantity
            meins TYPE bamei,           " UOM
            bprme TYPE bbprm,           " Price Unit
            netpr TYPE netpr,           " Net price
            peinh TYPE peinh,           " Price Unit UOM
            pstyp TYPE pstyp,           " Item Category
            knttp TYPE knttp,           " Account Assignment Category
            name1 TYPE name1,           " Plant
            orewr TYPE netpr,           " To be Invoiced Price
            curr  TYPE waers,           " Inv Doc Currency
           END OF s_rep.
               D A T A  D E C L A R A T I O N S
    DATA: gv_title1 TYPE sylisel,            " Report title
          gv_dial.                           " Color flag
                C O N S T A N T S  D E C L A R A T I O N S
    CONSTANTS: c_x                VALUE 'X',   " Flag X
               c_h                VALUE 'H',   " Debit
               c_vgabe TYPE vgabe VALUE '2'.   " Transaction Type
         I N T E R N A L  T A B L E S  D E C L A R A T I O N S
    DATA: i_po    TYPE STANDARD TABLE OF s_po WITH HEADER LINE,
                                 " Purchase Order
          i_inv   TYPE STANDARD TABLE OF s_inv_sum WITH HEADER LINE,
                                         " PO Invoice Values
          i_rep   TYPE STANDARD TABLE OF s_rep WITH HEADER LINE,
                                     " PO Invoice Values
          i_ekbe  TYPE STANDARD TABLE OF s_account WITH HEADER LINE.
                               " PO Invoice Values
                     S E L E C T I O N  S C R E E N                      *
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS: s_lifnr FOR lfa1-lifnr MATCHCODE OBJECT kred,
                    s_ebeln FOR ekko-ebeln MATCHCODE OBJECT mekk,
                    s_bsart FOR t161-bsart,
                    s_ekgrp FOR t024-ekgrp,
                    s_bedat FOR ekko-bedat.
    SELECTION-SCREEN END OF BLOCK b1.
                      I N I T I A L I Z A T I O N                        *
    INITIALIZATION.
                  A T  S E L E C T I O N - S C R E E N                   *
    AT SELECTION-SCREEN.
    Validate the screen fields
      PERFORM validate_screen.
                   S T A R T - O F - S E L E C T I O N                   *
    START-OF-SELECTION.
    Fetch main data
      PERFORM fetch_data.
                   T O P - O F - P A G E                                 *
    TOP-OF-PAGE.
    Header of the List
      PERFORM header.
                   E N D - O F - P A G E                                 *
    Footer
    END-OF-PAGE.
      ULINE.
                   E N D - O F - S E L E C T I O N                       *
    END-OF-SELECTION.
    Display the Report Output data
      PERFORM display_data.
    At Line-Selection
    AT LINE-SELECTION.
    When double clicked on EBELN display the details of Purchase Doc
      PERFORM line_sel.
    *&      Form  validate_screen
    Validation of Selection Screen fields
    FORM validate_screen .
    Validation of Vendor Number
      CLEAR lfa1-lifnr.
      IF NOT s_lifnr[] IS INITIAL.
        SELECT lifnr UP TO 1 ROWS
            INTO lfa1-lifnr
            FROM lfa1
            WHERE lifnr IN s_lifnr.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Vendor'(002).
        ENDIF.
      ENDIF.
    Validation of PO Number
      CLEAR ekko-ebeln.
      IF NOT s_ebeln[] IS INITIAL.
        SELECT ebeln UP TO 1 ROWS
            INTO ekko-ebeln
            FROM ekko
            WHERE ebeln IN s_ebeln.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Document Number'(003).
        ENDIF.
      ENDIF.
    Validation of PO Document Type
      CLEAR t161-bsart.
      IF NOT s_bsart[] IS INITIAL.
        SELECT bsart UP TO 1 ROWS
            INTO t161-bsart
            FROM t161
            WHERE bsart IN s_bsart.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Purchase Document Type'(004).
        ENDIF.
      ENDIF.
    Validation of Purchasing Group
      CLEAR t024-ekgrp.
      IF NOT s_ekgrp[] IS INITIAL.
        SELECT ekgrp UP TO 1 ROWS
            INTO t024-ekgrp
            FROM t024
            WHERE ekgrp IN s_ekgrp.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Purchasing Group'(005).
        ENDIF.
      ENDIF.
    ENDFORM.                    " validate_screen
    *&      Form  fetch_data
    Fetching the PO related data from Database Tables
    FORM fetch_data .
      CLEAR i_po.
      REFRESH i_po.
      SELECT a~ebeln            " PO No.
             b~ebelp            " PO Item
             a~bstyp            " PO Category
             a~bukrs            " Company Code
             a~bsart            " PO Type
             a~lifnr            " Vendor No
             a~ekgrp            " Purchase Group
             a~waers            " Currency
             a~bedat            " PO Date
             b~txz01            " Material Text
             b~werks            " Plant
             b~lgort            " Storage Location
             b~matkl            " Material Group
             b~menge            " PR Quantity
             b~meins            " UOM
             b~bprme            " Price Unit
             b~netpr            " Net price
             b~peinh            " Price Unit UOM
             b~pstyp            " Item Category
             b~knttp            " Account Assignment Category
        INTO TABLE i_po
        FROM ekko AS a JOIN ekpo AS b
        ON a~ebeln = b~ebeln
        WHERE a~ebeln IN s_ebeln AND
              a~lifnr IN s_lifnr AND
              a~ekgrp IN s_ekgrp AND
              a~bsart IN s_bsart AND
              a~bedat IN s_bedat.
      SORT i_po BY ebeln ebelp.
      break-point.
      IF NOT i_po[] IS INITIAL.
    Fetch the PO History/Invoice Details from EKBE Table
        CLEAR i_ekbe.
        REFRESH i_ekbe.
        SELECT ebeln           " PO No.
               ebelp           " PO Item
               gjahr           " Fiscal Year
               belnr           " PO Invoice No
               menge           " PR Quantity
               wrbtr           " Price in Local Currency
               dmbtr           " Price in Foreign Currency
               waers           " Currency
               shkzg           " Dr/Cr Indicator
         INTO TABLE i_ekbe
         FROM ekbe
         FOR ALL ENTRIES IN i_po
         WHERE ebeln = i_po-ebeln AND
               ebelp = i_po-ebelp AND
               vgabe = c_vgabe.
      break-point.
        IF sy-subrc = 0.
          SORT i_ekbe BY ebeln ebelp.
          LOOP AT i_ekbe.
            IF i_ekbe-shkzg = c_h.
              i_ekbe-wrbtr = i_ekbe-wrbtr * -1.
            ENDIF.
            MODIFY i_ekbe.
          ENDLOOP.
      break-point.
    Sum up the Item wise Invoice totals
          LOOP AT i_ekbe.
            AT END OF ebelp.
              READ TABLE i_ekbe INDEX sy-tabix.
              SUM.
              MOVE-CORRESPONDING i_ekbe TO i_inv.
              APPEND i_inv.
            ENDAT.
            CLEAR i_inv.
          ENDLOOP.
          SORT i_inv BY ebeln ebelp.
            break-point.
        ENDIF.
      ENDIF.
    Move the Vendor Name and Invoice Values to I_rep Internal Table
      LOOP AT i_po.
        MOVE-CORRESPONDING i_po TO i_rep.
        CLEAR i_inv.
        READ TABLE i_inv WITH KEY ebeln = i_po-ebeln
                                  ebelp = i_po-ebelp.
        IF sy-subrc = 0.
          i_rep-orewr = ( i_po-menge - i_inv-menge ) * i_po-netpr.
          i_rep-curr  = i_inv-waers.
        ELSE.
          i_rep-orewr = i_po-menge * i_po-netpr.
          i_rep-curr  = i_po-waers.
        ENDIF.
      break-point.
    Get the Vendor Name
        CLEAR lfa1-name1.
        SELECT SINGLE name1 FROM lfa1 INTO lfa1-name1
          WHERE lifnr = i_po-lifnr.
        IF sy-subrc = 0.
          i_rep-name1  = lfa1-name1.
        ENDIF.
        APPEND i_rep.
        CLEAR  i_rep.
          break-point.
      ENDLOOP.
      SORT i_rep BY lifnr ebeln ebelp.
      DELETE i_rep WHERE orewr LE 0.
      break-point.
    ENDFORM.                    " fetch_data
    *&      Form  display_data
    Display the Report Output data
    FORM display_data .
      DATA: lv_flag,               " New Flag
            lv_rec TYPE i.         " No of Records
      CLEAR lv_rec.
      IF i_rep[] IS INITIAL.
        MESSAGE e000 WITH 'No Data found'(022).
      ELSE.
        LOOP AT i_rep.
    Toggle Color
          PERFORM toggle_color.
          IF lv_flag <> space.
            NEW-LINE.
          ENDIF.
    At New Purchase Document
          AT NEW ebeln.
            WRITE:/1 sy-vline, 2(10) i_rep-ebeln INTENSIFIED OFF.
            lv_flag = c_x.
            lv_rec = lv_rec + 1.
          ENDAT.
          WRITE: 1 sy-vline,
                12 sy-vline,13(4)   i_rep-bsart,
                17 sy-vline,18(10)  i_rep-lifnr,
                28 sy-vline,29(35)  i_rep-name1,
                64 sy-vline,65(4)   i_rep-ekgrp,
                69 sy-vline,70(10)  i_rep-bedat,
                80 sy-vline,81(5)   i_rep-ebelp,
                86 sy-vline,87(40)  i_rep-txz01,
               127 sy-vline,128(9)  i_rep-matkl,
               137 sy-vline,138(1)  i_rep-pstyp,
               139 sy-vline,140(1)  i_rep-knttp,
               141 sy-vline,142(4)  i_rep-werks,
               146 sy-vline,147(4)  i_rep-lgort,
               151 sy-vline,152(13) i_rep-menge UNIT i_rep-meins,
               165 sy-vline,166(3)  i_rep-meins,
               169 sy-vline,170(15) i_rep-netpr CURRENCY i_rep-waers,
               185 sy-vline,186(4)  i_rep-waers,
               190 sy-vline,191(5)  i_rep-peinh,
               196 sy-vline,197(4)  i_rep-bprme,
               201 sy-vline,202(15) i_rep-orewr CURRENCY i_rep-curr,
               217 sy-vline,218(4)  i_rep-curr,
               222 sy-vline,223(7)  i_rep-bstyp centered,
               230 sy-vline.
          NEW-LINE.
          hide: i_rep-ebeln.
        ENDLOOP.
        ULINE.
        FORMAT COLOR OFF.
        WRITE : /2 'Total Number of Purchasing Documents:'(025) COLOR 3,
                    lv_rec COLOR 3.
      ENDIF.
    ENDFORM.                    " display_data
    *&      Form  header
    Write the Report Header
    FORM header .
      FORMAT RESET.
    header
      WRITE:/1(230) 'LIST OF PURCHASE DOCUMENTS PER VENDOR'(006) CENTERED.
      SKIP.
      FORMAT COLOR COL_HEADING.
      ULINE.
      WRITE:/1 sy-vline,2(10)   'Pur.Doc.No'(006) CENTERED,
            12 sy-vline,13(4)   'Type'(007),
            17 sy-vline,18(10)  'Vendor'(008) CENTERED,
            28 sy-vline,29(35)  'Name'(009) CENTERED,
            64 sy-vline,65(4)   'PGrp'(010) CENTERED,
            69 sy-vline,70(10)  'Doc.Date'(012) CENTERED,
            80 sy-vline,81(5)   'Item'(011),
            86 sy-vline,87(40)  'Material Short Text'(024) CENTERED,
           127 sy-vline,128(9)  'Mat.Group'(013),
           137 sy-vline,138(1)  'I',
           139 sy-vline,140(1)  'A',
           141 sy-vline,142(4)  'Plnt'(014),
           146 sy-vline,147(4)  'SLoc'(015),
           151 sy-vline,152(13) 'Quantity'(016) CENTERED,
           165 sy-vline,166(3)  'UoM'(017),
           169 sy-vline,170(15) 'Net Value'(018) CENTERED,
           185 sy-vline,186(4)  'Curr'(019),
           190 sy-vline,191(5)  'Per'(020),
           196 sy-vline,197(4)  'Unit'(021),
           201 sy-vline,202(15) 'To be Invoiced'(023) CENTERED,
           217 sy-vline,218(4)  'Curr'(019),
           222 sy-vline,223(7)  'Doc.Cat'(026),
           230 sy-vline.
      ULINE.
    ENDFORM.                    " header
    *&      Form  toggle_color
    This routine alters the color of the records in the list
    FORM toggle_color.
      IF gv_dial = space.
        FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
        gv_dial = c_x.
      ELSE.
        FORMAT COLOR 1 INTENSIFIED OFF.
        CLEAR gv_dial.
      ENDIF.
    ENDFORM.                    " toggle_color
    *&      Form  LINE_SEL
    *When double clicked on EBELN field display the details of Purchase Doc
    FORM line_sel.
      CASE sy-lsind.
        WHEN '1'.
          DATA: lv_field(20),
                lv_value(10),
                lv_bstyp like i_rep-bstyp.
          clear: lv_bstyp,lv_value, lv_field.
          GET CURSOR FIELD lv_field VALUE lv_value.
          IF lv_field = 'I_REP-EBELN'.
            IF NOT lv_value IS INITIAL.
              READ LINE sy-index FIELD VALUE i_rep-bstyp
                                       INTO  lv_bstyp.
             READ CURRENT LINE FIELD VALUE i_rep-bstyp INTO lv_bstyp.
              if lv_bstyp = 'F'.
                SET PARAMETER ID 'BES' FIELD lv_value.
                CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
              elseif ( lv_bstyp = 'K' or lv_bstyp = 'L' ).
                SET PARAMETER ID 'VRT' FIELD lv_value.
                CALL TRANSACTION 'ME33' AND SKIP FIRST SCREEN.
              elseif lv_bstyp = 'A'.
                SET PARAMETER ID 'ANF' FIELD lv_value.
                CALL TRANSACTION 'ME43' AND SKIP FIRST SCREEN.
              endif.
            ENDIF.
          ENDIF.
      ENDCASE.
    ENDFORM.                    " line_sel
    <b>Reward points for useful Answers</b>
    Regards
    Anji

  • Scenario strategy: conversion script purchase orders

    Hi,
    Can anybody email me an example of an conversion script regarding Purchase orders from an other system into SAP? I'am specially interested how to deal with open purchase orders in the old system, when they could not be closed in the old system.
    Thank you in advance,
    Eric van Zundert : email [email protected]
    Additional info regarding strategies about PR's and source lists are very welcome.

    Hi,
    If you want to upload data from old legacy system to SAP you have to do data migration like with LSMW etc.You can upload the system the open purchase orders in legacy system to SAP.Contact your data migration team for that.Even u can retain the old PO ref.
    Thanks
    suresh

  • How to update EKPO-MAHNZ ( reminder counter) in purchase order created?

    There is the requiremtn to update the field EKPO-MAHNZ in a just created purchase order (PO).
    It is for the purpose of data migration. So a PO is created from file data using BAPI_PO_CREATE1 but this BAPI seem not to provide a way to update the mentioned field in the EKPO table (position data of PO).
    Is there any other way?! BAPI!? to achive this!?
    Any help or suggestion is welcomed!
    CN

    >
    Vamshi_1468 wrote:
    > Hi dude,
    >
    > If the field is not available in BAPI_PO_CHANGE...then go for BDC...run a recording and update the field...only way out...
    >
    > Regards,
    >
    > Vamshi
    Thanks for your reply!
    Batch input would be an option but the field is not ready for input in ME22n.
    Any way around it?

  • Sales order migration from legacy system

    Hi,
    What are the strategies/precautions/steps to be followed for migrating sales orders or quotations from legacy system to SAP?
    Thanks

    Hi,
    Sample Code for Sales Order (VA01):
    Input File Layout:
    Sales Document Type, Sales Organisation, Distribution Channel, Division, Sold To Party, Ship To Party, Customer purchase order number, Customer purchase order date, Payment Terms(custom field), incoterms1, incoterms2, Order reason (reason for the business transaction), Material, Cumulative order quantity in sales units,.
    DATA: bdcdata LIKE bdcdata OCCURS 0 WITH HEADER LINE.
    DATA : w_auart(4) TYPE c,
    w_vkorg(4) TYPE c,
    w_vtweg(2) TYPE c,
    w_spart(2) TYPE c,
    w_kunnr(10) TYPE c,
    w_kunrg(10) TYPE c,
    w_bstkd(35) TYPE c,
    w_bstdk(10) TYPE c,
    w_kwmeng(18) TYPE c,
    w_zterm(4) TYPE c,
    w_inco1(3) TYPE c,
    w_inco2(28) TYPE c,
    w_augru(3) TYPE c.
    DATA : var1 TYPE string,
    var2 TYPE c VALUE '(',
    var3 TYPE c VALUE ')',
    num(2) TYPE c,
    flag(1) TYPE c.
    DATA : BEGIN OF it_order, " Internal table Structure
    auart(4) TYPE c, " Sales Order Type
    vkorg(4) TYPE c, " Sales Organization
    vtweg(2) TYPE c, " Distribution Channel
    spart(2) TYPE c, " Division
    kunnr(10) TYPE c, " Sold-to-Party
    kunrg(10) TYPE c, " Ship-to-Party
    bstkd(35) TYPE c, " Purchase Order No
    bstdk(10) TYPE c, " Purchase Order Date
    zterm(4) TYPE c, " Payment Terms
    inco1(3) TYPE c, " Inco Terms1
    inco2(20) TYPE c, " Inco Terms2
    augru(3) TYPE c, " Order Reason
    mabnr(18) TYPE c, " Material No
    kwmeng(18) TYPE c, " Quantity
    END OF it_order,
    itab LIKE STANDARD TABLE OF it_order WITH HEADER LINE.
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETER filename LIKE rlgrap-filename.
    PARAMETER session LIKE apqi-groupid.
    SELECTION-SCREEN END OF BLOCK b1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR filename.
    Get the file path
    CALL FUNCTION 'WS_FILENAME_GET'
    EXPORTING
    def_filename = filename
    def_path = ' '
    mask = ',.,..'
    mode = 'O'
    title = 'Select File'
    IMPORTING
    filename = filename
    EXCEPTIONS
    selection_cancel = 1.
    CHECK sy-subrc = 0.
    START-OF-SELECTION.
    CALL FUNCTION 'WS_UPLOAD'
    EXPORTING
    codepage = ' '
    filename = filename
    filetype = 'ASC'
    headlen = ' '
    line_exit = ' '
    trunclen = ' '
    user_form = ' '
    user_prog = ' '
    dat_d_format = ' '
    IMPORTING
    FILELENGTH =
    TABLES
    data_tab = itab
    EXCEPTIONS
    conversion_error = 1
    file_open_error = 2
    file_read_error = 3
    invalid_type = 4
    no_batch = 5
    unknown_error = 6
    invalid_table_width = 7
    gui_refuse_filetransfer = 8
    customer_error = 9
    OTHERS = 10.
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    PERFORM open_group.
    LOOP AT itab.
    CLEAR : w_auart,w_vkorg,w_vtweg,w_spart,w_kunnr,w_kunrg,
    w_bstkd,w_bstdk,w_zterm,w_inco1,w_inco2,w_augru.
    w_auart = itab-auart.
    w_vkorg = itab-vkorg.
    w_vtweg = itab-vtweg.
    w_spart = itab-spart.
    w_kunnr = itab-kunnr.
    w_kunrg = itab-kunrg.
    w_bstkd = itab-bstkd.
    w_bstdk = itab-bstdk.
    w_zterm = itab-zterm.
    w_inco1 = itab-inco1.
    w_inco2 = itab-inco2.
    w_augru = itab-augru.
    ON CHANGE OF itab-kunnr OR itab-kunrg OR itab-bstkd .
    flag = 0.
    num = 1.
    PERFORM bdc_dynpro USING 'SAPMV45A' '0101'.
    PERFORM bdc_field USING 'BDC_CURSOR'
    'VBAK-AUART'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    PERFORM bdc_field USING 'VBAK-AUART' " Order Type
    itab-auart.
    PERFORM bdc_field USING 'VBAK-VKORG' " Sales Organization
    itab-vkorg.
    PERFORM bdc_field USING 'VBAK-VTWEG' " Distribution Channel
    itab-vtweg.
    PERFORM bdc_field USING 'VBAK-SPART' " Division
    itab-spart.
    PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    PERFORM bdc_field USING 'VBKD-BSTKD' " PO Number
    itab-bstkd.
    PERFORM bdc_field USING 'VBKD-BSTDK' " PO Date
    itab-bstdk.
    PERFORM bdc_field USING 'KUAGV-KUNNR' " Sold to Party
    itab-kunnr.
    PERFORM bdc_field USING 'KUWEV-KUNNR' " Ship to Party
    itab-kunrg.
    PERFORM bdc_field USING 'VBKD-ZTERM' " Payment Terms
    itab-zterm.
    PERFORM bdc_field USING 'VBKD-INCO1' " Inco Terms1
    itab-inco1.
    PERFORM bdc_field USING 'VBKD-INCO2' " Inco Terms2
    itab-inco2.
    PERFORM bdc_field USING 'VBAK-AUGRU' " Order Reason
    itab-augru.
    ENDON.
    IF flag = 0.
    LOOP AT itab WHERE bstkd = itab-bstkd AND kunnr = itab-kunnr .
    var1 = 'RV45A-MABNR'.
    CONCATENATE var1 var2 num var3 INTO var1.
    PERFORM bdc_field USING var1
    itab-mabnr.
    var1 = 'RV45A-KWMENG'.
    CONCATENATE var1 var2 num var3 INTO var1.
    PERFORM bdc_field USING var1
    itab-kwmeng.
    PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '/00'.
    num = 2.
    ENDLOOP.
    ELSE.
    CONTINUE.
    ENDIF.
    flag = 1.
    PERFORM bdc_dynpro USING 'SAPMV45A' '4001'.
    PERFORM bdc_field USING 'BDC_OKCODE'
    '=SICH'.
    PERFORM bdc_transaction USING 'VA01'.
    ENDLOOP.
    PERFORM close_group.
    WRITE : / 'Session',session, 'was Created'.
    FORM open_group.
    CALL FUNCTION 'BDC_OPEN_GROUP'
    EXPORTING
    client = sy-mandt
    group = session
    user = sy-uname
    keep = 'X'.
    ENDFORM.
    FORM close_group.
    CALL FUNCTION 'BDC_CLOSE_GROUP'.
    ENDFORM.
    FORM bdc_transaction USING tcode.
    CALL FUNCTION 'BDC_INSERT'
    EXPORTING
    tcode = tcode
    TABLES
    dynprotab = bdcdata.
    ENDFORM.
    FORM bdc_dynpro USING program dynpro.
    CLEAR bdcdata.
    bdcdata-program = program.
    bdcdata-dynpro = dynpro.
    bdcdata-dynbegin = 'X'.
    APPEND bdcdata.
    ENDFORM.
    FORM bdc_field USING fnam fval.
    IF fval <> ' '.
    CLEAR bdcdata.
    bdcdata-fnam = fnam.
    bdcdata-fval = fval.
    APPEND bdcdata.
    ENDIF.
    ENDFORM.
    Regards,
    Naveen.

  • Confirmed quantity during sales order migration

    Do any of you experts see any issue with the following approach to set the schedule line confirmed quantity?
    We need to migrate open order from Legacy to SAP system. While migrating we need to keep the schedule lines (dates and confirmed quantities) to be same as that in legacy (Note that legacy has exactly one schedule line per order).
    For Migration we are using the program RVINVB10.
    On order to bring in the confirmed quantity we plan to apply the following logic
    1. Add following logic to user exit - MOVE_FIELDS_TO_VBEP (in MV45AFZZ)
    If the order is a migrated order then
       check if VBAP-POSEX <> ''    (This an unused field so we will use this to pass the confirmed quantity)
          then VBEP-BMENG = VBAP-POSEX
               VBAP-POSEX = VBAP-MTVFP (Save Valye of Checking Group)
               VBAP-MTVFP = ''.        (clear the checking group to override the ATP check)
    2. The following logic is added in User Exit SAVE_DOC_PREPARE (in MV45AFZZ)
    If the order is migrated order then restore the value in VBAP-MTVFP from VBAP-POSEX and clear VBAP-POSEX.
    This way we are able to get the confirmed quantity in schedule lines.
    Any suggestions welcome,
    Regards,

    Here is an alternative functional approach
    Depending on what is being used by your ATP config to determine supply you can create following pseudo supplies only for Sales order migration purpose
    Planned orders
    Purchase requisations
    reservations
    you can load any max quantity such as 9999999 at an earliest Material availability date (MAD) determined from sales orders for Material Plant combination.
    This will help ATP to confirm the same CDD if you pass CDD as required delivery date (assumption it uses backward scheduling)
    Assumption: you are moving only completely open sales order & itu2019s not delinquent (CDD in past, schedule lines not confirmed completely)
    You have to remove this pseudo supply after sales order migration is complete.

  • Error on Purchase Order - Document number 45* not within defined interval

    Hi All,
    PLEASE HELP ME or guide me in the right direction.
    I am faced with a somewhat unique case in our enviroment. Some background first.
    Back in 2000 when we upgraded from Walker to SAP, a number of Purchase orders had to be migrated, one of them is the order i am struggling with. Back then very little validations were built in, resulting in a Local Order being incorrectly created as a International Order but against a local currency.
    Now this ordered is still being reflected as open in our system. When attempting to change the order by activating the 'Delivery Complete indicator", we get an error "use only foreign currency" This is due to the fact that validations against Document Type and Currency was created in 2003 and are in full operation now. It is hard coded thus i can not remove this easily.
    Now when attempting to get around this by changing the Document Type to a Local Purchase order or trying to delete a line, we get the error below.
    "Document number 45* not within defined interval"
    Number ranges do come to mind based on the error description, however, Local Orders have a number range of 45, International Orders have a number range of 47. In this case, the order is created as a International Order BUT the number range is 45*, again, due to a lack of validations/incorrect config back in 2000
    Do any of you know a possible solution to such a problem.
    Regards,
    Jody Ponnusami.

    The validation of document type and currency is not standard, and if this validation cannot be deactivated, then you will have to resort to making changes in debug mode. Put a breakpoint at the relevant check and force it to accept the current combination.
    The second option is to update EKPO table manually using SE16N. Set the delivery completed indicator to X.

  • Unable to view Purchase order in Receiving Transactions

    I am unable to view Purchase Orders in OPM (Recieving transactions- when i query up my Receipt transactions)
    I want to be able to View the PO by going to Tools -> View Purchase Orders

    Hi,
    I believe you are missing a sub-menu which facilitates to open the purchase order on the the responsibility menu you are working with. This is the cause for the issue I guess.
    Please refer the below note:
    Receiving Transactions Summary - View Accounting - Function Not Available To This Responsibility (Doc ID 865884.1)
    Note: In the above note, when trying tools > View accounting in the same form the user get the same issue. Similarly as solution proposed by the note, adding the missing sub menu to the menu will allow you to view the purchase order.
    Please add the purchase order view sub menu on the responsibility menu you are working with and check if the issue is solved.
    Please try this in your test Server and migrate the solution to the PROD.
    Hope this helps!
    Best Regards

Maybe you are looking for

  • Deleting Purchase order

    Hello Folks Could we delete a purchase order once we GR is done for PO. For example........If we do GR for a PO and later realized that something wrong with the PO and when we reverse the PO doc with reversal Mvt Type.....so it nullifies the affect.

  • How to setup for multiple users accessing same share?

    Hi! Recently picked up Mac Mini Server and have some configuration questions related to sharing files & information over the internet. Whenever possible, prefer to use the built-in features & tools, not 3rd party tools. My setup & needs are this: - H

  • My HP 2509b is fine for 5 sec when powered on but then goes blank

    Every time i power up my computer my monitor comes on briefly the goes away. If i power cycle the monitor it will again come alive but only for a few sec. I recently hooked up security cameras with HDMI connection but it seemed to work fine until tod

  • Adding another iPod - can I avoid upgrading to iTunes 6?

    My wife has a Mini and we are using iTunes 4.90.17 + iPod Updater 2006-06-26 + QT 6.52 on a XP Pro/SP2 machine with NIS 2005. The Mini is set for manual control and everything works fine right now. I just got a Nano and don't want to risk all the pro

  • Any solution to syncing Outlook 2011 all the way to iCloud.

    Is there any solution to syncing Outlook 2011 all the way to iCloud.  I have read tons of posts and have tried the different ideas in there but I haven't found a solution yet.  I can successfully get Outlook 2011 to sync with iCal.  That is no proble