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,
ShashidharHi,
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.
BhargaviYou 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?
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 ahmedHi 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 -
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 PMHi,
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 PMselect 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 ShuklaHi
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
-
How to create tab element in a jsp
hi all is there anyone who has experience with using tab in jsp? thanks.
-
How do I upgrade to OS 10.6?
I have OS 10.5.6. I want to upgrade to 10.6. How do I do it? Thanks, w
-
Hello, I went vacation and in the middle of this, in the hotel pc, i put my pictures on the ipad in order to empty my camera card. When I came back I`ve put the Ipad to sync with my home pc and the ipad deleted all the pictures. Is there a way to rec
-
IPad one frequent unexpected quits
I have an iPad first version 3g with 64 GB and the newest iOS. Yet Safari on it frequently unexpectedly quits even when Safari is the only thing running, and the cache and cookies are clean, and the iPad reset. It happens less often on Apple Suppor
-
Lost software disk - have key code
I understand that since I have my license keycode, there is a way to copy to a disk software on my computer that I'm trying to move to my new computer. Can anyone help identify for me how to do this? I can't find my original software disk for Dreamwe