1
|
|
2
|
ALTER PROCEDURE [dbo].[CM_EMPLOYEE_Ins]
|
3
|
@p_EMP_CODE varchar(15) = NULL,
|
4
|
@p_EMP_NAME nvarchar(50) = NULL,
|
5
|
@p_BRANCH_ID varchar(15) = NULL,
|
6
|
@p_DEP_ID varchar(15) = NULL,
|
7
|
@p_NOTES nvarchar(1000) = NULL,
|
8
|
@p_RECORD_STATUS varchar(1) = NULL,
|
9
|
@p_AUTH_STATUS varchar(1) = NULL,
|
10
|
@p_MAKER_ID varchar(15) = NULL,
|
11
|
@p_CREATE_DT VARCHAR(20) = NULL,
|
12
|
@p_CHECKER_ID varchar(15) = NULL,
|
13
|
@p_APPROVE_DT VARCHAR(20) = NULL
|
14
|
AS
|
15
|
--Validation is here
|
16
|
|
17
|
DECLARE @ERRORSYS NVARCHAR(15) = ''
|
18
|
IF ( EXISTS ( SELECT * FROM CM_EMPLOYEE WHERE EMP_CODE=@p_EMP_CODE AND RECORD_STATUS <> '1'))
|
19
|
SET @ERRORSYS = 'EMP-0001'
|
20
|
IF @ERRORSYS <> ''
|
21
|
BEGIN
|
22
|
SELECT ErrorCode Result, '' EMP_ID, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS
|
23
|
RETURN '0'
|
24
|
END
|
25
|
|
26
|
BEGIN TRANSACTION
|
27
|
DECLARE @l_EMP_ID VARCHAR(15)
|
28
|
EXEC SYS_CodeMasters_Gen 'CM_EMPLOYEE', @l_EMP_ID out
|
29
|
IF @l_EMP_ID='' OR @l_EMP_ID IS NULL GOTO ABORT
|
30
|
print @l_EMP_ID
|
31
|
INSERT INTO CM_EMPLOYEE([EMP_ID],[EMP_CODE],[EMP_NAME],[BRANCH_ID],[DEP_ID],[NOTES],[RECORD_STATUS],[AUTH_STATUS],[MAKER_ID],[CREATE_DT],[CHECKER_ID],[APPROVE_DT])
|
32
|
VALUES(@l_EMP_ID ,@p_EMP_CODE ,@p_EMP_NAME ,@p_BRANCH_ID ,@p_DEP_ID ,@p_NOTES ,@p_RECORD_STATUS ,@p_AUTH_STATUS ,@p_MAKER_ID ,CONVERT(DATETIME, @p_CREATE_DT, 103) ,@p_CHECKER_ID ,CONVERT(DATETIME, @p_APPROVE_DT, 103) )
|
33
|
IF @@Error <> 0 GOTO ABORT
|
34
|
COMMIT TRANSACTION
|
35
|
SELECT '0' as Result, @l_EMP_ID EMP_ID, '' ErrorDesc
|
36
|
RETURN '0'
|
37
|
ABORT:
|
38
|
BEGIN
|
39
|
ROLLBACK TRANSACTION
|
40
|
SELECT '-1' as Result, '' EMP_ID, '' ErrorDesc
|
41
|
RETURN '-1'
|
42
|
End
|
43
|
|
44
|
|
45
|
|
46
|
|
47
|
|
48
|
|