Programming

Programming Questions? Ask a Programmer for Answers ASAP

Ask a Computer Expert,
Get an Answer ASAP!

Programming

I'm programming a small interface to enter and read input

Customer Question
and output from an API...
I'm programming a small interface to enter and read input and output from an API in the Oracle EBS R12.
To be specific, I need help with the procedures in the WSH_DELIVERIES, WSH_PICK_LIST and WSH_DELIVERIES_DETAILS Packages.
In short, I've already made a PL/SQL procedure that inputs and reads information from these procedures and were working fine up to 2 weeks ago.
As far as I can tell there has been no change in the main Database or Database Server but right now it seems not to work.
I get a SUCCESS response but when I check the document, there are no changes.
Thanks.
Submitted: 2 years ago.Category: Programming
Show More
Show Less
Ask Your Own Programming Question
Answered in 5 hours by:
11/2/2015
Programmer: Michael Hannigan, Consultant replied 2 years ago
Michael Hannigan
Michael Hannigan, Consultant
Category: Programming
Satisfied Customers: 11,885
Experience: 25+ Years Experience in Field. Multi Platform Developer.
Verified

Hello. My name is***** can help you with your question.

In order to use the auto create, there is a specific process that will need to follow. Please take a look at the following page which has an example along with detailed explanation:

http://bitli.es/hpoIE0

Ask Your Own Programming Question
Customer reply replied 2 years ago

Hi,

I've tried this and used the information in the procedures but it is not working.

However, the Launch Pick-Release procedure and Ship/Confirm are working using the Shipping Transaction Interface.

Below is the code if you can take a look, if there's something wrong:

===============

create or replace PROCEDURE "isar_GPFPickSO" ( p_header_id IN NUMBER,
p_msg_data OUT VARCHAR2)
IS

x_return_status VARCHAR2 (2000);
x_msg_count NUMBER;
p_api_version_number NUMBER := 1.0;
init_msg_list VARCHAR2 (200);
x_msg_details VARCHAR2 (3000);
x_msg_data VARCHAR2 (3000);
x_msg_summary VARCHAR2 (3000);
p_line_rows wsh_util_core.id_tab_type;
x_del_rows wsh_util_core.id_tab_type;
l_ship_method_code VARCHAR2 (100);
l_commit VARCHAR2 (30);
p_delivery_id NUMBER;
p_delivery_name VARCHAR2 (30);
x_trip_id VARCHAR2 (30);
x_trip_name VARCHAR2 (30);
exep_api EXCEPTION;
l_picked_flag VARCHAR2 (10);
l_return_status VARCHAR2 (1000);
l_msg_count NUMBER;
l_msg_data VARCHAR2 (1000);
l_user_id NUMBER;
l_resp_id NUMBER;
l_appl_id NUMBER;
v_order_number VARCHAR2(20);
v_count NUMBER:=0;
CURSOR c_ord_details
IS
SELECT oha.order_number sales_order,
oha.org_id,
ola.line_number,
ola.shipment_number,
ola.flow_status_code,
wdd.delivery_detail_id,
wdd.inv_interfaced_flag,
wdd.oe_interfaced_flag,
wdd.released_status,
ola.ordered_item
FROM apps.oe_order_headers_all oha,
apps.oe_order_lines_all ola,
apps.wsh_delivery_details wdd
WHERE oha.header_id = ola.header_id
AND oha.org_id = ola.org_id
AND oha.header_id = wdd.source_header_id
AND ola.line_id = wdd.source_line_id
AND oha.booked_flag = 'Y'
AND NVL (ola.cancelled_flag, 'N') <> 'Y'
AND wdd.released_status IN ('R', 'B')
AND oha.attribute17 Is Not NUll
AND ola.flow_status_code = 'AWAITING_SHIPPING'
AND oha.header_id = p_header_id ;

BEGIN

-- Initializing the Applications

SELECT user_id
INTO l_user_id
FROM fnd_user
WHERE user_name = 'SG.GPF';

SELECT responsibility_id, application_id
INTO l_resp_id, l_appl_id
FROM fnd_responsibility_vl
--WHERE responsibility_name = 'Order Management Super User';
--WHERE responsibility_name = 'Sales Order Management Manager';
WHERE responsibility_name = 'Salesperson Services (Full Access)';

fnd_global.apps_initialize (l_user_id, l_resp_id, l_appl_id);

-------------================================================

x_return_status := wsh_util_core.g_ret_sts_success;
--i := 0;
v_count := 0 ;
FOR i IN c_ord_details
LOOP
v_count := v_count + 1 ;
v_order_number := i.sales_order ;
mo_global.set_policy_context ('S', i.org_id);
mo_global.init ('ONT');

p_line_rows (v_count) := i.delivery_detail_id;
END LOOP;
-- API Call for Auto Create Deliveries

DBMS_OUTPUT.put_line ( 'Calling WSH_DELIVERY_DETAILS_PUB to Perform AutoCreate Delivery');
DBMS_OUTPUT.put_line ( '====================================================');

wsh_delivery_details_pub.autocreate_deliveries (
p_api_version_number => 1.0,
p_init_msg_list => apps.fnd_api.g_true,
p_commit => l_commit,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_line_rows => p_line_rows,
x_del_rows => x_del_rows);

DBMS_OUTPUT.put_line (' x_return_status '||x_return_status);
DBMS_OUTPUT.put_line (' x_msg_count '||x_msg_count);
DBMS_OUTPUT.put_line (' x_msg_data '||x_msg_data);

IF (x_return_status <> wsh_util_core.g_ret_sts_success)
THEN
DBMS_OUTPUT.put_line ( 'Failed to Auto create delivery for Sales Order');
p_msg_data := p_msg_data ||'
Failed to Auto create delivery for Sales Order'|| Chr(13);
RAISE exep_api;
ELSE
DBMS_OUTPUT.put_line ( '
Auto Create Delivery Action has successfully completed for Order : '||v_order_number);
p_msg_data := p_msg_data || 'Auto Create Delivery Action has successfully completed for Order : '||v_order_number|| Chr(13);
p_msg_data := p_msg_data ||'
'|| Chr(13);
p_msg_data := p_msg_data ||' ';
END IF;

-- Pick release.
p_delivery_id := x_del_rows (1);
p_delivery_name := TO_CHAR (x_del_rows (1));

DBMS_OUTPUT.put_line ('Calling WSH_DELIVERIS_PUB to Perform Pick Release of SO');
DBMS_OUTPUT.put_line ('=============================================');
-- API Call for Pick Release

wsh_deliveries_pub.delivery_action (
p_api_version_number => 1.0,
p_init_msg_list => NULL,
x_return_status => x_return_status,
x_msg_count => x_msg_count,
x_msg_data => x_msg_data,
p_action_code => 'PICK-RELEASE',
p_delivery_id => p_delivery_id,
p_delivery_name => p_delivery_name,
p_asg_trip_id => NULL,
p_asg_trip_name => NULL,
p_asg_pickup_stop_id => NULL,
p_asg_pickup_loc_id => NULL,
p_asg_pickup_stop_seq => NULL,
p_asg_pickup_loc_code => NULL,
p_asg_pickup_arr_date => NULL,
p_asg_pickup_dep_date => NULL,
p_asg_dropoff_stop_id => NULL,
p_asg_dropoff_loc_id => NULL,
p_asg_dropoff_stop_seq => NULL,
p_asg_dropoff_loc_code => NULL,
p_asg_dropoff_arr_date => NULL,
p_asg_dropoff_dep_date => NULL,
p_sc_action_flag => 'S',
p_sc_intransit_flag => 'N',
p_sc_close_trip_flag => 'N',
p_sc_create_bol_flag => 'N',
p_sc_stage_del_flag => 'Y',
p_sc_trip_ship_method => NULL,
p_sc_actual_dep_date => NULL,
p_sc_report_set_id => NULL,
p_sc_report_set_name => NULL,
p_sc_defer_interface_flag => 'Y',
p_sc_send_945_flag => NULL,
p_sc_rule_id => NULL,
p_sc_rule_name => NULL,
p_wv_override_flag => 'N',
x_trip_id => x_trip_id,
x_trip_name => x_trip_name);

DBMS_OUTPUT.put_line (x_return_status);
DBMS_OUTPUT.put_line (x_msg_count);
DBMS_OUTPUT.put_line (x_msg_data);

IF (x_return_status <> wsh_util_core.g_ret_sts_success)
THEN
DBMS_OUTPUT.put_line ('Failed to Pick Release the sales order');
p_msg_data := p_msg_data || '
Failed to Pick Release the sales Order : '||v_order_number|| Chr(13);

RAISE exep_api;
ELSE
DBMS_OUTPUT.put_line ('Sales Order has successfully Pick Released');
DBMS_OUTPUT.put_line ('==============================');
p_msg_data := p_msg_data || '
Sales Order has successfully Pick Released For Order : '||v_order_number|| Chr(13);

END IF;

--for pick confirm
COMMIT;

EXCEPTION
WHEN exep_api
THEN
DBMS_OUTPUT.put_line ('==============');
DBMS_OUTPUT.put_line ('Error Details If Any');
DBMS_OUTPUT.put_line ('==============');

wsh_util_core.get_messages ('Y',
x_msg_summary,
x_msg_details,
x_msg_count);

IF x_msg_count > 1
THEN
x_msg_data := x_msg_summary || x_msg_details;
p_msg_data := p_msg_data || '============== Error ============='|| Chr(13);
p_msg_data := p_msg_data || x_msg_data || Chr(13);
DBMS_OUTPUT.put_line (' x_msg_data exp ' || x_msg_data);
ELSE
x_msg_data := x_msg_summary || x_msg_details;
p_msg_data := p_msg_data || '============== Error ============='|| Chr(13);
p_msg_data := p_msg_data || x_msg_data || Chr(13);
DBMS_OUTPUT.put_line (' x_msg_summary exp '|| x_msg_data);
END IF;

END "isar_GPFPickSO";

================================

Programmer: Michael Hannigan, Consultant replied 2 years ago

Should p_commit be

p_commit => apps.fnd_api.g_true,

Ask Your Own Programming Question
Programmer: Michael Hannigan, Consultant replied 2 years ago

What is the last message you get? For example, it should tell you as it completes each step like "Auto Create Delivery action has successfully..."

Ask Your Own Programming Question
Customer reply replied 2 years ago

Hi,

I've tried to change the p_commit as you suggested, either way I get:

"Failed to Auto create delivery for Sales Order ============ Error ==============="

No error code, not even the order No.

Programmer: Michael Hannigan, Consultant replied 2 years ago

What is output as x_return_status?

Ask Your Own Programming Question
Customer reply replied 2 years ago

"Failed to Auto create delivery for Sales Order ============ Error ==============="

is the output of p_msg_data;


As you can see: p_msg_data := p_msg_data || x_msg_data || Chr(13);

So, this is the complete output...
Programmer: Michael Hannigan, Consultant replied 2 years ago

Is there something missing in here?

p_msg_data := p_msg_data ||'
Failed to Auto create delivery for Sales Order'|| Chr(13);
RAISE exep_api;

It looks like something may have been deleted.

Ask Your Own Programming Question
Programmer: Michael Hannigan, Consultant replied 2 years ago

In any case, the problem would have to originate here:

IF (x_return_status <> wsh_util_core.g_ret_sts_success)

Correct? Because we're assuming success or not success... so it is either really failing, or this statement isn't correct.

Ask Your Own Programming Question
Customer reply replied 2 years ago

Hi,

I've considered that the test condition is failing.

But it is failing because the condition is correct.

The WSH_UTIL_CORE.G_RET_STS_SUCCESS is the correct variable upon which we would check the success of failure of the API execution.

Any other possibilities as per your experience as why would the Autocreate API would not function? Better yet, why would it simply drop without any error messages either?

Thanks.

Programmer: Michael Hannigan, Consultant replied 2 years ago

What I was thinking was that there wasn't actually an error, which would explain that part of it.

So what does WSH_UTIL_CORE.G_RET_STS_SUCCESS get set to. I believe it should be "S" if it is successful.

Ask Your Own Programming Question
Customer reply replied 2 years ago

Hi,

I found out the issue.

The Autocreate procedure in the package is set up so that the Delivery Note of the Sales Order has to be printed so that Delivery process can begin.

It is ironic because in the description of Autocreate procedure in the package it is clearly mentioned "no prerequisites".

Ask Michael Hannigan Your Own Question
Michael Hannigan
Michael Hannigan
Michael Hannigan, Consultant
Category: Programming
Satisfied Customers: 11,885
11,885 Satisfied Customers
Experience: 25+ Years Experience in Field. Multi Platform Developer.

Michael Hannigan is online now

A new question is answered every 9 seconds

How JustAnswer works:

  • Ask an ExpertExperts are full of valuable knowledge and are ready to help with any question. Credentials confirmed by a Fortune 500 verification firm.
  • Get a Professional AnswerVia email, text message, or notification as you wait on our site. Ask follow up questions if you need to.
  • 100% Satisfaction GuaranteeRate the answer you receive.

JustAnswer in the News:

Ask-a-doc Web sites: If you've got a quick question, you can try to get an answer from sites that say they have various specialists on hand to give quick answers... Justanswer.com.
JustAnswer.com...has seen a spike since October in legal questions from readers about layoffs, unemployment and severance.
Web sites like justanswer.com/legal
...leave nothing to chance.
Traffic on JustAnswer rose 14 percent...and had nearly 400,000 page views in 30 days...inquiries related to stress, high blood pressure, drinking and heart pain jumped 33 percent.
Tory Johnson, GMA Workplace Contributor, discusses work-from-home jobs, such as JustAnswer in which verified Experts answer people’s questions.
I will tell you that...the things you have to go through to be an Expert are quite rigorous.

What Customers are Saying:

My Expert answered my question promptly and he resolved the issue totally. This is a great service. I am so glad I found it I will definitely use the service again if needed.

One Happy CustomerNew York

Wonderful service, prompt, efficient, and accurate. Couldn't have asked for more. I cannot thank you enough for your help.

Mary C.Freshfield, Liverpool, UK

This expert is wonderful. They truly know what they are talking about, and they actually care about you. They really helped put my nerves at ease. Thank you so much!!!!

AlexLos Angeles, CA

Thank you for all your help. It is nice to know that this service is here for people like myself, who need answers fast and are not sure who to consult.

GPHesperia, CA

I couldn't be more satisfied! This is the site I will always come to when I need a second opinion.

JustinKernersville, NC

Just let me say that this encounter has been entirely professional and most helpful. I liked that I could ask additional questions and get answered in a very short turn around.

EstherWoodstock, NY

Thank you so much for taking your time and knowledge to support my concerns. Not only did you answer my questions, you even took it a step further with replying with more pertinent information I needed to know.

RobinElkton, Maryland

< Previous | Next >

Meet the Experts:

ATLPROG

ATLPROG

Computer Software Engineer

7,677 satisfied customers

MS in IT.Several years of programming experience in Java C++ C C# Python VB Javascript HTML

LogicPro

LogicPro

Computer Software Engineer

7,131 satisfied customers

Expert in C, C++, Java, DOT NET, Python, HTML, Javascript, Design.

unvadim

unvadim

Computer Software Engineer

1,168 satisfied customers

Good knowledge of OOP principles. 3+ years of programming experience with Java and C++. Sun Certified Java Programmer 5.0.

lifesaver

lifesaver

Computer Software Engineer

950 satisfied customers

Several years of intensive programming and application development experience in various platforms.

ehabtutor

ehabtutor

Computer Software Engineer

936 satisfied customers

Bachelor of computer science, 5+ years experience in software development, software company owner

TheDoctor

TheDoctor

Software Engineer

893 satisfied customers

M.S. in Internet Information Systems

The-PC-Guy

The-PC-Guy

Software Engineer

800 satisfied customers

Extensive Knowledge in PHP, MYSQL, CSS & Javascript

< Previous | Next >

Related Programming Questions
Just wanted to see if you would be interested in helping me
Hello Again! Just wanted to see if you would be interested in helping me with two more programs? I will attach the Program outlines and the Word documents. Please let me know if you would like to help… read more
George Sibiya
George Sibiya
PhD
217 satisfied customers
I am selecting data from a drop down list. I have multiple
I am selecting data from a drop down list. I have multiple rows of items that … read more
The-PC-Guy
The-PC-Guy
Software Engineer
Bachelor's Degree
800 satisfied customers
Nothing is going on with my computer, but I need some help
Nothing is going on with my computer, but I need some help with excel can you help … read more
Richard
Richard
IT Manager
IT Manager, Consultant
3,281 satisfied customers
I need help with conditional formatting on an excel
I need help with conditional formatting on an excel spreadsheet. I have a main page in the excel book that I enter values in and further down the table, if the values are greater than one number and l… read more
The-PC-Guy
The-PC-Guy
Software Engineer
Bachelor's Degree
800 satisfied customers
My account was seriously hacked. I bought a new phone it was
My account was seriously hacked. I bought a new phone it was so bad. To my surprise they apparently set up a fake FB account. Now I cannot get into my account. The account it keeps pulling up is not m… read more
Pete
Pete
Engineer
Bachelor\u0027s Degree
1,124 satisfied customers
My Microsoft Word and Excel app now require Office 365. They
My Microsoft Word and Excel app now require Office 365. They didn't when I installed the apps. I have them linked to Dropbox files. ???? … read more
Jinsmn
Jinsmn
Systems Administrator
Diplom
1,260 satisfied customers
I am new to word press and downloaded the wordpress.org and
i am new to word press and downloaded the wordpress.org and paid for the business plan and hosted by Bluehost I purchased a theme for Buz theme called the-multiple-pro which they sent a zip file I sep… read more
Chris L.
Chris L.
IT/Web Manager
Vocational, Technical or Trade Scho
29 satisfied customers
I want to pass a csv file twice. The first pass works
I want to pass a csv file twice. The first pass works perfectly: LAreader = csv.reader(open(InFileName,'r')) for line in LAreader: SvcDepNamesSet.add (line[0].strip())When I try a second time, there i… read more
George Sibiya
George Sibiya
PhD
217 satisfied customers
Can I ask you about this question At Olympic diving
Hi Can I ask you about this question At Olympic diving competition level, 10 diving judges award At Olympic diving competition level, 10 diving judges award a single mark (with one decimal place) for … read more
LogicPro
LogicPro
Computer Software Engineer
Bachelor of Technology
7,131 satisfied customers
I need to design an antisense oligo against beta catenin and
I need to design an antisense oligo against beta catenin and HCV-related sequences for clinical use … read more
Kris R
Kris R
IT Manager
Computing
2,654 satisfied customers
I have had a mailing list in excel (personal) for years. Can
I have had a mailing list in excel (personal) for years. Can you help me find it so I can update it?? … read more
Sheri
Sheri
Bachelor\u0027s Degree
105 satisfied customers
I need to know how to create and move a stack of playing
I need to know how to create and move a stack of playing cards in visual basic … read more
Ingo U
Ingo U
Master\u0027s Degree
357 satisfied customers
Write a C++ program to read in various types of test
Write a C++ program to read in various types of test questions (multiple choice and True/False) from a test bank (text file), and load the questions into an array of questions. You will need to implem… read more
LogicPro
LogicPro
Computer Software Engineer
Bachelor of Technology
7,131 satisfied customers
I want to copy a formula horizontally across a row and can't
I want to copy a formula horizontally across a row and can't get it to repeat … read more
The-PC-Guy
The-PC-Guy
Software Engineer
Bachelor's Degree
800 satisfied customers
I'm trying to make a python object oriented checkers game,
I'm trying to make a python object oriented checkers game, but I'm lost. I'm trying to find a source code for a python checkers game. Is there any way you would be able to help me … read more
George Sibiya
George Sibiya
PhD
217 satisfied customers
I have a spreadsheet with customer sales and market
I have a spreadsheet with customer sales and market information for the first half of 2017. The list has over 10,000 rows. I added the market segment manually from a drop down menu. Very time consumin… read more
The-PC-Guy
The-PC-Guy
Software Engineer
Bachelor's Degree
800 satisfied customers
Not sure how to explain this...but I have an excel report
Hi! Not sure how to explain this...but I have an excel report with a field name for first name and one for last name. The report contains multiple people from the same household, one row for each. Eac… read more
The-PC-Guy
The-PC-Guy
Software Engineer
Bachelor's Degree
800 satisfied customers
Wanting to insert function into a invoice I am building on
wanting to insert function into a invoice I am building on excel, how to add a subtraction … read more
The-PC-Guy
The-PC-Guy
Software Engineer
Bachelor's Degree
800 satisfied customers
Disclaimer: Information in questions, answers, and other posts on this site ("Posts") comes from individual users, not JustAnswer; JustAnswer is not responsible for Posts. Posts are for general information, are not intended to substitute for informed professional advice (medical, legal, veterinary, financial, etc.), or to establish a professional-client relationship. The site and services are provided "as is" with no warranty or representations by JustAnswer regarding the qualifications of Experts. To see what credentials have been verified by a third-party service, please click on the "Verified" symbol in some Experts' profiles. JustAnswer is not intended or designed for EMERGENCY questions which should be directed immediately by telephone or in-person to qualified professionals.

Disclaimer: Information in questions, answers, and other posts on this site ("Posts") comes from individual users, not JustAnswer; JustAnswer is not responsible for Posts. Posts are for general information, are not intended to substitute for informed professional advice (medical, legal, veterinary, financial, etc.), or to establish a professional-client relationship. The site and services are provided "as is" with no warranty or representations by JustAnswer regarding the qualifications of Experts. To see what credentials have been verified by a third-party service, please click on the "Verified" symbol in some Experts' profiles. JustAnswer is not intended or designed for EMERGENCY questions which should be directed immediately by telephone or in-person to qualified professionals.

Show MoreShow Less

Ask Your Question

x