Project

General

Profile

MW_MATERIAL_UPD.txt

Luc Tran Van, 03/28/2022 04:39 PM

 
1

    
2
ALTER PROCEDURE [dbo].[MW_MATERIAL_Upd]
3
	@p_MATERIAL_ID varchar(15),
4
    @p_MATERIAL_CODE nvarchar(100) = NULL,
5
    @p_MATERIAL_NAME nvarchar(1000) = NULL,
6
    @p_GROUP_ID varchar(15) = NULL,
7
    @p_UNIT_ID varchar(15) = NULL,
8
    @p_IS_CALC_EXP varchar(1) = NULL,
9
    @p_NOTES nvarchar(1000) = NULL,
10
    @p_RECORD_STATUS varchar(1) = NULL,
11
    @p_AUTH_STATUS varchar(1) = NULL,
12
    @p_MAKER_ID varchar(15) = NULL,
13
    @p_CREATE_DT varchar(25) = NULL,
14
    @p_CHECKER_ID varchar(15) = NULL,
15
    @p_APPROVE_DT varchar(25) = NULL,
16
	@p_MATERIAL_ACCTNO	varchar(50) = NULL ,
17
	@p_EXP_ACCTNO	varchar(50) = NULL ,
18
	@p_INC_ACCTNO	varchar(50) = NULL ,
19
	@p_LIQ_ACCTNO	varchar(50) = NULL ,
20
	@p_MATERIAL_ACCTNO_NHNN	varchar(50) = NULL ,
21
		@p_VAT_ACCTNO VARCHAR(50) = NULL
22
AS
23
--Validation is here
24
	DECLARE @ERRORSYS NVARCHAR(15) = '' 
25
		IF ( NOT EXISTS ( SELECT * FROM MW_MATERIAL WHERE MATERIAL_ID = @p_MATERIAL_ID))
26
		BEGIN
27
			SET @ERRORSYS = ''
28
		END 
29

    
30
		IF (@p_MATERIAL_CODE IS NOT NULL AND @p_MATERIAL_CODE <> '')
31
			IF EXISTS(SELECT 1 FROM dbo.MW_MATERIAL A WHERE A.MATERIAL_CODE = @p_MATERIAL_CODE AND A.MATERIAL_ID <> @p_MATERIAL_ID)
32
			BEGIN
33
				SET @ERRORSYS = 'MW-00022'
34
			END
35
		IF @ERRORSYS <> '' 
36
		BEGIN
37
			SELECT '-1' Result, ''  DEP_ID, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS
38
			RETURN 0
39
		END
40
		IF(@p_MATERIAL_ACCTNO IS NULL OR @p_MATERIAL_ACCTNO ='' OR LEN(@p_MATERIAL_ACCTNO) <> 9)
41
		BEGIN
42
			SELECT '-1' Result, ''  DEP_ID, N'Số tài khoản vật liệu bắt buộc phải nhập đủ 9 ký tự' ErrorDesc
43
			RETURN 0
44
		END
45
		IF(@p_EXP_ACCTNO IS NULL OR @p_EXP_ACCTNO ='' OR LEN(@p_EXP_ACCTNO) <> 9)
46
		BEGIN
47
			SELECT '-1' Result, ''  DEP_ID, N'Số tài khoản chi phí bắt buộc phải nhập đủ 9 ký tự' ErrorDesc
48
			RETURN 0
49
		END
50
		IF(@p_VAT_ACCTNO IS NULL OR @p_VAT_ACCTNO ='' OR LEN(@p_VAT_ACCTNO) <> 9)
51
		BEGIN
52
			SELECT '-1' Result, ''  DEP_ID, N'Số tài khoản VAT bắt buộc phải nhập đủ 9 ký tự' ErrorDesc
53
			RETURN 0
54
		END
55
BEGIN TRANSACTION
56
	UPDATE [dbo].[MW_MATERIAL]
57
	SET [MATERIAL_CODE] = @p_MATERIAL_CODE,
58
		[MATERIAL_NAME] = @p_MATERIAL_NAME,
59
		[GROUP_ID] = @p_GROUP_ID,
60
		[UNIT_ID] = @p_UNIT_ID,
61
		[IS_CALC_EXP] = @p_IS_CALC_EXP,
62
		[NOTES] = @p_NOTES,
63
		[RECORD_STATUS] = @p_RECORD_STATUS,
64
		[AUTH_STATUS] = @p_AUTH_STATUS,
65
		[MAKER_ID] = @p_MAKER_ID,
66
		[CREATE_DT] = CONVERT(DATETIME, @p_CREATE_DT, 103),
67
		[CHECKER_ID] = @p_CHECKER_ID,
68
		[APPROVE_DT] = CONVERT(DATETIME, @p_APPROVE_DT, 103),
69
		[MATERIAL_ACCTNO]	= @p_MATERIAL_ACCTNO,
70
		[EXP_ACCTNO] = @p_EXP_ACCTNO,
71
		[INC_ACCTNO] = @p_INC_ACCTNO,
72
		[LIQ_ACCTNO] = @p_LIQ_ACCTNO,
73
		[MATERIAL_ACCTNO_NHNN] = @p_MATERIAL_ACCTNO_NHNN,
74
		[VAT_ACCTNO] = @p_VAT_ACCTNO
75
	WHERE [MATERIAL_ID] = @p_MATERIAL_ID;
76
		IF @@Error <> 0 GOTO ABORT
77
COMMIT TRANSACTION
78
		SELECT '0' as Result, @p_MATERIAL_ID  MATERIAL_ID, '' ErrorDesc
79
		RETURN '0'
80
ABORT:
81
BEGIN
82
		ROLLBACK TRANSACTION
83
		SELECT '-1' as Result, '' MATERIAL_ID, '' ErrorDesc
84
		RETURN '-1'
85
End
86

    
87

    
88

    
89

    
90

    
91