[Home] [Help]
PACKAGE BODY: APPS.GMIPRCNT
Source
1 PACKAGE BODY GMIPRCNT AS
2 /* $Header: gmiprcnb.pls 120.1 2005/10/03 12:10:35 jsrivast noship $ */
3
4 /* ==================================================================
5 Procedure: calculate_percent
6
7 Description: This procedure calculates the percentage difference
8 between the frozen/actual quantities in a physical inventory.
9 For cases where zero in involved, the following mathematical
10 overrides are made.
11 Frozen = 0 Actual = 0 Percent Diff = 0
12 Frozen = 0 Actual > 0 Percent Diff = 100
13 Frozen >0 Actual = 0 Percent Diff = 100
14 Frozen <0 Actual = 0 Percent Diff = 100
15 ================================================================== */
16
17 FUNCTION CALCULATE_PERCENT(pfrozen IN NUMBER, pactual IN NUMBER)
18 RETURN NUMBER IS
19
20 p_percent NUMBER;
21
22 BEGIN
23 IF (pfrozen <= 0) THEN
24 IF (pfrozen = 0) THEN
25 IF (pactual = 0) THEN
26 p_percent := 0;
27 ELSE
28 p_percent := 1;
29 END IF;
30 ELSE /* less than zero */
31 IF (pactual >= 0) THEN
32 p_percent := 1;
33 ELSE
34 p_percent := 0;
35 END IF;
36 END IF;
37 ELSE
38 IF (pactual = 0) THEN
39 p_percent := 1;
40 ELSE
41 p_percent := ((pactual - pfrozen)/pfrozen);
42 END IF;
43 END IF;
44 p_percent := ABS(p_percent);
45 p_percent := (p_percent * 100);
46 RETURN p_percent;
47
48 END CALCULATE_PERCENT;
49 END GMIPRCNT;