DBA Data[Home] [Help]

PACKAGE: APPS.CAC_SYNC_TASK

Source


1 PACKAGE Cac_Sync_Task AUTHID CURRENT_USER AS
2 /* $Header: cacvstss.pls 120.6 2005/09/27 07:30:21 rhshriva noship $ */
3 /*=======================================================================+
4  |  Copyright (c) 2002 Oracle Corporation Redwood Shores, California, USA|
5  |                            All rights reserved.                       |
6  +=======================================================================+
7  | FILENAME                                                              |
8  |   cacvstss.pls                                                        |
9  |                                                                       |
10  | DESCRIPTION                                                           |
11  |   - This package contains top level API for syncing                   |
12  |           tasks(todos) and appointments.                              |
13  |                                                                       |
14  | NOTES                                                                 |
15  |                                                                       |
16  | Date          Developer        Change                                 |
17  | ------        ---------------  -------------------------------------- |
18  | 5-Nov-2004    sachoudh         Created.                               |
19  +======================================================================*/
20 
21    G_LOGIN_RESOURCE_ID NUMBER;
22 
23 
24 TYPE task_rec IS RECORD (
25    syncId              NUMBER         -- The unique sync ID
26   ,recordIndex         NUMBER       := Fnd_Api.G_MISS_num     -- Index equal to the relative record
27   ,task_id       NUMBER
28                       -- number of record set starting at 0.
29   ,syncAnchor          DATE          -- sync anchor date
30   ,timeZoneId          NUMBER := 0       -- Default time zone is GMT
31   ,eventType           VARCHAR2(30)       --'New', 'Delete', 'Modify'
32 
33   -- Task common fields
34   ,objectCode          VARCHAR2(30)   -- Type: 'TASK' or 'APPOINTMENT'
35   ,subject             VARCHAR2(2000)  := Fnd_Api.G_MISS_char -- Subject/name field
36   ,description         VARCHAR2(4000) := Fnd_Api.G_MISS_char -- Description
37   ,dateSelected        VARCHAR2(1) := Fnd_Api.G_MISS_char
38   ,plannedStartDate    DATE       := Fnd_Api.G_MISS_date -- Start date
39   ,plannedEndDate      DATE       := Fnd_Api.G_MISS_date -- End/Completed date
40   ,scheduledStartDate  DATE       := Fnd_Api.G_MISS_date -- Start date
41   ,scheduledEndDate    DATE       := Fnd_Api.G_MISS_date -- End/Completed date
42   ,actualStartDate     DATE       := Fnd_Api.G_MISS_date -- Start date
43   ,actualEndDate       DATE       := Fnd_Api.G_MISS_date -- End/Completed date
44   ,statusId            NUMBER     := Fnd_Api.G_MISS_num  -- Task status
45   ,priorityId          NUMBER     := Fnd_Api.G_MISS_num  -- Task priority (0-99)
46   ,alarmFlag           VARCHAR2(1)    := Fnd_Api.G_MISS_char -- Task alarm flag (Y/N)
47   ,alarmDate           DATE       := Fnd_Api.G_MISS_date -- Alarm trigger date
48   ,privateFlag         VARCHAR2(1)    := Fnd_Api.G_MISS_char -- Private flag (Y/N)
49   ,category            VARCHAR2(255)  := Fnd_Api.G_MISS_char -- Task category name
50   ,resourceId          NUMBER   := Fnd_Api.G_MISS_num
51   ,resourceType        VARCHAR2(2000)  := Fnd_Api.G_MISS_char
52   ,task_assignment_id  NUMBER
53   ,resultId            NUMBER(1)      -- Result Identifier:
54                        -- 0 Success, no message will be displayed
55                        -- 1 Success, message will be displayed
56                        -- 2 Soft Failure, msg will be displayed
57                        --   and sync process will continue
58                        -- 3 Hard Failure, msg will be displayed
59                        --   and sync process will terminate
60   ,resultSystemMessage VARCHAR2(255)  -- System message (API message code)
61   ,resultUserMessage   VARCHAR2(2000) -- Valid and Meaningful message to the usr
62 
63   -- fields added for recurring tasks
64   ,unit_of_measure     VARCHAR2(30)      := Fnd_Api.G_MISS_char   -- unit of measure MON , DAY  , WEEK etc
65   ,occurs_every        NUMBER        := Fnd_Api.G_MISS_num    --occurs every month/day/week
66   --,occurs_number       NUMBER        := Fnd_Api.G_MISS_num    --occurs number
67   ,start_date          DATE          := Fnd_Api.G_MISS_date -- start date
68   ,end_date            DATE          := Fnd_Api.G_MISS_date -- end date
69   ,sunday              VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
70   ,monday              VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
71   ,tuesday              VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
72   ,wednesday           VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
73   ,thursday            VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
74   ,friday              VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
75   ,saturday            VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
76   ,date_of_month       NUMBER        := Fnd_Api.G_MISS_num    --date of month
77   ,occurs_which        NUMBER        := Fnd_Api.G_MISS_num    --date of month
78   ,locations           VARCHAR2(4000) := Fnd_Api.G_MISS_char   -- locations list for the appt.
79   ,principal_id       NUMBER
80   ,free_busy_type      VARCHAR2(30)   := Fnd_Api.G_MISS_char
81   ,dial_in             VARCHAR2(100)  :=Fnd_Api.G_MISS_char);
82 
83 
84 
85 TYPE exclusion_rec IS RECORD (
86    syncId              NUMBER         -- The unique sync ID
87   ,exclusion_date      DATE          := Fnd_Api.G_MISS_date -- exclusion date
88   ,recordIndex         NUMBER       := Fnd_Api.G_MISS_num     -- Index equal to the relative record
89   ,task_id       NUMBER
90                       -- number of record set starting at 0.
91   ,syncAnchor          DATE          -- sync anchor date
92   ,timeZoneId          NUMBER := 0       -- Default time zone is GMT
93   ,eventType           VARCHAR2(30)       --'New', 'Delete', 'Modify'
94   ,objectCode          VARCHAR2(30)   -- Type: 'TASK' or 'APPOINTMENT'
95   ,subject             VARCHAR2(2000)  := Fnd_Api.G_MISS_char -- Subject/name field
96   ,description         VARCHAR2(4000) := Fnd_Api.G_MISS_char -- Description
97   ,dateSelected        VARCHAR2(1) := Fnd_Api.G_MISS_char
98   ,plannedStartDate    DATE       := Fnd_Api.G_MISS_date -- Start date
99   ,plannedEndDate      DATE       := Fnd_Api.G_MISS_date -- End/Completed date
100   ,scheduledStartDate  DATE       := Fnd_Api.G_MISS_date -- Start date
101   ,scheduledEndDate    DATE       := Fnd_Api.G_MISS_date -- End/Completed date
102   ,actualStartDate     DATE       := Fnd_Api.G_MISS_date -- Start date
103   ,actualEndDate       DATE       := Fnd_Api.G_MISS_date -- End/Completed date
104   ,statusId            NUMBER     := Fnd_Api.G_MISS_num  -- Task status
105   ,priorityId          NUMBER     := Fnd_Api.G_MISS_num  -- Task priority (0-99)
106   ,alarmFlag           VARCHAR2(1)    := Fnd_Api.G_MISS_char -- Task alarm flag (Y/N)
107   ,alarmDate           DATE       := Fnd_Api.G_MISS_date -- Alarm trigger date
108   ,privateFlag         VARCHAR2(1)    := Fnd_Api.G_MISS_char -- Private flag (Y/N)
109   ,category            VARCHAR2(255)  := Fnd_Api.G_MISS_char -- Task category name
110   ,resourceId          NUMBER   := Fnd_Api.G_MISS_num
111   ,resourceType        VARCHAR2(2000)  := Fnd_Api.G_MISS_char
112   ,task_assignment_id  NUMBER
113   ,resultId            NUMBER(1)      -- Result Identifier:
114                        -- 0 Success, no message will be displayed
115                        -- 1 Success, message will be displayed
116                        -- 2 Soft Failure, msg will be displayed
117                        --   and sync process will continue
118                        -- 3 Hard Failure, msg will be displayed
119                        --   and sync process will terminate
120   ,resultSystemMessage VARCHAR2(255)  -- System message (API message code)
121   ,resultUserMessage   VARCHAR2(2000) -- Valid and Meaningful message to the usr
122 
123   -- fields added for recurring tasks
124   ,unit_of_measure     VARCHAR2(30)      := Fnd_Api.G_MISS_char   -- unit of measure MON , DAY  , WEEK etc
125   ,occurs_every        NUMBER        := Fnd_Api.G_MISS_num    --occurs every month/day/week
126   ,start_date          DATE          := Fnd_Api.G_MISS_date -- start date
127   ,end_date            DATE          := Fnd_Api.G_MISS_date -- end date
128   ,sunday              VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
129   ,monday              VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
130   ,tuesday              VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
131   ,wednesday           VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
132   ,thursday            VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
133   ,friday              VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
134   ,saturday            VARCHAR2(1)       := Fnd_Api.G_MISS_char -- flag (Y/N)
135   ,date_of_month       NUMBER        := Fnd_Api.G_MISS_num    --date of month
136   ,occurs_which        NUMBER        := Fnd_Api.G_MISS_num    --date of month
137   ,locations           VARCHAR2(4000) := Fnd_Api.G_MISS_char   -- locations list for the appt.
138   ,principal_id       NUMBER
139   ,free_busy_type      VARCHAR2(30)   := Fnd_Api.G_MISS_char
140   ,dial_in             VARCHAR2(100)  :=Fnd_Api.G_MISS_char
141 );
142 -- The task_tbl is table of task_rec type
143 TYPE task_tbl IS TABLE OF task_rec
144           INDEX BY BINARY_INTEGER;
145 -- The exclusion_tbl is table of reclusion_rec type
146 TYPE exclusion_tbl IS TABLE OF exclusion_rec
147           INDEX BY BINARY_INTEGER;
148 
149 TYPE attendee_rec IS RECORD (
150    task_id                     NUMBER
151   ,attendee_role               VARCHAR2(2000)  := Fnd_Api.G_MISS_char
152   ,attendee_status             NUMBER   := Fnd_Api.G_MISS_num
153   ,resourceId                  NUMBER   := Fnd_Api.G_MISS_num
154   ,resourceType                VARCHAR2(2000)  := Fnd_Api.G_MISS_char
155   ,first_name                  VARCHAR2(150)
156   ,middle_name                  VARCHAR2(60)
157   ,last_name                    VARCHAR2(150)
158   ,primary_phone_country_code  VARCHAR2(10)
159   ,primary_phone_area_code     VARCHAR2(10)
160   ,primary_phone_number        VARCHAR2(40)
161   ,primary_phone_extension     VARCHAR2(20)
162   ,email_address               VARCHAR2(2000)
163   ,job_title                   VARCHAR2(100)
164 
165 
166 );
167 
168 
169 TYPE attendee_tbl IS TABLE OF attendee_rec
170           INDEX BY BINARY_INTEGER;
171 
172 --------------------------------------------------------------------------
173 --  API name    : get_count_appt
174 --  Type    : Public
175 --  Function    : Gets count of new/modified/deleted records after last sync date
176 --  Notes:  :
177 --------------------------------------------------------------------------
178 PROCEDURE get_count (
179       p_request_type     IN VARCHAR2 -- Input: Request Type - APPOINTMENTS/TASKS
180      ,p_syncAnchor       IN DATE     -- Input: current sync date,
181      ,p_principal_id     IN NUMBER
182      ,x_total           OUT NOCOPY NUMBER
183      ,x_totalNew        OUT NOCOPY NUMBER
184      ,x_totalModified   OUT NOCOPY NUMBER
185      ,x_totalDeleted    OUT NOCOPY NUMBER
186    );
187 
188 --------------------------------------------------------------------------
189 --  API name    : get_list
190 --  Type    : Public
191 --  Function    : Gets list of appointments/tasks since last sync date between start and
192 --        end record indexes (provided by intellisync).
193 --  Notes:  :
194 --------------------------------------------------------------------------
195    PROCEDURE get_list (
196       p_request_type   IN VARCHAR2 -- Input: Request Type - APPOINTMENT/TASK
197      ,p_syncAnchor     IN DATE     -- Input: current sync date,
198      ,p_principal_id   IN NUMBER
199      ,p_sync_type        IN VARCHAR2 --'SS' for slow sync, 'IS' for Incremental sync
200      ,x_data          OUT NOCOPY Cac_Sync_Task.task_tbl
201      ,x_exclusion_data    OUT NOCOPY Cac_Sync_Task.exclusion_tbl
202      ,x_attendee_data     OUT NOCOPY Cac_Sync_Task.attendee_tbl
203    );
204 
205 --------------------------------------------------------------------------
206 --  API name    : create_ids
207 --  Type    : Private
208 --  Function    : Create requested number of IDs using sequence.
209 --  Notes:
210 --------------------------------------------------------------------------
211 PROCEDURE create_ids (
212       p_num_req IN     NUMBER,
213       x_results IN OUT NOCOPY Cac_Sync_Task.task_tbl
214    );
215 
216 --------------------------------------------------------------------------
217 --  API name    : update_data
218 --  Type    : Private
219 --  Function    : Update (create or modify) task data sent by sync engine.
220 --  Notes:
221 --------------------------------------------------------------------------
222  PROCEDURE update_data (p_tasks IN OUT NOCOPY Cac_Sync_Task.task_tbl,p_exclusions IN OUT NOCOPY Cac_Sync_Task.exclusion_tbl);
223 
224 --------------------------------------------------------------------------
225 --  API name    : delete_data
226 --  Type    : Private
227 --  Function    : Delete tasks indicated by sync engine.
228 --  Notes:
229 --------------------------------------------------------------------------
230 PROCEDURE delete_data (p_tasks IN OUT NOCOPY Cac_Sync_Task.task_tbl);
231 
232 END Cac_Sync_Task;