Reg: Extended Bapi's
Hi ,
Anyone Please tell me 1) What is Extended BAPI.
2) How to Create the Extended BAPI.
3) What is the main purpose of it.
Thanks & Regards,
Lakshmi.
Hi,
Extension parameters
You can create extension parameters to enable customers to enhance the functionality of BAPIs without making modifications. For information about extension parameters see Customer Enhancement Concept for BAPIs.
see the link for detailed documentation:
http://help.sap.com/saphelp_nw04/helpdata/EN/3e/0e1089c24611d1ad09080009b0fb56/frameset.htm
Regards,
Renjith Michael.
Similar Messages
-
Extending bapi BAPI_RE_AO_CREATE
Can you please let me know how to extend BAPI 'BAPI_RE_AO_CREATE' to add values to Zfields of table VIBDAO
see the documentation of this BAPI
EXTENSION_IN by using this u can map and BADI also.
Regards
peram -
Extending BAPI for custom fields
Hi
i am working on extending BAPI_SALESORDER_CREATE_FROMDAT2.
i am appending a structure with custom fields of type dats in to the VBAK table and displaying them in the ADDITIONAL DATA TAB B area.
Now to extend the BAPI in the VBAKKOZ and BAPE_VBAK it is accepting structure with char type only as enhacement category is CHAR.
can some one suggest me how can i use 2 different structures one for VBAK table and other for BAPI table?i am skeptical as move-corresponding is used to move the fields from BAPI to table so data type mismatch would happen and would result in error.
how to overcome this problemHi,
You can do it with structure EXTENSIONIN. Check Note 143580 - Information on SD BAPIs and customer enhancement concept for futher info.
Regards,
Eduardo -
Hi Friends,
I tried to create accounting document from the babi 'BAPI_ACC_DOCUMENT_POST'. In a one line item i need to give withholding tax information. How to pass this value to this bapi. I passed the withholding tax info in the ACCOUNTTAX parameter. But that is not working.
thanks in advance.
regards
sritkanthgo through this code
data:gt_accountgl type table of bapiacgl09 with header line,
gt_accountpayable type table of bapiacap09 with header line,
gt_currencyamount type table of bapiaccr09 with header line,
gt_return type table of bapiret2 with header line.
data:wa_documentheader type bapiache09,
vcounter type i.
tables:bdcmsgcoll.
TABLE TO READ FILE DATA
data: begin of gt_uploadfile occurs 0,
input(200) type c,
end of gt_uploadfile,
TABLE FOR DOWNLOAD FILE
begin of gt_downloadfile occurs 0,
output type string,
end of gt_downloadfile,
TO HOLD HEADER DATA
begin of gt_header occurs 0,
counter(1),
identifier(2),
bukrs(5),
accnt(10),
bldat like sy-datum,
budat like sy-datum,
wrbtr(10),
end of gt_header,
begin of gt_item occurs 0,
counter(1),
identifier(2),
hkont(10),
wrbtr(10),
kostl(10),
end of gt_item,
INTERNAL TABLE TOI DISPLAY ERRORS.
begin of gt_summery occurs 0,
identifier(2),
bukrs(5),
accnt(10),
msgv1 like bdcmsgcoll-msgv2,
msgv2 like bdcmsgcoll-msgv2,
msgnr type string,
end of gt_summery,
v_upload type string,
v_download type string,
msg type string,
v_hkont type string,
v_kostl type string,
date1 type datum,
date2 type datum,
v_refkey like bapiache09-obj_key.
*CREATING SELECTION CREITERIA
parameters:p_gfile like ibipparms-path,
p_test as checkbox.
P_DFILE LIKE IBIPPARMS-PATH.
at selection-screen on value-request for p_gfile.
perform f4help_upload.
*AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_DFILE.
PERFORM F4HELP_DOWNLOAD.
start-of-selection.
v_upload = p_gfile.
V_DOWNLOAD = P_DFILE.
perform uploadfile.
perform sendinto_head_item.
perform buildbapi.
end-of-selection.
perform disp_report.
*& Form F4HELP
text
--> p1 text
<-- p2 text
form f4help_upload .
call function 'F4_FILENAME'
exporting
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
field_name = 'P_GFILE'
importing
file_name = p_gfile
endform. " F4HELP
*& Form F4HELP_DOWNLOAD
text
--> p1 text
<-- p2 text
form f4help_download .
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = 'P_DFILE'
IMPORTING
FILE_NAME = P_DFILE
endform. " F4HELP_DOWNLOAD
*& Form UPLOADFILE
text
--> p1 text
<-- p2 text
form uploadfile .
call function 'GUI_UPLOAD'
exporting
filename = v_upload
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = '|'
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
DAT_MODE = ' '
CODEPAGE = ' '
IGNORE_CERR = ABAP_TRUE
REPLACEMENT = '#'
CHECK_BOM = ' '
VIRUS_SCAN_PROFILE = VIRUS_SCAN_PROFILE
NO_AUTH_CHECK = ' '
IMPORTING
FILELENGTH = FILELENGTH
HEADER = HEADER
tables
data_tab = gt_uploadfile
exceptions
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
others = 17
if sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
endif.
endform. " UPLOADFILE
*& Form SENDINTO_HEAD_ITEM
text
--> p1 text
<-- p2 text
form sendinto_head_item .
loop at gt_uploadfile.
if gt_uploadfile-input+0(1) = '1'.
split gt_uploadfile-input at cl_abap_char_utilities=>horizontal_tab
into
gt_header-counter
gt_header-identifier
gt_header-bukrs
gt_header-accnt
gt_header-bldat
gt_header-budat
gt_header-wrbtr.
append gt_header.
clear gt_header.
else.
split gt_uploadfile-input at cl_abap_char_utilities=>horizontal_tab
into gt_item-counter
gt_item-identifier
gt_item-hkont
gt_item-wrbtr
gt_item-kostl.
append gt_item.
clear gt_item.
endif.
BREAK-POINT.
endloop.
endform. " SENDINTO_HEAD_ITEM
*& Form BUILDBAPI
text
--> p1 text
<-- p2 text
form buildbapi .
loop at gt_header.
GT_HEADER-BUDAT = sy-datum - 5.
GT_HEADER-BLDAT = sy-datum.
vcounter = 1.
gt_header-wrbtr = gt_header-wrbtr * -1.
*FILLING INPORTING PARAMETER STRUCTURE.
wa_documentheader-comp_code = gt_header-bukrs.
wa_documentheader-doc_date = gt_header-bldat.
wa_documentheader-pstng_date = gt_header-budat.
wa_documentheader-username = sy-uname.
wa_documentheader-bus_act = 'RFBU'.
wa_documentheader-doc_type = 'KR'.
gt_accountpayable-itemno_acc = vcounter.
gt_accountpayable-vendor_no = gt_header-accnt.
append gt_accountpayable.
clear gt_accountpayable.
gt_currencyamount-itemno_acc = vcounter.
gt_currencyamount-currency = 'INR'.
gt_currencyamount-amt_doccur = gt_header-wrbtr.
append gt_currencyamount.
clear gt_currencyamount.
loop at gt_item where identifier = gt_header-identifier.
vcounter = vcounter + 1. .
gt_accountgl-itemno_acc = vcounter.
call function 'CONVERSION_EXIT_ALPHA_INPUT'
exporting
input = gt_item-hkont
importing
output = gt_item-hkont.
gt_accountgl-gl_account = gt_item-hkont.
call function 'CONVERSION_EXIT_ALPHA_INPUT'
exporting
input = gt_item-kostl
importing
output = gt_item-kostl.
gt_accountgl-costcenter = gt_item-kostl.
gt_accountgl-pstng_date = gt_header-budat.
append gt_accountgl.
clear gt_accountgl.
gt_currencyamount-itemno_acc = vcounter.
gt_currencyamount-currency = 'INR'.
gt_currencyamount-amt_doccur = gt_item-wrbtr.
append gt_currencyamount.
clear gt_currencyamount.
endloop.
call function 'BAPI_ACC_DOCUMENT_POST'
exporting
documentheader = wa_documentheader
CUSTOMERCPD = CUSTOMERCPD
CONTRACTHEADER = CONTRACTHEADER
importing
OBJ_TYPE = OBJ_TYPE
obj_key = v_refkey
OBJ_SYS = OBJ_SYS
tables
accountgl = gt_accountgl
ACCOUNTRECEIVABLE = ACCOUNTRECEIVABLE
accountpayable = gt_accountpayable
ACCOUNTTAX = ACCOUNTTAX
currencyamount = gt_currencyamount
CRITERIA = CRITERIA
VALUEFIELD = VALUEFIELD
EXTENSION1 = EXTENSION1
return = gt_return
PAYMENTCARD = PAYMENTCARD
CONTRACTITEM = CONTRACTITEM
EXTENSION2 = EXTENSION2
REALESTATE = REALESTATE
break-point.
if p_test is initial.
call function 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = WAIT
IMPORTING
RETURN = RETURN
endif. .
endloop.
endform. " BUILDBAPI
*& Form disp_report
text
--> p1 text
<-- p2 text
form disp_report .
loop at gt_return.
write:/ gt_return-type,
gt_return-id,
gt_return-number,
gt_return-message,
gt_return-log_no,
gt_return-log_msg_no,
gt_return-message_v1,
gt_return-message_v2,
gt_return-message_v3,
gt_return-message_v4,
gt_return-parameter,
gt_return-row,
gt_return-field,
gt_return-system.
endloop..
endform. " disp_report
reward points if helpful........ -
hi all,
can u pls help me in this?
i have no idea abt bapi.can u pls explain the work functionality of bapi and difference between between bapi and function module.
and also explain
how to use this bapi to upload the data into cats BAPI_CATIMESHEETMGR_INSERT .
if possible send me the code also...
thanks & regards
rahul..Hello Rahul
BAPIs enable you to access so-called business objects (like the CATS timesheet) in SAP from external systems.
In contrast to "normal" function modules BAPIs have a holistic approach of accessing the business object.
What does this mean? You may find a normal function module which enables you to insert records into timesheets, too. However, there is no guarantee that this fm takes care of all necessary consistency checks. The BAPI takes care of this.
Basically, think of a BAPI as a "Dialog with dialog". The BAPI does more or less the same like the corresponding transaction (here: CAT2). In order to understand the mandatory input for the BAPI you must understand transaction CAT2.
For sure you will find plenty of sample coding if you search the SDN for the BAPI name.
Regards
Uwe -
Reg. Bapi FM for creating invoice
Hi Friends
If any body tell me how to create an invoice with reference number and maintain our external invoice number.
Advance Thanks
KrishnaHi,
use this BAPI
BAPI_INCOMINGINVOICE_CREATE
or
BAPI_ACC_INVOICE_RECEIPT_POST
hope helpful
Raghunath.S -
Reg Extending URL Scrapper Channel
For my use in customizing the desktop I had 2 applications and according to the user roles the secured page must display the applicaion links.
For this I am thinking in the JSP Container Channel, If we can code in such a way that extending the current URL Scrapper. If any one can help me in this that would be great.From what I've read you might have to use the rewriter to make the site
Portal friendly... I think
"Richard Jackson" <[email protected]> wrote in message
news:[email protected]..
I set up a url scrapper channel to access an intranet site that we have
no control over. The site that I have set the channel up for is not a
domain/subdomain of ours.
I have two issues. The first is: if the channel is attached, it
overwrites the whole display area of the browser. If detached, it again
overwrites the whole display area, overwritting the two menu bars that
are displayed in the detached browser. The second issue is that the
gifs should be display do not show up. It is trying to find the gifs in
the domain of the portal itself. The gifs are referenced by javascript.
Anybody have any ideas... Am I out of luck?
Rick -
Reg Extended Ascii Characters...
Hi,
I have state name data with Ascii extended characters, the examples of which are given below:
Bouches-du-Rhône
Corrèze
Côte-d''Or
Côtes-d''Armor
Finistère
Hérault
Isère
Lozère
Nièvre
Puy-de-Dôme
Pyrénées-Atlantiques
Pyrénées (Hautes)
Pyrénées-Orientales
Rhône
Saône (Haute)
Saône-et-Loire
Sèvres (Deux)
VendéeI need to :
1) insert these data in a table.. i think i have to use ASCII codes for it or is it any other way?
2) How will a user be able to search the above states.. I mean what will be the behaviour of above states when searched with LIKE operator or = search...?
3) will indexes on state column be used in the above cases..?
4) any other things that i need to keep in mind while working with such data..
ThxWhat is your database character set?
What application(s) will you be using to modify the data?
What are the NLS_LANG settings on the client machine(s)?
Assuming that the database character set supports the characters in the first place, and that the client supports them, they should behave just like any other character. Searching, indexing, etc. will all continue to work as normal.
Justin -
Reg: Extended support from oracle
Hi DBA's
Can any one shed some light on the below version.
We are on Oracle EBS 11.5.10.2 and DB version is 10.2.0.4.
Can anyone confirm the extended oracle support for the above versions.Please
Regards,
SuryaHi Hussein,
Our current version is E-business suite 11.5.10 and DB version is 10.2.04. Based on the below pdf's
1 ) http://www.oracle.com/us/support/library/lifetime-support-applications-069216.pdf
Release GADate Premier SupportEnds Extended SupportEnds Sustaining SupportEnds
11.5.10 Nov 2004 Nov 2010* Nov 2013 Indefinite
2) http://www.oracle.com/us/support/library/lifetime-support-technology-069183.pdf
Release GADate Premier SupportEnds Extended SupportEnds Sustaining SupportEnds
10.2 Jul 2005 Jul 2010 Jul 2013 Indefinite
If we currently don't have the plan to upgrade either the DB version or E-business suite.
During the Extended support period, can we log the oracle SR and ask for any fixes from oracle relating to our version instances.
Please confirm, as we need to update the audit people.
Regards,
Surya
Edited by: 896453 on 17-Feb-2012 02:17 -
hi experts
any body could send me the material regarding BADI &BAPI
other than sap links
i will surely reward for good material
my mail id [email protected]Hi
BAPI-
step by step
http://www.sapgenie.com/abap/bapi/example.htm
list of all bapis
http://www.planetsap.com/LIST_ALL_BAPIs.htm
for BAPI's
http://www.sappoint.com/abap/bapiintro.pdf
http://www.sappoint.com/abap/bapiprg.pdf
http://www.sappoint.com/abap/bapiactx.pdf
http://www.sappoint.com/abap/bapilst.pdf
http://www.sappoint.com/abap/bapiexer.pdf
http://service.sap.com/ale
http://service.sap.com/bapi
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDAPII/CABFAAPIINTRO.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFABAPIREF/CABFABAPIPG.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCFESDE8/BCFESDE8.pdf
http://www.planetsap.com/Bapi_main_page.htm
http://www.topxml.com/sap/sap_idoc_xml.asp
http://www.sapdevelopment.co.uk/
http://www.sapdevelopment.co.uk/java/jco/bapi_jco.pdf
Also refer to the following links..
www.sappoint.com/abap/bapiintro.pdf
www.sap-img.com/bapi.htm
www.sap-img.com/abap/bapi-conventions.htm
www.planetsap.com/Bapi_main_page.htm
www.sapgenie.com/abap/bapi/index.htm
Checkout !!
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
http://techrepublic.com.com/5100-6329-1051160.html#
http://www.sap-img.com/bapi.htm
http://www.sap-img.com/abap/bapi-conventions.htm
http://www.sappoint.com/abap/bapiintro.pdf
BAPI
http://help.sap.com/saphelp_46c/helpdata/en/9b/417f07ee2211d1ad14080009b0fb56/frameset.htm
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
http://www.sapgenie.com/abap/bapi/example.htm
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDAPII/CABFAAPIINTRO.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFABAPIREF/CABFABAPIPG.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCFESDE8/BCFESDE8.pdf
u can check the below the material also
what is BAPI?
BAPI stands for Business API(Application Program Interface).
A BAPI is remotely enabled function module ie it can be invoked from remote programs like standalone JAVA programs, web interface etc..
You can make your function module remotely enabled in attributes of Function module but
A BAPI are standard SAP function modules provided by SAP for remote access. Also they are part of Businees Objest Repository(BOR).
BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects. You create business objects and those are then registered in your BOR (Business Object Repository) which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA. in this case u only specify the business object and its method from external system in BAPI there is no direct system call. while RFC are direct system call Some BAPIs provide basic functions and can be used for most SAP business object types. These BAPIs should be implemented the same for all business object types. Standardized BAPIs are easier to use and prevent users having to deal with a number of different BAPIs. Whenever possible, a standardized BAPI must be used in preference to an individual BAPI.
The following standardized BAPIs are provided:
Reading instances of SAP business objects
GetList ( ) With the BAPI GetList you can select a range of object key values, for example, company codes and material numbers.
The BAPI GetList() is a class method.
GetDetail() With the BAPI GetDetail() the details of an instance of a business object type are retrieved and returned to the calling program. The instance is identified via its key. The BAPI GetDetail() is an instance method. BAPIs that can create, change or delete instances of a business object type
The following BAPIs of the same object type have to be programmed so that they can be called several times within one transaction. For example, if, after sales order 1 has been created, a second sales order 2 is created in the same transaction, the second BAPI call must not affect the consistency of the sales order 2. After completing the transaction with a COMMIT WORK, both the orders are saved consistently in the database.
Create( ) and CreateFromData! ( )
The BAPIs Create() and CreateFromData() create an instance of an SAP business object type, for example, a purchase order. These BAPIs are class methods.
Change( )
The BAPI Change() changes an existing instance of an SAP business object type, for example, a purchase order. The BAPI Change () is an instance method.
Delete( ) and Undelete( ) The BAPI Delete() deletes an instance of an SAP business object type from the database or sets a deletion flag.
The BAPI Undelete() removes a deletion flag. These BAPIs are instance methods.
Cancel ( ) Unlike the BAPI Delete(), the BAPI Cancel() cancels an instance of a business object type. The instance to be cancelled remains in the database and an additional instance is created and this is the one that is actually canceled. The Cancel() BAPI is an instance method.
Add<subobject> ( ) and Remove<subobject> ( ) The BAPI Add<subobject> adds a subobject to an existing object inst! ance and the BAPI and Remove<subobject> removes a subobject from an object instance. These BAPIs are instance methods.
Example Code
U need to give the step_nr, item_nr, cond_count and cond_type so the correct conditon will be updated. If no condition exists for the given parameters, a new condition will be created.
U can find these parameters for a particular condition type in table KONV.
*& Form saveTransactionJOCR
text
--> p1 text
<-- p2 text
FORM saveTransactionJOCR .
data: salesdocument like BAPIVBELN-VBELN,
order_header_inx like bapisdh1x,
order_header_in like bapisdh1,
return type standard table of bapiret2 with header line,
conditions_in type standard table of bapicond with header line,
conditions_inx type standard table of bapicondx with header line,
logic_switch like BAPISDLS,
step_nr like conditions_in-cond_st_no,
item_nr like conditions_in-itm_number,
cond_count like conditions_in-cond_count,
cond_type like conditions_in-cond_type.
salesdocument = wa_order_information-VBELN.
LOGIC_SWITCH-COND_HANDL = 'X'.
order_header_inx-updateflag = 'U'.
conditions
clear conditions_in[].
clear conditions_inx[].
clear: step_nr,
item_nr,
cond_count,
cond_type.
step_nr = '710'.
item_nr = '000000'.
cond_count = '01'.
cond_type = 'ZCP2'.
CONDITIONS_IN-ITM_NUMBER = item_nr.
conditions_in-cond_st_no = step_nr.
CONDITIONS_IN-COND_COUNT = cond_count.
CONDITIONS_IN-COND_TYPE = cond_type.
CONDITIONS_IN-COND_VALUE = 666.
CONDITIONS_IN-CURRENCY = 'EUR'.
append conditions_in.
CONDITIONS_INX-ITM_NUMBER = item_nr.
conditions_inx-cond_st_no = step_nr.
CONDITIONS_INX-COND_COUNT = cond_count.
CONDITIONS_INX-COND_TYPE = cond_type.
CONDITIONS_INX-UPDATEFLAG = 'U'.
CONDITIONS_INX-COND_VALUE = 'X'.
CONDITIONS_INX-CURRENCY = 'X'.
append conditions_inx.
CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
EXPORTING
SALESDOCUMENT = salesdocument
ORDER_HEADER_IN = order_header_in
ORDER_HEADER_INX = order_header_inx
LOGIC_SWITCH = logic_switch
TABLES
RETURN = return
CONDITIONS_IN = conditions_in
CONDITIONS_INX = conditions_inx
if return-type ne 'E'.
commit work and wait.
endif.
ENDFORM. " saveTransactionJOCR
Bdc to Bapi
The steps to be followed are :
1. Find out the relevant BAPI (BAPI_SALESORDER_CHANGE for VA02).
[for VA01 use BAPI_SALESORDER_CREATEFROMDAT2]
2. Create a Z program and call the BAPi (same as a Funtion module call).
2. Now, if you see this BAPi, it has
-> Importing structures.
eg: SALESDOCUMENT: this will take the Sales order header data as input.
-> Tables parameters:
eg: ORDER_ITEM_IN: this will take the line item data as input.
Note :
Only specify fields that should be changed
Select these fields by entering an X in the checkboxes
Enter a U in the UPDATEFLAG field
Always specify key fields when changing the data, including in the checkboxes
The configuration is an exception here. If this needs to be changed, you need to complete it again fully.
Maintain quantities and dates in the schedule line data
Possible UPDATEFLAGS:
U = change
D = delete
I = add
Example
1. Delete the whole order
2. Delete order items
3. Change the order
4. Change the configuration
Notes
1. Minimum entry:
You must enter the order number in the SALESDOCUMENT structure.
You must always enter key fields for changes.
You must always specify the update indicator in the ORDER_HEADER_INX.
2. Commit control:
The BAPI does not run a database Commit, which means that the application must trigger the Commit so that the changes are read to the database. To do this, use the BAPI_TRANSACTION_COMMIT BAPI.
For further details... refer to the Function Module documentation for the BAPi.
Bapi to VB(Visual Basic)
Long back I had used the following flow structure to acheive the same.
Report -> SM59 RFC destination -> COM4ABAP -> VB.exe
my report uses the rfc destination to create a COM session with com4abap. com4abap calls the vb.exe and manages the flow of data between sap and vb exe.
You need to have com4abap.exe
If com4abap is installed you will find it in sapgui installatin directory , C:\Program Files\SAPpc\sapgui\RFCSDK\com4abap.
else refer OSS note 419822 for installation of com4abap
after making the settings in com4abap to point to the vb program and setting up rfc destination in sm59 to point to com4abap session , you can use the following function modules to call the vb code.
for setting up com4abap and rfc destination please refer to the documentation for com4abap.
Invoke NEW DCOM session
call function 'BEGIN_COM_SESSION'
exporting
service_dest = service_dest "(this will be a RFC destination created in SM59)
importing
worker_dest = worker_dest
exceptions
connect_to_dcom_service_failed = 1
connect_to_dcom_worker_failed = 2
others = 3.
call function 'create_com_instance' destination worker_dest
exporting
clsid = g_c_clsid
typelib = g_c_typelib
importing
instid = g_f_oid
exceptions
communication_failure = 1 message g_f_msg
system_failure = 2 message g_f_msg
invalid_instance_id = 3
others = 4.
call function 'com_invoke' destination worker_dest
exporting
%instid = g_f_oid
%method = 'UpdatePDF'
sntemp = g_v_const_filent
snsysid = sy-sysid
snflag = 'N'
tables
rssaptable = g_t_pdfdetail1
%return = g_t_pdfdetail1 "t_test
exceptions
communication_failure = 1 message g_f_msg
system_failure = 2 message g_f_msg
invalid_instance_id = 3
others = 4.
then close the com session , using
FM delete_com_instance
FM END_COM_SESSION
BADI
BADI(Business Add-In) is the object oriented method of user exits...
Each BAdI has a definition and more than one implementation. The definition means the methods(in class concept) that are used for performing various functions. The BAdI definition can be viewed in SE18 transaction(for standard ones) and user-defined BAdIs can be created in the same transaction as well.
When you create a BAdI definition, an class interface will be automatically created and you can define your methods in the interface. The implementation of the methods can be done in SE19 transaction
Intro.....
http://help.sap.com/saphelp_nw04/helpdata/en/e6/d54d3c596f0b26e10000000a11402f/content.htm
Check these links for info about badi..
BADI's
http://help.sap.com/saphelp_erp2005/helpdata/en/73/7e7941601b1d09e10000000a155106/frameset.htm
http://support.sas.com/rnd/papers/sugi30/SAP.ppt
BADI's
http://help.sap.com/saphelp_erp2005/helpdata/en/73/7e7941601b1d09e10000000a155106/frameset.htm
http://support.sas.com/rnd/papers/sugi30/SAP.ppt
http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/abapindx.htm
http://members.aol.com/_ht_a/skarkada/sap/
http://www.ct-software.com/reportpool_frame.htm
http://www.saphelp.com/SAP_Technical.htm
http://www.kabai.com/abaps/q.htm
http://www.guidancetech.com/people/holland/sap/abap/
http://www.planetsap.com/download_abap_programs.htm
http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/content.htm
/people/thomas.weiss/blog/2006/04/03/how-to-define-a-new-badi-within-the-enhancement-framework--part-3-of-the-series
/people/thomas.weiss/blog/2006/04/18/how-to-implement-a-badi-and-how-to-use-a-filter--part-4-of-the-series-on-the-new-enhancement-framework
http://www.esnips.com/web/BAdI
http://www.allsaplinks.com/badi.html
New to Badi -
Mine is an HP Pavilion dv 2910tx laptop. Product Number is FQ366PA#ACJ. Serial Number:[Personal Information Removed]. Windows 7 32 bit.
I want to extend warranty service which has been expired 1.5 years ago. Can i? If yes, how can i avail those services??You can find phone #'s on Assurion's website.
-
Problem in Transporting a BAPI structure
How to transport the extended BAPI structure from D system to Q system.
BAPI structure is extended by appending a new structure with two fields in Development system. I want to transport it to Q. But there is no transport request for this change. Since i have not done this change i dont know wat has to be done.
Thank you in advance.
Regards,
Umasankar.Hi,
You can use standard program RSWBO052 to change development class.
In the line : R3TR FUGR Function Group
1)check the box
3)insert the function gruop name
4)Press F8 or Execute
5) double click and change the class
Regards,
Sooness -
Hello experts,
I have added one field using append structure in table MARC. I want to updated this field usnign BAPI_MATERIAL_SAVEDATA. can anybody tell me the procedure to do that?
Thanks in advance.Hello,
Check the documentation of the function module BAPI_MATERIAL_SAVEDATA. There is a parameter in the FM - EXTENSIONIN where in new fields added to the table can be used to be updated.
The documentation of that parameters tells you how this can be achieved.
Create 2 structures of the type BAPI_TE_MARA and BAPI_TE_MARAX
Now assign the field structure of the workarea of type BAPIPAREX. Assume gs_extensionin is of type BAPIPAREX and gs_bapi_te_mara is of type BAPI_TE_MARA (this should have the fields that have been added in the table)
gs_extensionin-structure = 'BAPI_TE_MARA'.
gs_extensionin-valuepart+0(18) = gs_bapi_te_mara-matnr.
gs_extensionin-valuepart+18(length of the new field) = ga_bapi_te_mara-<new field added in the structure>.
append gs_extensionin to gt_extensionin.
gs_extensioninx-structure = 'BAPI_TE_MARAX'.
gs_extensioninx-valuepart+0(18) = gs_bapi_te_mara-matnr.
gs_extensioninx-valuepart+18(1) = 'X'..
append gs_extensioninx to gt_extensioninx.
Now pass these tables gt_extensionin and gt_extensionx to the parameters extensionin and extensioninx of the function module BAPI_MATERIAL_SAVEDATA.
Also try searching SDN using Extending BAPI's
Hope this will help in solving your query.
Regards,
Sachin -
Hi,
I have created Material using transaction MM01 manually and then going to WE19 and trying to create/extend to plants using the IDOC. It's showing the success status 53 if look at status in WE02 but views are not being created.
This is being done using a customized FM which is a modification to 'IDOC_INPUT_MATMAS01'.
Plz reply ASAP if somebody is aware of the issue.
Rgds,
SriniFinally got it figured out. Steps I used to generate the new customer BAPI-IDOC interface:
1. Created custom structure with data elements desired
2. Copied the BAPI_BATCH_REPLICATE and BAPI_BATCH_SAVE_REPLICA function modules to custom function modules
3. Add parameter for custom segment to BAPI_BATCH_SAVE_REPLICA
4. Extend BAPI object with custom segment
5. Generate the ALE interface (this was where I got stuck originally)
6. Assign function module to generate message type (BD60)
7. Assigned additional change pointer field to message type (BD52) -
Extension of BAPI - BAPI_SALESORDER_CHANGE
Hi All,
I have added some custome fields in the table VBAK. Now i want to update these fields using BAPI_SALESORDER_CHANGE which are not present in it currently. So how can i extend BAPI to update the custom fields ???Hi,
first, go to SE37 and check the BAPI's default documentation for the EXTENSIONIN table parameter. There, it explains analytically what you have to do in order to update Z fields that have been appended in VBAK or VBAP through the standard BAPI.
NOTE that you MUST have updated accordingly the tables/structures VBAKKOZ, VBAKKOZX, BAPE_VBAK, BAPE_VBAKX
So, if the sales order number is 1000000001 and your added custom field is named ZZCUST with length 5 chars and you want to set the ZZCUST value to ABCDEm, then append a line in EXTENSIOIN as follows:
EXTENSIONIN-STRUCTURE = BAPE_VBAK
EXTENSIONIN-VALUEPART1 = 1000000001ABCDE
Also, call the BAPI passing the 1000000001 (sales order document number to the SALESDOCUMENT parameter and set the UPDATEFLAG field of the structure ORDER_HEADER_INX to 'X' to make the BAPI actually update the sales document header data (includind the new Z field).
Try it and READ the BAPI's standard documentation!
Reward if it helps,
Regards,
George
Maybe you are looking for
-
Code required for this BDC fb02.
Hi All, I am sending you the Functional and tech flow design. Can any one write the code as per the below technical flow and send me the code immediately. The time is very less. Further queries give me reply.Points will be definetely rewarded Functio
-
Firfox refuses to open new tabs. Pushing ctrl-t or the + next to the tabs doesn't do anything, neither in the menu. Opening a link in another tab by right clicking is no problem.
-
Premiere Pro Encoding Sequence Freeze
I have a 20 minute video that I've been trying to export for all of today with no luck. I was trying to export in H.264, and I have tried all other formats as well. The encoding goes fine up until it's 9%, then it just freezes there. I read around an
-
How to deregister PORTLET PRODUCER manually?
I had an error during deregister my portlet producer, so now it is not in my project, but somehow local oc4j knows about it. When I try to start executing my project, my explorer's page tells: mdsId=/oracle/adf/portlet/TutorialProducer_1176222275748/
-
Can anybody help? Accidentally trashed iphoto library, emptied trash!
Can anybody help? Accidentally trashed iphoto library, emptied trash!