The following lines contain the word 'select', 'insert', 'update' or 'delete':
/* insert_routing_steps */
/* */
/* DESCRIPTION: */
/* */
/* API returns (x_return_code) = 'S' if the insert into routing */
/* details (fm_rout_dtl) table is successfully. */
/* */
/* History : */
/* Shyam 07/29/2002 Initial implementation */
/* Raju 31-OCT-02 Changed the code to add default values. */
/* Raju 18-NOV-02 Tested in opm115qa db and fixed the issues */
/* =============================================================== */
PROCEDURE insert_routing_steps
( p_routing_id IN gmd_routings.routing_id%TYPE
, p_routing_step_rec IN fm_rout_dtl%ROWTYPE
, x_return_status OUT NOCOPY VARCHAR2
) IS
/* Local variable section */
l_api_name CONSTANT VARCHAR2(30) := 'INSERT_ROUTING_STEPS';
SELECT gem5_routingstep_id_s.NEXTVAL
FROM sys.dual;
gmd_debug.put_line('Insert the routing steps for routing with routingstep id = '||l_routingstep_id);
INSERT INTO fm_rout_dtl
( routing_id, routingstep_no, routingstep_id , oprn_id ,step_qty, steprelease_type, text_code
,last_updated_by, created_by, last_update_date, creation_date, last_update_login
,attribute1, attribute2, attribute3, attribute4, attribute5 , attribute6 , attribute7
,attribute8 , attribute9 , attribute10 , attribute11 , attribute12, attribute13
,attribute14 , attribute15, attribute16, attribute17, attribute18, attribute19
,attribute20 , attribute21, attribute22, attribute23 , attribute24,attribute25
,attribute26, attribute27 , attribute28, attribute29 , attribute30, attribute_category
,x_coordinate, y_coordinate,minimum_transfer_qty)
VALUES
( p_routing_id , p_routing_step_rec.routingstep_no, NVL(p_routing_step_rec.routingstep_id,l_routingStep_id)
,p_routing_step_rec.oprn_id, p_routing_step_rec.step_qty, p_routing_step_rec.steprelease_type
,p_routing_step_rec.text_code, gmd_api_grp.user_id
,gmd_api_grp.user_id, NVL(p_routing_step_rec.last_update_date,SYSDATE)
,NVL(p_routing_step_rec.creation_date,SYSDATE), p_routing_step_rec.last_update_login
,p_routing_step_rec.attribute1, p_routing_step_rec.attribute2
,p_routing_step_rec.attribute3, p_routing_step_rec.attribute4
,p_routing_step_rec.attribute5, p_routing_step_rec.attribute6
,p_routing_step_rec.attribute7, p_routing_step_rec.attribute8
,p_routing_step_rec.attribute9, p_routing_step_rec.attribute10
,p_routing_step_rec.attribute11, p_routing_step_rec.attribute12
,p_routing_step_rec.attribute13, p_routing_step_rec.attribute14
,p_routing_step_rec.attribute15, p_routing_step_rec.attribute16
,p_routing_step_rec.attribute17, p_routing_step_rec.attribute18
,p_routing_step_rec.attribute19, p_routing_step_rec.attribute20
,p_routing_step_rec.attribute21, p_routing_step_rec.attribute22
,p_routing_step_rec.attribute23, p_routing_step_rec.attribute24
,p_routing_step_rec.attribute25, p_routing_step_rec.attribute26
,p_routing_step_rec.attribute27, p_routing_step_rec.attribute28
,p_routing_step_rec.attribute29, p_routing_step_rec.attribute30
,p_routing_step_rec.attribute_category, p_routing_step_rec.x_coordinate
,p_routing_step_rec.y_coordinate,p_routing_step_rec.minimum_transfer_qty);
END insert_routing_steps;
/* insert_step_dependencies */
/* */
/* DESCRIPTION: */
/* */
/* API returns (x_return_code) = 'S' if the insert into step */
/* dependency table is successfully. */
/* */
/* History : */
/* Shyam 07/29/2002 Initial implemenation */
/* S.Dulyk 8/24/03 remove NVL and ,0 from max_delay line in */
/* insert to fm_rout_Dep */
/* =============================================================== */
PROCEDURE insert_step_dependencies
( p_routing_id IN gmd_routings.routing_id%TYPE
, p_routingstep_no IN fm_rout_dtl.routingstep_no%TYPE
, p_routings_step_dep_tbl IN GMD_ROUTINGS_PUB.gmd_routings_step_dep_tab
, x_return_status OUT NOCOPY VARCHAR2
) IS
/* Cursor section */
CURSOR get_step_qty (vRouting_id NUMBER,vroutingstep_no NUMBER) IS
Select step_qty
From fm_rout_dtl
Where routing_id = vRouting_id
AND routingstep_no = vroutingstep_no;
l_api_name CONSTANT VARCHAR2(30) := 'INSERT_STEP_DEPENDENCIES';
/* Insert made into the step dependency table */
FOR i IN 1 .. p_routings_step_dep_tbl.count LOOP
/* get the step qty for tranfer qty calculation */
OPEN get_step_qty(p_routing_id,p_routingstep_no);
INSERT INTO fm_rout_dep
(routingstep_no ,dep_routingstep_no ,routing_id ,dep_type ,rework_code
,standard_delay ,minimum_delay ,max_delay ,transfer_qty ,routingstep_no_uom
,text_code ,last_updated_by ,created_by ,last_update_date ,creation_date
,last_update_login ,transfer_pct ) VALUES
(p_routingstep_no
,p_routings_step_dep_tbl(i).dep_routingstep_no
,p_routing_id
,NVL(p_routings_step_dep_tbl(i).dep_type,0)
,p_routings_step_dep_tbl(i).rework_code
,NVL(p_routings_step_dep_tbl(i).standard_delay,0)
,NVL(p_routings_step_dep_tbl(i).minimum_delay,0)
,p_routings_step_dep_tbl(i).max_delay
,NVL(l_transfer_qty,0)
,p_routings_step_dep_tbl(i).routingstep_no_uom
,p_routings_step_dep_tbl(i).text_code
,gmd_api_grp.user_id
,gmd_api_grp.user_id
,NVL(p_routings_step_dep_tbl(i).last_update_date,SYSDATE)
,NVL(p_routings_step_dep_tbl(i).creation_date,SYSDATE)
,p_routings_step_dep_tbl(i).last_update_login
,NVL(p_routings_step_dep_tbl(i).transfer_pct,100)
);
gmd_debug.put_line('After inserting routing step dependencies');
END insert_step_dependencies;
/* update_routing_steps */
/* */
/* DESCRIPTION: */
/* */
/* API returns (x_return_code) = 'S' if the update into routing */
/* details (fm_rout_dtl table) is success. */
/* */
/* History : */
/* Shyam 07/29/2002 Initial implementation */
/* =============================================================== */
PROCEDURE update_routing_steps
( p_routingstep_id IN fm_rout_dtl.routingstep_id%TYPE
, p_update_table IN GMD_ROUTINGS_PUB.update_tbl_type
, x_return_status OUT NOCOPY VARCHAR2
) IS
/* Local variable section */
l_api_name CONSTANT VARCHAR2(30) := 'UPDATE_ROUTING_STEPS';
last_update_date_failure EXCEPTION;
routing_update_step_failure EXCEPTION;
Select *
From fm_rout_dtl
Where RoutingStep_id = vRoutingStep_id;
RAISE routing_update_step_failure;
/* Get the last update date from database */
l_db_date := l_old_routingStep_rec.LAST_UPDATE_DATE;
/* Actual update in fm_rout_dtl table */
/* Loop thro' every column in p_update_table table and for each column name
assign or replace the old value with the table value */
IF (l_debug = 'Y') THEN
gmd_debug.put_line('Seting the update column value ');
FOR i IN 1 .. p_update_table.count LOOP
IF (UPPER(p_update_table(i).p_col_to_update) = 'STEP_QTY') THEN
l_old_routingStep_rec.STEP_QTY := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'STEPRELEASE_TYPE') THEN
l_old_routingStep_rec.STEPRELEASE_TYPE := TO_NUMBER(p_update_table(i).p_value);
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'TEXT_CODE') THEN
l_old_routingStep_rec.TEXT_CODE := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'LAST_UPDATED_BY') THEN
l_old_routingStep_rec.LAST_UPDATED_BY := gmd_api_grp.user_id;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'LAST_UPDATE_DATE') THEN
l_old_routingstep_rec.LAST_UPDATE_DATE :=
FND_DATE.CANONICAL_TO_DATE(p_update_table(i).p_value);
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'LAST_UPDATE_LOGIN') THEN
l_old_routingStep_rec.LAST_UPDATE_LOGIN := gmd_api_grp.user_id;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE1') THEN
l_old_routingStep_rec.ATTRIBUTE1 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE2') THEN
l_old_routingStep_rec.ATTRIBUTE2 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE3') THEN
l_old_routingStep_rec.ATTRIBUTE3 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE4') THEN
l_old_routingStep_rec.ATTRIBUTE4 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE5') THEN
l_old_routingStep_rec.ATTRIBUTE5 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE6') THEN
l_old_routingStep_rec.ATTRIBUTE6 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE7') THEN
l_old_routingStep_rec.ATTRIBUTE7 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE8') THEN
l_old_routingStep_rec.ATTRIBUTE8 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE9') THEN
l_old_routingStep_rec.ATTRIBUTE9 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE10') THEN
l_old_routingStep_rec.ATTRIBUTE10 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE11') THEN
l_old_routingStep_rec.ATTRIBUTE11 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE12') THEN
l_old_routingStep_rec.ATTRIBUTE12 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE13') THEN
l_old_routingStep_rec.ATTRIBUTE13 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE14') THEN
l_old_routingStep_rec.ATTRIBUTE14 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE15') THEN
l_old_routingStep_rec.ATTRIBUTE15 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE16') THEN
l_old_routingStep_rec.ATTRIBUTE16 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE17') THEN
l_old_routingStep_rec.ATTRIBUTE17 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE18') THEN
l_old_routingStep_rec.ATTRIBUTE18 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE19') THEN
l_old_routingStep_rec.ATTRIBUTE19 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE20') THEN
l_old_routingStep_rec.ATTRIBUTE20 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE21') THEN
l_old_routingStep_rec.ATTRIBUTE21 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE22') THEN
l_old_routingStep_rec.ATTRIBUTE22 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE23') THEN
l_old_routingStep_rec.ATTRIBUTE23 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE24') THEN
l_old_routingStep_rec.ATTRIBUTE24 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE25') THEN
l_old_routingStep_rec.ATTRIBUTE25 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE26') THEN
l_old_routingStep_rec.ATTRIBUTE26 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE27') THEN
l_old_routingStep_rec.ATTRIBUTE27 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE28') THEN
l_old_routingStep_rec.ATTRIBUTE28 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE29') THEN
l_old_routingStep_rec.ATTRIBUTE29 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE30') THEN
l_old_routingStep_rec.ATTRIBUTE30 := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'ATTRIBUTE_CATEGORY') THEN
l_old_routingStep_rec.ATTRIBUTE_CATEGORY := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'X_COORDINATE') THEN
l_old_routingStep_rec.X_COORDINATE := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'Y_COORDINATE') THEN
l_old_routingStep_rec.Y_COORDINATE := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'MINIMUM_TRANSFER_QTY') THEN
l_old_routingStep_rec.MINIMUM_TRANSFER_QTY := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'OPRN_ID') THEN
l_old_routingStep_rec.OPRN_ID := p_update_table(i).p_value;
/* Compare Dates - if the last update date passed in via the API is less than
the last update in the db - it indicates someelse has updated this row after this
row was selected */
IF l_old_routingStep_rec.last_update_date < l_db_date THEN
RAISE last_update_date_failure;
gmd_debug.put_line('Before routing step table update ');
UPDATE fm_rout_dtl
SET oprn_id = l_old_routingStep_rec.oprn_id
,step_qty = l_old_routingStep_rec.step_qty
,steprelease_type = l_old_routingStep_rec.steprelease_type
,text_code = l_old_routingStep_rec.text_code
,last_updated_by = l_old_routingStep_rec.last_updated_by
,last_update_date = NVL(l_old_routingStep_rec.last_update_date,SYSDATE)
,last_update_login = l_old_routingStep_rec.last_update_login
,attribute1 = l_old_routingStep_rec.attribute1
,attribute2 = l_old_routingStep_rec.attribute2
,attribute3 = l_old_routingStep_rec.attribute3
,attribute4 = l_old_routingStep_rec.attribute4
,attribute5 = l_old_routingStep_rec.attribute5
,attribute6 = l_old_routingStep_rec.attribute6
,attribute7 = l_old_routingStep_rec.attribute7
,attribute8 = l_old_routingStep_rec.attribute8
,attribute9 = l_old_routingStep_rec.attribute9
,attribute10 = l_old_routingStep_rec.attribute10
,attribute11 = l_old_routingStep_rec.attribute11
,attribute12 = l_old_routingStep_rec.attribute12
,attribute13 = l_old_routingStep_rec.attribute13
,attribute14 = l_old_routingStep_rec.attribute14
,attribute15 = l_old_routingStep_rec.attribute15
,attribute16 = l_old_routingStep_rec.attribute16
,attribute17 = l_old_routingStep_rec.attribute17
,attribute18 = l_old_routingStep_rec.attribute18
,attribute19 = l_old_routingStep_rec.attribute19
,attribute20 = l_old_routingStep_rec.attribute20
,attribute21 = l_old_routingStep_rec.attribute21
,attribute22 = l_old_routingStep_rec.attribute22
,attribute23 = l_old_routingStep_rec.attribute23
,attribute24 = l_old_routingStep_rec.attribute24
,attribute25 = l_old_routingStep_rec.attribute25
,attribute26 = l_old_routingStep_rec.attribute26
,attribute27 = l_old_routingStep_rec.attribute27
,attribute28 = l_old_routingStep_rec.attribute28
,attribute29 = l_old_routingStep_rec.attribute29
,attribute30 = l_old_routingStep_rec.attribute30
,attribute_category = l_old_routingStep_rec.attribute_category
,minimum_transfer_qty = l_old_routingStep_rec.minimum_transfer_qty
,x_coordinate = l_old_routingStep_rec.x_coordinate
,y_coordinate = l_old_routingStep_rec.y_coordinate
WHERE routingStep_id = p_routingstep_id;
gmd_debug.put_line('After routing step table update ');
RAISE routing_update_step_failure;
RAISE routing_update_step_failure;
WHEN routing_update_step_failure OR invalid_version THEN
IF (l_debug = 'Y') THEN
gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
WHEN last_update_date_failure THEN
x_return_status := FND_API.G_RET_STS_ERROR;
END update_routing_steps;
/* update_step_dependencies */
/* */
/* DESCRIPTION: */
/* */
/* API returns (x_return_code) = 'S' if the update into routing */
/* step dependency (fm_rout_dep table) is success. */
/* */
/* History : */
/* Shyam 07/29/2002 Initial implementation */
/* =============================================================== */
PROCEDURE update_step_dependencies
( p_routingstep_no IN fm_rout_dep.routingstep_no%TYPE
, p_dep_routingstep_no IN fm_rout_dep.routingstep_no%TYPE
, p_routing_id IN fm_rout_dep.routing_id%TYPE
, p_update_table IN GMD_ROUTINGS_PUB.update_tbl_type
, x_return_status OUT NOCOPY VARCHAR2
) IS
/* Local variable section */
l_api_name CONSTANT VARCHAR2(30) := 'UPDATE_STEP_DEPENDENCIES';
last_update_date_failure EXCEPTION;
routing_update_dep_failure EXCEPTION;
Select *
From fm_rout_dep
Where RoutingStep_no = vRoutingStep_no
And dep_RoutingStep_no = vdep_RoutingStep_no
And Routing_id = vRouting_id;
RAISE routing_update_dep_failure;
/* Get the last update date in database */
l_db_date := l_old_stepDep_rec.LAST_UPDATE_DATE;
/* Actual update in fm_rout_dep table */
/* Loop thro' every column in p_update_table table and for each column name
assign or replace the old value with the table value */
FOR i IN 1 .. p_update_table.count LOOP
IF (UPPER(p_update_table(i).p_col_to_update) = 'DEP_TYPE') THEN
l_old_stepDep_rec.DEP_TYPE := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'REWORK_CODE') THEN
l_old_stepDep_rec.REWORK_CODE := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'STANDARD_DELAY') THEN
l_old_stepDep_rec.STANDARD_DELAY := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'MAX_DELAY') THEN
l_old_stepDep_rec.MAX_DELAY := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'TRANSFER_PCT') THEN
l_old_stepDep_rec.TRANSFER_PCT := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'TEXT_CODE') THEN
l_old_stepDep_rec.TEXT_CODE := p_update_table(i).p_value;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'LAST_UPDATED_BY') THEN
l_old_stepDep_rec.LAST_UPDATED_BY := gmd_api_grp.user_id;
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'LAST_UPDATE_DATE') THEN
l_old_stepdep_rec.LAST_UPDATE_DATE := FND_DATE.CANONICAL_TO_DATE(p_update_table(i).p_value);
ELSIF (UPPER(p_update_table(i).p_col_to_update) = 'LAST_UPDATE_LOGIN') THEN
l_old_stepDep_rec.LAST_UPDATE_LOGIN := gmd_api_grp.user_id;
/* Compare Dates - if the last update date passed in via the API is less than
the last update in the db - it indicates someelse has updated this row after this
row was selected */
IF l_old_stepDep_rec.last_update_date < l_db_date THEN
RAISE last_update_date_failure;
UPDATE fm_rout_dep
SET dep_type = l_old_stepDep_rec.dep_type
,rework_code = l_old_stepDep_rec.rework_code
,standard_delay = l_old_stepDep_rec.standard_delay
,max_delay = l_old_stepDep_rec.max_delay
,text_code = l_old_stepDep_rec.text_code
,last_updated_by = l_old_stepDep_rec.last_updated_by
,last_update_date = NVL(l_old_stepDep_rec.last_update_date,SYSDATE)
,last_update_login = l_old_stepDep_rec.last_update_login
,transfer_pct = l_old_stepDep_rec.transfer_pct
WHERE routingstep_no = p_routingstep_no
AND dep_routingstep_no = p_dep_routingstep_no
AND routing_id = p_routing_id;
RAISE routing_update_dep_failure;
RAISE routing_update_dep_failure;
WHEN routing_update_dep_failure OR invalid_version THEN
IF (l_debug = 'Y') THEN
gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
WHEN last_update_date_failure THEN
x_return_status := FND_API.G_RET_STS_ERROR;
END update_step_dependencies;
/* Delete_Routing_step */
/* */
/* DESCRIPTION: */
/* */
/* API returns (x_return_code) = 'S' if the delete into routing */
/* step dependency (fm_rout_dep table) is success. */
/* */
/* History : */
/* Shyam 07/29/2002 Initial implementation */
/* =============================================================== */
PROCEDURE delete_routing_step
( p_routingstep_id IN fm_rout_dtl.routingstep_id%TYPE
, p_routing_id IN gmd_routings.routing_id%TYPE := NULL
, x_return_status OUT NOCOPY VARCHAR2
) IS
/* Local variable section */
l_api_name CONSTANT VARCHAR2(30) := 'DELETE_ROUTING_STEP';
needs to be deleted */
Cursor Check_Step_dep_rec(vRoutingstep_no fm_rout_dep.routingStep_no%TYPE
,vRouting_id gmd_routings.Routing_id%TYPE) IS
Select count(*)
From fm_rout_dep
Where (routingStep_no = vRoutingStep_no OR dep_routingStep_no = vRoutingStep_no)
And routing_id = vrouting_id;
SELECT 1
FROM SYS.DUAL
WHERE EXISTS (SELECT 1
FROM gmd_recipe_routing_steps
WHERE routingstep_id = p_routingstep_id);
SELECT 1
FROM sys.dual
WHERE EXISTS (SELECT 1
FROM gmd_recipe_step_materials
WHERE routingstep_id = p_routingstep_id);
SELECT 1
FROM sys.dual
WHERE EXISTS (SELECT 1
FROM gmd_recipe_orgn_activities
WHERE routingstep_id = p_routingstep_id);
SELECT 1
FROM sys.dual
WHERE EXISTS (SELECT 1
FROM gmd_recipe_orgn_resources
WHERE routingstep_id = p_routingstep_id);
routing_delete_step_failure EXCEPTION;
routing_delete_stepdep_failure EXCEPTION;
/* Get the routingstep_no (routingstep_no is used for the routing step dep delete ) */
IF (l_debug = 'Y') THEN
gmd_debug.put_line(' get the RoutingStep_id - if it is not passed as a parameter ');
RAISE routing_delete_step_failure;
RAISE routing_delete_step_failure;
/* Check if any rows from fm_rout_dep needs to be deleted */
IF p_routing_id IS NOT NULL THEN
OPEN Check_Step_dep_rec(vRoutingstep_no => l_routingstep_no
,vRouting_id => p_routing_id ) ;
/* Delete rows in the step dependency table specific to this
routing_id and routingstep_no */
GMD_ROUTING_STEPS_PVT.delete_step_dependencies
(p_routingstep_no => l_routingstep_no
, p_routing_id => p_routing_id
, x_return_status => l_return_from_routing_step_dep
);
/* Check if insert of step dependency was done */
IF l_return_from_routing_step_dep <> FND_API.G_RET_STS_SUCCESS THEN
RAISE routing_delete_stepdep_failure;
/* Actual delete is performed */
DELETE FROM fm_rout_dtl
WHERE routingStep_id = p_routingStep_id;
WHEN routing_delete_step_failure OR invalid_version THEN
IF (l_debug = 'Y') THEN
gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
WHEN routing_delete_stepdep_failure THEN
IF (l_debug = 'Y') THEN
gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'delete step dep API not complete');
END delete_routing_step;
/* delete_step_dependencies */
/* */
/* DESCRIPTION: */
/* */
/* API returns (x_return_code) = 'S' if the delete in routing */
/* step dependency (fm_rout_dep table) is success. */
/* */
/* History : */
/* Shyam 07/29/2002 Initial implementation */
/* =============================================================== */
PROCEDURE delete_step_dependencies
( p_routingstep_no IN fm_rout_dep.routingstep_no%TYPE
, p_dep_routingstep_no IN fm_rout_dep.routingstep_no%TYPE := NULL
, p_routing_id IN fm_rout_dep.routing_id%TYPE
, x_return_status OUT NOCOPY VARCHAR2
) IS
/* Local variable section */
l_api_name CONSTANT VARCHAR2(30) := 'DELETE_STEP_DEPENDENCIES';
routing_delete_dep_failure EXCEPTION;
/* Actual delete in fm_rout_dep table */
/* This delete can be specific to a dep_routingstep_no or a
Routingstep_no */
IF (l_debug = 'Y') THEN
gmd_Debug.put_line('About to delete from step dep table - the routingstep no = '||p_routingstep_no ||' and routing id = '||p_routing_id);
DELETE FROM fm_rout_dep
WHERE routingstep_no = p_routingstep_no
AND dep_routingstep_no = p_dep_routingstep_no
AND routing_id = p_routing_id;
DELETE FROM fm_rout_dep
WHERE routingstep_no = p_routingstep_no
AND routing_id = p_routing_id;
DELETE FROM fm_rout_dep
WHERE dep_routingstep_no = p_routingstep_no
AND routing_id = p_routing_id;
WHEN routing_delete_dep_failure OR invalid_version THEN
IF (l_debug = 'Y') THEN
gmd_debug.put_line (m_pkg_name||'.'||l_api_name||':'||'API not complete');
END delete_step_dependencies;