Project

General

Profile

CM ACCOUNT INS.txt

Luc Tran Van, 07/13/2020 04:05 PM

 
1
ALTER PROC [dbo].[CM_ACCOUNT_PAY_Ins]
2
@p_USER_ID VARCHAR(15) = NULL,
3
@p_ACC_TYPE VARCHAR(150) = NULL,
4
@p_ACC_NO VARCHAR(150) = NULL,
5
@p_ACC_NAME VARCHAR(150) = NULL,
6
@p_TK_GL VARCHAR(100) = NULL,
7
@p_TK_GL_NAME VARCHAR(1000) = NULL,
8
@p_MAKER_ID VARCHAR(15)= NULL
9
AS
10
BEGIN TRANSACTION
11
	IF(EXISTS(SELECT * FROM CM_ACCOUNT_PAY WHERE ACC_TYPE =@p_ACC_TYPE AND REF_ID =@p_USER_ID) AND @p_ACC_TYPE <> 'ENTRIES' )
12
	BEGIN
13
		ROLLBACK TRANSACTION
14
		SELECT '-1' as Result, '' ACC_ID, N'Tài khoản tạm ứng của nhân viên ' +@p_USER_ID + N' đã tồn tại trong hệ thống' ErrorDesc
15
		RETURN '-1'
16
	END
17
	IF(EXISTS(SELECT * FROM CM_ACCOUNT_PAY WHERE ACC_TYPE =@p_ACC_TYPE AND REF_ID =@p_USER_ID) AND @p_ACC_TYPE = 'ENTRIES' )
18
	BEGIN
19
		ROLLBACK TRANSACTION
20
		SELECT '-1' as Result, '' ACC_ID, N'Tài khoản hạch toán ' + @p_ACC_NO + N' đã tồn tại trong hệ thống' ErrorDesc
21
		RETURN '-1'
22
	END
23
	IF(@p_TK_GL ='' OR @p_TK_GL IS NULL)
24
	BEGIN
25
	ROLLBACK TRANSACTION
26
		SELECT '-1' as Result, '' ACC_ID, N'Tài khoản GL không được phép để trống' ErrorDesc
27
		RETURN '-1'
28
	END
29
	IF(@p_TK_GL_NAME ='' OR @p_TK_GL_NAME IS NULL)
30
	BEGIN
31
	ROLLBACK TRANSACTION
32
		SELECT '-1' as Result, '' ACC_ID, N'Tên tài khoản GL không được phép để trống' ErrorDesc
33
		RETURN '-1'
34
	END
35
	IF(@p_ACC_NO ='' OR @p_ACC_NO IS NULL)
36
	BEGIN
37
	ROLLBACK TRANSACTION
38
		SELECT '-1' as Result, '' ACC_ID, N'Số tài khoản không được phép để trống' ErrorDesc
39
		RETURN '-1'
40
	END
41
	IF(@p_ACC_NAME ='' OR @p_ACC_NAME IS NULL)
42
	BEGIN
43
	ROLLBACK TRANSACTION
44
		SELECT '-1' as Result, '' ACC_ID, N'Tên tài khoản không được phép để trống' ErrorDesc
45
		RETURN '-1'
46
	END
47
	IF(@p_ACC_TYPE ='ADV_PAY')
48
	BEGIN
49
		INSERT INTO CM_ACCOUNT_PAY (REF_ID,ACC_TYPE,ACC_NUM,ACC_NAME,FUNTION,TK_GL,CREATE_DT,MAKER_ID,EDITOR_ID,EDITOR_DT,AUTH_STATUS,CHECKER_ID,APPROVE_DT,TK_GL_NAME) 
50
		VALUES (@p_USER_ID,@p_ACC_TYPE,@p_ACC_NO,@p_ACC_NAME,'I',@p_TK_GL,GETDATE(),@p_MAKER_ID,NULL,NULL,'U',NULL,NULL,@p_TK_GL_NAME)
51
	END
52
	ELSE
53
	BEGIN
54
		INSERT INTO CM_ACCOUNT(ACC_NO,ACC_NAME,TK_GL,TK_GL_NAME,MAKER_ID,CREATE_DT,AUTH_STATUS,EDITOR_ID,EDITOR_DT,CHECKER_ID,APPROVE_DT) VALUES (@p_ACC_NO,@p_ACC_NAME,@p_TK_GL,@p_TK_GL_NAME,@p_MAKER_ID,GETDATE(),'U',NULL,NULL,NULL,NULL)
55
	END
56
COMMIT TRANSACTION
57
SELECT '0' as Result, ''  ACC_ID, '' ErrorDesc
58
RETURN '0'
59
ABORT:
60
BEGIN
61
		ROLLBACK TRANSACTION
62
		SELECT '-1' as Result, '' ACC_ID, '' ErrorDesc
63
		RETURN '-1'
64
END