DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_VERSION_PVT_W

Source


1 package body okl_version_pvt_w as
2   /* $Header: OKLEVERB.pls 120.1 2005/07/12 12:50:20 dkagrawa noship $ */
3   rosetta_g_mistake_date date := to_date('01/01/+4713', 'MM/DD/SYYYY');
4   rosetta_g_miss_date date := to_date('01/01/-4712', 'MM/DD/SYYYY');
5 
6   -- this is to workaround the JDBC bug regarding IN DATE of value GMiss
7   function rosetta_g_miss_date_in_map(d date) return date as
8   begin
9     if d = rosetta_g_mistake_date then return fnd_api.g_miss_date; end if;
10     return d;
11   end;
12 
13   function rosetta_g_miss_num_map(n number) return number as
14     a number := fnd_api.g_miss_num;
15     b number := 0-1962.0724;
16   begin
17     if n=a then return b; end if;
18     if n=b then return a; end if;
19     return n;
20   end;
21 
22   procedure version_contract(p_api_version  NUMBER
23     , p_init_msg_list  VARCHAR2
24     , x_return_status out nocopy  VARCHAR2
25     , x_msg_count out nocopy  NUMBER
26     , x_msg_data out nocopy  VARCHAR2
27     , p6_a0 out nocopy  NUMBER
28     , p6_a1 out nocopy  NUMBER
29     , p6_a2 out nocopy  NUMBER
30     , p6_a3 out nocopy  NUMBER
31     , p6_a4 out nocopy  NUMBER
32     , p6_a5 out nocopy  DATE
33     , p6_a6 out nocopy  NUMBER
34     , p6_a7 out nocopy  DATE
35     , p6_a8 out nocopy  NUMBER
36     , p_commit  VARCHAR2
37     , p5_a0  NUMBER := 0-1962.0724
38     , p5_a1  NUMBER := 0-1962.0724
39     , p5_a2  NUMBER := 0-1962.0724
40     , p5_a3  NUMBER := 0-1962.0724
41     , p5_a4  NUMBER := 0-1962.0724
42     , p5_a5  DATE := fnd_api.g_miss_date
43     , p5_a6  NUMBER := 0-1962.0724
44     , p5_a7  DATE := fnd_api.g_miss_date
45     , p5_a8  NUMBER := 0-1962.0724
46   )
47 
48   as
49     ddp_cvmv_rec okl_version_pvt.cvmv_rec_type;
50     ddx_cvmv_rec okl_version_pvt.cvmv_rec_type;
51     ddindx binary_integer; indx binary_integer;
52   begin
53 
54     -- copy data to the local IN or IN-OUT args, if any
55 
56 
57 
58 
59 
60     ddp_cvmv_rec.chr_id := rosetta_g_miss_num_map(p5_a0);
61     ddp_cvmv_rec.object_version_number := rosetta_g_miss_num_map(p5_a1);
62     ddp_cvmv_rec.major_version := rosetta_g_miss_num_map(p5_a2);
63     ddp_cvmv_rec.minor_version := rosetta_g_miss_num_map(p5_a3);
64     ddp_cvmv_rec.created_by := rosetta_g_miss_num_map(p5_a4);
65     ddp_cvmv_rec.creation_date := rosetta_g_miss_date_in_map(p5_a5);
66     ddp_cvmv_rec.last_updated_by := rosetta_g_miss_num_map(p5_a6);
67     ddp_cvmv_rec.last_update_date := rosetta_g_miss_date_in_map(p5_a7);
68     ddp_cvmv_rec.last_update_login := rosetta_g_miss_num_map(p5_a8);
69 
70 
71 
72     -- here's the delegated call to the old PL/SQL routine
73     okl_version_pvt.version_contract(p_api_version,
74       p_init_msg_list,
75       x_return_status,
76       x_msg_count,
77       x_msg_data,
78       ddp_cvmv_rec,
79       ddx_cvmv_rec,
80       p_commit);
81 
82     -- copy data back from the local variables to OUT or IN-OUT args, if any
83 
84 
85 
86 
87 
88 
89     p6_a0 := rosetta_g_miss_num_map(ddx_cvmv_rec.chr_id);
90     p6_a1 := rosetta_g_miss_num_map(ddx_cvmv_rec.object_version_number);
91     p6_a2 := rosetta_g_miss_num_map(ddx_cvmv_rec.major_version);
92     p6_a3 := rosetta_g_miss_num_map(ddx_cvmv_rec.minor_version);
93     p6_a4 := rosetta_g_miss_num_map(ddx_cvmv_rec.created_by);
94     p6_a5 := ddx_cvmv_rec.creation_date;
95     p6_a6 := rosetta_g_miss_num_map(ddx_cvmv_rec.last_updated_by);
96     p6_a7 := ddx_cvmv_rec.last_update_date;
97     p6_a8 := rosetta_g_miss_num_map(ddx_cvmv_rec.last_update_login);
98 
99   end;
100 
101 end okl_version_pvt_w;