1
|
|
2
|
ALTER PROCEDURE dbo.CM_BRANCH_Ins
|
3
|
@p_FATHER_ID varchar(15) = NULL,
|
4
|
@p_IS_POTENTIAL varchar(1) = NULL,
|
5
|
@p_BRANCH_CODE varchar(10) = NULL,
|
6
|
@p_BRANCH_NAME nvarchar(200) = NULL,
|
7
|
@p_REGION_ID varchar(15) = NULL,
|
8
|
@p_BRANCH_TYPE varchar(5) = NULL,
|
9
|
@p_ADDR nvarchar(200) = NULL,
|
10
|
@p_TEL varchar(20) = NULL,
|
11
|
@p_NOTES nvarchar(1000) = NULL,
|
12
|
@p_RECORD_STATUS varchar(1) = NULL,
|
13
|
@p_MAKER_ID varchar(15) = NULL,
|
14
|
@p_CREATE_DT VARCHAR(20) = NULL,
|
15
|
@p_AUTH_STATUS varchar(50) = NULL,
|
16
|
@p_CHECKER_ID varchar(15) = NULL,
|
17
|
@p_TAX_NO varchar(50) = NULL,
|
18
|
@p_APPROVE_DT VARCHAR(20) = NULL
|
19
|
AS
|
20
|
|
21
|
|
22
|
--Validation is here
|
23
|
DECLARE @ERRORSYS NVARCHAR(15) = ''
|
24
|
IF ( EXISTS ( SELECT * FROM CM_BRANCH WHERE BRANCH_CODE = @p_BRANCH_CODE))
|
25
|
SET @ERRORSYS = 'CMCD-00001'
|
26
|
ELSE IF( EXISTS (SELECT * FROM CM_BRANCH WHERE @p_TAX_NO IS NOT NULL AND @p_TAX_NO != '' AND TAX_NO = @p_TAX_NO))
|
27
|
SET @ERRORSYS = 'BRN-001'
|
28
|
IF @ERRORSYS <> ''
|
29
|
BEGIN
|
30
|
SELECT ErrorCode Result, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS
|
31
|
RETURN '0'
|
32
|
END
|
33
|
|
34
|
|
35
|
BEGIN TRANSACTION
|
36
|
DECLARE @l_BRANCH_ID VARCHAR(15)
|
37
|
EXEC SYS_CodeMasters_Gen 'CM_BRANCH', @l_BRANCH_ID out
|
38
|
IF @l_BRANCH_ID='' OR @l_BRANCH_ID IS NULL GOTO ABORT
|
39
|
INSERT INTO CM_BRANCH([BRANCH_ID],[FATHER_ID],[IS_POTENTIAL],[BRANCH_CODE],[TAX_NO],[BRANCH_NAME],[REGION_ID],[BRANCH_TYPE],[ADDR],[TEL],[NOTES],[RECORD_STATUS],[MAKER_ID],[CREATE_DT],[AUTH_STATUS],[CHECKER_ID],[APPROVE_DT])
|
40
|
VALUES(@l_BRANCH_ID ,@p_FATHER_ID, @p_IS_POTENTIAL ,@p_BRANCH_CODE, @p_TAX_NO ,@p_BRANCH_NAME ,@p_REGION_ID ,@p_BRANCH_TYPE ,@p_ADDR ,@p_TEL ,@p_NOTES ,@p_RECORD_STATUS ,@p_MAKER_ID ,CONVERT(DATETIME, @p_CREATE_DT, 103) ,@p_AUTH_STATUS ,@p_CHECKER_ID ,CONVERT(DATETIME, @p_APPROVE_DT, 103) )
|
41
|
IF @@Error <> 0 GOTO ABORT
|
42
|
|
43
|
DECLARE @DMMS_ID VARCHAR(20)
|
44
|
-- KIỂM TRA XEM ĐÃ KHAI BÁO ĐƠN VỊ / CHI NHÁNH NÀY TRONG CM_DMMS HAY CHƯA
|
45
|
IF(NOT EXISTS (SELECT * FROM CM_DMMS WHERE BRANCH_ID =@l_BRANCH_ID))
|
46
|
BEGIN
|
47
|
EXEC SYS_CodeMasters_Gen 'CM_DMMS', @DMMS_ID out
|
48
|
INSERT INTO CM_DMMS (DMMS_ID,BRANCH_ID, DEP_ID,DVDM_ID) VALUES (@DMMS_ID,@l_BRANCH_ID,(SELECT TOP 1 DEP_ID FROM CM_DEPARTMENT WHERE BRANCH_ID =@l_BRANCH_ID),'')
|
49
|
END
|
50
|
COMMIT TRANSACTION
|
51
|
SELECT '0' as Result, @l_BRANCH_ID Id, '' ErrorDesc
|
52
|
RETURN '0'
|
53
|
ABORT:
|
54
|
BEGIN
|
55
|
ROLLBACK TRANSACTION
|
56
|
SELECT '-1' as Result, '' Id, '' ErrorDesc
|
57
|
RETURN '-1'
|
58
|
End
|