DBA Data[Home] [Help]

PACKAGE: APPS.GMD_AUTO_STEP_CALC

Source


1 PACKAGE GMD_AUTO_STEP_CALC AS
2 /* $Header: GMDSTEPS.pls 120.0 2005/05/25 19:17:08 appldev noship $ */
3 
4 TYPE step_rec_type IS RECORD
5 (
6  STEP_ID		NUMBER,
7  STEP_NO		NUMBER,
8  STEP_QTY		NUMBER,
9  STEP_QTY_UOM   	mtl_units_of_measure.uom_code%TYPE,
10  STEP_MASS_QTY		NUMBER,
11  STEP_MASS_UOM		mtl_units_of_measure.uom_code%TYPE,
12  STEP_VOL_QTY   	NUMBER,
13  STEP_VOL_UOM		mtl_units_of_measure.uom_code%TYPE,
14  STEP_OTHER_QTY		NUMBER,
15  STEP_OTHER_UOM		mtl_units_of_measure.uom_code%TYPE
16 );
17 
18 TYPE work_step_rec_type IS RECORD
19 (
20  STEP_ID	     NUMBER,
21  STEP_NO	     NUMBER,
22  LINE_ID 	     NUMBER,
23  LINE_TYPE	     NUMBER,
24  LINE_MASS_QTY       NUMBER,
25  LINE_VOL_QTY        NUMBER,
26  ACTUAL_MASS_QTY     NUMBER,
27  ACTUAL_VOL_QTY      NUMBER,
28  LINE_OTHER_QTY      NUMBER,
29  ACTUAL_OTHER_QTY    NUMBER
30 );
31 
32 TYPE calculatable_rec_type IS RECORD
33 (
34  PARENT_ID	   NUMBER,
35  FORMULALINE_ID    NUMBER,
36  ROUTINGSTEP_ID    NUMBER,
37  CREATION_DATE     DATE,
38  CREATED_BY        NUMBER,
39  LAST_UPDATE_DATE  DATE,
40  LAST_UPDATED_BY   NUMBER,
41  LAST_UPDATE_LOGIN NUMBER
42  );
43 
44 
45 TYPE check_step_mat_type IS RECORD
46 (ASQC_RECIPES       NUMBER,
47  STEP_ASSOC_RECIPES NUMBER
48 );
49 
50 /* Bug 2314635 - Thomas Daniel */
51 /* Added this PL/SQL table def to be able to calculate the transfer */
52 /* quantities appropriately based on the step status                */
53 TYPE work_step_qty_rec_type IS RECORD
54 (
55  STEP_NO	     NUMBER,
56  PLAN_MASS_QTY       NUMBER,
57  PLAN_VOL_QTY        NUMBER,
58  ACTUAL_MASS_QTY     NUMBER,
59  ACTUAL_VOL_QTY      NUMBER,
60  ACTUAL_OTHER_QTY    NUMBER,
61  PLAN_OTHER_QTY      NUMBER
62 );
63 
64 TYPE formulaline_scale_rec IS RECORD
65   (  formulaline_id             NUMBER
66   ,  line_no			NUMBER
67   ,  line_type  		NUMBER
68   ,  inventory_item_id    	NUMBER
69   ,  qty        		NUMBER
70   ,  detail_uom    		VARCHAR2(25)
71   ,  scale_type 		NUMBER
72   ,  contribute_yield_ind 	VARCHAR2(1)
73   ,  scale_multiple		PLS_INTEGER
74   ,  scale_rounding_variance	NUMBER
75   ,  rounding_direction		NUMBER
76   );
77 
78 TYPE formulaline_scale_tab IS TABLE OF formulaline_scale_rec index by binary_integer ;
79 
80 /* Shyam - Added PL/SQL rec defn for GMF group */
81 /* Costing would like ASQC on scaled formula qty */
82 TYPE costing_scale_rec_type IS RECORD
83 (
84  INVENTORY_ITEM_ID   NUMBER,
85  ITEM_UM             mtl_units_of_measure.uom_code%TYPE,
86  SCALE_FACTOR        NUMBER
87 );
88 
89 
90 TYPE work_step_qty_tbl IS TABLE OF work_step_qty_rec_type INDEX BY BINARY_INTEGER;
91 TYPE step_rec_tbl      IS TABLE OF step_rec_type INDEX BY BINARY_INTEGER;
92 TYPE work_step_rec_tbl IS TABLE OF work_step_rec_type INDEX BY BINARY_INTEGER;
93 TYPE recipe_id_tbl     IS TABLE OF gmd_recipes.recipe_id%TYPE INDEX BY BINARY_INTEGER;
94 
95 G_PROFILE_MASS_UM_TYPE	 VARCHAR2(80);
96 G_PROFILE_VOLUME_UM_TYPE VARCHAR2(80);
97 G_PROFILE_OTHER_UM_TYPE  VARCHAR2(80);
98 
99 G_MASS_STD_UM		 mtl_units_of_measure.uom_class%TYPE;
100 G_VOL_STD_UM		 mtl_units_of_measure.uom_class%TYPE;
101 G_OTHER_STD_UM           mtl_units_of_measure.uom_class%TYPE;
102 
103 G_OTHER_UM_TYPE_EXISTS   BOOLEAN := FALSE;
104 
105 
106 PROCEDURE calc_step_qty (P_parent_id	     IN     NUMBER,
107                          P_step_tbl          OUT NOCOPY step_rec_tbl,
108                          P_msg_count	     OUT NOCOPY    NUMBER,
109                          P_msg_stack	     OUT NOCOPY    VARCHAR2,
110                          P_return_status     OUT NOCOPY    VARCHAR2,
111                          P_called_from_batch IN     NUMBER DEFAULT 0,
112                          P_step_no	     IN     NUMBER DEFAULT NULL,
113                          p_ignore_mass_conv  IN  BOOLEAN DEFAULT FALSE,
114                          p_ignore_vol_conv   IN BOOLEAN DEFAULT FALSE,
115                          p_scale_factor      IN NUMBER DEFAULT NULL,
116                          /*Bug 1683702 - Thomas Daniel */
117                          /* Added the process loss parameter to bump up the ingredients */
118                          p_process_loss	     IN NUMBER DEFAULT 0,
119 			 p_organization_id   IN NUMBER);
120 
121 
122 PROCEDURE load_steps (P_parent_id  IN NUMBER,
123                       P_called_from_batch IN NUMBER,
124                       P_step_no IN NUMBER,
125                       P_step_tbl OUT NOCOPY step_rec_tbl,
126                       P_routing_id OUT NOCOPY NUMBER,
127                       P_return_status OUT NOCOPY VARCHAR2);
128 
129 FUNCTION step_uom_mass_volume (P_step_tbl IN step_rec_tbl)
130          RETURN BOOLEAN;
131 
132 PROCEDURE get_step_material_lines (P_parent_id		IN NUMBER,
133                                    P_routing_id		IN NUMBER,
134                                    P_called_from_batch	IN NUMBER,
135                                    P_step_tbl		IN step_rec_tbl,
136                                    P_work_step_tbl 	IN OUT NOCOPY work_step_rec_tbl,
137                                    P_return_status 	OUT NOCOPY VARCHAR2,
138                                    p_ignore_mass_conv  IN BOOLEAN DEFAULT FALSE,
139                                    p_ignore_vol_conv   IN BOOLEAN DEFAULT FALSE,
140                                    p_process_loss	IN NUMBER DEFAULT 0);
141 
142 /* Created a overloaded function specific to costing */
143 PROCEDURE get_step_material_lines (P_parent_id		IN NUMBER,
144                                    P_routing_id		IN NUMBER,
145                                    P_called_from_batch	IN NUMBER,
146                                    P_step_tbl		IN step_rec_tbl,
147                                    P_scale_factor       IN NUMBER ,
148                                    P_work_step_tbl 	IN OUT NOCOPY work_step_rec_tbl,
149                                    P_return_status 	OUT NOCOPY VARCHAR2,
150                                    p_ignore_mass_conv  IN BOOLEAN DEFAULT FALSE,
151                                    p_ignore_vol_conv   IN BOOLEAN DEFAULT FALSE,
152                                    p_process_loss	IN NUMBER DEFAULT 0);
153 
154 
155 FUNCTION get_step_rec (P_step_no	IN NUMBER,
156                        P_step_tbl	IN step_rec_tbl)
157          RETURN NUMBER;
158 
159 
160 PROCEDURE sort_step_lines (P_step_tbl	IN OUT NOCOPY step_rec_tbl,
161                            P_return_status OUT NOCOPY VARCHAR2);
162 
163 PROCEDURE check_step_qty_calculatable (P_check IN calculatable_rec_type,
164     	                               P_msg_count        OUT NOCOPY NUMBER,
165                                        P_msg_stack        OUT NOCOPY VARCHAR2,
166                                        P_return_status    OUT NOCOPY VARCHAR2,
167                                        P_ignore_mass_conv OUT NOCOPY BOOLEAN,
168                                        P_ignore_vol_conv  OUT NOCOPY BOOLEAN,
169 				       p_organization_id   IN NUMBER);
170 
171 
172 PROCEDURE check_del_from_step_mat(P_check          IN  calculatable_rec_type,
173                                   P_recipe_tbl     OUT NOCOPY recipe_id_tbl,
174                                   P_check_step_mat OUT NOCOPY check_step_mat_type,
175                                   P_msg_count      OUT NOCOPY NUMBER,
176                                   P_msg_stack      OUT NOCOPY VARCHAR2,
177                                   P_return_status  OUT NOCOPY VARCHAR2
178                                  );
179 
180 PROCEDURE cascade_del_to_step_mat(P_check          IN calculatable_rec_type,
181                                   P_recipe_tbl     IN recipe_id_tbl,
182                                   P_check_step_mat IN check_step_mat_type,
183                                   P_msg_count      OUT NOCOPY NUMBER,
184                                   P_msg_stack      OUT NOCOPY VARCHAR2,
185                                   P_return_status  OUT NOCOPY VARCHAR2,
186                                   p_organization_id   IN NUMBER);
187 
188 
189 
190 END GMD_AUTO_STEP_CALC;