Validation fo Reference Field
Dear Expet's,
i have created validation for Reference field(f-43) for one company and activated it, but its not checking it.
Prerequisite:
BKPF-BUKRS = '6560' AND BKPF-BLART = 'KR'
Check:
BKPF-XBLNR = ''
Message:
Please check reference field!
can someone help in this!
You can use the standard validation instead of the code you are programming. You activate it where you define the class type. The path under the IMG is: Financial Accounting (New) >> Financial Accounting Global Settings (New) >> Document Document Types >> Define Document Types for Entry View. Then, find the document type, double click on it and check the box Reference number. Save.
Assign points if the information was useful.
Similar Messages
-
ISA order.jsp; message and validation for "Your reference" field
Hi Everyone,
I am new to ISA and working on java program to add message to "Your Reference" field in order.jsp page if this field is empty and clicked on "Check Out" button and user need to remain in the same page until user enters information in this field.
Message is available in .xlf file.
Please suggest me where to write this code for both message and validation for this field.
Thanks in advance
PrasadI fixed the requirement
thanks
Prasad -
Validation of a reference field when posting accounting document using FB50
Hi all,
We hada requirement to restrict the users from entering japanese caharaceters in the reference field of a accounting document. The validation for this was done using the transaction OB28. when the user posts the accounting document using transaction FB01 or changes the accounting document using transaction FB02, the validation provided in OB28 does work(it throws an error restricting the user from entering japanese characters if he has done so). But whenthe user pots the accounting document using the transaction FB50, the same error message comes as information message although the coding is for giving an error message.
This however does not happen when the user logs on in English. In English logon the error mesage does appear.
When the user logs on in Japanese the message comes as an information message but at the same time does not allow posting of the document.
Debugging this revealed that the OSS note 197329 has been applied to the standard SAP program SAPMF05A.
Any pointers to how this can be rectifiied would be appreciated.
Thanks in advance.I think it would be best if you opened an OSS message on this.
Rob -
Mandatory field - Header text and Reference field for company code
Hi
In transaction code FB60, I want to make header text and reference field mandatory at the company code level.
For one company code , the header text and the reference field should be made mandatory but for the other 8 company codes , those fields should not be mandatory.
if I make the fields mandatory via the document type , then it will be applicable for all the company codes using the document type.
thanks in advance
Kind regards
sap studentHi Chintan
I have written the validation rule and it is working fine.
Thanks
kind regards
sap student -
Dear SAP gurus,
Is there any way that can make me do validation on the reference field in transactions of FICO. I need it not to accept duplicate entries.
Thanks
Edited by: Csaba Szommer on May 11, 2011 3:04 PMHi,
Please activate Chk double invoices in payment transaction tab for a Vendor master.
Please refer SAP Note : 305201 for further details.
Rgds
Murali. N -
Created a form on a table. table1 has columns:id (not null),fname,lname,div
Need a validation: if all 3 fields are empty (fname,lname, div) then don't accept the input from the form.
How do you do a validation on multiple fields in apex? I can write a function like
if (:fname is null and :lname is null and :div is null ) then return True else return False.
But how do you put this into the condition under the process section in Apex? basically it means if all 3 fields are null then don't execute the process row of table1 when user click create button.
Can someone give me some pointers? Many thanks in advance.
taiTai,
You can create page level validations in APEX where you can do what you have specified.
In Page definition, click on + sing against 'Validations', Slelect 'Page level validation' and click NEXT, Select 'PL/SQL' click next and here select 'function returning boolean' and put your code.
Return FALSE -- if validation fails
Cheers
Hari -
Process_order api - Validation Failed for Field Bill To
I am relatively new to the EBS world and I'm having some issues with calling the OE_Order_Pub.Process_order API. When I call this API I am getting a return error of "Validation failed for field - Bill To".
For a background...I have an APEX application where users can choose parts from a small part master list to add to an existing order. The existing order will not have a status of Closed or Cancelled and there will be atleast 1 line in the order before the new parts are added. The parts will be added as new lines to the order with some of the new line data defaulting to the same information as the first line. I am using EBS version 12.1.3 with a multi-org setup. It seems that the orders under one org (id=3) are working fine, but another org(id=569) they never work and keep getting the error. I am setting the context to the org of the order and initializing the apps user information with the responsibility "Order Management Super User".
Do you have any idea what could be wrong or how I can debug the error to get a little more detail?
Here is the procedure I have.
PROCEDURE TEK_ORD_PROCESS_ORDER(p_order_id IN NUMBER, p_return_code OUT NOCOPY VARCHAR2, p_status OUT NOCOPY VARCHAR2) IS
CURSOR c_order_parts IS
SELECT *
FROM TEK_APEX.TEK_ORD_ORDER_PARTS
WHERE ORDER_ID = p_order_id;
TYPE t_parts IS TABLE OF TEK_APEX.TEK_ORD_ORDER_PARTS%ROWTYPE;
v_order_parts t_parts;
--Setup variables
H_Op_Code VARCHAR2(25) DEFAULT OE_GLOBALS.G_OPR_UPDATE;
L_Op_Code VARCHAR2(25) DEFAULT OE_GLOBALS.G_OPR_CREATE;
v_install_type VARCHAR2(25) := 'PTO';
v_source_id NUMBER;
v_user_id NUMBER;
v_resp_id NUMBER;
v_app_id NUMBER;
v_debug VARCHAR2(32767);
v_oracle_order OE_ORDER_HEADERS_ALL%ROWTYPE;
v_apex_order TEK_APEX.TEK_ORD_SALES_ORDERS%ROWTYPE;
p_header_rec OE_Order_Pub.Header_Rec_Type;
p_header_val_rec OE_Order_Pub.Header_Val_Rec_Type;
p_Header_Adj_tab OE_Order_Pub.Header_Adj_Tbl_Type;
p_Header_Adj_val_tab OE_Order_Pub.Header_Adj_Val_Tbl_Type;
p_Header_price_Att_tab OE_Order_Pub.Header_Price_Att_Tbl_Type;
p_Header_Adj_Att_tab OE_Order_Pub.Header_Adj_Att_Tbl_Type;
p_Header_Adj_Assoc_tab OE_Order_Pub.Header_Adj_Assoc_Tbl_Type;
p_Header_Scredit_tab OE_Order_Pub.Header_Scredit_Tbl_Type;
p_Header_Scredit_val_tab OE_Order_Pub.Header_Scredit_Val_Tbl_Type;
p_line_tab OE_Order_Pub.Line_Tbl_Type;
p_line_val_tab OE_Order_Pub.Line_Val_Tbl_Type;
p_Line_Adj_tab OE_Order_Pub.Line_Adj_Tbl_Type;
p_Line_Adj_val_tab OE_Order_Pub.Line_Adj_Val_Tbl_Type;
p_Line_price_Att_tab OE_Order_Pub.Line_Price_Att_Tbl_Type;
p_Line_Adj_Att_tab OE_Order_Pub.Line_Adj_Att_Tbl_Type;
p_Line_Adj_Assoc_tab OE_Order_Pub.Line_Adj_Assoc_Tbl_Type;
p_Line_Scredit_tab OE_Order_Pub.Line_Scredit_Tbl_Type;
p_Line_Scredit_val_tab OE_Order_Pub.Line_Scredit_Val_Tbl_Type;
p_Lot_Serial_tab OE_Order_Pub.Lot_Serial_Tbl_Type;
p_Lot_Serial_val_tab OE_Order_Pub.Lot_Serial_Val_Tbl_Type;
p_action_request_tab OE_Order_pub.Request_Tbl_Type;
l_header_rec OE_Order_Pub.Header_Rec_Type;
l_header_val_rec OE_Order_Pub.Header_Val_Rec_Type;
l_Header_Adj_tab OE_Order_Pub.Header_Adj_Tbl_Type;
l_Header_Adj_val_tab OE_Order_Pub.Header_Adj_Val_Tbl_Type;
l_Header_price_Att_tab OE_Order_Pub.Header_Price_Att_Tbl_Type;
l_Header_Adj_Att_tab OE_Order_Pub.Header_Adj_Att_Tbl_Type;
l_Header_Adj_Assoc_tab OE_Order_Pub.Header_Adj_Assoc_Tbl_Type;
l_Header_Scredit_tab OE_Order_Pub.Header_Scredit_Tbl_Type;
l_Header_Scredit_val_tab OE_Order_Pub.Header_Scredit_Val_Tbl_Type;
l_line_tab OE_Order_Pub.Line_Tbl_Type;
l_line_val_tab OE_Order_Pub.Line_Val_Tbl_Type;
l_Line_Adj_tab OE_Order_Pub.Line_Adj_Tbl_Type;
l_Line_Adj_val_tab OE_Order_Pub.Line_Adj_Val_Tbl_Type;
l_Line_price_Att_tab OE_Order_Pub.Line_Price_Att_Tbl_Type;
l_Line_Adj_Att_tab OE_Order_Pub.Line_Adj_Att_Tbl_Type;
l_Line_Adj_Assoc_tab OE_Order_Pub.Line_Adj_Assoc_Tbl_Type;
l_Line_Scredit_tab OE_Order_Pub.Line_Scredit_Tbl_Type;
l_Line_Scredit_val_tab OE_Order_Pub.Line_Scredit_Val_Tbl_Type;
l_Lot_Serial_tab OE_Order_Pub.Lot_Serial_Tbl_Type;
l_Lot_Serial_val_tab OE_Order_Pub.Lot_Serial_Val_Tbl_Type;
l_ret_status VARCHAR2(200);
l_msg_count NUMBER;
l_msg_data VARCHAR2(200);
--Email information
v_email_address varchar2(100);
v_msg_text varchar(1000);
v_subject_text varchar(1000);
--Default line information
v_item_id NUMBER;
v_contact_id NUMBER;
v_invoice_to_org_id oe_order_lines_all.INVOICE_TO_ORG_ID%TYPE;
v_ship_to_org_id oe_order_lines_all.SHIP_TO_ORG_ID%TYPE;
v_sold_to_org_id oe_order_lines_all.SOLD_TO_ORG_ID%TYPE;
v_flow_status_code oe_order_lines_all.FLOW_STATUS_CODE%TYPE;
FUNCTION GET_ORACLE_ORDER(p_order_number IN OE_ORDER_HEADERS_ALL.ORDER_NUMBER%TYPE)
RETURN OE_ORDER_HEADERS_ALL%ROWTYPE IS
v_order OE_ORDER_HEADERS_ALL%ROWTYPE;
BEGIN
SELECT *
INTO v_order
FROM APPS.OE_ORDER_HEADERS_ALL
WHERE ORDER_NUMBER = p_order_number;
RETURN v_order;
EXCEPTION
WHEN OTHERS THEN
RETURN NULL;
END GET_ORACLE_ORDER;
FUNCTION GET_APEX_ORDER(p_order_id IN TEK_APEX.TEK_ORD_SALES_ORDERS.ORDER_ID%TYPE)
RETURN TEK_APEX.TEK_ORD_SALES_ORDERS%ROWTYPE IS
v_order TEK_APEX.TEK_ORD_SALES_ORDERS%ROWTYPE;
BEGIN
SELECT *
INTO v_order
FROM TEK_APEX.TEK_ORD_SALES_ORDERS
WHERE ORDER_ID = p_order_id;
RETURN v_order;
EXCEPTION
WHEN OTHERS THEN
RETURN NULL;
END GET_APEX_ORDER;
FUNCTION GET_SOURCE_ID(p_source_name IN VARCHAR2)
RETURN OE_ORDER_SOURCES.ORDER_SOURCE_ID%TYPE IS
v_source_id OE_ORDER_SOURCES.ORDER_SOURCE_ID%TYPE;
BEGIN
SELECT ORDER_SOURCE_ID
INTO v_source_id
FROM APPS.OE_ORDER_SOURCES
WHERE NAME = p_source_name;
RETURN v_source_id;
EXCEPTION
WHEN OTHERS THEN
RETURN NULL;
END GET_SOURCE_ID;
FUNCTION GET_ITEM_ID(p_part_number IN VARCHAR2, p_org_id IN NUMBER)
RETURN MTL_SYSTEM_ITEMS.INVENTORY_ITEM_ID%TYPE IS
v_item_id MTL_SYSTEM_ITEMS.INVENTORY_ITEM_ID%TYPE;
BEGIN
SELECT INVENTORY_ITEM_ID
INTO v_item_id
FROM APPS.MTL_SYSTEM_ITEMS
WHERE SEGMENT1 = p_part_number
AND ORGANIZATION_ID = p_org_id;
RETURN v_item_id;
EXCEPTION
WHEN OTHERS THEN
RETURN NULL;
END GET_ITEM_ID;
BEGIN
apps.mo_global.set_policy_context('S',3);
apps.mo_global.init('XXTEK');
BEGIN
SELECT USER_ID
INTO v_user_id
FROM APPS.FND_USER
WHERE USER_NAME = 'SYSADMIN';
EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20001, 'Error selecting user');
END;
BEGIN
SELECT RESPONSIBILITY_ID, APPLICATION_ID
INTO v_resp_id, v_app_id
FROM TEK_APEX.TEK_RR_ACTIVE_RESP_VW
WHERE UPPER(RESPONSIBILITY_NAME) = 'ORDER MANAGEMENT SUPER USER';
--Set current user information
fnd_global.apps_initialize (user_id => v_user_id
,resp_id => v_resp_id
,resp_appl_id => v_app_id);
EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(-20001, 'Error selecting responsibility');
END;
--Get the order information from Oracle and APEX
v_apex_order := GET_APEX_ORDER(p_order_id);
IF v_apex_order.ORDER_ID IS NULL THEN
RAISE_APPLICATION_ERROR(-20001, 'APEX Order ID is invalid: ' || p_order_id);
END IF;
v_oracle_order := GET_ORACLE_ORDER(TO_NUMBER(v_apex_order.ORDER_NUMBER));
IF v_oracle_order.ORDER_NUMBER IS NULL THEN
RAISE_APPLICATION_ERROR(-20001, 'Order Number not found in Oracle: ' || v_apex_order.ORDER_NUMBER);
END IF;
apps.mo_global.set_policy_context('S', v_oracle_order.ORG_ID);
v_source_id := GET_SOURCE_ID('IMPORT');
IF v_source_id IS NULL THEN
RAISE_APPLICATION_ERROR(-20001, 'Source ID not found for IMPORT');
END IF;
/* ********** Gather Order Header********** */
/* ********** Info. ********** */
OE_Order_Pub.Get_Order(p_api_version_number => 1.0,
p_init_msg_list => FND_API.G_TRUE,
p_return_values => FND_API.G_TRUE,
x_return_status => l_ret_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data,
p_header_id => v_oracle_order.HEADER_ID,
p_header => NULL,
x_header_rec => l_header_rec,
x_header_val_rec => l_header_val_rec,
x_Header_Adj_tbl => l_Header_Adj_tab,
x_Header_Adj_val_tbl => l_Header_Adj_val_tab,
x_Header_price_Att_tbl => l_Header_price_Att_tab,
x_Header_Adj_Att_tbl => l_Header_Adj_Att_tab,
x_Header_Adj_Assoc_tbl => l_Header_Adj_Assoc_tab,
x_Header_Scredit_tbl => l_Header_Scredit_tab,
x_Header_Scredit_val_tbl=> l_Header_Scredit_val_tab,
x_line_tbl => l_line_tab,
x_line_val_tbl => l_line_val_tab,
x_Line_Adj_tbl => l_Line_Adj_tab,
x_Line_Adj_val_tbl => l_Line_Adj_val_tab,
x_Line_price_Att_tbl => l_Line_price_Att_tab,
x_Line_Adj_Att_tbl => l_Line_Adj_Att_tab,
x_Line_Adj_Assoc_tbl => l_Line_Adj_Assoc_tab,
x_Line_Scredit_tbl => l_Line_Scredit_tab,
x_Line_Scredit_val_tbl => l_Line_Scredit_val_tab,
x_Lot_Serial_tbl => l_Lot_Serial_tab,
x_Lot_Serial_val_tbl => l_Lot_Serial_val_tab);
--Save defaults from first line
IF l_line_tab.EXISTS(1) THEN
v_contact_id := l_line_tab(1).SHIP_TO_CONTACT_ID;
v_invoice_to_org_id := l_line_tab(1).INVOICE_TO_ORG_ID;
v_ship_to_org_id := l_line_tab(1).SHIP_TO_ORG_ID;
v_sold_to_org_id := l_line_tab(1).SOLD_TO_ORG_ID;
v_flow_status_code := l_line_tab(1).FLOW_STATUS_CODE;
END IF;
--Clear out the line array before adding any new parts
FOR i IN l_line_tab.FIRST..l_line_tab.LAST LOOP
l_line_tab.DELETE(i);
l_line_val_tab.DELETE(i);
l_line_adj_tab.DELETE(i);
l_line_adj_val_tab.DELETE(i);
l_line_price_att_tab.DELETE(i);
l_line_adj_att_tab.DELETE(i);
l_line_adj_assoc_tab.DELETE(i);
l_line_scredit_tab.DELETE(i);
l_line_scredit_val_tab.DELETE(i);
l_lot_serial_tab.DELETE(i);
l_lot_serial_val_tab.DELETE(i);
END LOOP;
/* ********** Gather Order Lines ********** */
OPEN c_order_parts;
FETCH c_order_parts BULK COLLECT INTO v_order_parts;
CLOSE c_order_parts;
FOR i IN v_order_parts.FIRST..v_order_parts.LAST LOOP
v_item_id := GET_ITEM_ID(v_order_parts(i).PART_NUMBER, v_oracle_order.SHIP_FROM_ORG_ID);
IF v_item_id IS NULL THEN
RAISE_APPLICATION_ERROR(-20001, 'Error selecting part number ' || v_order_parts(i).PART_NUMBER);
END IF;
--Clear line first
l_line_tab(i) := OE_Order_Pub.G_Miss_Line_Rec;
l_line_val_tab(i) := OE_ORDER_PUB.G_MISS_LINE_VAL_REC;
l_line_adj_tab(i) := OE_ORDER_PUB.G_MISS_LINE_ADJ_REC;
l_line_adj_val_tab(i) := OE_ORDER_PUB.G_MISS_LINE_ADJ_VAL_REC;
l_line_price_att_tab(i) := OE_ORDER_PUB.G_MISS_LINE_PRICE_ATT_REC ;
l_line_adj_att_tab(i) := OE_ORDER_PUB.G_MISS_LINE_ADJ_ATT_REC;
l_line_adj_assoc_tab(i) := OE_ORDER_PUB.G_MISS_LINE_ADJ_ASSOC_REC;
l_line_scredit_tab(i) := OE_ORDER_PUB.G_MISS_LINE_SCREDIT_REC;
l_line_scredit_val_tab(i) := OE_ORDER_PUB.G_MISS_LINE_SCREDIT_VAL_REC;
l_lot_serial_tab(i) := OE_ORDER_PUB.G_MISS_LOT_SERIAL_REC;
l_lot_serial_val_tab(i) := OE_ORDER_PUB.G_MISS_LOT_SERIAL_VAL_REC;
--Set line information
l_line_tab(i).PRICE_LIST_ID := v_oracle_order.PRICE_LIST_ID;
l_line_tab(i).header_id := v_oracle_order.header_id;
l_line_tab(i).inventory_item_id := v_item_id;
l_line_tab(i).ordered_quantity := v_order_parts(i).QUANTITY;
l_line_tab(i).operation := l_op_code;
l_line_tab(i).unit_list_price := 0;
l_line_tab(i).ship_from_org_id := v_oracle_order.ship_from_org_id;
l_line_tab(i).program_id := fnd_global.conc_program_id ;
l_line_tab(i).program_application_id := fnd_global.PROG_APPL_ID;
l_line_tab(i).order_source_id := v_source_id;
l_line_tab(i).calculate_price_flag := 'N' ;
l_line_tab(i).unit_selling_price := 0.00 ;
l_line_tab(i).request_date := v_apex_order.onsite_date;
l_line_tab(i).Schedule_ship_date := v_apex_order.onsite_date;
l_line_tab(i).promise_date := null;
l_line_tab(i).invoice_to_org_id := v_invoice_to_org_id;
l_line_tab(i).ship_to_org_id := v_ship_to_org_id;
l_line_tab(i).sold_to_org_id := v_sold_to_org_id;
l_line_tab(i).ship_to_contact_id := v_contact_id;
END LOOP;
--OE_DEBUG_PUB.DEBUG_ON;
--OE_DEBUG_PUB.Initialize;
--OE_DEBUG_PUB.SetDebugLevel(5);
--Add lines to order
OE_Order_Pub.Process_order(p_api_version_number => 1.0,
p_init_msg_list => FND_API.G_TRUE,
p_return_values => FND_API.G_TRUE,
p_action_commit => FND_API.G_FALSE,
x_return_status => l_ret_status,
x_msg_count => l_msg_count,
x_msg_data => l_msg_data,
p_header_rec => l_header_rec,
p_old_header_rec => l_header_rec,
p_header_val_rec => l_header_val_rec,
p_old_header_val_rec => l_header_val_rec,
p_Header_Adj_tbl => l_Header_Adj_tab,
p_old_Header_Adj_tbl => l_Header_Adj_tab,
p_Header_Adj_val_tbl => l_Header_Adj_val_tab,
p_old_Header_Adj_val_tbl => l_Header_Adj_val_tab,
p_Header_price_Att_tbl => l_Header_price_Att_tab,
p_old_Header_Price_Att_tbl => l_Header_price_Att_tab,
p_Header_Adj_Att_tbl => l_Header_Adj_Att_tab,
p_old_Header_Adj_Att_tbl => l_Header_Adj_Att_tab,
p_Header_Adj_Assoc_tbl => l_Header_Adj_Assoc_tab,
p_old_Header_Adj_Assoc_tbl => l_Header_Adj_Assoc_tab,
p_Header_Scredit_tbl => l_Header_Scredit_tab,
p_old_Header_Scredit_tbl => l_Header_Scredit_tab,
p_Header_Scredit_val_tbl => l_Header_Scredit_val_tab,
p_old_Header_Scredit_val_tbl => l_Header_Scredit_val_tab,
p_line_tbl => l_line_tab,
p_line_val_tbl => l_line_val_tab,
p_Line_Adj_tbl => l_line_adj_tab,
p_Line_Adj_val_tbl => l_line_adj_val_tab,
p_Line_price_Att_tbl => l_line_price_att_tab,
p_Line_Adj_Att_tbl => l_line_adj_att_tab,
p_Line_Adj_Assoc_tbl => l_line_adj_assoc_tab,
p_Line_Scredit_tbl => l_line_scredit_tab,
p_Line_Scredit_val_tbl => l_line_scredit_val_tab,
p_Lot_Serial_tbl => l_lot_serial_tab,
p_Lot_Serial_val_tbl => l_lot_serial_val_tab,
p_action_request_tbl => OE_ORDER_PUB.G_MISS_REQUEST_TBL,
x_header_rec => p_header_rec,
x_header_val_rec => p_header_val_rec,
x_Header_Adj_tbl => p_Header_Adj_tab,
x_Header_Adj_val_tbl => p_Header_Adj_val_tab,
x_Header_price_Att_tbl => p_Header_price_Att_tab,
x_Header_Adj_Att_tbl => p_Header_Adj_Att_tab,
x_Header_Adj_Assoc_tbl => p_Header_Adj_Assoc_tab,
x_Header_Scredit_tbl => p_Header_Scredit_tab,
x_Header_Scredit_val_tbl => p_Header_Scredit_val_tab,
x_line_tbl => p_line_tab,
x_line_val_tbl => p_line_val_tab,
x_line_adj_tbl => p_line_adj_tab,
x_line_adj_val_tbl => p_line_adj_val_tab,
x_line_price_att_tbl => p_line_price_att_tab,
x_line_adj_att_tbl => p_line_adj_att_tab,
x_line_adj_assoc_tbl => p_line_adj_assoc_tab,
x_line_scredit_tbl => p_line_scredit_tab,
x_line_scredit_val_tbl => p_line_scredit_val_tab,
x_lot_serial_tbl => p_lot_serial_tab,
x_lot_serial_val_tbl => p_lot_serial_val_tab,
x_action_request_tbl => p_action_request_tab);
-- OE_DEBUG_PUB.DEBUG_OFF;
p_return_code := l_ret_status;
IF l_ret_status != 'S' THEN
DBMS_OUTPUT.PUT_LINE(l_msg_data);
IF l_msg_count = 1 THEN
p_status := OE_Msg_Pub.Get(1,'F');
ELSE
FOR i IN 1..l_msg_count LOOP
p_status := OE_Msg_Pub.Get(i,'F') || '<br />';
END LOOP;
END IF;
p_status := 'Error loading lines<br>' || p_status;
ELSE
p_status := 'Order Processed Successfully<br>' || v_order_parts.COUNT || ' Line(s) Loaded';
END IF;
-- WHILE OE_DEBUG_PUB.G_DEBUG_INDEX < OE_DEBUG_PUB.CountDebug LOOP
-- OE_DEBUG_PUB.GetNext(v_debug);
-- DBMS_OUTPUT.PUT_LINE(v_debug);
-- END LOOP;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
RAISE;
END TEK_ORD_PROCESS_ORDER;Thanks!
Jonathan HartHello,
Try the following
1) Check if any processing constraints are applied to customer/location
2) Try to create a new customer and associate internal location.
Create a new order to reproduce the issue
Thanks
-Arif -
Reference field and table for AUFK for F4 help in alv.
Hi All,
I need to put F4 help on ALV for order no (AUFK) what is the reference field and table for that?
i tried giving field as aufk and table as ccss but its not working.
ls_fcat-ref_field = 'AUFNR'.
ls_fcat-ref_table = 'CCSS'.
Thanks & Regards,
Ruchi TiwariHi,
Try this.
Set the f4 help for the field in the fieldcatalog
ls_fcat-f4availabl = 'X'.
1. Create a event of ONF4 for the alv grid.
2. Set the event handler.
3. Append the field for the F4 help in the internal table and call the below method
CALL METHOD g_mprn->register_f4_for_fields
EXPORTING
it_f4 = i_f4.
4. create a class definition and implementation
refer sample pgms (BCALV_F4, BCALV_GRID_EDIT_DELTA and BCALV_GRID_EDIT)
Hope this may be helpful.
Regards,
Sharin. -
Table for Valid To date field in C203 Tcode
Let me know the table name for "Valid To Date" field in C203 transaction.
Thanks,
Angavai.EHi Angavai,
Check with table PLMW.
Regards,
Raghu -
Excise invoice number getting reflected in the reference field in VF01
Hello,
I require excise invoice number to get get reflected in the reference field of billing document number . (i.e accounting document generated from VF01)
Thanks,Dear Muscan,,
As per STANDARD SAP PROCESS this functionality is not Possible. The reason is very clear, Excise Invoice is always created after creating billing/invoice document. Without creating excise invoice you cannot have excise invoice number reflected in the reference field of billing document.
Hope this clarifies your doubt?
Regards
MBS -
How to use the Cross Reference fields in P4P
I have been receiving questions related to the Cross Reference section from many different customers and partners. This post represents my attempt to describe the Cross Reference Section and the Equivalent Numbers stored within.
Identity
A term that Kelly uses and I will borrow is “identity”. A given specification can have many identities. The basic identity is the specification number generated by GSM. This is useful during early stages of design. Once we get past a draft or development status in the workflow the organization quickly wants to identify the specification in other ways. Examples include:
Execution System Number: Operations and Supply Chain quickly need to formalize an item or material for forecasting, inventory and purchasing…
Custom Numbering Conventions: Sometimes an organization has very specific custom logic for identifying materials. Usually terms like smart numbering are used to describe their methods.
Data Migration Identifier: In some cases customers have extensive data clean up projects. As part of the effort systems and processes are developed and an identity is created. In my experience we loaded a “Base Stock” number to represent Packaging Materials. The label stock that was commonly used was historically not represented so we created a number as part of the migration project.
Identity Functionality:
The Fields: The four major fields that make up the Cross Reference section are as follows:
>>System Name: This field describes the system generating the identifier. Examples I like to use are Oracle EBS or SAP Material Master. Sometimes geography must also be concatenated to the system, i.e. Oracle EBS – NA. This occurs when the customer is a large multinational where multiple ERP implementations exist. Therefore the same material may be known by many different numbers, i.e. Oracle EBS – NA = 77432, Oracle EBS – EU = 88883.
>>System Code: The system code is merely the syntax used during integration. Using CSS or various APIs you may chose to identify the system using an abbreviation, EBSNA or SAPMM.
>>Equivalent: The value representing the identity within a given system.
>>Externally Managed: If you are using CSS or an API to receive Cross Reference data you can define the field as "Externally Manged". When a cross reference is marked in this manner the general user community will not be able to edit the field. Administrators associated with the role [Externally_Managed_Cross_Ref_Admin] can edit the field if needed.
Syndication: While some users enter equivalent numbers manually, others use integration tools to generate and transmit identities. If a given cross reference is marked as “Externally Managed” then users are unable to manually enter data. On initial syndication the specification will not have a given equivalent. The specification is sent to middleware, a number is generated by the appropriate system and the response is sent back to GSM to add the System Code to the specification with the appropriate identity value.
Copy verses Issue:
>>Copy: When a user copies a specification the Cross Reference data is NOT included. Since the identities refer to the originating specification it does not make sense to carry over to the copy. If we did then users would quickly need to delete the data.
>>Issue: When a user issues a specification it maintains the Cross Reference data. This is an important concept because it is expected that a system like GSM will have many issues related to a single ERP #. ERP systems are usually not interested in many of the fields stored in the Product Data Management system.
Reference: As raw materials are consumed as inputs into Formulation or Trade Specifications the organization may come to identify the materials based on equivalent numbers. Therefore GSM allows for an equivalent number to appear next to the GSM number.
Implementation Issue: Ingredients In Packaged Quantities
Some customers run into a situation where the ingredient specification does not represent a packaged quantity. From an R&D perspective the developer does not care if the material comes in a box or a tanker. In this situation the GSM ingredient may be represented in the ERP system by many items and therefore more than one cross reference value. These items represent packaging differences that are important to purchasing, manufacturing, warehousing, and other execution systems.
I hope this helps describe some of the purposes and implementation issues around the Cross Reference field.You need to get jmf.jar in your CLASSPATH, either on the command line, in an environment variable, by putting a symlink in $JAVA_HOME/lib/ext, whatever works for you. Have you done that? Once it's in the classpath, you can run jmstudio from any directory with the command "java JMStudio".
Items in the bin directory are just shell scripts, run with "sh jmstudio" or whatever suits your shell (on Mac OS X, copy one of these guys and append ".command" to the filename to make him double-clickable in the Finder).
--invalidname -
How to set a default value in the "Our reference"-field in purchse orders?
Hi!
When creating a purchase order the "Our reference"-field in the Communication-tab is empty. Is it possible to configure this so that the field is filled by default with the name of the person who is creating the PO?Hi,
There is a button named Personal Settings on ME21N screen. Click on that button --> Click on second tab of Default Values --> Click on More fields --> Select Our reference and maintain the default value. This will always come up at the time of creation of PO.
Hope this serves the purpose.
Thanks...
Edited by: vilas amrutkar on Feb 17, 2009 5:17 AM -
Reference field of invoice not filled in PO history
The reference field of the invoice (INFVO-XBLNR) is not copied into the EKBE-XBLNR. I couldn't find an OSS note to solve the problem. Please advise.
Kind regards,
Annerie DeckersHello,
Table EKBE is only updated if "GR-Based IV" indicator is active at Purchase order item level.
Only then field EKBE-XBLNR is updated with the value of the corresponding GR doc. reference field (MKPF-XBLNR) and not with the value of the RBKP-XBLNR (logistics invoice).
There is also a note explaining the case link:[Note 383828 - ME23N: Reference in the purchase order history]
BR,
Elly Leondi -
Reference field from MIRO in PO History
Hi,
The reference field in MIRO has to be displayed in Purchase Order History. For PO's with GR Based IV the field is copied from GR and for PO's without GR based IV it is blank. We want the data from MIRO to be displayed in PO History in the reference field of IR.
Thanks to provide the information regarding the settings for the same.
RegardsLink will help you.
http://sap.ittoolbox.com/groups/technical-functional/sap-log-mm/miro-couldnt-get-the-gr-number-for-reference-field-in-line-items-3975712 -
BADI/user exit for ME21N - Warning message for "our reference" field
Dear all,
I have a problem.
In ME21N, I need to show a warning message (message w... ) when user enter an already-used-before input in "Our reference' field (EKKO-UNSEZ).
I've tried in two methods.
1. Using fm EXIT_SAPMM06E_004. But it can only works for Error message. My warning message never shows up.
2. Tried to implement classic BADI ME_PROCESS_PO_CUST, using the PROCESS_HEADER method. Got the break-point spot on, but still didn't show the warning message.
Why is my warning message always got override?
Please advise.
Thanks in advance
AhmadHi Ahmad,
Check the below links:
Unable to put Warning messages in ME21N and ME22N in Exit / BAdI in ECC 6.0
Warning message in me22n check user-exit can't process?
Custome warning message in T. code me51n me52n & me21n , me22n
Regards,
Nisha Vengal.
Maybe you are looking for
-
Error while loading the custom portal transaction
Hi, After the recent ITS Patches applied, our custom portal transactions are not work fine. Some of the fields are displaced from their position and printing in abrupt position of the screen. Transaction like address change, direct doposit screen...
-
Select records based on formula field
I have a formula field that I am trying to sort data by. I want to eliminate records that come up with a 0 in this formula field. I tried select expert, but it doesn't recognize the field.
-
I found the moving average of material display on mm03 is wrong, I've found that the material ever changed the cost through mr21 on 10/2008, this is correct. But current period is incorrect 02/2009. And after 10.2008, there have two goods receipts, b
-
I want to load an initial image into onTop_mc,. When the user clicks next, load another image into onBottom_mc (below onTop_mc), then using MovieClip.setMask() create a transition from the first image to the second image. No problem, but for the thir
-
Changing timing on a group of stills
HD 6.03 is not updating the length of my stills in groups... I have to do them one by one. Occasionally using the "Show Photo Settings" slider works, but usually not. What's going on? 2.33 ghz dual core Intel Imac Mac OS X (10.4.9)