DBA Data[Home] [Help]

PACKAGE: APPS.GMD_COMMON_VAL

Source


1 Package GMD_COMMON_VAL AUTHID CURRENT_USER AS
2 /* $Header: GMDPCOMS.pls 120.7.12010000.3 2009/03/19 18:08:38 plowe ship $ */
3 
4    /* Purpose: Validation functions and procedures used by more than one                               */
5    /*          part of GMD (Routings, Ops, Formula, QC, Recipes, Lab)                                  */
6    /*                                                                                                  */
7    /*          Some code common to more than one module can be found in GMA_VALID_GRP                  */
8    /*          (ex: validate_um, validate_orgn_code, validate_type)                                    */
9    /*                                                                                                  */
10    /* check_from_date                                                                                  */
11    /* check_date                                                                                       */
12    /* check_date_range                                                                                 */
13    /* get_customer_id                                                                                  */
14    /* customer_exists                                                                                  */
15    /* check_project                                                                                    */
16    /* check_user_id                                                                                    */
17    /* action_code                                                                                      */
18    /*                                                                                                  */
19    /* MODIFICATION HISTORY                                                                             */
20    /* Person      Date       Comments                                                                  */
21    /* ---------   ------     ------------------------------------------                                */
22    /*             14Nov2000  Created                                                                   */
23    /* Subtypes                                                                                         */
24 
25    /* ========                                                                                         */
26 
27    /* Constants                                                                                        */
28    /* =========                                                                                        */
29    G_PKG_NAME     CONSTANT VARCHAR2(30) := 'GMD_COMMON_VAL';
30 --   P_eff_max_date CONSTANT DATE
31 --           := TO_DATE(FND_PROFILE.VALUE('SY$EFF_MAX_DATE'), 'YYYY/MM/DD HH24:MI:SS');
32 
33 --   P_eff_min_date CONSTANT DATE
34 --           := TO_DATE(FND_PROFILE.VALUE('SY$EFF_MIN_DATE'), 'YYYY/MM/DD HH24:MI:SS');
35 -- Bug #2425875 (JKB) Commented above.
36 
37 
38    /* Error Return Code Constants:                                                                     */
39    /* ===========================                                                                      */
40    GMD_MAX_DATE_ERR          CONSTANT INTEGER := -6;  --Date is greater than system max date.
41    GMD_MIN_DATE_ERR          CONSTANT INTEGER := -7;  --Date is less than system min date.
42    GMD_TO_FROM_DATE          CONSTANT INTEGER := -8;  --From date is greater than to date.
43    GMD_FROM_DATE_REQD        CONSTANT INTEGER := -35; --From date is required.
44    FMVAL_CUSTID_ERR          CONSTANT INTEGER := -92205;
45 
46 
47    /* define this record for calculating charges */
48    /*Bug 2365583 Added a new member def_charge to the record type */
49    /* Bug 5258672 Added Max_Capacity_In_Res_UOM */
50    TYPE CHARGE_REC IS RECORD (
51         RoutingStep_id  NUMBER,
52         Max_Capacity    NUMBER,
53         capacity_uom    cr_rsrc_mst.capacity_um%TYPE ,
54         charge                  INTEGER,
55         def_charge     VARCHAR2(1),
56         Max_Capacity_In_Res_UOM NUMBER
57    );
58 
59    TYPE PROCESS_LOSS_REC IS RECORD (
60         qty             NUMBER  := 0    ,
61         Recipe_id       NUMBER          ,
62         Formula_id      NUMBER          ,
63         Routing_id      NUMBER		,
64         Item_Id		NUMBER		,
65         Orgn_Code	VARCHAR2(4)	,
66 	inventory_item_id NUMBER,
67 	organization_id   NUMBER,
68         Validity_Rule_Id NUMBER		,
69         UOM		VARCHAR2(4)
70    );
71 
72       /*  Define a table type for charges       */
73    TYPE charge_tbl IS TABLE OF CHARGE_REC
74         INDEX BY BINARY_INTEGER;
75    TYPE fm_rout_hdr_tbl IS TABLE OF fm_rout_hdr%ROWTYPE INDEX BY BINARY_INTEGER;
76    TYPE fm_rout_dtl_tbl IS TABLE OF fm_rout_dtl%ROWTYPE INDEX BY BINARY_INTEGER;
77    TYPE fm_rout_dep_tbl IS TABLE OF fm_rout_dep%ROWTYPE INDEX BY BINARY_INTEGER;
78    TYPE operation_tbl IS TABLE OF gmd_operations%ROWTYPE INDEX BY BINARY_INTEGER;
79    TYPE oprn_actv_tbl IS TABLE OF gmd_operation_activities%ROWTYPE INDEX BY BINARY_INTEGER;
80    TYPE oprn_rsrc_tbl IS TABLE OF gmd_operation_resources%ROWTYPE INDEX BY BINARY_INTEGER;
81    /* Functions and Procedures                                                                         */
85                             pcalledby_form IN VARCHAR2) RETURN NUMBER;
82    /* ========================                                                                         */
83    FUNCTION check_from_date(pfrom_date IN DATE,
84 
86    FUNCTION check_date(pdate IN DATE,
87                        pcalledby_form IN VARCHAR2) RETURN NUMBER;
88    FUNCTION check_date_range(pfrom_date IN DATE,
89                              pto_date   IN DATE,
90                              pcalledby_form IN VARCHAR2) RETURN NUMBER;
91    PROCEDURE get_customer_id(pcustomer_no  IN  VARCHAR2,
92                              xcust_id      OUT NOCOPY NUMBER,
93 			     xsite_id      OUT NOCOPY NUMBER,
94 			     xorg_id       OUT NOCOPY NUMBER,
95                              xreturn_code  OUT NOCOPY NUMBER);
96 
97    PROCEDURE customer_exists
98                  ( p_api_version      IN NUMBER,
99                    p_init_msg_list    IN VARCHAR2 := FND_API.G_FALSE,
100                    p_commit           IN VARCHAR2 := FND_API.G_FALSE,
101                    p_validation_level IN NUMBER   := FND_API.G_VALID_LEVEL_NONE,
102                    p_customer_id      IN NUMBER,
103 		   p_site_id          IN NUMBER,
104 		   p_org_id           IN NUMBER,
105                    p_customer_no      IN VARCHAR2,
106                    x_return_status    OUT NOCOPY VARCHAR2,
107                    x_msg_count        OUT NOCOPY NUMBER,
108                    x_msg_data         OUT NOCOPY VARCHAR2,
109                    x_return_code      OUT NOCOPY NUMBER,
110                    x_customer_id      OUT NOCOPY NUMBER);
111 
112 
113    /* check_user     */
114    PROCEDURE check_user_id   (p_api_version      IN NUMBER,
115                               p_init_msg_list    IN VARCHAR2,
116                               p_commit           IN VARCHAR2,
117                               p_validation_level IN NUMBER,
118                               p_user_id          IN NUMBER,
119                               x_return_status    OUT NOCOPY VARCHAR2,
120                               x_msg_count        OUT NOCOPY NUMBER,
121                               x_msg_data         OUT NOCOPY VARCHAR2,
122                               x_return_code      OUT NOCOPY NUMBER);
123 
124 
125    PROCEDURE action_code
126                  ( p_api_version      IN NUMBER,
127                    p_init_msg_list    IN VARCHAR2 := FND_API.G_FALSE,
128                    p_commit           IN VARCHAR2 := FND_API.G_FALSE,
129                    p_validation_level IN NUMBER   := FND_API.G_VALID_LEVEL_NONE,
130                    p_action_code      IN VARCHAR2,
131                    x_return_status    OUT NOCOPY VARCHAR2,
132                    x_msg_count        OUT NOCOPY NUMBER,
133                    x_msg_data         OUT NOCOPY VARCHAR2,
134                    x_return_code      OUT NOCOPY NUMBER);
135 
136    /* Added a few validation and fetch procedures */
137    /* Later on to be moved to its appropriate packages */
138    PROCEDURE Get_Status
139    (    Status_code             IN      GMD_STATUS.Status_code%TYPE     ,
140         Meaning                 OUT NOCOPY     GMD_STATUS.Meaning%TYPE         ,
141         Description             OUT NOCOPY     GMD_STATUS.Description%TYPE     ,
142         x_return_status         OUT NOCOPY     VARCHAR2
143    );
144 
145    PROCEDURE Calculate_Process_loss
146    (    process_loss            IN      process_loss_rec        ,
147         Entity_type             IN      VARCHAR2                        ,
148         x_recipe_theo_loss      OUT NOCOPY     GMD_PROCESS_LOSS.process_loss%TYPE ,
149         x_process_loss          OUT NOCOPY     GMD_PROCESS_LOSS.process_loss%TYPE ,
150         x_return_status         OUT NOCOPY     VARCHAR2                        ,
151         x_msg_count             OUT NOCOPY     NUMBER                          ,
152         x_msg_data              OUT NOCOPY     VARCHAR2
153    );
154 
155    PROCEDURE Calculate_Total_Qty
156    (    formula_id              IN      GMD_RECIPES.Formula_id%TYPE     ,
157         x_product_qty           OUT NOCOPY     NUMBER                          ,
158         x_ingredient_qty        OUT NOCOPY     NUMBER                          ,
159         x_uom                   IN OUT NOCOPY VARCHAR2                        ,
160         x_return_status         OUT NOCOPY     VARCHAR2                        ,
161         x_msg_count             OUT NOCOPY     NUMBER                          ,
162         x_msg_data              OUT NOCOPY     VARCHAR2                	,
163         p_scale_factor		IN	NUMBER DEFAULT NULL		,
164         p_primaries		IN	VARCHAR2 DEFAULT 'OUTPUTS'
165    );
166 
167    FUNCTION Get_Routing_Scale_Factor(vRecipe_id  IN NUMBER,
168                                      x_return_status OUT NOCOPY VARCHAR2,
169                                      vFormula_id IN NUMBER DEFAULT NULL,
170                                      vRouting_Id IN NUMBER DEFAULT NULL
171                                      ) RETURN NUMBER;
172 
173    PROCEDURE Calculate_Charges
174    (    Batch_id                IN      NUMBER         ,
175         Recipe_id               IN      NUMBER         ,
176         Routing_id              IN      NUMBER         ,
177         VR_qty                  IN      NUMBER         ,
178         Tolerance               IN      NUMBER         ,
179         Orgn_id                 IN      NUMBER         ,
180         x_charge_tbl            OUT NOCOPY     charge_tbl     ,
181         x_return_status         OUT NOCOPY     VARCHAR2
182    );
183 
184 
185   PROCEDURE Calculate_Step_Charges
186   (     P_recipe_id               IN      NUMBER                      ,
187         P_tolerance               IN      NUMBER                      ,
188         P_orgn_id                 IN      NUMBER                      ,
189         P_step_tbl		  IN	  GMD_AUTO_STEP_CALC.step_rec_tbl,
190         x_charge_tbl              OUT NOCOPY     charge_tbl                  ,
191         x_return_status           OUT NOCOPY     VARCHAR2
192   );
193 
194    FUNCTION UPDATE_ALLOWED(Entity     VARCHAR2
195                           ,Entity_id  NUMBER
196                           ,Update_Column_Name VARCHAR2 Default Null)
197         RETURN BOOLEAN;
198 
199    FUNCTION VERSION_CONTROL_STATE(Entity VARCHAR2, Entity_id NUMBER)
200         RETURN VARCHAR2;
201 
202 
203    PROCEDURE Run_status_update( p_errbuf             OUT NOCOPY VARCHAR2,
204                                 p_retcode            OUT NOCOPY VARCHAR2,
205                                 pCalendar_code       IN cm_cmpt_dtl.calendar_code%TYPE,
206                                 pPeriod_code         IN cm_cmpt_dtl.period_code%TYPE,
207                                 pCost_mthd_code      IN cm_cmpt_dtl.cost_mthd_code%TYPE);
208 
209 -- KSHUKLA added the procedure to check the formula, item access to the
210 -- Recipe override org , process loss, and validity rules organizations
211 
212   PROCEDURE CHECK_FORMULA_ITEM_ACCESS(pFormula_id IN NUMBER,
213                                     pInventory_Item_ID IN NUMBER,
214                                     x_return_status OUT NOCOPY VARCHAR2,
215 				                            pRevision IN VARCHAR2 DEFAULT NULL);
216 
217   -- Kapil ME Auto-Prod  Bug# 5716318
218   -- Added the Procedure.
219   PROCEDURE Calculate_Total_Product_Qty ( p_formula_id   IN  gmd_recipes.formula_id%TYPE,
220                                           x_return_status    OUT NOCOPY VARCHAR2,
221                                           x_msg_count        OUT NOCOPY      NUMBER,
222                                           x_msg_data         OUT NOCOPY      VARCHAR2);
223 
224    /*Added the following procedure in Bug No.7027512 */
225   PROCEDURE  Run_status_update(  p_errbuf             OUT NOCOPY VARCHAR2,
226                                  p_retcode            OUT NOCOPY VARCHAR2,
227                                  pLegal_entity_id   IN number,
228                                  pCalendar_code       IN cm_cmpt_dtl.calendar_code%TYPE,
229                                  pPeriod_code         IN cm_cmpt_dtl.period_code%TYPE,
230                                  pCost_type_id      IN cm_cmpt_dtl.Cost_type_id%TYPE);
231 
232 END; /* Package Specification GMD_COMMON_VAL*/