The following lines contain the word 'select', 'insert', 'update' or 'delete':
| is updated in ic_lots_mst. |
| |
| 25-Oct-2001 A. Mundhe Bug 1886611 - Assign vendor_lot_no without |
| validating shipvendor_id. |
| 21-DEC-2001 K. RajaSekhar Reddy BUG#2158123 |
| Modified the code to create the Retest Date, |
| Expire Date and Expaction Dates correctly. |
| Jalaj Srivastava 08/20/02 Bug 2520129 |
| The lot rec typ record is changed in GMIGAPI to not default lot |
| created date to sysdate to make it referencable from forms. Forms |
| has a limitation of not acceptinf default values of sysdate for |
| record objects. We will default the lot created date here |
| from now on. |
| Assigned proper value to x_ic_lots_mst_row.lot_created in the |
| beginning and used that instead of p_lot_rec.lot_created to check |
| the validation for other dates. |
| 16-Sep-2002 A. Cataldo Bug 2458413 - Properly initialize expaction |
| date for non grd cntl items (lot crt API) and setup deflt|
| dates for default trans in lots_mst (item create API). |
| 04-Nov-2002 A.Cataldo Bug # 2343411 |
| Based on a new profile option, allow the user to control |
| what the lot description will be defaulted to when |
| creating lots either via screen or APIs. |
| 22-FEB-2003 Jalaj Srivastava Bug 2811747 |
| error status wold be set as soon as error condition is |
| encountered. messages could be already written in |
| global message table by calling programs so the check for|
| looking whether something is there in the message table |
| to set error status is not good. |
| 27-AUG-2003 James Bernard Bug 3115930 Modified code so that user can |
| create expired lots. |
| 25-NOV-2003 RajaSekhar Reddy BUG#3259379 |
| Modified code to set the default effective max date |
| for retest, expire and expaction dates if item is a |
| non grade controlled item and Retest Interval, Shelf Life|
| or Expiration Interval are equal to zero. |
| 04-DEC-2003 Sastry BUG#3270249 |
| Modified code to set the correct timestamp for |
| lot_created, creation_date and last_update_date |
| for a new lot created while receving. |
| 17-MAY-2004 Archana Mundhe Bug 3621870 |
| Assign max date to retest,expire and expaction date for |
| non grade ctl items. |
| 6-JUL-2004 3739308 - changed above interval check to <> 0. Jatinder |
+==========================================================================+
*/
PROCEDURE Validate_Lot
( p_api_version IN NUMBER
, p_validation_level IN VARCHAR2 := FND_API.G_VALID_LEVEL_FULL
, p_lot_rec IN GMIGAPI.lot_rec_typ
, p_ic_item_mst_row IN ic_item_mst%ROWTYPE
, p_ic_item_cpg_row IN ic_item_cpg%ROWTYPE
, x_ic_lots_mst_row OUT NOCOPY ic_lots_mst%ROWTYPE
, x_ic_lots_cpg_row OUT NOCOPY ic_lots_cpg%ROWTYPE
, x_return_status OUT NOCOPY VARCHAR2
, x_msg_count OUT NOCOPY NUMBER
, x_msg_data OUT NOCOPY VARCHAR2
)
IS
l_api_name CONSTANT VARCHAR2 (30) := 'Validate_Lot';
/* Default creation/update dates if not passed in */
/* **************************************************
Jalaj Srivastava 08/20/02 Bug 2520129
The lot rec typ record is changed in GMIGAPI
to not default lot created date to sysdate to
make it referencable from forms. Forms has a
limitation of not acceptinf default values
of sysdate for record objects.
We will default the lot created date here
from now on.
************************************************** */
-- BEGIN BUG#3270249 Sastry
-- Modified code so that the timestamp for lot_created, creation_date and
-- last_update_date date is correct for a new lot created while receving.
-- Jatinder Gogna - 3470841 - Do not default NULL lot_created date to sysdate
IF (TRUNC(p_lot_rec.lot_created) = TRUNC(SYSDATE))
THEN
x_ic_lots_mst_row.lot_created := SYSDATE;
x_ic_lots_mst_row.last_update_date := SYSDATE;
x_ic_lots_mst_row.last_updated_by := GMIGUTL.DEFAULT_USER_ID;
x_ic_lots_mst_row.last_update_login:= GMIGUTL.DEFAULT_LOGIN;
x_ic_lots_cpg_row.last_updated_by := GMIGUTL.DEFAULT_USER_ID;
x_ic_lots_cpg_row.last_update_date := x_ic_lots_mst_row.last_update_date;
x_ic_lots_cpg_row.last_update_login:= GMIGUTL.DEFAULT_LOGIN;
SELECT item_no
INTO x_ic_lots_mst_row.lot_desc
FROM ic_item_mst
WHERE item_id = (SELECT whse_item_id
FROM ic_item_mst
WHERE item_id = p_ic_item_mst_row.item_id);
x_ic_lots_mst_row.delete_mark := 0;
p_ic_item_mst_row.delete_mark = 1
THEN
FND_MESSAGE.SET_NAME('GMI','IC_API_INVALID_ITEM_NO');