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
|
|