Poviding inpiut to datasource from output of another datasource
Hi All,
I hv two datasources, bapis to be precise. The output of one bapi(A) provides the input to the other bapi [BAPI B - provides me the data for display on iview].
i hv a datalink connected from output port of A to input port of B and mapped the fields as well. However, this doesnt seem to work!
I tried setting guard condition to true, no events are required in this case, but tried this too..The data does not seem to be transferred from A to B.
I tried saving the output of A to a datasource and then mapping this to B, but this didn't work either..
I'm stumped, this is quite simple, but am i missing something here? Would appreciate any advice here, thanks!
Hi,
I think you have not mapped the o/ps and the i/ps fields of the two bapis.
Please try to follow this:
1.> Create a signal out with 1st bapi output and select the fields which you want to set as the inputs for the second Bapi.Do not forget to name the event as the same name which you have given to trigger the 1st bapi.
2.> Create a signal in and mention the same fields which you have given in the signal out. Then link it with the input of the 2nd Bapi.
3.> Then Drag the form from the 2nd bapi to display the output.
It will work when the output of the 1st bapi and the inputs of the 2nd bapi are same.
I hope this will be helpful.
Regards,
Nutan
Similar Messages
-
How to change the datasource from one server to another server?
i need to change the datasource from development environment to production server. i had configured the JNDI informations like the following in the 'context.xml':
<Context path="/RFT" docBase="RFT" reloadable="true">
<Resource
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"
validationQuery="select 1"
name="jdbc/datasource"
username="sa"
password="$m1sbag$"
maxIdle="-1"
maxActive="0"
maxWait="5000"
url="jdbc:microsoft:sqlserver://172.24.151.149:1433;databaseName=Projectgold" />
<WatchedResource>WEB-INF/web.xml</WatchedResource>
</Context>
and in 'web.xml' included the following code:
<resource-ref>
<res-ref-name>jdbc/datasource</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
and mentioned the JNDI Connection Name in the .rpt file as 'jdbc/datasource', but still getting the same connection which one is configured during the report design. need a help to resolve this...
Thanks,
Rameventhough it's working fine. I may have deployment problem. Anyway thanks for the reply.
Regards,
Ram -
Problem with Generic datasource from function
I developed generic datasource from function module.
But I have problem with the select options.
First one is order number OBJECT_ID type char 10. When I input Object_ID = 45755 , no data selected.
When input 0000045755, one data record selected.
But I called functiion CONVERSION_EXIT_ALPHA_INPUT to conevet the input data. And I found 45755 was converted to 0000045755, but no record selected.
LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'OBJECT_ID'.
MOVE-CORRESPONDING L_S_SELECT TO L_R_OBJECT_ID.
APPEND L_R_OBJECT_ID.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = L_R_OBJECT_ID-high
IMPORTING
OUTPUT = L_R_OBJECT_ID-high
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = L_R_OBJECT_ID-low
IMPORTING
OUTPUT = L_R_OBJECT_ID-low
ENDLOOP.
Another problem is CREATED_AT, which type is DEC 15, how could I handle it ? input is yyyymmdd, I tried to add '000000', but can't select any data.
Thanks for any help.code is :
FUNCTION ZACTIVITY_PLAN_PARTNER.
""Local Interface:
*" IMPORTING
*" VALUE(I_REQUNR) TYPE SRSC_S_IF_SIMPLE-REQUNR
*" VALUE(I_DSOURCE) TYPE SRSC_S_IF_SIMPLE-DSOURCE OPTIONAL
*" VALUE(I_MAXSIZE) TYPE SRSC_S_IF_SIMPLE-MAXSIZE OPTIONAL
*" VALUE(I_INITFLAG) TYPE SRSC_S_IF_SIMPLE-INITFLAG OPTIONAL
*" VALUE(I_READ_ONLY) TYPE SRSC_S_IF_SIMPLE-READONLY OPTIONAL
*" VALUE(I_REMOTE_CALL) TYPE SBIWA_FLAG DEFAULT SBIWA_C_FLAG_OFF
*" TABLES
*" I_T_SELECT TYPE SRSC_S_IF_SIMPLE-T_SELECT OPTIONAL
*" I_T_FIELDS TYPE SRSC_S_IF_SIMPLE-T_FIELDS OPTIONAL
*" E_T_DATA STRUCTURE ZACTIVITY_PLAN_PARTNER OPTIONAL
*" EXCEPTIONS
*" NO_MORE_DATA
*" ERROR_PASSED_TO_MESS_HANDLER
Example: DataSource for table SFLIGHT
TABLES: CRMD_ORDERADM_H.
Auxiliary Selection criteria structure
DATA: L_S_SELECT TYPE SRSC_S_SELECT.
DATA: BEGIN OF ACTIVITY,
OBJECT_ID type CRMT_OBJECT_ID_DB,
PROCESS_TYPE type CRMT_PROCESS_TYPE_DB,
OBJECT_TYPE type CRMT_SUBOBJECT_CATEGORY_DB,
CREATED_BY type CRMT_CREATED_BY,
CREATED_AT type CRMT_CREATED_AT,
END OF ACTIVITY.
DATA: ZACTIVITY LIKE TABLE OF ACTIVITY WITH HEADER LINE,
Zorder LIKE TABLE OF ZORDER_S WITH HEADER LINE,
d_start type c length 15,
d_end type c length 15
Maximum number of lines for DB table
STATICS: S_S_IF TYPE SRSC_S_IF_SIMPLE,
counter
S_COUNTER_DATAPAKID LIKE SY-TABIX,
cursor
S_CURSOR TYPE CURSOR.
Select ranges
RANGES: L_R_OBJECT_ID FOR CRMD_ORDERADM_H-OBJECT_ID,
L_R_CREATED_AT FOR CRMD_ORDERADM_H-CREATED_AT,
L_R_date for ZACTIVITY_PLAN_PARTNER-ZPLAN_DAT.
Initialization mode (first call by SAPI) or data transfer mode
(following calls) ?
IF I_INITFLAG = SBIWA_C_FLAG_ON.
Check DataSource validity
CASE I_DSOURCE.
WHEN 'ZACTIVITY_PLAN_PARTNER'.
WHEN OTHERS.
IF 1 = 2. MESSAGE E009(R3). ENDIF.
this is a typical log call. Please write every error message like this
RAISE ERROR_PASSED_TO_MESS_HANDLER.
ENDCASE.
APPEND LINES OF I_T_SELECT TO S_S_IF-T_SELECT.
Fill parameter buffer for data extraction calls
S_S_IF-REQUNR = I_REQUNR.
S_S_IF-DSOURCE = I_DSOURCE.
S_S_IF-MAXSIZE = I_MAXSIZE.
APPEND LINES OF I_T_FIELDS TO S_S_IF-T_FIELDS.
ELSE. "Initialization mode or data extraction ?
First data package -> OPEN CURSOR
IF S_COUNTER_DATAPAKID = 0.
LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'OBJECT_ID'.
MOVE-CORRESPONDING L_S_SELECT TO L_R_OBJECT_ID.
APPEND L_R_OBJECT_ID.
ENDLOOP.
if L_R_OBJECT_ID-option is initial.
L_R_OBJECT_ID-option = 'EQ'.
L_R_OBJECT_ID-sign ='I'.
endif.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = L_R_OBJECT_ID-high
IMPORTING
OUTPUT = L_R_OBJECT_ID-high
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = L_R_OBJECT_ID-low
IMPORTING
OUTPUT = L_R_OBJECT_ID-low
LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'CREATED_AT'.
MOVE-CORRESPONDING L_S_SELECT TO L_R_CREATED_AT.
APPEND L_R_CREATED_AT.
ENDLOOP.
OPEN CURSOR WITH HOLD S_CURSOR FOR
SELECT OBJECT_ID FROM CRMD_ORDERADM_H
WHERE OBJECT_ID IN L_R_OBJECT_ID
AND CREATED_AT IN L_R_CREATED_AT and
PROCESS_TYPE EQ 'Z220'.
ENDIF. "First data package ?
Fetch records into interface table.
named E_T_'Name of extract structure'.
FETCH NEXT CURSOR S_CURSOR
APPENDING CORRESPONDING FIELDS
OF TABLE E_T_DATA
PACKAGE SIZE S_S_IF-MAXSIZE.
IF SY-SUBRC <> 0.
CLOSE CURSOR S_CURSOR.
RAISE NO_MORE_DATA.
ENDIF.
S_COUNTER_DATAPAKID = S_COUNTER_DATAPAKID + 1.
ENDIF. "Initialization mode or data extraction ?
ENDFUNCTION. -
Passing the output to another program
Passing the output to another program
The problem I have that I don�t know how to pass the results of my java Program ( as parameter) to another application!
I have a class �A.class� should send result �VAR_result� to application �B.application�
Now I am using it like this: System.out (VAR_result) >> B.application
But it could not be the right way at least because I cant make any other System.out as debug now.
My Question please: to pass a parameter to a java is clear: A.class ( var ..)
But how to take a parameter from a class, to use it in another Applicatin ( script )?
Thanks a lotslackware2007 wrote:
Passing the output to another program
The problem I have that I don’t know how to pass the results of my java Program ( as parameter) to another application!
I have a class “A.class” should send result “VAR_result” to application “B.application”
Now I am using it like this: System.out (VAR_result) >> B.application
But it could not be the right way at least because I cant make any other System.out as debug now.Then move your debug to System.err and use System.out as it should be used and pipe stdout to the stdin of the other application.. -
Hello All,
I have a problem I am trying to work thru and I need some assistance.
Here is the issue...
I have a report, in which I want to completely remove uneeded rows (depending on the contents of the row).
I have had a look thru the how-to papers on the TAble interface (so please don't post links to those, they are not what I am searching for as they only describe things like not displaying cell contents, and like I stated, I want to not show rows...ie, delete them from output.)
Does anyone have some code to show me how to accomplish this?
Here is my scenerio...
I have a query, from the 0IC_C03 infocube (I understand the IM scenerio, so don't post links to the SAP help for How-to on this subject), and in the query, I have storage location and material. As we all already know, the infocube does not give a good solution to provide values only on Storage location. But, to get around this, you can have a report with Material in the rows, and do a calculation (Price * Qty) to get the totals by storage location. But, I do not want to show the materials. (Yes, I know there is yet another how to paper on realizing inventory on storage location level, but that does not produce correct results).
The query is doing exactly what I want...here is the results.
STORLOC____MATERIAL_____VALUE
<b>LOC1________RESULT_______$200000</b>
LOC1________MATNR1_______$150000
LOC1________MATNR2_______$50000
<b>LOC2________RESULT_______$2500</b>
LOC2________MATNR3_______$1500
LOC2________MATNR4_______$1000
<b>LOC3________RESULT_______$500</b>
LOC3________MATNR5_______$500
You get the idea...
Anyway, I want to turn the above, into the following..
STORLOC____MATERIAL_____VALUE
<b>LOC1________RESULT_______$200000
LOC2________RESULT_______$2500
LOC3________RESULT_______$500</b>
Essentially, removing everything but the results rows...
Now, I have read a few other questions out here on something similiar (someone else was trying to accomplish the same thing) but nobody has ever posted a reasonable answer to the above question, so I am hoping, some of you have a solution, either via defining my own CL_RSR_WWW_MODIFY_TABLE solution or via Javascript.
If someone has accomplished this with the table interface, which method and how did you change the table?
If someone has accomplished this with javascript or something else, I would like the details of that as well.
Note: I was able to read the table, and was able to use a temp table, and remove the rows I did not want, but, I was not able to update the table passed by the interface.
This code works to get the right rows, but, it doesn't allow me to update the passing table.
DATA:wa_y_axis_data LIKE LINE OF
I_r_data_set->n_sx_version_20a_1-axis_data,
wa_cell_data LIKE LINE OF
I_r_data_set->n_sx_version_20a_1-cell_data,
set LIKE LINE OF wa_y_axis_data-set,
TUPLE_ORDINAL like set-TUPLE_ORDINAL,
l_counter TYPE i,
l_index TYPE sy-index,
l_trade_fvalue LIKE wa_cell_data-formatted_value.
* prerequesite in example: 1 key figure and 1 calc. key figure column
LOOP AT I_r_data_set->n_sx_version_20a_1-axis_data INTO wa_y_axis_data
WHERE AXIS = 1.
LOOP at wa_y_axis_data-set into set.
l_index = sy-index.
if set-chanm = 'A0MAT_PLT' AND set-chavl NE 'SUMME'.
delete wa_y_axis_data-set where tuple_ordinal = set-tuple_ordinal.
ENDIF.
ENDLOOP.
ENDLOOP.
Any similiar experiences or feedback is appreciated.
Cheers!
/smwHi Steve,
just want to know why the material has to be present in this report - when not shown in the end - just to have it in the column or why wonder?
regards, Johannes -
Adding numbers in a file a and saving the output in another file.!
can any one pls tell me how to add numbers from a textfile and save the output in another textfile. i'm new with java so pls help out..
Hi Friend,
your statement is not clear, it's bit confuse
this is my unserstanding,
you want to open a file and read the values then add numbers,
latter save the sum in a new file.let me know if this is the thing, I can help u
with Cheers
Prasanna -
Problem to initialize delta queue of datasource from CRM 7.0.
Hi all,
I've some problem to initialize delta queue of datasource from CRM 7.0. After initialize the Init in BW, the delta queue was created but after the user changed data, this changed didn't populated into delta queue.
I tried the steps below but without any success. Anybody know how can I correct this issue?
Suggestion 3: Please check the following.
Please Check if the services have been generated in transaction GNRWB.
If they are not active(not marked 'X' before their names) then activate
the services following the steps here.
Go to transaction GNRWB
Select BUS_TRANS_MSG
Select (on the right, the services) : BWA_DELTA3, BWA_FILL, BWA_queue
Press Generate.
Also check for the following:
1. The delta should have been initialized successfully.
2. Confirm that all Bdocs of type BUS_TRANS_MSG
are processed with success in SMW01.
3. If there are queues in SMQ1 with erroneous status then activate
these queues.
In Transaction SMQ1 if there are Queues existing with
names beginning with CRM_BWAn (n is number) then
activate these queues in the same transaction.
4.a)If required activate the datasource
Go to transaction BWA5 > select the required datasource and
activate.
4 b) The Delta may not be active ,activate the delta in BWA7 by
selecting the name of the datsource and pressing the candle icon for
'activate delta'.
5. In BW system
Go to transaction RSA1 > modeling > infosources > select the
infosource > right mouse click on the selected
infosource > choose option replicate datasource
Activate the infosource.
6. Go to the scheduler for the infosource > select delta in the
update >choose the option PSA only (in the Processing tab)Hi Peter,
Thank you for your answer.
But we need to find out what the reason for this import error is.
Our customer will not be very pleased to see that all IDocs from CRM system cannot be found in the IDOC folder.
IDX2 import of metadata is no issue.
We were successful for standard and customer Idocs here.
Additional information:
We are already importing Idocs from a SAP ECC 6.0 system into PI in another SWCV
successfully. So this is a CRM system specific issue in our environment.
Regards
Dirk
Edited by: Meinhard Dirk on Aug 27, 2010 10:30 AM -
Mac desktop. 10.6.8. Text edit. Not locked. Read and write, not read only. Documents are locking when they are moved from desktop to another folder or saved directly into that folder on the server. Not happening with anyone else but me and the boss's computer so has to be in the properties for my text edit software. Techies can't figure it out after trying for two weeks. Boss can do a cut and paste and put into a new document, but that's starting to become a problem.
Mac desktop. 10.6.8. Text edit. Not locked. Read and write, not read only. Documents are locking when they are moved from desktop to another folder or saved directly into that folder on the server. Not happening with anyone else but me and the boss's computer so has to be in the properties for my text edit software. Techies can't figure it out after trying for two weeks. Boss can do a cut and paste and put into a new document, but that's starting to become a problem.
-
Unable to call a procedure from inside a another procedure
Dear members
I am trying to call a procedure from inside an another procedure.Both the procedures are present within the same package.I am trying to call the second procedure just before the end of the first procedure.Both the procedures are compiling fine but the tables are not getting populated inside the second procedure.Also the DBMS_OUTPUT statements present in second procedures are not getting displayed.(I feel the second procedured is not getting called).
The package specification is as follows:
CREATE OR REPLACE package ANVESH.conv_api_pkg
is
PROCEDURE PROC_CONVERSION_API(FILE_PATH IN VARCHAR2,FILE_NAME IN VARCHAR2) ;
TYPE cts_order_details IS TABLE OF XXCTS_ORDER_DETAILS_STG%ROWTYPE;
PROCEDURE proc_conversion_api2(p_orderdetails IN cts_order_details) ;
end conv_api_pkg;The package body is as follows:
CREATE OR REPLACE package body ANVESH.conv_api_pkg
is
PROCEDURE PROC_CONVERSION_API(FILE_PATH IN VARCHAR2,FILE_NAME IN VARCHAR2)
IS
v_file_type utl_file.file_type;
v_buffer VARCHAR2(1000);
V_CUSTOMER_NAME VARCHAR2(100);
V_MANUFACTURER VARCHAR2(100);
V_PRODUCT_NAME VARCHAR2(100);
V_QUANTITY NUMBER;
V_REQ_SHIP_DATE DATE;
V_REQ_PRICE NUMBER;
V_LOG_FILE utl_file.file_type;
V_COUNT_CUST NUMBER;
V_COUNT_PROD NUMBER;
L_ORDER_LINES CONV_API_PKG.cts_order_details:=CONV_API_PKG.cts_order_details();
BEGIN
DBMS_OUTPUT.PUT_LINE('Inside begin 1');
v_file_type := UTL_FILE.fopen(FILE_PATH, FILE_NAME, 'r',null);
DBMS_OUTPUT.PUT_LINE('Inside begin 1.1');
LOOP
BEGIN
DBMS_OUTPUT.PUT_LINE('Inside begin 2');
UTL_FILE.GET_LINE (v_file_type,v_buffer);
DBMS_OUTPUT.PUT_LINE('Inside begin 2.1');
DBMS_OUTPUT.PUT_LINE('the buffer is '||v_buffer);
DBMS_OUTPUT.PUT_LINE('the length of buffer is '||length(v_buffer));
V_CUSTOMER_NAME := trim(substr(v_buffer, 1, 30));
DBMS_OUTPUT.PUT_LINE('Customer Name is '||V_CUSTOMER_NAME);
V_MANUFACTURER := trim(substr(v_buffer, 31, 40));
DBMS_OUTPUT.PUT_LINE('Manufacturer is '||V_MANUFACTURER);
V_PRODUCT_NAME := trim(substr(v_buffer, 71, 20));
DBMS_OUTPUT.PUT_LINE('Product Name is '||V_PRODUCT_NAME);
V_QUANTITY := to_number(trim(substr(v_buffer, 91, 5)));
DBMS_OUTPUT.PUT_LINE('Quantity is '||V_QUANTITY);
V_REQ_SHIP_DATE := to_date(trim(substr(v_buffer, 96, 20)), 'DD-MON-YYYY');
DBMS_OUTPUT.PUT_LINE('Requested Ship Date is '|| V_REQ_SHIP_DATE);
V_REQ_PRICE :=nvl(substr( trim(v_buffer), 116, length(v_buffer)-116),0);
--DBMS_OUTPUT.PUT_LINE('Requested Price is1 '||substr(v_buffer, 116, 5));
DBMS_OUTPUT.PUT_LINE('The requested price is '||V_REQ_PRICE);
V_LOG_FILE := UTL_FILE.FOPEN(FILE_PATH, 'LOG_FILE.dat', 'A');
IF (V_QUANTITY > 0)
THEN
DBMS_OUTPUT.PUT_LINE('The quantity is '||V_QUANTITY);
SELECT COUNT (*)
INTO V_COUNT_CUST
FROM CONVERSION_CUSTOMERS
WHERE CUSTOMER_NAME = V_CUSTOMER_NAME;
DBMS_OUTPUT.PUT_LINE('The Customer count is '||V_COUNT_CUST);
IF(V_COUNT_CUST > 0)
THEN
SELECT COUNT(*)
INTO V_COUNT_PROD
FROM conversion_products
WHERE PRODUCT_NAME = V_PRODUCT_NAME;
DBMS_OUTPUT.PUT_LINE('The Product count is '||V_COUNT_PROD);
IF(V_COUNT_PROD >0)
THEN
INSERT INTO XXCTS_ORDER_DETAILS_STG VALUES (V_CUSTOMER_NAME, V_PRODUCT_NAME, V_MANUFACTURER, V_QUANTITY, V_REQ_SHIP_DATE, V_REQ_PRICE, 'ACTIVE', 'ORDER TAKEN');
ELSE
DBMS_OUTPUT.PUT_LINE('PRODUCT SHOULD BE VALID');
UTL_FILE.PUT_LINE(V_LOG_FILE, 'PRODUCT SHOULD BE VALID');
END IF;
ELSE
DBMS_OUTPUT.PUT_LINE('CUSTOMER SHOULD BE VALID');
UTL_FILE.PUT_LINE(V_LOG_FILE, 'CUSTOMER SHOULD BE VALID');
END IF;
ELSE
DBMS_OUTPUT.PUT_LINE('QUANTITY SHOULD BE VALID');
UTL_FILE.PUT_LINE(V_LOG_FILE, 'QUANTITY SHOULD BE VALID');
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
EXIT;
END;
END LOOP;
SELECT CUSTOMER_NAME, PRODUCT_NAME, MANUFACTURER, QUANTITY, REQUESTED_SHIP_DATE, REQUESTED_PRICE, STATUS,MESSAGE
BULK COLLECT
INTO L_ORDER_LINES
FROM XXCTS_ORDER_DETAILS_STG;
DBMS_OUTPUT.PUT_LINE('values inserted');
proc_conversion_api2(p_orderdetails=>L_ORDER_LINES);
END;
PROCEDURE proc_conversion_api2(p_orderdetails IN cts_order_details)
IS
V_AVL_QUANTITY CONVERSION_PRODUCTS.AVL_QUANTITY%TYPE;
V_REQ_SHIP_DATE DATE;
V_LIST_PRICE CONVERSION_PRODUCTS.LIST_PRICE%TYPE;
V_NET_PRICE CONVERSION_PRODUCTS.LIST_PRICE%TYPE;
V_NET CONVERSION_PRODUCTS.LIST_PRICE%TYPE;
V_EXTN_PRICE CONVERSION_PRODUCTS.LIST_PRICE%TYPE;
V_CUST_DISC CONVERSION_CUSTOMERS.DISCOUNT%TYPE;
V_CERT_DISC CONVERSION_CERTIFICATION.DISCOUNT%TYPE;
V_CUST_ID XXCTS_ORDER_DETAILS.CUSTOMER_ID%TYPE;
V_PROD_ID XXCTS_ORDER_DETAILS.PRODUCT_ID%TYPE;
V_DISC_PRICE CONVERSION_PRODUCTS.LIST_PRICE%TYPE;
V_DISC_NAME CONVERSION_CERTIFICATION.CERTIFICATION%TYPE;
V_TOTAL_DISC_AMT NUMBER;
V_TOTAL_DISC NUMBER;
V_LIMIT NUMBER;
BEGIN
DBMS_OUTPUT.PUT_LINE('INSIDE API_2 BEGIN 1');
FOR i IN p_orderdetails.FIRST..p_orderdetails.LAST
LOOP
BEGIN
DBMS_OUTPUT.PUT_LINE('INSIDE API_2 BEGIN 2');
SELECT PRODUCT_ID,AVL_QUANTITY,LIST_PRICE
INTO V_PROD_ID,V_AVL_QUANTITY,V_LIST_PRICE
FROM CONVERSION_PRODUCTS
WHERE PRODUCT_NAME=p_orderdetails(i).PRODUCT_NAME;
DBMS_OUTPUT.PUT_LINE('PRODUCT QUANTITY is '||V_PROD_ID);
DBMS_OUTPUT.PUT_LINE('AVAILABLE QUANTITY is '||V_AVL_QUANTITY);
DBMS_OUTPUT.PUT_LINE('LIST PRICE is '||V_LIST_PRICE);
SELECT CUSTOMER_ID,NVL(DISCOUNT,0)
INTO V_CUST_ID,V_CUST_DISC
FROM CONVERSION_CUSTOMERS
WHERE CUSTOMER_NAME=p_orderdetails(i).CUSTOMER_NAME;
DBMS_OUTPUT.PUT_LINE('CUSTOMER ID is '||V_CUST_ID);
DBMS_OUTPUT.PUT_LINE('CUSTOMER DISCOUNT IS '||V_CUST_DISC);
SELECT A.DISCOUNT,A.CERTIFICATION
INTO V_CERT_DISC,V_DISC_NAME
FROM CONVERSION_CERTIFICATION A,CONVERSION_CUSTOMERS B
WHERE A.CERTIFICATION=B.CERTIFICATION(+)
AND B.CUSTOMER_NAME=p_orderdetails(i).CUSTOMER_NAME;
DBMS_OUTPUT.PUT_LINE('CERTIFICATION DISCOUNT IS '||V_CERT_DISC);
V_NET:=((V_LIST_PRICE)-(V_LIST_PRICE)*(V_CERT_DISC)/100);
DBMS_OUTPUT.PUT_LINE('NET PRICE AFTER CERTIFICATION DISCOUNT IS '||V_NET);
V_NET_PRICE:=((V_NET)-(V_NET)*(V_CUST_DISC)/100);
DBMS_OUTPUT.PUT_LINE('NET PRICE AFTER COMPLETE DISCOUNT IS '||V_NET_PRICE);
V_EXTN_PRICE:=(V_NET_PRICE)*(p_orderdetails(i).QUANTITY);
DBMS_OUTPUT.PUT_LINE('EXTENDED PRICE IS '||V_EXTN_PRICE);
V_TOTAL_DISC:=((V_CERT_DISC)/100+(V_CUST_DISC)/100);
DBMS_OUTPUT.PUT_LINE('TOTAL DISCOUNT IS '|| V_TOTAL_DISC);
V_TOTAL_DISC_AMT:=(V_LIST_PRICE)-(V_NET_PRICE);
DBMS_OUTPUT.PUT_LINE('TOTAL DISCOUNT PRICE IS '|| V_TOTAL_DISC_AMT);
SELECT MAX(A.LIMIT)
INTO V_LIMIT
FROM CONVERSION_CERTIFICATION A,CONVERSION_CUSTOMERS B
WHERE A.CERTIFICATION=B.CERTIFICATION(+)
AND B.CUSTOMER_NAME=p_orderdetails(i).CUSTOMER_NAME;
IF p_orderdetails(i).QUANTITY<V_AVL_QUANTITY THEN
INSERT INTO XXCTS_ORDER_DETAILS VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,V_CUST_ID,V_PROD_ID,p_orderdetails(i).QUANTITY,p_orderdetails(i).REQUESTED_SHIP_DATE,p_orderdetails(i).REQUESTED_PRICE,V_LIST_PRICE,V_TOTAL_DISC,V_NET_PRICE,V_EXTN_PRICE,'QTY HOLD','REQ QNTY LESS THAN AVL QTY',SYSDATE);
INSERT INTO xxcts_order_discounts VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,SEQ_DISCOUNT_ID.NEXTVAL,V_DISC_NAME,V_TOTAL_DISC_AMT);
END IF;
IF p_orderdetails(i).REQUESTED_SHIP_DATE<SYSDATE THEN
INSERT INTO XXCTS_ORDER_DETAILS VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,V_CUST_ID,V_PROD_ID,p_orderdetails(i).QUANTITY,p_orderdetails(i).REQUESTED_SHIP_DATE,p_orderdetails(i).REQUESTED_PRICE,V_LIST_PRICE,V_TOTAL_DISC,V_NET_PRICE,V_EXTN_PRICE,'DATE HOLD','SHIPDATE CANNOT BE LESS THAN CURR DATE',SYSDATE);
INSERT INTO xxcts_order_discounts VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,SEQ_DISCOUNT_ID.NEXTVAL,V_DISC_NAME,V_TOTAL_DISC_AMT);
END IF;
IF V_NET_PRICE>p_orderdetails(i).REQUESTED_PRICE THEN
INSERT INTO XXCTS_ORDER_DETAILS VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,V_CUST_ID,V_PROD_ID,p_orderdetails(i).QUANTITY,p_orderdetails(i).REQUESTED_SHIP_DATE,p_orderdetails(i).REQUESTED_PRICE,V_LIST_PRICE,V_TOTAL_DISC,V_NET_PRICE,V_EXTN_PRICE,'PRICE HOLD','NET PRICE CANNOT BE MORE THAN REQ PRICE',SYSDATE);
INSERT INTO xxcts_order_discounts VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,SEQ_DISCOUNT_ID.NEXTVAL,V_DISC_NAME,V_TOTAL_DISC_AMT);
END IF;
/* IF V_LIMIT<p_orderdetails(i).REQUESTED_PRICE THEN
INSERT INTO XXCTS_ORDER_DETAILS VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,V_CUST_ID,V_PROD_ID,p_orderdetails(i).QUANTITY,p_orderdetails(i).REQUESTED_SHIP_DATE,p_orderdetails(i).REQUESTED_PRICE,V_LIST_PRICE,V_TOTAL_DISC,V_NET_PRICE,V_EXTN_PRICE,'ORDER LIMIT HOLD','PRICE CANNOT EXCEED ORDER LIMIT',SYSDATE);
INSERT INTO xxcts_order_discounts VALUES(SEQ_HEADER_ID.NEXTVAL,SEQ_LINE_ID.NEXTVAL,SEQ_DISCOUNT_ID.NEXTVAL,V_DISC_NAME,V_TOTAL_DISC_AMT);
END IF;*/
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE(' INSIDE EXCEPTION BLOCK');
END;
END LOOP;
END;
end conv_api_pkg;
/the pl/sql block to invoke the the procedure :
declare
begin
PROC_CONVERSION_API('/usr/tmp' ,'Walmart_Orders_062908.dat');
end;please let me know what is wrong in the program.
Thanks
AnveshHi Walter
Yes 'Inside begin 1' and 'Inside begin 2' were printed.Please find the the DBMS_OUTPUT statements that were printed.
Inside begin 1
Inside begin 1.1
Inside begin 2
Inside begin 2.1
the buffer is BESTBUY SONY ERICSSON W580i 25 1-AUG-2008 50
the length of buffer is 118
Customer Name is BESTBUY
Manufacturer is SONY ERICSSON
Product Name is W580i
Quantity is 25
Requested Ship Date is 01-AUG-08
The requested price is 50
The quantity is 25
The Customer count is 1
The Product count is 0
PRODUCT SHOULD BE VALID
Inside begin 2
Inside begin 2.1
the buffer is BESTBUY SAMSUNG BLACKJACK 50 15-JUL-2008 150
the length of buffer is 119
Customer Name is BESTBUY
Manufacturer is SAMSUNG
Product Name is BLACKJACK
Quantity is 50
Requested Ship Date is 15-JUL-08
The requested price is 150
The quantity is 50
The Customer count is 1
The Product count is 1
Inside begin 2
Inside begin 2.1
the buffer is BESTBUY APPLE IPHONE 4GB 50 15-JUL-2008
the length of buffer is 116
Customer Name is BESTBUY
Manufacturer is APPLE
Product Name is IPHONE 4GB
Quantity is 50
Requested Ship Date is 15-JUL-08
The requested price is 0
The quantity is 50
The Customer count is 1
The Product count is 1
Inside begin 2
Inside begin 2.1
the buffer is BESTBUY ATT TILT 100 15-JUN-2008
the length of buffer is 116
Customer Name is BESTBUY
Manufacturer is ATT
Product Name is TILT
Quantity is 100
Requested Ship Date is 15-JUN-08
The requested price is 0
The quantity is 100
The Customer count is 1
The Product count is 1
Inside begin 2
Inside begin 2.1
the buffer is BESTBUY NOKIA N73 50 15-JUL-2008 200
the length of buffer is 118
Customer Name is BESTBUY
Manufacturer is NOKIA
Product Name is N73
Quantity is 50
Requested Ship Date is 15-JUL-08
The requested price is 20
The quantity is 50
The Customer count is 1
The Product count is 0
PRODUCT SHOULD BE VALID
Inside begin 2In the first procedure I am trying to read the data from a flat file and store it in a table.Here is the sample data from the flat file.
BESTBUY SONY ERICSSON W580i 25 1-AUG-2008 50
BESTBUY SAMSUNG BLACKJACK 50 15-JUL-2008 150
BESTBUY APPLE IPHONE 4GB 50 15-JUL-2008
BESTBUY ATT TILT 100 15-JUN-2008
BESTBUY NOKIA N73 50 15-JUL-2008 200When tried to execute the second procedure independently using the PL/SQL block,the tables in second procedure were populated and the DBMS_Output statements were also displayed.I have made use of the same query in that case
Thanks
Anvesh
Edited by: Anvesh Reddy on Dec 23, 2008 12:40 PM -
How can I look up DataSource from one EJB to the other EJB?
Image that, I have 3 databases:
DB1
DB2
DB3,
And then, 03 DataSources is deployed in DS EJB, named DataSource1, DataSource2, DataSource3.
In the other App EJB, I have Connection Management function, as follows:
public Connection getConnection(databaseKey) {
if (databaseKey.equals("DB1")){
connection = remote.lookup("DataSource1");
}else if (databaseKey.equals("DB2")){
connection = remote.lookup("DataSource2");
}else if (databaseKey.equals("DB3")){
connection = remote.lookup("DataSource3");
return connection;
How can I access DataSource 1,2,3 from the other EJB? How to config EJB server for that?
Thanks in advance!
Now, I have the other App EJB. Some class will require one of the above DataSource from DS EJB through function getConnection(databaseKey){}I strongle suggest you to use a ServiceLocator for this . It will be very easy to identify.Go to the sun home page and look for a servicelocator pattern.You can even directly use that code for you.
-
How can i transfer files from forms10g to another machine..?
Dear All,
We would like to transfer image files from forms10g to another machine rather than Application server using webutil,
Can any body give me a workaround for the same, because its occupying more space in the application server, so it would be better if we can able to transfer to another networked machine..
Thanks in advance
ThangarajActually we are not mapping machine name something in webutil.cfg file. We just need to specify the path that from where we will transfer the file from application server to client. And the time time of transfer the path you will
choose for client webutil will transfer the file on that location automatically.
-Ammad -
Can I create a Stored Procedure That access data from tables of another servers?
I'm developing a procedure and within it I'm trying to access another server and make a select into a table that belongs to this another server. When I compile this procedure I have this error message: " PLS-00904: insufficient privilege to access object BC.CADPAP", where BC.CADPAP is the problematic table.
How can I use more than one connection into an Oracle Stored Procedure?
How I can access tables of a server from a Stored Procedure since the moment I'm already connected with another server?
Can I create a Stored Procedure That access data from tables of another servers?You need to have a Database Link between two servers. Then you could do execute that statement without any problem. Try to create a database link with the help of
CREATE DATABASE LINK command. Refer Document for further details -
Error while creating datasource from table MBEWH
Hi all,
I am facing an error message while creating datasource from table MBEWH
"Invalid extract structure template MBEWH of DataSource "; This operation failed, because the template structure quantity fields or currency fields, for example, field LBKUM refer to a different table.
Can anyone help me that why system is not allowing me to generate generic datasource for table MBEWH to transfer my month wise inventory data.
thanks and regards.Hi Zakir,
This was comming for classification data... when ever you want to extract some classification related data then we can't create generic datasources directly.. for that you need to go with CTBW ( tcode ) and create one datasource...
so, you need to check that related table also.. for that MBEWH table..
ALL THE CLASSIFICATION RELATED DATASOURCES WE CAN'T CREATE DIRECTLY... JUST LIKE AUSP table also.. liek this..
regards
@jay -
Error while creating datasource from view ZBSIS_VIEW
Hi all,
I could not create the datasource on the database table BSIS as it said "Invalid extract structure template BSIS of Datasource". I had suggestions that I should create a view and then create the Datasource on it. So I created the view and tried. But still I am facing an error message while creating datasource from custom Database View ZBSIS_VIEW.
"Invalid extract structure template ZBSIS_VIEW of DataSource"
Can anyone help on this regard.
thanks.Hi,
Yes. You need a create a view on tables BSIS, BKPF and T001 as the currency/quantity fields in BSIS have reference fields from the other 2 tables.
In BSIS, in the currency/quantity fields tab, you have some ref tables and fields. You would need to include these tables and join in the view. You would also need to include the ref fields like WAERS, HWAE2, HWAE3, etc in the view. Then you would be able to create the datasource. -
Error Transporting PI (XI) Web Service Datasource from BI BW 7.0
Hi all,
I have a PI (XI) datasource in development.
While transporting this datasource from Dev ==> QA, the transport keeps failing.
If the datasource is active (BI 7.0), it should be transported to QA without any dependency with other objects?
PI (XI) source system has been setup in QA.
Any ideas? Following is the error I get.
Error generating Web service /BIC/CQZHRCM_T00005000
Error when activating Datasource ZHRCM_TD_MELLONPENSION_INTF Q06CLNT100
The DataSource ZHRCM_TD_MELLONPENSION_INTF(Q06CLNT100) does not exist in object version A
Thanks
Edited by: Rajen SAP BI on Aug 30, 2008 12:44 AMHello Natty,
1. yes the test passed. http://picasaweb.google.de/lh/photo/kcDy5FofEl9VT4jw2m6FZQ?feat=directlink
2. Yes, I try to access a regular oracle DB via JDBC.
3. The Error occurs when I'select the Datasource and entered a table name and then click the search button. http://picasaweb.google.de/lh/photo/iYPCjcdqIclUet1cNj-LNQ?feat=directlink
Thx for Help
Sebastian
Maybe you are looking for
-
Backing up Windows Server 2012 R2 Virtual Machine
When I try to back my Windows Server 2012 R2 Virtual machine up to a NAS, using the Windows Server Utility I get the following errors: There was a failure in preparing the backup image in one of the volumes in the backup set. Detailed error: The proc
-
Rman backup in oracle 10.2.3
Dear friends, I'm trying to take a full online database backup using rman. I used the below script. run { configure snapshot controlfile name to 'C:\RMAN_BACKUP\EBMS\FULL\c-%d_%t_%s_%p.ora'; allocate channel c1 type disk; BACKUP DATABASE PLUS ARCHIVE
-
hello! i've a problem with my Imac. it shows me white screen with a folder with quastion. it could be a problem with hard drive. i should insert mac os cd, but i couldnt find it. in Russia, in Finland and in Sweden the same problem)
-
It's a blue column that has a search box and Today and Yesterday on it. It stretches all the way down my screen. There's no visible X to get rid of it. Suggestions?
-
A Job for 'PARTION BY' Analytical Function?
Hi, I'm still a little fuzzy on using partitions but this looks like a possible candidate to me. I need to count the number of different customers that visit an office in a single day. If a customer visits an office more than once in a single day tha