1
|
|
2
|
ALTER PROCEDURE [dbo].[CM_GOODS_Ins]
|
3
|
@p_GD_CODE varchar(150) = NULL,
|
4
|
@p_GD_NAME nvarchar(200) = NULL,
|
5
|
@p_GD_TYPE_ID varchar(15) = NULL,
|
6
|
@p_DESCRIPTION nvarchar(2000) = NULL,
|
7
|
@p_SUP_ID varchar(15) = NULL,
|
8
|
@p_PRICE decimal(18) = NULL,
|
9
|
@p_UNIT_ID varchar(15) = NULL,
|
10
|
@p_NOTES nvarchar(1000) = NULL,
|
11
|
@p_RECORD_STATUS varchar(1) = NULL,
|
12
|
@p_MAKER_ID varchar(12) = NULL,
|
13
|
@p_CREATE_DT VARCHAR(20) = NULL,
|
14
|
@p_AUTH_STATUS varchar(50) = NULL,
|
15
|
@p_CHECKER_ID varchar(12) = NULL,
|
16
|
@p_APPROVE_DT VARCHAR(20) = NULL
|
17
|
AS
|
18
|
DECLARE @l_GD_ID VARCHAR(15)
|
19
|
|
20
|
DECLARE @ERRORSYS NVARCHAR(15) = ''
|
21
|
IF ( EXISTS ( SELECT * FROM CM_GOODS WHERE GD_CODE = @p_GD_CODE))
|
22
|
SET @ERRORSYS = 'CMCD-00001'
|
23
|
IF @ERRORSYS <> ''
|
24
|
BEGIN
|
25
|
SELECT ErrorCode Result, '' ID, ErrorDesc ErrorDesc FROM SYS_ERROR WHERE ErrorCode = @ERRORSYS
|
26
|
RETURN '0'
|
27
|
END
|
28
|
|
29
|
|
30
|
BEGIN TRANSACTION
|
31
|
|
32
|
EXEC SYS_CodeMasters_Gen 'CM_GOODS', @l_GD_ID out
|
33
|
IF @l_GD_ID='' OR @l_GD_ID IS NULL GOTO ABORT
|
34
|
|
35
|
INSERT INTO CM_GOODS([GD_ID],[GD_CODE],[GD_NAME],[GD_TYPE_ID],[DESCRIPTION],[SUP_ID],[PRICE],[UNIT_ID],[NOTES],[RECORD_STATUS],[MAKER_ID],[CREATE_DT],[AUTH_STATUS],[CHECKER_ID],[APPROVE_DT])
|
36
|
VALUES(@l_GD_ID ,@p_GD_CODE ,@p_GD_NAME ,@p_GD_TYPE_ID ,@p_DESCRIPTION ,@p_SUP_ID ,@p_PRICE ,@p_UNIT_ID ,@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) )
|
37
|
IF @@Error <> 0 GOTO ABORT
|
38
|
|
39
|
COMMIT TRANSACTION
|
40
|
SELECT 0 as Result, @l_GD_ID ID, '' ErrorDesc
|
41
|
RETURN 0
|
42
|
ABORT:
|
43
|
BEGIN
|
44
|
ROLLBACK TRANSACTION
|
45
|
SELECT -1 as Result, '' ID, '' ErrorDesc
|
46
|
RETURN -1
|
47
|
End
|
48
|
|
49
|
|
50
|
|
51
|
|
52
|
|
53
|
|