A small query about BAPI "BAPI_PBSRVAPS_GETDETAIL"
Hi All,
I am Reading key figures from a planning area by parallally running jobs !
I am using BAPI "BAPI_PBSRVAPS_GETDETAIL" in the code.
When i run the program parallally for separate locations, run time exceeds.
Is it because lot of programs are trying to access live cache key figures from the same planning area.
One more strange thing is that after 5 to 6 runs, even if i run for a single location,
it takes increasingly bad time. Do you suggest to open and close simsessions in the code?? But how would that be helpful !
Please win full points by answering this simple question!
Thanks in advance,
chandan
Hi Chandan,
see note 792626 for performance.
Other question - which release do you have ? > 4.0 the BAPI_PBSRVAPS_GETDETAIL is obsolete and should be replaced by BAPI_PBSRVAPS_GETDETAIL2
Regards,
Ernst
Similar Messages
-
Hi Friends,
Here is my query in BAPI,
I need a BAPI to upload asset information (which is currently held in Physical data) data to SAP.
Its very very urgent for me,plz help me on this.
Thanks a lot in Advance.
mrutyun^hi Mrutyunjaya,
try using BAPI_FIXEDASSET_CREATE1.
You will get lot of information about asset in business object BUS1022.
regards, -
hi,all
What's about BAPIs?Hi
Check All The Links............
BAPI-step by step
http://www.sapgenie.com/abap/bapi/example.htm
RFC and BAPI:
difference between RFC and BAPi
Difference between BAPI and RFC?
BAPI.
http://help.sap.com/saphelp_46c/helpdata/en/9b/417f07ee2211d1ad14080009b0fb56/frameset.htm
http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
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
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
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFABAPIREF/CABFABAPIPG.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDAPII/CABFAAPIINTRO.pdf
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
http://ifr.sap.com/catalog/query.asp
Reward All Helpfull Answers........... -
small query i have data like below ,
Month ProductNo CustomerNo Units
Jan 9001 1001-09 100
jan 9002 1002-09 200
jan 9003 1003-09 300
jan 9001 ABCCustomer 400
Jan 9002 1004-09 500
for any record - if column - customerNo starts with numeric it has to show like CN_****** other wise the same name.
Result should be
Jan 9001 CN_1001-09 100
jan 9002 CN_1002-09 200
jan 9003 CN_1003-09 300
jan 9001 ABCCustomer 400
Jan 9002 CN_1004-09 500
Can some one help to get the queryHi,
try this,
SQL> select *from v$version;
BANNER
Personal Oracle Database 10g Release 10.1.0.2.0 - Production
PL/SQL Release 10.1.0.2.0 - Production
CORE 10.1.0.2.0 Production
TNS for 32-bit Windows: Version 10.1.0.2.0 - Production
NLSRTL Version 10.1.0.2.0 - Production
1 with t as
2 (select 'Jan' Month ,9001 ProductNo, '1001-09' CustomerNo, 100 Units from dual
3 union all
4 select 'jan', 9002 ,'1002-09', 200 from dual
5 union all
6 select 'jan', 9003, '1003-09', 300 from dual
7 union all
8 select 'jan', 9001, 'ABCCustomer', 400 from dual
9 union all
10 select 'Jan', 9002, '1004-09', 500 from dual)
11 select Month,ProductNo,(case when regexp_like(customerno,'^[[:digit:]]') then
12 'CN_'||CustomerNo
13 else
14* CustomerNo end)cudtomer_no, units from t
SQL> /
MON PRODUCTNO CUDTOMER_NO UNITS
Jan 9001 CN_1001-09 100
jan 9002 CN_1002-09 200
jan 9003 CN_1003-09 300
jan 9001 ABCCustomer 400
Jan 9002 CN_1004-09 500or
regexp_like(customerno,'^[0-9]')or
regexp_like(customerno,'^[0123456789]')Edited by: user291283 on Sep 12, 2009 8:22 AM
Edited by: user291283 on Sep 12, 2009 9:24 AM -
Hi,
i had a query about local storage.
I've a machine that hosts weblogic and tangosol. i've an ejb that accesses a distributed cache i.e NamedCache cache = CacheFactory.get("MyCache")
i modified tangosol-coherence.xml and set local-storage to false ( for distributed cache) and replaced the file in coherence.jar.
i'm using an overflow scheme and the back map uses a disk scheme.
i also start a separate standalone instance of tangosol and i set the system property of local storage to true for the standalone instance.
i start the standalone instance first and then weblogic.
The idea is ensure that the tangosol instance in weblogic or the weblogic JVM should not participate in storing data (hence local storage false).
only the JVM for the standalone instance should store data (hence local storage true -system property).
i wanted to know whether the property "local-storage" is pertinent to a member(machine) or to a JVM?
the reason for this doubt: as i'm using a disk scheme, tangosol creates a file for an overflow (e.g lh014402~.tp). i can see two such files when ideally i would have wanted only one for the tangosol instance.
-rw-r--r-- 1 zephyr users 8364032 2005-06-23 17:02 lh014402~.tp
-rw-r--r-- 1 zephyr users 8364032 2005-06-23 17:02 lh014403~.tp.
can you please let me know if we can configure tangosol in such a way that we can two separate instances running with local stroage false for one and true for the other?
Awaiting your reply
Thanks
VinayI would suggest leaving the default 'local-storage' value set to 'true' in the tangosol-coherence.xml and just use the JVM argument to control the local storage of each individual node. Then start the stand alone instance normally (I assume you are using the com.tangosol.net.DefaultCacheServer) and start the WebLogic instance with the following:
java [...] -Dtangosol.coherence.distributed.localstorage=false [...]
Hope this helps.
Later,
Rob Misek
Tangosol, Inc. -
Query about XAResource.end() API in JMS context
Hi All,
I have a small query regarding the behavior of an XAResource supplied by a JMS server.
Suppose I start a transaction using XaResource.start() method and I create a publisher and registered durable subscriber on the XASession that supplied the above mentioned XAResource. After that I send some messages and receive some messages from a Topic that already had some messages for the concerned Subscriber.
Now I end this transaction by calling XaResource.end() with the flag TMSUSPEND.
My question is that can the Publisher and Subscriber objects created between the start() and end() methods of the XAResource object be used now after the transaction has been suspended.
Also now if I resume this transaction can I use these publisher and subscriber objects again without re-creating them.
It would be great if some of the bright people on this forum can share some info on this.
cheers
AdolfNow I end this transaction by calling XaResource.end()
with the flag TMSUSPEND.
My question is that can the Publisher and Subscriber
objects created between the start() and end() methods
of the XAResource object be used now after the
transaction has been suspended.This is dependend on the JMS implementation. If it falls back into a local transaction context after suspending the current XA tx, then yes, otherwise no.
Also now if I resume this transaction can I use these
publisher and subscriber objects again without
re-creating them.IMO, yes.
However, chapter 8 of the JMS spec (XA/ASF) is intended to use within a J2EE environment. Thus, most of the behavior of JMS XA/ASF is specified in the EJB spec, not in the JMS spec. If you consult both, you'll get the whole picture. Whether JMS XA/ASF works with a specific app server is dependent on the app server's implementation of this part. For example, some use ASF (connection consumers) with callbacks for message/tx association (like the J2EE ref impl), some use ASF without callbacks (like JBoss, WebSphere) so there has to be an automatic association with XAResource.start. Some don't use ASF at all but a message consumer (like WLS). And so on. JCA 1.5 with JMS pluggability uses callbacks.
It's very tricky and time consuming to integrate a JMS server XA/ASF wise into an app server. Every app server is different. Sometimes you'll have to implement proprietary interfaces to plug into it.
We have done that. How it works is here:
http://www.swiftmq.net/products/kernel/jmsxaasf/index.html -
Hi,everyone.
Now i want to use JCo and BAPI to execute a function(create sales order ps:transaction code is VA01).
How do i to find the BAPI that i need?
And where can i find some documents about BAPI?
Thx~~ a lot
PS:if this topic isn`t suitable in Java Programming,plz tell me thx ,^^
by LouisHI Louis,
You can find out the bapis , by running transaction -bapi (Bapi Explorer).
Here u get a list of standard BAPI's given by SAP.
u can select appropriate bapi from here.. Associated with each bapi documentation is there . from this u will get a clear picture of import params ,export params and tables.
Now to execute BAPI or RFC using JCO,
please go through this sample piece of code. fill the params of standard jco methods with appropriate parameters for your use.
private static JCO.Client client;
private static JCO.Repository repository;
client =
JCO.createClient(
"<client num>",
"<user name>",
"<password>",
"en",
"<server ip or server name>",
"<instance number>");
client.connect();
repository = new JCO.Repository("REP", client);
try {
IFunctionTemplate m_read_container;
m_read_container =repository.getFunctionTemplate("<RFC Name>");
JCO.Function function_read_cont = m_read_container.getFunction();
JCO.ParameterList importparam =
function_read_cont.getImportParameterList();
importparam.setValue(<Your value to pass>, "<Import parameter name as in RFC>");
client.execute(function_read_cont);
JCO.ParameterList tables =
function_read_cont.getTableParameterList();
//For Tables
JCO.Table container = tables.getTable("<Your table Name from table parameter>");
for (int iCtr = 0; iCtr < container.getNumRows(); iCtr++) {
container.setRow(iCtr);
Strin value = container.getString("<Tale fieldName>");
JCO.ParameterList exp_abs_read =
function_read_cont.getExportParameterList();//For Export Params
JCO.Structure st_abs_read =
exp_abs_read.getStructure("<If structure using then give structure name>");
for (int iCtrst = 0;iCtrst < st_abs_read.getNumFields();
iCtrst++) {
// String str_field_val = st_abs_read.getString("<Structure Field Name>"));
String fieldName = st_abs_read.getName(iCtrst);
} catch (Exception e) {
Regards
Kishor Gopinathan -
HI
This is the query on BAPi,I have got one FS on Enhancement.i.e EPOS Upload program,that means i have to upload the data from Excel sheet to sap by using BAPI.I have one BAPI Name also,i.e XBAPI_RE_CN_SALES_REP_REPORT.This was given from onsite,i am workig in offshore,Actually in the excel sheet the fields are comp code,contact number,sale type,report name ,report to,and sales netvolume.But in that BAPI i could not find all the parameters which are existing in the excel sheet.If we want to upload the data from excel sheet,we shud have the same fields in the BAPI na!! to pass from that fucntion module(BAPI).So please tell me the process and coding ,I know its very simple procedure.But I am unable to do it.Please help me outit is necessary to have fields...but there might be a case where company code in BAPI will hold some other field, means it might not be company code but some other field and when executed it transfers data to company code field. also, XBAPI_RE_CN_SALES_REP_REPORT is not a BAPI...check it...
-
Big Troubles on designing Query about special customers' counting
Hello buddies:
I meet a problem on designing Query about special customers' counting. Let me describe the requirment first. I want to create a query with BEX , and there is a key figure with very special logic.
That is: to list the counts of the customers which has more than one sales records in a time period from sales data.
For example :
when the user excute the query , he or she must input a time period ( 2007.01~2007.03 e.g)
then the query output as follow:
District Cust-sount
North-Zone 100
South-Zone 120
The Main trouble are :
1. Threr are no document number in the detail of sales data document records. so I could not count the sales times with document number.
2. The time period is not fixed value, it depends on the user's input, so I can not define the counting logic in the update rule or in the query with fixed time period.
Anybody who met similar requirement pls show me your hand and give your solutions, thanks very much.
JasonHi,
Your solution sounds a good way to count the distinct customers. but in my case, one salse line item must not be recognize as one sales record, instead, one customer's all sales line items occurs in one day must be recognize as one sales record ( or we say that one sales behavior).
for example:
customer product quantity date
cust001 prod001 10 2007.06.06
cust001 prod002 20 2007.06.06
the two line items above means one sales record for the customer "cust001".
so I could not simply use the CKF : (( Counter ) *FV2 ) > 1 .
Best Regards,
Jason -
Query about licensing Jdeveloper
Dear Friends,
I have a query about licensing of Jdeveloper development tool. I understand that Jdeveloper is Free tool.That is we do not require license to use Jdeveloper for development as well as production.
Recent I heard that Jdeveloper is free only if we purchase Oracle Application Server. Is it correct ? Does one need to purchase Jdeveloper license if it is being deployed on any other App. server eg. Jboss etc ?
Can anyone throw light on the same ?
Many thanks,
VaijHi,
JDeveloper is free! Oracle ADF - the binding layer - ADF BC, and ADF Faces need an OracleAs licence
Frank -
About bapi with help of example
about bapi with help of example plz dont give links.
With the correct customizing (order types, etc...) the following BAPI will create a PM order for you.
Naturally the master data is also required to be created in SAP (Technical objects, Work places, etc...)
*& Report Z_BAPI_ALM_ORDER_MAINTAIN_TEST *
REPORT z_bapi_alm_order_maintain_test.
TABLES: mara,
resb. "anyagfoglalások táblája
DATA: it_methods LIKE STANDARD TABLE OF bapi_alm_order_method,
wa_methods LIKE LINE OF it_methods.
DATA: it_header LIKE STANDARD TABLE OF bapi_alm_order_headers_i,
wa_header LIKE LINE OF it_header.
DATA: it_operation LIKE STANDARD TABLE OF bapi_alm_order_operation,
wa_operation LIKE LINE OF it_operation.
DATA: it_component LIKE STANDARD TABLE OF bapi_alm_order_component,
wa_component LIKE LINE OF it_component.
DATA: it_component_up LIKE
STANDARD TABLE OF bapi_alm_order_component_up,
wa_component_up LIKE LINE OF it_component_up.
DATA: et_numbers LIKE STANDARD TABLE OF bapi_alm_numbers,
wa_numbers LIKE LINE OF et_numbers.
DATA: et_extension_in LIKE STANDARD TABLE OF bapiparex,
wa_extension_in LIKE LINE OF et_extension_in.
DATA: et_return LIKE STANDARD TABLE OF bapiret2,
wa_return LIKE LINE OF et_return.
DATA: it_resb LIKE STANDARD TABLE OF resb,
wa_resb LIKE LINE OF it_resb.
DATA: lv_commit TYPE i.
PARAMETERS: p_test AS CHECKBOX DEFAULT 'X'.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_create RADIOBUTTON GROUP rg1 DEFAULT 'X'.
SELECTION-SCREEN COMMENT 4(30) text-rcr.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_change RADIOBUTTON GROUP rg1.
SELECTION-SCREEN COMMENT 4(30) text-rch.
PARAMETERS: p_aufnr LIKE aufk-aufnr MEMORY ID anr.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN SKIP.
PARAMETERS: p_compon AS CHECKBOX DEFAULT 'X'.
PARAMETERS: p_partn AS CHECKBOX DEFAULT 'X'.
START-OF-SELECTION.
IF p_aufnr IS INITIAL.
MOVE '007321002921' TO p_aufnr.
ENDIF.
PERFORM it_methods_fill.
PERFORM it_header_fill.
PERFORM it_operation_fill.
IF p_compon = 'X'.
PERFORM it_component_fill.
ENDIF.
REFRESH et_numbers.
break zaladev.
CALL FUNCTION 'Z_BAPI_ALM_ORDER_MAINTAIN'
TABLES
it_methods = it_methods
it_header = it_header
* IT_HEADER_UP =
* IT_HEADER_SRV =
* IT_HEADER_SRV_UP =
* IT_USERSTATUS =
* IT_PARTNER =
* IT_PARTNER_UP =
it_operation = it_operation
* IT_OPERATION_UP =
* IT_RELATION =
* IT_RELATION_UP =
it_component = it_component
it_component_up = it_component_up
* IT_TEXT = it_text
* IT_TEXT_LINES =
extension_in = et_extension_in
et_return = et_return
et_numbers = et_numbers.
CLEAR lv_commit.
LOOP AT et_return INTO wa_return.
IF wa_return-type = 'S' AND NOT wa_return-message_v2 IS INITIAL.
IF p_test IS INITIAL.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
lv_commit = 1.
ENDIF.
EXIT.
ENDIF.
ENDLOOP.
IF lv_commit IS INITIAL.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
ENDIF.
break zaladev.
*& Form it_methods_fill
* text
* --> p1 text
* <-- p2 text
FORM it_methods_fill.
IF p_create = 'X'. "LÉTREHOZÁS
MOVE '1' TO wa_methods-refnumber.
MOVE 'HEADER' TO wa_methods-objecttype.
MOVE 'CREATE' TO wa_methods-method.
MOVE '%00000000001' TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
MOVE '1' TO wa_methods-refnumber.
MOVE 'OPERATION' TO wa_methods-objecttype.
MOVE 'CREATE' TO wa_methods-method.
MOVE '%000000000010010' TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
MOVE '2' TO wa_methods-refnumber.
MOVE 'OPERATION' TO wa_methods-objecttype.
MOVE 'CREATE' TO wa_methods-method.
MOVE '%000000000010020' TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
MOVE '3' TO wa_methods-refnumber.
MOVE 'OPERATION' TO wa_methods-objecttype.
MOVE 'CREATE' TO wa_methods-method.
MOVE '%0000000000100200010' TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
MOVE '4' TO wa_methods-refnumber.
MOVE 'OPERATION' TO wa_methods-objecttype.
MOVE 'CREATE' TO wa_methods-method.
MOVE '%0000000000100200020' TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
IF p_compon = 'X'.
MOVE 1 TO wa_methods-refnumber.
MOVE 'COMPONENT' TO wa_methods-objecttype.
MOVE 'CREATE' TO wa_methods-method.
MOVE '%00000000001' TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
MOVE 2 TO wa_methods-refnumber.
MOVE 'COMPONENT' TO wa_methods-objecttype.
MOVE 'CREATE' TO wa_methods-method.
MOVE '%00000000001' TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
ENDIF.
MOVE '1' TO wa_methods-refnumber.
MOVE '' TO wa_methods-objecttype.
MOVE 'SAVE' TO wa_methods-method.
MOVE '%00000000001' TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
ELSE. "MÓDOSÍTÁS
MOVE '1' TO wa_methods-refnumber.
MOVE 'HEADER' TO wa_methods-objecttype.
MOVE 'CHANGE' TO wa_methods-method.
MOVE p_aufnr TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
IF p_compon = 'X'.
MOVE 1 TO wa_methods-refnumber.
MOVE 'COMPONENT' TO wa_methods-objecttype.
MOVE 'CHANGE' TO wa_methods-method.
MOVE p_aufnr TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
MOVE 2 TO wa_methods-refnumber.
MOVE 'COMPONENT' TO wa_methods-objecttype.
MOVE 'CHANGE' TO wa_methods-method.
MOVE p_aufnr TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
MOVE 3 TO wa_methods-refnumber.
MOVE 'COMPONENT' TO wa_methods-objecttype.
MOVE 'DELETE' TO wa_methods-method.
MOVE p_aufnr TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
ENDIF.
MOVE '1' TO wa_methods-refnumber.
MOVE '' TO wa_methods-objecttype.
MOVE 'SAVE' TO wa_methods-method.
MOVE p_aufnr TO wa_methods-objectkey.
APPEND wa_methods TO it_methods.
ENDIF.
ENDFORM. " it_methods_fill
*& Form it_header_fill
* text
* --> p1 text
* <-- p2 text
FORM it_header_fill .
IF p_create = 'X'. "LÉTREHOZÁS
MOVE '%00000000001' TO wa_header-orderid.
MOVE 'D210' TO wa_header-order_type. "rendelésfajta
MOVE '2000' TO wa_header-planplant. "tervező gyár
MOVE '19' TO wa_header-mn_wk_ctr. "fel.munkahely
MOVE '2000' TO wa_header-plant. "fel.munkahely gyára
MOVE 'CUV-SZV-CSUR-ATEM-I...' TO wa_header-funct_loc. "műsz.hely
MOVE '' TO wa_header-equipment. "berendezés
MOVE '' TO wa_header-material. "anyagszám
* MOVE '' TO wa_header-LOC_WK_CTR. "fel.munkahely
* MOVE '' TO wa_header-LOC_COMP_CODE. "vállalat
* MOVE sy-datum TO wa_header-START_DATE. "kezdés dátuma
* MOVE sy-datum TO wa_header-FINISH_DATE. "befejezés dátuma
* MOVE '' TO wa_header-BASICSTART. "kezdés időpontja
* MOVE '' TO wa_header-BASIC_FIN. "befejezés időpontja
MOVE 'Teszt szöveg 1' TO wa_header-short_text. "szöveg
APPEND wa_header TO it_header.
ELSE. "MÓDOSÍTÁS
MOVE p_aufnr TO wa_header-orderid.
MOVE 'CUV-SZV-CSUR-ATEM-II..' TO wa_header-funct_loc. "műsz.hely
MOVE 'Teszt szöveg módosítva 2' TO wa_header-short_text. "szöveg
APPEND wa_header TO it_header.
ENDIF.
ENDFORM. " it_header_fill
*& Form it_operation_fill
* text
* --> p1 text
* <-- p2 text
FORM it_operation_fill .
IF p_create = 'X'. "LÉTREHOZÁS
MOVE 10 TO wa_operation-activity. "művelet
MOVE '' TO wa_operation-sub_activity. "al-művelet
MOVE 'PM01' TO wa_operation-control_key. "vezérlő kulcs
* MOVE '19' TO wa_operation-WORK_CNTR. "munkahely
* MOVE '2000' TO wa_operation-PLANT. "gyár
MOVE '' TO wa_operation-standard_text_key. "mintakulcs
MOVE 'Művelet leírása 1.sor' TO wa_operation-description."leírás
MOVE '' TO wa_operation-vendor_no. "szállító
* MOVE 3 TO wa_operation-quantity. "mennyiség
* MOVE 'KG' TO wa_operation-base_uom. "menny.egys.
* MOVE 500 TO wa_operation-PRICE. "ár
* MOVE 1 TO wa_operation-PRICE_UNIT. "áregység
* MOVE 'HUF' TO wa_operation-CURRENCY. "pénznem
* MOVE '' TO wa_operation-PERS_NO. "törzsszám
MOVE 10 TO wa_operation-work_activity. "művelet munkája
* MOVE 'KG' TO wa_operation-UN_WORK. "művelet munkája
MOVE 2 TO wa_operation-number_of_capacities. "szüks. kapacitás
APPEND wa_operation TO it_operation.
MOVE 20 TO wa_operation-activity. "művelet
MOVE '' TO wa_operation-sub_activity. "al-művelet
MOVE 'PM01' TO wa_operation-control_key. "vezérlő kulcs
* MOVE '19' TO wa_operation-WORK_CNTR. "munkahely
* MOVE '2000' TO wa_operation-PLANT. "gyár
MOVE '' TO wa_operation-standard_text_key. "mintakulcs
MOVE 'Művelet leírása 2.sor' TO wa_operation-description."leírás
MOVE '' TO wa_operation-vendor_no. "szállító
* MOVE 5 TO wa_operation-quantity. "mennyiség
* MOVE 'KG' TO wa_operation-base_uom. "menny.egys.
* MOVE 500 TO wa_operation-PRICE. "ár
* MOVE 1 TO wa_operation-PRICE_UNIT. "áregység
* MOVE 'HUF' TO wa_operation-CURRENCY. "pénznem
* MOVE '' TO wa_operation-PERS_NO. "törzsszám
MOVE 5 TO wa_operation-work_activity. "művelet munkája
* MOVE 'KG' TO wa_operation-UN_WORK. "művelet munkája
MOVE 1 TO wa_operation-number_of_capacities. "szüks. kapacitás
APPEND wa_operation TO it_operation.
MOVE 20 TO wa_operation-activity. "művelet
MOVE 10 TO wa_operation-sub_activity. "al-művelet
MOVE 'PM01' TO wa_operation-control_key. "vezérlő kulcs
* MOVE '19' TO wa_operation-WORK_CNTR. "munkahely
* MOVE '2000' TO wa_operation-PLANT. "gyár
MOVE '' TO wa_operation-standard_text_key. "mintakulcs
MOVE 'Alművelet leírása 2/1.sor' TO wa_operation-description."leírás
MOVE '' TO wa_operation-vendor_no. "szállító
* MOVE 5 TO wa_operation-quantity. "mennyiség
MOVE 'KG' TO wa_operation-base_uom. "menny.egys.
* MOVE 500 TO wa_operation-PRICE. "ár
* MOVE 1 TO wa_operation-PRICE_UNIT. "áregység
* MOVE 'HUF' TO wa_operation-CURRENCY. "pénznem
* MOVE '' TO wa_operation-PERS_NO. "törzsszám
MOVE 2 TO wa_operation-work_activity. "művelet munkája
* MOVE 'KG' TO wa_operation-UN_WORK. "művelet munkája
MOVE 1 TO wa_operation-number_of_capacities. "szüks. kapacitás
APPEND wa_operation TO it_operation.
MOVE 20 TO wa_operation-activity. "művelet
MOVE 20 TO wa_operation-sub_activity. "al-művelet
MOVE 'PM01' TO wa_operation-control_key. "vezérlő kulcs
* MOVE '19' TO wa_operation-WORK_CNTR. "munkahely
* MOVE '2000' TO wa_operation-PLANT. "gyár
MOVE '11' TO wa_operation-standard_text_key. "mintakulcs
MOVE 'Alművelet leírása 2/2.sor' TO wa_operation-description."leírás
MOVE '' TO wa_operation-vendor_no. "szállító
MOVE 5 TO wa_operation-quantity. "mennyiség
MOVE 'KG' TO wa_operation-base_uom. "menny.egys.
* MOVE 500 TO wa_operation-PRICE. "ár
* MOVE 1 TO wa_operation-PRICE_UNIT. "áregység
* MOVE 'HUF' TO wa_operation-CURRENCY. "pénznem
* MOVE '' TO wa_operation-PERS_NO. "törzsszám
MOVE 3 TO wa_operation-work_activity. "művelet munkája
* MOVE 'KG' TO wa_operation-UN_WORK. "művelet munkája
MOVE 1 TO wa_operation-number_of_capacities. "szüks. kapacitás
APPEND wa_operation TO it_operation.
ELSE. "MÓDOSÍTÁS
ENDIF.
ENDFORM. " it_operation_fill
*& Form it_component_fill
* text
* --> p1 text
* <-- p2 text
FORM it_component_fill.
IF p_create = 'X'. "LÉTREHOZÁS
MOVE '0010' TO wa_component-item_number.
MOVE '000000023336110300' TO wa_component-material. "cikkszám
MOVE '2000' TO wa_component-plant. "gyár
MOVE '0001' TO wa_component-stge_loc. "raktár
MOVE 1 TO wa_component-requirement_quantity. "felh.m.
MOVE '0020' TO wa_component-activity. "művelet
APPEND wa_component TO it_component.
MOVE '0020' TO wa_component-item_number.
MOVE '000000095000001900' TO wa_component-material. "cikkszám
MOVE '2000' TO wa_component-plant. "gyár
MOVE '' TO wa_component-stge_loc. "raktár
MOVE 2 TO wa_component-requirement_quantity. "felh.m.
MOVE '0020' TO wa_component-activity. "művelet
MOVE 'N' TO wa_component-item_cat. "tételtípus
MOVE '0000000014' TO wa_component-vendor_no. "szállító
APPEND wa_component TO it_component.
ELSE. "MÓDOSÍTÁS
SELECT * FROM resb
INTO TABLE it_resb
WHERE aufnr EQ p_aufnr.
IF sy-subrc = 0.
READ TABLE it_resb INTO wa_resb
WITH KEY aufnr = p_aufnr.
MOVE wa_resb-rsnum TO wa_component-reserv_no.
ELSE.
CLEAR wa_component-reserv_no.
ENDIF.
MOVE '0010' TO wa_component-item_number.
MOVE '0001' TO wa_component-res_item.
* MOVE '000000023336110400' TO wa_component-material. "cikkszám
* MOVE '2000' TO wa_component-plant. "gyár
* MOVE '0001' TO wa_component-stge_loc. "raktár
MOVE 6 TO wa_component-requirement_quantity. "felh.m.
MOVE '0020' TO wa_component-activity. "művelet
APPEND wa_component TO it_component.
MOVE 'X' TO wa_component_up-requirement_quantity.
MOVE 'X' TO wa_component_up-activity.
APPEND wa_component_up TO it_component_up.
MOVE '0020' TO wa_component-item_number.
MOVE '0002' TO wa_component-res_item.
* MOVE '000000095000001800' TO wa_component-material. "cikkszám
* MOVE '2000' TO wa_component-plant. "gyár
* MOVE '0001' TO wa_component-stge_loc. "raktár
MOVE 6 TO wa_component-requirement_quantity. "felh.m.
MOVE '0010' TO wa_component-activity. "művelet
APPEND wa_component TO it_component.
* MOVE 'X' TO wa_component_up-material.
MOVE 'X' TO wa_component_up-requirement_quantity.
MOVE 'X' TO wa_component_up-activity.
APPEND wa_component_up TO it_component_up.
MOVE '0030' TO wa_component-item_number.
MOVE '000000023336110400' TO wa_component-material. "cikkszám
MOVE '2000' TO wa_component-plant. "gyár
MOVE '0001' TO wa_component-stge_loc. "raktár
MOVE 7 TO wa_component-requirement_quantity. "felh.m.
MOVE '0020' TO wa_component-activity. "művelet
APPEND wa_component TO it_component.
ENDIF.
ENDFORM. " it_component_fill -
New issue in R 12.1.3 in AP while query about inovice was recorded in AP
i record new invoice in ap on release R 12.1.3 and when query about it on invoice form the error appeare was it
forms
FRM-40735:POST-QUERY trigger raised unhandled exception ORA-04063
how can someone help usHi,
Please see these docs.
R12:Getting FRM-40735 Post-Query Trigger On Quering Invoice [ID 1209736.1]
After Applying Patch APXINWKB.fmb Is Not Working [ID 1159124.1]
R12.1.1 APXINWKB Invoice Workbench Form Comes Up With 'ORA-01403' [ID 949942.1]
12.1.1: FRM-40735: Post-Query Trigger Raised Unhandled Exception ORA-04063 [ID 1077613.1]
Query on Invoices, Getting "FRM-40735: POST-QUERY trigger raised unhandled exception ORA-4063" [ID 1076609.1]
Thanks,
Hussein -
Querying a BAPI Function Module
Is it possible to write a query on the BAPI Function Module. For example I have a views in oracle database and i can query the views based on some condition and get the required data from the views. In the same way is it possible to query the BAPI function module to get the data based on given condition
Hi Nikki,
You can use FM RFC_READ_TABLE to read data from any SAP table.
Also check following post by Raja -
RFC_READ_TABLE for SAP Web AS - Code Sample
Cheers,
Sanjeev -
When I run the BAPI "BAPI_PBSRVAPS_GETDETAIL" .It gives me a short dump.
When I run the BAPI "BAPI_PBSRVAPS_GETDETAIL" .It gives me a short dump.
Can anybody help me with this?This is the content of the dump.
Runtime Errors OBJECTS_OBJREF_NOT_ASSIGNED
Except. CX_SY_REF_IS_INITIAL
Date and Time 05/17/2007 11:21:29
Short text
Access via 'NULL' object reference not possible.
What happened?
Error in the ABAP Application Program
The current ABAP program "/SAPAPO/SAPLADVF" had to be terminated because it has
come across a statement that unfortunately cannot be executed.
Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was not
caught in
procedure "/SAPAPO/ADVF_CELL_INPUT" "(FUNCTION)", nor was it propagated by a
RAISING clause.
Since the caller of the procedure could not have anticipated that the
exception would occur, the current program is terminated.
The reason for the exception is:
You attempted to use a 'NULL' object reference (points to 'nothing')
access a component (variable: "C_S_ACTVIEW-AGC_CHILD1-APOGRID").
An object reference must point to an object (an instance of a class)
before it can be used to access components.
Either the reference was never set or it was set to 'NULL' using the
CLEAR statement.
Missing RAISING Clause in Interface
Program /SAPAPO/SAPLADVF
Include /SAPAPO/LADVFU06
Row 1
Module type (FUNCTION)
Module Name /SAPAPO/ADVF_CELL_INPUT
Trigger Location of Exception
Program /SAPAPO/SAPLADVF
Include /SAPAPO/LADVFU06
Row 81
Module type (FUNCTION)
Module Name /SAPAPO/ADVF_CELL_INPUT
Source Code Extract
Line SourceCde
51 *#TR# (1) Check arguments: Read only mode must be 0, 1 or 2 and row and column must be provi
52 if f_argument2 is initial or f_argument3 is initial.
53 break-point id /SAPAPO/ADV__EXECUTION. clear f_argument. f_calc_error = true. exit.
54 endif.
55
56
57 *#TR# (1a) Calculate line number of the cell (line + line offset)
58 l_line = f_argument2 + i_line_offset.
59
60 *#TR# (1b) Set L_CELL_READONLY depending on the read only mode F_ARGUMENT
61 case f_argument.
62 when 0. l_cell_readonly = /sapapo/cl_agc_base=>gs_c_agc_readonly_values-read_only.
63 when 1. l_cell_readonly = /sapapo/cl_agc_base=>gs_c_agc_readonly_values-read_write.
64 when 2. l_cell_readonly = /sapapo/cl_agc_base=>gs_c_agc_readonly_values-stateless.
65 when others.
66 break-point id /SAPAPO/ADV__EXECUTION. clear f_argument. f_calc_error = true. return.
67 endcase.
68
69 *#TR# (1c) The input status of cells set to read only by the data view definition (history)
70 if f_argument3 < g_s_cols_properties-first_input_column.
71 return.
72 endif.
73
74 *#TR# (1d) Note 1005813: The old APOGRID does not support the read only mode
75 *#TR# /SAPAPO/CL_AGC_BASE=>GS_C_AGC_READONLY_VALUES-READ_WRITE. For compatibility reasons, w
76 *#TR# read only mode /SAPAPO/CL_AGC_BASE=>GS_C_AGC_READONLY_VALUES-STATELESS
77
78 *#TR# Determine version of APOGRID to check, if new or old APOGRID is used. The version is b
79 *#TR# reasons
80 if g_agc_grid_version is initial.
>>>> c_s_actview-agc_child1-apogrid->get_control_version(
82 IMPORTING
83 apogrid = l_apogrid
84 EXCEPTIONS
85 cntl_system_error = 1
86 cntl_error = 2
87 others = 3
88 ).
89 if sy-subrc <> 0.
90 break-point id /sapapo/adv__execution. clear f_argument. f_calc_error = true. exit.
91 endif.
92
93 g_agc_grid_version = l_apogrid.
94 endif.
95
96 *#TR# If the old grid is used change read only mode if necessary
97 if g_agc_grid_version < 200
98 and l_cell_readonly = /sapapo/cl_agc_base=>gs_c_agc_readonly_values-read_write.
99
100 l_cell_readonly = /sapapo/cl_agc_base=>gs_c_agc_readonly_values-stateless. -
Could anyone just possibly tell me about BAPI'S and BADI'S in brief?
Hi all,
Could anyone just possibly tell me about BAPI'S and BADI'S in brief?
Regards in advance,
Sanjeev K.V.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
Reward if u find useful
Regards
Nagesh.Paruchuri
Maybe you are looking for
-
How do I force-eject a CD when I cannot even get to the start-up screen?
Friends, Let me first apologize for getting myself into this mess, in the first place. I bought a second-hand iBook G4 in the U.S., for a friend of mine, and brought it to South America, where I am living for one year, but far from any Mac Repair Cen
-
Got Problem in Applet data transfer
Hello, I got a problem when building my java applet by using swing. I need to copy to some text from the JTextArea in my GUI, but it was rejected, and when i try to use some method of TextComponent, like TextArea.copy(), which is available in Java Ap
-
my battery wasn't holding a charge so i backed it up on my mac and restored. How do i get my calendar entries, etc back?
-
Layer 2 connect - data center web hosting
hi, i need your help!! i have data center with the nexus 7000 , i have servers connecting to the cisco 7000 with web servers. my company do hosting for customers. the poing that we have shared resources like vmwares on blades and so on.. mean that th
-
Sun One Application Server 8 support PHP?
Hi, just wanna know if PHP can run with Sun one 8 and if possible, is there any guides around? Cheers Kien