DBA Data[Home] [Help]

PACKAGE BODY: APPS.ACCOUNT_MGR

Source


1 PACKAGE BODY ACCOUNT_MGR AS
2 /* $Header: JTFAACTB.pls 115.3 2002/09/06 21:41:37 badams ship $ */
3 
4   FUNCTION query_accounts(API_VERSION IN NUMBER,
5                           P_PARTY_ID  IN NUMBER)
6   RETURN VARCHAR2 IS
7 
8      l_sort_data               JTF_TASKS_PUB.SORT_DATA;
9      l_total_retrieved         NUMBER;
10      l_total_returned          NUMBER;
11      l_rs                      VARCHAR2(1);
12      l_msg_count               NUMBER;
13      l_msg_data                VARCHAR2(2000);
14      l_version_num             NUMBER;
15 
16      l_account_name            VARCHAR2(2000);
17 
18      -- temporary strings...
19      l_account0                VARCHAR2(4000) := '';
20      l_account1                VARCHAR2(4000) := '';
21      l_account2                VARCHAR2(4000) := '';
22      l_account3                VARCHAR2(4000) := '';
23      l_account4                VARCHAR2(4000) := '';
24 
25      new_row                   VARCHAR2(4000) := '';
26      result                    VARCHAR2(4000) := '';
27 
28      current_count             NUMBER := 1;
29      row_count                 NUMBER := 10;
30 
31      CURSOR ACCOUNT_DATA IS
32         SELECT ACCOUNT_NAME, PARTY_ID
33         FROM   HZ_CUST_ACCOUNTS
34         WHERE  PARTY_ID = P_PARTY_ID
35         ORDER BY 1;
36 
37      one_row ACCOUNT_DATA%rowtype;
38 
39   BEGIN
40 
41 --DBMS_OUTPUT.PUT_LINE('Querying account data...');
42 
43      OPEN ACCOUNT_DATA;
44      FETCH ACCOUNT_DATA INTO one_row;
45 
46      WHILE ACCOUNT_DATA%FOUND LOOP
47 
48        current_count := current_count + 1;
49        IF (current_count > row_count) THEN
50          EXIT;
51        END IF;
52 
53        l_account_name      := one_row.account_name;
54 
55        IF( l_account_name IS NULL ) THEN
56          l_account_name := 'account_name null '|| one_row.party_id;
57        END IF;
58 
59        new_row := trim(l_account_name);
60 
61        result := result||new_row||'^';
62 
63        FETCH ACCOUNT_DATA INTO one_row;
64      END LOOP;
65 
66      CLOSE ACCOUNT_DATA;
67 
68      l_account0 := 'AccountName0^2000^100';
69      l_account1 := 'AccountName1^2001^101';
70      l_account2 := 'AccountName2^2002^102';
71      l_account3 := 'AccountName3^2003^103';
72      l_account4 := 'AccountName4^2004^104';
73 
74      result := result||'^'||l_account0||'^'||
75                             l_account1||'^'||
76                             l_account2||'^'||
77                             l_account3||'^'||
78                             l_account4;
79 
80      RETURN( result );
81 
82   END QUERY_ACCOUNTS;
83 
84 
85   PROCEDURE test(API_VERSION IN NUMBER,
86                  P_PARTY_ID  IN NUMBER) IS
87 
88      l_sort_data               JTF_TASKS_PUB.SORT_DATA;
89      l_total_retrieved         NUMBER;
90      l_total_returned          NUMBER;
91      l_rs                      VARCHAR2(1);
92      l_msg_count               NUMBER;
93      l_msg_data                VARCHAR2(2000);
94      l_version_num             NUMBER;
95 
96      -- temporary strings...
97      l_account0                VARCHAR2(4000) := '';
98      l_account1                VARCHAR2(4000) := '';
99      l_account2                VARCHAR2(4000) := '';
100      l_account3                VARCHAR2(4000) := '';
101      l_account4                VARCHAR2(4000) := '';
102 
103      l_account_name            VARCHAR2(2000);
104 
105      new_row                   VARCHAR2(4000) := '';
106      result                    VARCHAR2(4000) := '';
107 
108      current_count             NUMBER := 1;
109      row_count                 NUMBER := 10;
110 
111      CURSOR ACCOUNT_DATA IS
112         SELECT ACCOUNT_NAME, PARTY_ID
113         FROM   HZ_CUST_ACCOUNTS
114         WHERE  PARTY_ID = P_PARTY_ID
115         ORDER BY 1;
116 
117      one_row ACCOUNT_DATA%rowtype;
118 
119   BEGIN
120 
121 --     DBMS_OUTPUT.PUT_LINE('TEST querying account data...');
122 
123      OPEN ACCOUNT_DATA;
124      FETCH ACCOUNT_DATA INTO one_row;
125 
126      WHILE ACCOUNT_DATA%FOUND LOOP
127 
128        l_account_name      := one_row.account_name;
129 
130        IF( l_account_name IS NULL ) THEN
131          l_account_name := 'account_name null '|| one_row.party_id;
132        END IF;
133 
134        new_row := trim(l_account_name);
135 
136        result := result||new_row||'^';
137 
138 --DBMS_OUTPUT.PUT_LINE('3 current_count = '||current_count);
139 --DBMS_OUTPUT.PUT_LINE('3 new row       = '||new_row);
140 
141        current_count := current_count + 1;
142        IF (current_count > row_count) THEN
143          EXIT;
144        END IF;
145 
146        FETCH ACCOUNT_DATA INTO one_row;
147 
148      END LOOP;
149 
150      CLOSE ACCOUNT_DATA;
151 
152      l_account0 := 'AccountName0^2000^100';
153      l_account1 := 'AccountName1^2001^101';
154      l_account2 := 'AccountName2^2002^102';
155      l_account3 := 'AccountName3^2003^103';
156      l_account4 := 'AccountName4^2004^104';
157 
158      result := result||'^'||l_account0||'^'||
159                             l_account1||'^'||
160                             l_account2||'^'||
161                             l_account3||'^'||
162                             l_account4;
163 
164 --DBMS_OUTPUT.PUT_LINE('result = '||result);
165 
166   END test;
167 
168 END ACCOUNT_MGR;