DBA Data[Home] [Help]

PACKAGE BODY: APPS.JG_ZZ_VAT_DOC_SEQUENCES_PKG

Source


1 package body jg_zz_vat_doc_sequences_pkg as
2 /* $Header: jgzzvdsb.pls 120.1 2006/06/23 12:25:40 brathod ship $*/
3 /* CHANGE HISTORY ------------------------------------------------------------------------------------------
4 DATE            AUTHOR       VERSION       BUG NO.         DESCRIPTION
5 (DD/MM/YYYY)    (UID)
6 ------------------------------------------------------------------------------------------------------------
7 23/6/2006       BRATHOD      120.1         5166688         Modified the signature of INSERT_ROW procedure in
8                                                            to return rowid to caller of API by adding out
9                                                            parameter in the call. Refer bug# 5166688 for details
10 -----------------------------------------------------------------------------------------------------------*/
11   procedure insert_row
12               ( x_record                            jg_zz_vat_doc_sequences%rowtype
13               , x_vat_doc_sequence_id   out nocopy  jg_zz_vat_doc_sequences.vat_doc_sequence_id%type
14               , x_row_id                out nocopy  rowid
15               )
16   is
17     le_doc_sequence_exists exception;
18 
19     cursor c_gen_vat_doc_seq_id
20     is
21     select jg_zz_vat_doc_sequences_s.nextval
22     from   dual;
23 
24   begin
25 
26       if x_record.vat_doc_sequence_id is null then
27         open c_gen_vat_doc_seq_id;
28         fetch c_gen_vat_doc_seq_id into x_vat_doc_sequence_id;
29         close c_gen_vat_doc_seq_id ;
30       else
31         x_vat_doc_sequence_id := x_record.vat_doc_sequence_id;
32       end if;
33 
34       insert into jg_zz_vat_doc_sequences
35              (  vat_doc_sequence_id
36              ,  vat_register_id
37              ,  doc_sequence_id
38              ,  created_by
39              ,  creation_date
40              ,  last_updated_by
41              ,  last_update_date
42              ,  last_update_login
43              )
44       values (  x_vat_doc_sequence_id
45              ,  x_record.vat_register_id
46              ,  x_record.doc_sequence_id
47              ,  x_record.created_by
48              ,  x_record.creation_date
49              ,  x_record.last_updated_by
50              ,  x_record.last_update_date
51              ,  x_record.last_update_login
52              ) returning rowid into x_row_id;
53    exception
54      when others then
55      x_vat_doc_sequence_id := null;
56      x_row_id := null;
57      raise;
58   end insert_row;
59 
60 /*------------------------------------------------------------------------------------------------------------*/
61 
62   procedure lock_row( x_row_id   rowid
63                     , x_record   jg_zz_vat_doc_sequences%rowtype
64                     )
65   is
66     cursor c_locked_row
67     is
68     select *
69     from   jg_zz_vat_doc_sequences
70     where  rowid = x_row_id
71     for update nowait;
72 
73     lr_locked_row   jg_zz_vat_doc_sequences%rowtype;
74 
75   begin
76 
77     open  c_locked_row;
78     fetch c_locked_row into lr_locked_row;
79 
80     if (c_locked_row%notfound) then
81       close c_locked_row;
82       fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
83       app_exception.raise_exception;
84     end if;
85 
86     close c_locked_row;
87 
88     if (   lr_locked_row.vat_register_id = x_record.vat_register_id
89        and lr_locked_row.doc_sequence_id = x_record.doc_sequence_id
90        )
91     then
92       return;
93     else
94       fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
95       app_exception.raise_exception;
96     end if;
97 
98   end lock_row;
99 
100 /*------------------------------------------------------------------------------------------------------------*/
101 
102   procedure update_row( x_record                jg_zz_vat_doc_sequences%rowtype
103                       )
104   is
105 
106     le_no_rows_updated exception;
107 
108   begin
109     update   jg_zz_vat_doc_sequences
110     set      vat_register_id         =      x_record.vat_register_id
111            , doc_sequence_id         =      x_record.doc_sequence_id
112            , last_updated_by         =      x_record.last_updated_by
113            , last_update_date        =      x_record.last_update_date
114            , last_update_login       =      x_record.last_update_login
115    where     vat_doc_sequence_id     =      x_record.vat_doc_sequence_id;
116 
117   end update_row;
118 
119 /*------------------------------------------------------------------------------------------------------------*/
120 
121   procedure delete_row(x_vat_doc_sequence_id  jg_zz_vat_doc_sequences.vat_doc_sequence_id%type)
122   is
123 
124     le_no_rows_deleted   exception;
125 
126   begin
127 
128     delete from jg_zz_vat_doc_sequences
129     where  vat_doc_sequence_id = x_vat_doc_sequence_id;
130 
131   end delete_row;
132 
133 end jg_zz_vat_doc_sequences_pkg;