Conversions using SHDB (BDC) vs. HR_INFOTYPE_OPERATION

We've been asked to use SHDB (BDC) for our conversions unless we can use LSMW.  However, some of our conversions are so simple it seems like a waste to use BDC.  Wherever infotypes are used in conversions why can't I just do the following (pseudocode)
OPEN input-file INTO itab.
LOOP AT itab
     ENQUEUE( )
    HR_INFOTYPE_OPERATION(...., oper = 'INS'|'MOD'.)
     DEQUEUE( )
ENDLOOP
Any reasons why I wouldn't do this?  I've written one conversion like this already and at least in unit testing it works fine.

If it's working for you then that's good enough for me
Seriously, though, BDC is apparently doing a screen-scraping technique which has got to be process-intensive.  Besides, my understanding is the that the IT screens themselves use these function modules so if it's good enough for that then it should be fine for conversions.

Similar Messages

  • Enable to record the File Open Dialog window using SHDB

    Hi All,
    I am using CV02N for BDC recording.
    In this transaction I hae a File Browser button, which opens File Open Dialog window (using CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG method). Using this I can given the file name and Open.
    But, this File Open Dialog windows is not getting recorded using SHDB.
    Please help me how to solve this problem.
    Thanks in Advance,
    Shashidhar

    Hi,
    I doubt you can record the file open functionality in BDC.
    if there is any field which requries file path and directory better make it uniform and hard code it.
    Regds,

  • Which to use in BDC programming ??

    Back again...
    Based on your suggestions on BDC, I successfully tried BDC on a couple of insert as well update transactions with my data in a CSV file and it worked well !! thanks to all..
    I have trouble understanding the different ways each one of you is adoptiong to present the solution...
    I followed this and found very simple..
    1. Recorded the transaction using SHDB. Created a program transferred from recording.
    2. Added my file upload logic and saved data in an internal table.
    3. Iterated the internal table in a loop and used itab-fieldname in palce of the constant data . so i had all perform statements inside my loop..Hoep u get it..
    This I find very simple.. find attached my code on BDC for MM02.
    But some of you have advised me to use BDC_INSERT, CALL_TRANSACTION etc. Whats the difference ? Are there scenarios when my simplest procedure wont work and I need to follow ur advise ??
    Please explain ..
    thanks
    report ZBDC2
           no standard page heading line-size 255.
    include bdcrecx1.
    Tables: RMMG1, MAKT.
    types: begin of tdata,
             rec(150) type c,
           end of tdata,
           begin of tmtgp,
             matnr LIKE RMMG1-MATNR,
             maktx LIKE MAKT-MAKTX,
           end of tmtgp.
    data: idata type table of tdata with header line.
    data: imtgp type table of tmtgp with header line.
    selection-screen begin of block b1 with frame title text-001.
    parameters: p_file type localfile default 'C:\mm02_data_csv.csv'.
    selection-screen end of block b1.at selection-screen on value-request
    for p_file.
    call function 'KD_GET_FILENAME_ON_F4'
            exporting            static    = 'X'
            changing            file_name = p_file.
    start-of-selection.
    perform upload_data.
    loop at imtgp.
    perform open_group.
    perform bdc_dynpro      using 'SAPLMGMM' '0060'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'RMMG1-MATNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'RMMG1-MATNR'
                                  imtgp-matnr.
    perform bdc_dynpro      using 'SAPLMGMM' '0070'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MSICHTAUSW-DYTXT(02)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=ENTR'.
    perform bdc_field       using 'MSICHTAUSW-KZSEL(01)'
                                  'X'.
    perform bdc_field       using 'MSICHTAUSW-KZSEL(02)'
                                  'X'.
    perform bdc_dynpro      using 'SAPLMGMM' '4004'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MAKT-MAKTX'.
    perform bdc_field       using 'MAKT-MAKTX'
                                  imtgp-maktx.
    perform bdc_field       using 'MARA-MEINS'
                                  'EA'.
    perform bdc_dynpro      using 'SAPLMGMM' '4004'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'MAKT-MAKTX'.
    perform bdc_field       using 'MAKT-MAKTX'
                                  imtgp-maktx.
    perform bdc_dynpro      using 'SAPLSPO1' '0300'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=YES'.
    perform bdc_transaction using 'MM02'.
    perform close_group.
    endloop.
    form upload_data.
    data: filename type string.
    clear idata.
    refresh idata.
    filename = p_file.
    call function 'GUI_UPLOAD'
        exporting            filename        = filename
        filetype        = 'ASC'
        tables            data_tab        = idata
        exceptions            file_open_error = 1
        file_read_error = 2
        no_authority    = 6
        others          = 17.
        check sy-subrc = 0.
        loop at idata.
        clear imtgp.
        split idata at ',' into imtgp-matnr imtgp-maktx.
        append imtgp.
        endloop.
    endform.

    Hi Rad,
    basically what you done is use the 'call transaction' approach already. This is fine for low volumes or once off procedures. If you are processing high volumes or need a regular procedure BDC is the way to go. BDC allows you to create batch(es) of transactions which you can release, re-run, monitor, check logg of etc at your convenience. Transaction SM35 controls BDC sessions but you create can them in your program.
    The program you have already written only needs to be changed slightly to start creating BDC sessions.
    You need to use BDC_OPEN_GROUP to initiate a session (can be used only once at start of program or can be used n times say every 1000 transactions).
    BDC_INSERT should be used instead of 'call transaction, this will add the current transactions screens and data to the current BDC session'.
    Finally, BDC_CLOSE_GROUP can be used to close off a session (again this can be used once at end of program or at the end of each set of transactions).
    Often, programmers code parameters so that they can decide which mode to run their program in and can easily toggle between 'call transaction' and BDC when testing.
    Regards
    Neil

  • Payment_method_lookup_code in supplier conversion using api

    The conversion is from 11i to R12. I am working on supplier conversion using API. The AP_VENDOR_PUB_PKG create_vendor or create_vendor_site does not have Payment_method_lookup_code to update into apps. How can i update the Payment_method_lookup_code for a supplier?
    Any help will be appreciated.
    Bhargavi

    You could use AP_VENDOR_PUB_PKG.create_vendor_Site and pass the vendor_site_rec fields along with the following addition.
    p_vendor_site_rec.ext_payee_rec.default_pmt_method := 'EFT';
    This would create the Default Payment Method in IBY_EXTERNAL_PAYEES_ALL.
    Hope this helps.
    -Geetha K

  • How can I convert .pdf file to .doc using the free adobe reader app? when I try to convert the .pdf file it asks me to sign in. when I click on "sign in", I am taken to a service subscription page. So, no free conversions using free adobe reader app?

    how can I convert .pdf file to .doc using the free adobe reader app? when I try to convert the .pdf file it asks me to sign in. when I click on "sign in", I am taken to a service subscription page. So, no free conversions using free adobe reader app?

    As has been mentioned Adobe Reader cannot export PDF page content. Nor can it create PDF or manipulate PDF page content.
    What you can do is use one of Adobe's online subscription services. Two provide for PDF  to Word export.
    There's ExportPDF and PDF Pack.
    Be well...

  • Problem in 2 level Unit conversion using ref IO

    Hi All,
    I am doing UoM conversion using conversion types - dynamic conversion using reference info object.
    Now in the UoM DSO, which stores the conversion factors, I have relation between 2 units say PC (pieces, dimensionless) and KG (kilogram, dimension = MASS) for some material.
    For e.g I have  1 Pc of material A = 2 KG.
    So if the existing qty key figure has unit PC in IC and the reporting unit given by me is KG, successful conversion takes place using the UoM DSO.
    E.g. 4 PC of Mat A is displayed as 8 KGs.
    Also if existing unit in IC is KG, and RU is 'g' conversion is taking place usion tghe system CUoM table T006.
    E.g. 2 KG is displayed as 2000 g.
    I selected the third option when creating Conv Type, i.e. first look in ref IO then T006. Hence the above results.
    But if the existing qty key figure has unit PC and if the reporting unit given is 'g' or some other MASS unit, conversion is not taking place. Ideally it should first look into the DSO table to convert 'PC' to 'KG', then look the T006 table to convert 'KG' to 'g', but this is not happening.
    E.g. 4 PC of mat A isn't shown as 8000 g. It is still shoeing as 4 PC.

    Hi Shai,
    It sometimes show without all the screens, I guess u should refresh.
    Anyway,
    Try running the query thorugh RSRT with Debug, with a breakpoint on currency/quantity conversion. I would suggest to restrict the test query to show only one record that should be converted so the debugging would be easier.
    Anyway, Have fun.

  • Initial inventory upload using LSMW,BDC

    Dear Friends,
    I am trying to upload data for Initial inventory capturing of valuation type for t.code MB1C using LSMW,BDC BECAUSE of valuation type it is not capturing
    please guide me.I am using SAP Ecc 5 version.
    Thanks in advance.
    Rafeeq ahmed

    Hi Sameer,
    Have a look at these threads, they might help you
    Chart of Accounts Upload
    Problem: LSMW with transaction FS00 create account (BI is not generated)
    Thanks
    Janani
    award points if helpful

  • Shdb,bdc and alv's

    Can anybody help me with this query. since i am a beginner in abap.
    this is my requirement
    i have to do a recording using shdb(i have done that for xk01 t-code. i have given entries only for the mandatory fields).
    then based on that i have to write a code to export data from a flat file on my desktop(presentation server).
    i have done till this.
    the next requirement is that i have to use alv block display to show 2 blocks.in 1st block i have  to display the vendor name and all the records which were populated and success message if records are successfully populated from flat file into the system.
    in second block i have to print all the records which were not populated in the database and some error message.
    can u help me with full code.

    Hy,
    In your call transaction you can put the adition "messages into messtab".  With this you will have all the messages of the transaction in a internal table.  If there is a message of type E, A or X in that internal table, you can mark the transaction as ERROR.
    You can also search for the message "vendor crated".  With this you just have to put it in a ALV.  There are many examples of alvs in SDN.
    hope it helps

  • Business Partner Conversion using LSMW IDOC

    Hi Experts,
           I need a serious suggestion.
    I am planning to do my Business Partner master data conversions using LSMW method IDOC CRMXIF_PARTNER_SAVE_M03. Is this is right choice or best practice?
    During Coversions how do we do error handling or reporting. For example i have uploaded 10k BP's. if there 1k errors how do you report. I think it is tough to check each and every idoc status and message.
    Thanks guys.

    Hi Experts,
           I need a serious suggestion.
    I am planning to do my Business Partner master data conversions using LSMW method IDOC CRMXIF_PARTNER_SAVE_M03. Is this is right choice or best practice?
    During Coversions how do we do error handling or reporting. For example i have uploaded 10k BP's. if there 1k errors how do you report. I think it is tough to check each and every idoc status and message.
    Thanks guys.

  • How to upload data for me01 using LSMW BDC METHOD

    *hi export please tell me the complete procedure for uploading data in me01 using LSMW BDC METHOD*
    Moderator message: please search for available information/documentation.
    Edited by: Thomas Zloch on May 8, 2011 10:06 PM

    Hi,
    To be honest I don't understand your question. When You execute LSMW and create project, then all steps are shown in a very clear way with good description. With which one you have problems?
    Best regards
    Marcin Cholewczuk

  • Non-Rac to Rac conversion using rconfig

    hi all,
    how to check whether Non-Rac to Rac conversion using rconfig has been completed sucessfully?
    thanks.
    Edited by: varun4dba on Nov 10, 2010 1:02 PM

    select parallel
    from V$instance;
    -- run it on your any RAC instance. if YES then you have converted to RAC
    http://oracleinstance.blogspot.com/2009/12/convert-single-instance-to-rac-instance.html
    Check the above link also.
    Regards
    Asif Kabir

  • I want to display some fields using the BDC and i want to know thruogh whic

    I want to display some fields using the BDC and i want to know thruogh which transaction these fields are displayed.Could you please help me out.

    You can use JFreeChart which is a free and good tool to generate graphs in Java. It has samples and other guides which you can use to get started...

  • Excel to PDF conversion using OSB

    We have a requirement to convert excel files to be converted to PDFs.
    Wondering how to do this in OSB.
    I can read the file from the source using the file transport.What must be next?
    Any ideas please.

    Thanks for the links.
    I have the stand alone Java routine which does this conversion using APIs.
    The challenge is what do I pass to the Java callout as input - The API methods accepts a file location as input or the java primitive byte[].
    I pass $body/ctx:binary-content but seems the API method errors out.

  • Give some pp module tcodes used in bdc and their purposes

    give some pp module tcodes used in bdc and their purposes
    thank you,
    Regards,
    Jagrut Bharatkumar Shukla

    Hi
    Important PP tables are..
    Master Data:
    CRHD Work center header
    MAPL Allocation of task lists to materials
    PLAS Task list - selection of operations/activities
    PLFH Task list - production resources/tools
    PLFL Task list - sequences
    PLKO Task list - header
    PLKZ Task list: main header
    PLPH Phases / suboperations
    PLPO Task list operation / activity
    PLPR Log collector for tasklists
    PLMZ Allocation of BOM - items to operations
    Production Orders:
    STKO BOM - header
    STPO BOM - item
    STAS BOMs - Item Selection
    STPN BOMs - follow-up control
    STPU BOM - sub-item
    STZU Permanent BOM data
    PLMZ Allocation of BOM - items to operations
    MAST Material to BOM link
    KDST Sales order to BOM link
    AUFK Production order headers
    AFIH Maintenance order header
    AUFM Goods movement for prod. order
    AFKO Order header data PP orders
    AFPO Order item
    RESB Order componenten
    AFRU Order completion confirmations
    Planned orders and Independent requirements:
    PLAF Planned orders
    RESB Material reservations
    PBIM Independent requirements for material
    PBED Independent requirement data
    PBHI Independent requirement history
    PBIV Independent requirement index
    RKPF header
    Capacity Planning:
    KBKO Header record for capacity requirements
    KBED Capacity requirements records
    KBEZ Add. data for table KBED (for indiv. capacities/splits)
    Important Transcation:
    CA – usually reserved for routing type transactions. This includes reference rate routings and rate routings.
    CA31, CA32, CA33: Reference Rate Routing Creationg
    CA21, CA22, CA23: Rate Routing Creationg
    CA63, CA64 – Change documents for Routings
    CA80, CA85, CA90, CA95, CA98: Where Used, Replacing Routings, etc.
    CR – Usually reserved for work center type transactions.
    CR01, CR02, CR03: Work Center Creation
    CR05, CR07, etc. – Work Centers analysis, etc.
    CS – Usually reserved for BOM type transactions.
    CS01, CS02, CS03 – Bill of Materials
    CS07, CS08, CS09: Extend Bill of materials
    CS11, CS12, CS13: Explode Bill of materials
    F – Usually reserved for financial type transactions
    A – Usually reserved for financial type transactions.
    LM – Label Management type transactions
    MB – Usually reserved for inventory type transactions
    MB51 – Material document history
    MB1A – Goods Issue for Scrap
    MB1B – Goods transfer
    MD – Usually reserved for MRP type transactions
    MD01, MD02, MD03, MDBT - MRP Run
    MD04, MD07: Stock/Requirements List
    MD05, MD06: MRP List (static)
    MD11, MD12, MD13, MD16: Planned Order creation, etc
    MD20, MD21: Planning file
    ME – Usually reserved for Purchasing Type Transactions
    ME01, ME03, ME05 – Source Lists
    ME11, ME12, ME13 – Info Records
    ME21N, ME22N, ME23N: Purchase Order creation
    ME31L, ME32L, ME33L: Scheduling Agreement Creation
    ME51, ME57 – Purchase Requisitions
    ME38, ME38: Schedule Line display
    ME37: Stock Transport Scheduling Agreements
    ME27: Stock Transport Orders
    MM – Usually reserved for material master type transactions:
    MM01, MM02, MM03: Material Master Creation
    MM04 – Change Documents
    MM06: Mark for Deletion
    MM60: Materials List
    V – Usually reserved for Sales and Distribution type transactions
    VA – Sales Orders
    VL – Deliveries
    VT – Shipments
    VD – Customer Master for Sales
    VK – Condition Records
    http://www.sap-img.com/sap-pp.htm
    http://www.erpgenie.com/sapfunc/pp.htm
    Reward if usefull

  • Could Customer container be used in BDC input?

    Could Customer container be used in BDC input?
    Since I am not able to connect sap right now, so put in here.  Every advice will be appreicated.

    Thanks Rav for your quick reply.
    We are working on one customized-infotype in SAP-HR, and container is created in this infotype for maitain text document. Then later, key-user  will use BDC to maitain this infotype in PA30.
    So Could you please adivce further which or which kind BAPI could be used here?
    we use below code to create container in screen.
        CREATE OBJECT container
            EXPORTING
                container_name = 'CUSTOM'
            EXCEPTIONS
                OTHERS = 1.
        CASE sy-subrc.
          WHEN 0.
        ENDCASE.
        CALL METHOD container->set_visible
          EXPORTING
            visible = 'X'.

Maybe you are looking for