Some doubt on bapi
hi
1)if want to use bapi, we must check the function module in method, right? why so many people use the function module in the abap program?
2)what is the difference for bapi FM and other common FM?
thanks
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.
Check these Links out
http://searchsap.techtarget.com/ateQuestionNResponse/0,289625,sid21_cid558752_tax293481,00.html
http://www.sap-img.com/abap/interview-question-on-bapi-rfc-abap-objects-tables.htm
http://www.sap-img.com/fu033.htm
http://www.sap-img.com/abap/ale-bapi.htm
REgards,
Kishore
Similar Messages
-
Hi All I have a doubt in BAPI.
I have created a function module which is remote enabled module. I didnu2019t create any BAPI using Tcode SWO1 or BAPI. Am using this function module in my VB code to get the data from SAP, Its working fine am getting all data from SAP database.
My Question is since we can use sap Function module (which is remote enabled module) with out creating BAPI. Then what is the use of creating BAPI.?
If we click on radio button Remote enabled module is that function module act as BAPI?
Please help me.
Regards
Prajwal K.Hi Prajwal,
Please check this link
RFC and BAPI Interfaces to SAP Systems
http://help.sap.com/saphelp_45b/helpdata/en/cf/8ccab761ea11d2804a00c04fada2a1/content.htm
BAPI's are the remote enabled Function modules which are defined in the Business Object Repository (BOR) as the methods of the business objects.I can say BAPI is the subset of RFC. RFC connects to the other system via BAPI and vice versa.
BAPI methods 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.BAPI is having all Key fields, methods, interfaces etc.
Best regards,
raam -
HI Gurus ,
I have some doubt in workflow basically I know how to use them but i don't know what is functionality ,
could you plz explain me , else suggest me
1. why we have to do delegation , what happens at run time if we don't do delegation
2. What is the diff between task and workitem
Thanks
PrasadHello,
I would suggest searching for "sap workflow" on the internet, buying a SAP workflow book and/or taking a SAP workflow course.
regards
Rick Bakker
Hanabi Technology -
<Moderator Message: Please read the rules of engagement. You should not post multiple questions to one thread, also use meaningful subjects. And don't offer points.>
HELLO Guys
I have some doubts regarding SAP BW3.5...cAN anyone please clarify.
1.this is regarding SID Concept.
iIn extended start schema,there will be one fact table connected to many dimendion tables.Fact table and Dim tables are connected by dimension IDs.then this Dim table will hold various characteristics.every characteristic will store the characteristic value and address(pointer) to SID table.This SID table will hold again addresses(pointers) to attributes,text and hierarchy tables(if we assume that characteristic have attribute,text,hierarchy) which in turn contain the values.When a query is executed,the OLAP processor searches first for characteristics in dim tables and then with help of dim IDs traces Transaction Data in Fact table relevant for this combination of characteristics and gives output.Did I understand the concept right?
how does OLAP Processor run if the query is on just text of a characteristic and it doesnot include this characteristic?
2.how does navigational attr decrease the performance?
3.cAN YOU ASSIGN
a. many datasources to one infosource
b.one datasource to many infosources
c.many datasources to many infosources...
can you please give real time scenarios for this....
4.how do SID concept improve BW/BI.
thanks
Surekha Chand
Edited by: SChandx200 on Jul 2, 2009 7:35 AM
Edited by: SChandx200 on Jul 2, 2009 7:37 AM
Edited by: Siegfried Szameitat on Jul 2, 2009 1:09 PMHi,
You understanding is correct.
{code)
how does OLAP Processor run if the query is on just text of a characteristic and it doesnot include this characteristic?
{code}
This question of yours is not very clear. Re phrase and post it again.
2.how does navigational attr decrease the performance?
Ans:- Say for example in the customer master table customer phone no is the navigational attribute. Now when you select this navigation attriubte in your report then the processor will go and first check the value of Customer say C1 and then determine C1 phone number. Now this look up of cusotmer will happen for every customer . So if say there are huge number of records for which this look up of customer first has to happen then obviously the performance will be impacted.
Hope it is clear. -
hi
i studied some upgradation documents i have some doubts. please dont give any help files or again links for upgradation
bec i need some scenerio why they need to follow this steps
Check compounding consistency in MultiProviders
Info Cubes Fact views
BEX History
STD SAP Report
0adhoc Templates ActivationHi suneel,
check this links......
Link: How to SAP BW 3.5 Upgrade Preparation and Post Upgrade CheckList (NW2004)
Even this might be of use:
BI 7.0 Initial Hurdles
May be useful for you,
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e0c9c8be-346f-2a10-2081-cd99177c1fb9
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/10564d5c-cf00-2a10-7b87-c94e38267742
/message/5971540#5971540 [original link is broken]
You may wish to check my thread below -
https://forums.sdn.sap.com/click.jspa?searchID=13971844&messageID=3308304 Broad caster
Upgrade preparation
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/472443f2-0c01-0010-20ab-fbd380d45881
/message/3221895#3221895 [original link is broken] -
Hii..,
Some doubts in j2ee .plz help with as
1.What are the main difference between application server and web server
2. two and three tier architecture differences
by Anand PCHi,
1) a) A Web Server understands and supports only HTTP protocol whereas an Application Server supports HTTP,TCP/IP and many more protocols.
b) Web server mainly deals with sending HTML for display in a Web browser, an application server provides access to business logic for use by client application programs. The application program can use this logic just as it would call a method on an object.
c) Webserver is used only for jsp and servlets and for static functionality it has limited functionality and it doesn't provide any security ,persistence and it doesn't support EJB and JMS and JAAS like other functionality
whereas Application server provide all functionalities.
In short, Applicaion Server is a super set of which Web Server is a sub set.
2) Two-tier architecture is a client/server architecture , where a request to do some task is sent to the server and the server responds by performing the task.where as a three-tier or a multi tier architecture has client, server and database. Where the client request is sent to the server and the server in turn sends the request to the database. The database sends back the information/data required to the server which inturn sends it to the client. -
Good morning … bom dia …
I have some doubts about RECORDMODE … follow ...
Is it necessary development some ABAP code in transformation ? … or in Initial / Final routine ?
In DTP from DSO to Cube, is mandatory choice the option “change log” ? Or make some filter to select only valid records ?
Is There some configuration on query ?
Or the goal is only know how recordmode works, based on the table ROOSOURCE ?
Thanks in advantage …. Obrigado …
Kokeny, Marcio
P.S.: I already read this some documents:
http://scn.sap.com/people/swapna.gollakota/blog/2007/12/27/how-does-a-datasource-communicates-delta-with-bw
(How does a datasource communicates "DELTA" with BW?)
http://scn.sap.com/docs/DOC-54330
(Recordmode Importance in SAP BI along with Delta Handling)
http://scn.sap.com/docs/DOC-29927
(Record mode Concept in SAP BI)
- Record Mode Concept in Delta Management
- 0RECORDMODE and Delta type Concepts in Delta ManagementHi,
Is it necessary development some ABAP code in transformation ? … or in Initial / Final routine ?
Why you got above doubt?
Routines are used as per needs. Not based on 0recordmode.
In DTP from DSO to Cube, is mandatory choice the option “change log” ? Or make some filter to select only valid records ?
Not mandatory. if we run first time dtp with delta mode option then no need to select change log option.
if we perform dtp as init and later delta then we need to choose changlog option for delta.
Is There some configuration on query ?
No. 0RECORDMODE is upto DSO level only to track changes.
Or the goal is only know how recordmode works, based on the table ROOSOURCE ?
0record mode works based on data source delta type.
Data source delta type you cam see from table ROOSOURCE and field deltyp - ABB.ABD.AIE...etc.
Thanks -
Have some doubt regarding the weblog (Lookup's in XI made simpler)
Hi All,
I have created the same scenario as mentioned in Siva's weblog (Lookup's in XI made simpler).
I having some doubts regarding the scenario, it will be great if you help me to resolve the same.
I am having a file-file scenario where I need to do lookup in database(MS-Access) through mapping.
The standard file-file scenario is in place and in addition I have created a receiver jdbc channel . I have also created the receiver agreement for the same in the cofiguration.
While creating the receiver agreement you have to specify the interface name which includes the message type I have specified the normal format which we specify while configuring the jdbc receiver adapter.
In the message mapping I have created a advance user defined function as mentioned in your weblog which calls my receiver jdbc channel.
I have also specified the select query to be executed in the mapping program.
While testing I am getting the following error
Cannot produce target element /ns0:Role_MT/URole. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd
<b>Can you please suggest me what all I need to do in addition to the file-file scenario for this lookup scenario to work.</b>
Thanks and Regards
RahulHi,
Following is my user defined function
//write your code here
String Query = "";
Channel channel = null;
DataBaseAccessor accessor = null;
DataBaseResult resultSet = null;
Query = "Select URole from Lookup where UName = ' " + UName[0] + " ' and UPassword = ' " + Pwd[0] +" ' ";
try{
channel = LookupService.getChannel("DB_service","JDBC_channel_receiver");
accessor = LookupService.getDataBaseAccessor(channel);
resultSet = accessor.execute(Query);
for(Iterator rows = resultSet.getRows();rows.hasNext();){
Map rowMap = (Map)rows.next();
result.addValue((String)rowMap.get("URole"));
catch(Exception ex){
result.addValue(ex.getMessage());
finally{
try{
if (accessor!= null) accessor.close();
catch(Exception ex){
result.addValue(ex.getMessage());
Thanks and Regards
Rahul -
I have installed in my E71 some app that i found like "installers or shortcuts to internet" in Menu->Installations->... i downloaded data to install using my wifi, but now i have some doubt. Are those apps for free? For ex: "Tiger Wood.." "MultiScanner" "Wipresenter" "RT GR"
If I go to: Menu->Installations->App. mgr. I can find all the apps installed. I have these ones:
MMSync
World Mate
Nokia WebService Support
Nokia InternetServices S...
Wireless Presenter by...Advanced Call Manager
Web Gate Utils Library
DRM Common Solutions
Top Hits Solitaires
Windows Live - Installed by me
Global Race
MMIO Framework and...
MultiScanner
MMIO Libraries
Spanish - Installed by me
Swedish - Installed by me
Tiger Woods PGA TOUR(R)
Sorry for bad english...I am spanish native speaker trying to do it well. ThanksI was a little worried because some of these applications to be installed, must download data from internet, and I was afraid that when I start the download, could add a surcharge for the price of the application.
Thanks ofr answering. -
APP --- SOME DOUBTS.....PLZ HELP
HI GUYS,,
I have some doubts in APP.
1. why do we give next payment date in F110 while we are running payment.....
2. can we do partial payment for one line item through running APP....
please help me out..
Thanks in advance
Regards,
pavan
Moderator: Please, avoid using SMS language and posting basic questionsHI,
1. If your provid ethe Next payment run date then system will consider below documents.
current run date to next payment run date
in between any Invoices are getting panalities then those will consider in this current payment run.
2. partial payment not consider.
3. APP will consider downpayments.
Reg
Madhu M -
JDBC Questions have some doubts
hi,
Friends i have some doubts on JDBC Adapter . plz give me answere.
1) Wt is the use of update query in jdbc adapter?
2) Why did u use the flag field in jdbc table?
3) How will u send the data into multiple table?
4) Wt is the receiver str jdbc?
5 Wt is the jdbc configurations
thanks in adnvace.Hi,
1) Wt is the use of update query in jdbc adapter?
--> Update query is used to update the specific record in the database table based on Key fields.
2) Why did u use the flag field in jdbc table?
--> the Flag field is used to mark the records which are selected by sender JDBC adapter, so next time those records should not be repeated.
3) How will u send the data into multiple table?
--> You can send the data to multiple tables with the help of multi-mapping in the XI.
Accessing Multiple Tables dynamically using JDBC
Accessing Multiple Tables dynamically using JDBC
4) Wt is the receiver str jdbc?
--> On receiver side JDBC, you can either Insert, Update or delete the records. The storder proceduers are the line of codes written in DB2, From XI you can directly execute these JDBC statements. It will be helpful when you will be working on synchronous scenario and need to modify or deal with multiple tables based on complex logics
5 Wt is the jdbc configurations
--> JDBC configuration is based on the JDBC drivers installed.
Refer - Detail explanation
http://help.sap.com/saphelp_nw04s/helpdata/en/22/b4d13b633f7748b4d34f3191529946/frameset.htm
Thanks
Swarup -
Hello I have an imac with os x 10.7.5 and I have some doubts:
the new version of garageband 10.0.2 is compatible with os x 10.7.5?
I have not installed mavericks. should I install?
Thanks!!It requires 10.9 or later.
Upgrading to Mavericks
You can upgrade to Mavericks from Lion or directly from Snow Leopard. Mavericks can be downloaded from the Mac App Store for FREE.
Upgrading to Mavericks
To upgrade to Mavericks you must have Snow Leopard 10.6.8 or Lion installed. Download Mavericks from the App Store. Sign in using your Apple ID. Mavericks is free. The file is quite large, over 5 GBs, so allow some time to download. It would be preferable to use Ethernet because it is nearly four times faster than wireless.
OS X Mavericks- System Requirements
Macs that can be upgraded to OS X Mavericks
1. iMac (Mid 2007 or newer) - Model Identifier 7,1 or later
2. MacBook (Late 2008 Aluminum, or Early 2009 or newer) - Model Identifier 5,1 or later
3. MacBook Pro (Mid/Late 2007 or newer) - Model Identifier 3,1 or later
4. MacBook Air (Late 2008 or newer) - Model Identifier 2,1 or later
5. Mac mini (Early 2009 or newer) - Model Identifier 3,1 or later
6. Mac Pro (Early 2008 or newer) - Model Identifier 3,1 or later
7. Xserve (Early 2009) - Model Identifier 3,1 or later
To find the model identifier open System Profiler in the Utilities folder. It's displayed in the panel on the right.
Are my applications compatible?
See App Compatibility Table - RoaringApps. -
IMac vs Mac Mini, some doubts
Hello!! Good evening ;-) First of all, I would like to introduce myself. My name is Manu and I am from Spain. I´ve been always a Windows and PC user, but now I´m thinking about the posibility of changing to Mac platform, but I have some doubts.
I´ve been thinking about buying a Mac Mini, because I have the keyboard, a good display and the mouse, everything... However, I´ve seen that it comes with Intel HD 4000 graphics. I want to use the computer to edit some videos but, specially to some graphic design with Photoshop, or to play some games. I would configure the Mac Mini like this:
Core i7 de Intel de cuatro núcleos a 2,6 GHz
SDRAM DDR3 de 16 GB (dos módulos de 8 GB) a 1.600 MHz
Unidad de memoria sólida de 256 GB
Guía del usuario (Español)
Kit de accesorios
Thi price is 1.448,99 €, so I would loke to have enough computer for at less 4 or 5 years, but with this integrated graphics on the processor, do you think so?
I´ve also been seeing the graphic cards that iMac includes, but it isn´t also very powerful, even it is a dedicated card.
What do you think about?
Thank you very much ;-)
Manu.
PD: sorry for my english!! I hope you understand meRefurbished machines change by the hour, you need to check frequently and be ready to buy when you find a model that will fit your needs.
BTW I asked the moderator to remove one of your posts, you were asking for speculation on unreleased products. Please read the Terms of Use you agreed to, specifically it says:
Submissions
Stay on topic. Apple Support Communities is here to help people use Apple products and technologies more effectively. Unless otherwise noted, do not add Submissions about nontechnical topics, including:
Speculations or rumors about unannounced products.
Discussions of Apple policies or procedures or speculation on Apple decisions. -
Document Splitting - Some doubts
Hi,
I have activated the Doc splitting but have some doubts:
1. I can see the vendor item getting splitted into different Profit center in the General ledger view. But in FBL3N it shows as DUMMY ( which i believe is Entry view). Now whats the Tcode to see the vendors Profit center wise.
2. Moreover if i see my FSV in F.01, its not as per the Profit centers.
So where to see it Profit center wise.
ON whole, i am interested in see the PCA wise my all balances without running all those F.5D & F.5E programs....SO how to meet the objective
regardsHave you run those reports.
The first one, gives you the total of the Vendor and then you can add to the drill down the Profit Center. This is a new GL report so it takes the data from FAGLFLEX and not BSEG, where the PC is Dummy.
if you want to know how and why your entry view is Dummy and your general Ledger view is different, this is due to the rules you have set in document splitting.
You will probably have a default Profit Center and you can also add in Profit Center, Master data config default values for GL accounts and Profit Centers, i.e. the recon account of the Vendor.
Lastly in terms of the PC in the general ledger view, it will be derived, i.e. from the P&L entry, however it will use the Cost Center, that is linked to a Profit Center and use that for the splitting.
Hope we are moving in the right direction here. -
Can any send me some docs on BAPI.
Can any send me some docs on BAPI. If possible please send the docs on ID :- [email protected]
Edited by: dilip kushwah on Dec 31, 2007 12:32 AMHi Dilip
I am sending you some material on BAPI, pls go thru it.
Pls reward pts if help.
Regards
Deepanker
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.
BAPI-step by step
http://www.sapgenie.com/abap/bapi/example.htm
just refer to the link below
http://www.sapmaterial.com/?gclid=CN322K28t4sCFQ-WbgodSGbK2g
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.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#
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
Reward pts if help.
regards
Deepanker
Maybe you are looking for
-
EJB 3.0 accessing legacy RMI object
Hello All I need to access a legacy RMI object from a stateless session bean. This is not technically a problem as it can be done from the EJB's constructor like so public MyEJB () throws NotBoundException, MalformedURLException, RemoteException th
-
... i don't know how to install the boot camp 5.1.5621 update on to my macbook pro 13-inch 2012. i read the tutorial but is seems to imply that i should be installing bootcamp on a pc not a mac
-
running os 10.9.2 and ever since I loaded it, I am showing that I have a flagged message,which I can't find. Also, now have a 'flagged' message mailbox that I did not add. any ideas how to clear an apparently nonexistent flagge message in Maverick?
-
Dear All We have developed custom workflow for TRIP workflow, with single level approval of line manager. We are raising Trip request using Transaction PR05.Workitem goes to line manager for approval in SAP inbox and NWBC (SAP netweaver ) for approva
-
OSA - Appraisal Documents and Transfers
Hi All; We arecurrently using the OSA functionality in ERP 2005 and providing links in the portal for the managers ( Apraisers) and Employees ( Appraisee's) to the BSP documents. ( Documents to do.) We also let the employees select another (part app