1: package body cstpaclm as
2: /* $Header: CSTACLMB.pls 120.1 2005/08/29 17:35:47 sheyu noship $ */
3:
4: function layer_id (
5: i_org_id in number,
31: when NO_DATA_FOUND THEN
32: return 0;
33: when others then
34: o_err_num := SQLCODE;
35: o_err_msg := 'CSTPACLM.LAYER_ID:' || substrb(SQLERRM,1,150);
36: return 0;
37:
38: end layer_id;
39:
72: when NO_DATA_FOUND THEN
73: return 0;
74: when others then
75: o_err_num := SQLCODE;
76: o_err_msg := 'CSTPACLM.LAYER_DET_EXIST:' || substrb(SQLERRM,1,150);
77: return 0;
78:
79: end layer_det_exist;
80:
103:
104: /*
105: ** check for existing layer
106: */
107: l_layer_id := cstpaclm.layer_id(i_org_id,
108: i_item_id,
109: i_cost_group_id,
110: o_err_num,
111: o_err_code,
194: );
195: EXCEPTION
196: WHEN DUP_VAL_ON_INDEX THEN
197: /* Bug 4408497: A layer already exists for this org/item/cg, so return that layer */
198: l_layer_id := cstpaclm.layer_id(i_org_id,
199: i_item_id,
200: i_cost_group_id,
201: o_err_num,
202: o_err_code,
203: o_err_msg);
204: return l_layer_id;
205: WHEN OTHERS THEN
206: o_err_num := SQLCODE;
207: o_err_msg := 'CSTPACLM.CREATE_LAYER:' || substrb(SQLERRM,1,150);
208: return 0;
209: END;
210: end if;
211:
214: EXCEPTION
215:
216: when others then
217: o_err_num := SQLCODE;
218: o_err_msg := 'CSTPACLM.CREATE_LAYER:' || substrb(SQLERRM,1,150);
219: return 0;
220:
221: end create_layer;
222:
219: return 0;
220:
221: end create_layer;
222:
223: end cstpaclm;