1
|
|
2
|
/*
|
3
|
[dbo].[ASS_PRINT_TEMP]
|
4
|
@p_ASSET_ID = NULL,
|
5
|
@p_ASSET_CODE = NULL,
|
6
|
@p_ASSET_NAME = NULL,
|
7
|
@p_BRANCH_ID = 'DV0001',
|
8
|
@p_BRANCH_LOGIN = 'DV0001',
|
9
|
@p_ASSET_TYPE = 'TSCD',
|
10
|
@p_ASSET_GROUP = '',
|
11
|
@p_FROM_NUM = '',
|
12
|
@p_TO_NUM = '',
|
13
|
@p_TOP = '',
|
14
|
@p_Fromdate = '01/01/2014',
|
15
|
@p_Todate = '19/03/2014',
|
16
|
@p_DEPT_ID = 'DEP000000000015'
|
17
|
*/
|
18
|
-- SELECT * FROM ASS_MASTER WHERE TYPE_ID = 'CCLD'
|
19
|
ALTER PROCEDURE [dbo].[ASS_PRINT_TEMP]
|
20
|
@p_ASSET_ID varchar(MAX) = NULL,
|
21
|
@p_ASSET_CODE nvarchar(1000) = NULL,
|
22
|
@p_ASSET_NAME nvarchar(1000) = NULL,
|
23
|
@p_BRANCH_ID varchar(15) = NULL,
|
24
|
@p_BRANCH_LOGIN varchar(15) = NULL,
|
25
|
@p_ASSET_TYPE VARCHAR(15) = NULL,--Them truong hop khong chon nhom tai san
|
26
|
@p_ASSET_GROUP VARCHAR(15) = NULL,
|
27
|
@p_FROM_NUM VARCHAR(10) = NULL,
|
28
|
@p_TO_NUM VARCHAR(10) = NULL,
|
29
|
@p_TOP INT = NULL,
|
30
|
@p_Fromdate varchar(20) = null,
|
31
|
@p_Todate VARCHAR(20) = NULL,
|
32
|
@p_DEPT_ID varchar(15) = NULL,--thieuvq Search theo phong ban
|
33
|
@p_SerialNo VARCHAR(MAX) = NULL,--- luctv search theo ngay nhap
|
34
|
@p_AddNewID VARCHAR(20) = NULL,--- luctv search ma phieu nhap 16092019
|
35
|
@p_Use_MasterID VARCHAR(20) = NULL,--- luctv search theo ma phieu xuat 16092019
|
36
|
@p_LEVEL VARCHAR(5) = 'UNIT'
|
37
|
AS
|
38
|
--
|
39
|
BEGIN
|
40
|
--IF @p_TOP = '' SET @p_TOP = 1000000
|
41
|
declare @tmp table(BRANCH_ID varchar(15))
|
42
|
insert into @tmp SELECT BRANCH_ID FROM [dbo].[CM_BRANCH_GETCHILDID](@p_BRANCH_LOGIN)
|
43
|
--- khai bao table chua ds ma tai san
|
44
|
DECLARE @l_LSTASSETCODE TABLE (
|
45
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
46
|
[VALUE] [VARCHAR](MAX) NULL)
|
47
|
INSERT INTO @l_LSTASSETCODE SELECT VALUE FROM WSISPLIT(@p_ASSET_ID,',')
|
48
|
--- khai bao table chua ds ma code tai san
|
49
|
DECLARE @l_LSTASSETCODE_V1 TABLE (
|
50
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
51
|
[VALUE] [VARCHAR](MAX) NULL)
|
52
|
INSERT INTO @l_LSTASSETCODE_V1 SELECT VALUE FROM WSISPLIT(@p_ASSET_CODE,',')
|
53
|
-- khai bao table chua ds seria
|
54
|
DECLARE @l_LSTSERI TABLE (
|
55
|
[ID] [int] IDENTITY(1,1) NOT NULL,
|
56
|
[VALUE] [VARCHAR](MAX) NULL)
|
57
|
INSERT INTO @l_LSTSERI SELECT VALUE FROM WSISPLIT(@p_SerialNo,',')
|
58
|
IF @P_TOP IS NULL OR @P_TOP = ''
|
59
|
BEGIN
|
60
|
SELECT
|
61
|
CONVERT(BIGINT,SUBSTRING(A.ASSET_CODE,2 + LEN(B.GROUP_CODE),LEN(A.ASSET_CODE) - 1 - LEN(B.GROUP_CODE))) AS VE1,
|
62
|
CONVERT(BIGINT,@p_FROM_NUM) AS VE2,
|
63
|
A.ASSET_ID,A.ASSET_CODE, A.[TYPE_ID],C.[TYPE_CODE], C.[TYPE_NAME], A.GROUP_ID,B.GROUP_CODE, B.GROUP_NAME, B.ASS_CAT, A.ASSET_CODE,
|
64
|
A.ASSET_NAME, A.ASSET_SERIAL_NO, A.ASSET_DESC,
|
65
|
A.SUP_ID, A.BUY_PRICE, A.AMORT_AMT, A.ASS_TYPE, A.BRANCH_ID,BR.BRANCH_CODE,BR.BRANCH_NAME,
|
66
|
ISNULL(DP.DEP_ID,BR.BRANCH_ID) AS DEPT_ID,
|
67
|
ISNULL(DP.DEP_CODE,BR.BRANCH_CODE) AS DEPT_CODE,
|
68
|
A.EMP_ID,EM.TLNANME AS EMP_CODE,EM.TLFullName AS EMP_NAME, A.DIVISION_ID,
|
69
|
A.BUY_DATE, A.USE_DATE, A.SPECIAL_ASS, A.AMORT_MONTH, A.AMORT_RATE, A.AMORT_START_DATE, A.AMORT_END_DATE,
|
70
|
A.FIRST_AMORT_AMT,
|
71
|
A.AMORTIZED_MONTH,
|
72
|
(A.AMORT_MONTH - A.AMORTIZED_MONTH) AS REMAIN_MONTH,
|
73
|
A.AMORTIZED_AMT,
|
74
|
ISNULL((A.AMORT_AMT - A.AMORTIZED_AMT), A.AMORT_AMT) AS REMAIN_AMORTIZED_AMT, --So tien khau hao con lai
|
75
|
A.PO_ID,A.PD_ID, A.WAREHOUSE_ID, A.LOCATION, A.REF_ASSET_ID,
|
76
|
A.REF_AMORTIZED_AMT,
|
77
|
A.WARRANTY_MONTHS,
|
78
|
A.NOTES,
|
79
|
A.AMORT_STATUS,
|
80
|
D.STATUS_NAME AMORT_STATUS_NAME,
|
81
|
A.ASS_STATUS,
|
82
|
E.STATUS_NAME ASS_STATUS_NAME, --Tinh trang tai san
|
83
|
A.ASS_STATUS_DESC,
|
84
|
A.RECORD_STATUS,
|
85
|
A.AUTH_STATUS,
|
86
|
ZZ.AUTH_STATUS_NAME,
|
87
|
A.MAKER_ID,
|
88
|
A.CREATE_DT,
|
89
|
A.CHECKER_ID,
|
90
|
A.APPROVE_DT,
|
91
|
B.GROUP_NAME NHOM_TS,
|
92
|
ISNULL(DP.DEP_NAME,BR.BRANCH_NAME) AS DVSD,
|
93
|
DP.DEP_NAME,
|
94
|
A.BUY_DATE_KT
|
95
|
FROM ASS_MASTER A
|
96
|
LEFT JOIN ASS_GROUP B ON A.GROUP_ID = B.GROUP_ID
|
97
|
LEFT JOIN ASS_TYPE C ON A.[TYPE_ID] = C.[TYPE_ID]
|
98
|
LEFT JOIN ASS_AMORT_STATUS D ON A.AMORT_STATUS = D.STATUS_CODE
|
99
|
LEFT JOIN ASS_STATUS E ON A.ASS_STATUS = E.STATUS_ID
|
100
|
LEFT JOIN CM_AUTH_STATUS ZZ ON ZZ.AUTH_STATUS = A.AUTH_STATUS
|
101
|
LEFT JOIN CM_BRANCH BR ON BR.BRANCH_ID=A.BRANCH_ID
|
102
|
LEFT JOIN TL_USER EM ON EM.TLNANME=A.EMP_ID
|
103
|
LEFT JOIN CM_DEPARTMENT DP ON DP.DEP_ID = A.DEPT_ID
|
104
|
LEFT JOIN ASS_TRANSACTIONS AT ON AT.ASSET_ID = A.ASSET_ID AND AT.TRN_TYPE ='ADD_NEW'
|
105
|
LEFT JOIN ASS_TRANSACTIONS AT2 ON AT2.ASSET_ID = A.ASSET_ID AND AT2.TRN_TYPE ='ADD_USE' AND @p_Use_MasterID <>'' AND @p_Use_MasterID IS NOT NULL
|
106
|
WHERE 1 = 1
|
107
|
AND AMORT_STATUS <> 'DTL'
|
108
|
--AND AMORT_STATUS <> 'VNM' AND AMORT_STATUS <> 'DTL'
|
109
|
--AND (A.ASSET_ID = @p_ASSET_ID OR @p_ASSET_ID IS NULL OR @p_ASSET_ID = '')
|
110
|
AND (A.ASSET_ID IN (SELECT VALUE FROM @l_LSTASSETCODE) OR @p_ASSET_ID IS NULL OR @p_ASSET_ID ='')
|
111
|
AND (A.ASSET_NAME like N'%' + @p_ASSET_NAME + '%' OR @p_ASSET_NAME IS NULL OR @p_ASSET_NAME = '')
|
112
|
AND ((@p_LEVEL = 'UNIT' AND (A.BRANCH_ID = @p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = ''))
|
113
|
OR (@p_LEVEL = 'ALL' AND (A.BRANCH_ID IN (SELECT BRANCH_ID FROM [dbo].[CM_BRANCH_GETCHILDID](@P_BRANCH_ID)) OR @P_BRANCH_ID IS NULL OR @P_BRANCH_ID = ''))) AND (B.GROUP_ID = @p_ASSET_GROUP OR @p_ASSET_GROUP IS NULL OR @p_ASSET_GROUP = '')
|
114
|
AND (A.TYPE_ID = @p_ASSET_TYPE OR @p_ASSET_TYPE IS NULL OR @p_ASSET_TYPE = '')
|
115
|
--AND ((CONVERT(INT,SUBSTRING(A.ASSET_CODE,2 + LEN(B.GROUP_CODE),LEN(A.ASSET_CODE) - 1 -
|
116
|
--LEN(B.GROUP_CODE))) >= CONVERT(INT,@p_FROM_NUM)) OR @p_FROM_NUM = '' OR @p_FROM_NUM IS NULL)
|
117
|
--AND ((CONVERT(INT,SUBSTRING(A.ASSET_CODE,2 + LEN(B.GROUP_CODE),LEN(A.ASSET_CODE) - 1 -
|
118
|
--LEN(B.GROUP_CODE))) <= CONVERT(INT,@p_TO_NUM)) OR @p_TO_NUM = '' OR @p_TO_NUM IS NULL)
|
119
|
AND ((CONVERT(DECIMAL,RIGHT(A.ASSET_CODE,4))>= CONVERT(INT,@p_FROM_NUM)) OR @p_FROM_NUM = '' OR @p_FROM_NUM IS NULL)
|
120
|
AND ((CONVERT(DECIMAL,RIGHT(A.ASSET_CODE,4)) <= CONVERT(INT,@p_TO_NUM)) OR @p_TO_NUM = '' OR @p_TO_NUM IS NULL)
|
121
|
AND(A.BUY_DATE_KT <= CONVERT(DATETIME,@p_Todate,103) OR @p_Todate= '' OR @p_Todate IS NULL)
|
122
|
AND (A.BUY_DATE_KT >= CONVERT(datetime, @p_Fromdate, 103) OR @p_Fromdate IS NULL OR @p_Fromdate = '')
|
123
|
AND A.RECORD_STATUS = '1'
|
124
|
AND (A.DEPT_ID = @p_DEPT_ID OR @p_DEPT_ID IS NULL OR @p_DEPT_ID = '')-- THIEUVQ THEM 19_03_2014
|
125
|
--AND (A.ASSET_SERIAL_NO = @p_SerialNo OR @p_SerialNo IS NULL OR @p_SerialNo = '')
|
126
|
AND (A.ASSET_SERIAL_NO IN (SELECT VALUE FROM @l_LSTSERI) OR @p_SerialNo IS NULL OR @p_SerialNo ='')
|
127
|
|
128
|
AND (A.ASSET_CODE IN (SELECT VALUE FROM @l_LSTASSETCODE_V1) OR @p_ASSET_CODE IS NULL OR @p_ASSET_CODE ='')
|
129
|
--AND (AT.TRN_ID = @p_AddNewID OR @p_AddNewID ='' OR @p_AddNewID IS NULL)
|
130
|
--AND (AT2.TRN_ID = @p_Use_MasterID OR @p_Use_MasterID ='' OR @p_Use_MasterID IS NULL)
|
131
|
AND (AT.TRN_ID like N'%' + @p_AddNewID + '%' OR @p_AddNewID IS NULL OR @p_AddNewID = '')
|
132
|
AND (AT2.TRN_ID like N'%' + @p_Use_MasterID + '%' OR @p_Use_MasterID IS NULL OR @p_Use_MasterID = '')
|
133
|
|
134
|
END
|
135
|
-- SELECT * FROM ASS_MASTER
|
136
|
-- PRINT (CONVERT(INT,SUBSTRING('TPV001000001',1 + LEN('PV0001'),15 - 1 - LEN('PV0001'))) >= CONVERT(INT,'000000001') )
|
137
|
ELSE
|
138
|
BEGIN
|
139
|
SELECT TOP (@P_TOP)
|
140
|
CONVERT(BIGINT,SUBSTRING(A.ASSET_CODE,2 + LEN(B.GROUP_CODE),LEN(A.ASSET_CODE) - 1 - LEN(B.GROUP_CODE))) AS VE1,
|
141
|
CONVERT(BIGINT,@p_FROM_NUM) AS VE2,
|
142
|
A.ASSET_ID, A.[TYPE_ID],C.[TYPE_CODE], C.[TYPE_NAME], A.GROUP_ID,B.GROUP_CODE, B.GROUP_NAME, B.ASS_CAT, A.ASSET_CODE,
|
143
|
(CASE WHEN LEN(A.ASSET_NAME)>25 THEN SUBSTRING(A.ASSET_NAME,0,20) + '...'ELSE A.ASSET_NAME END) AS ASSET_NAME, A.ASSET_SERIAL_NO, A.ASSET_DESC,
|
144
|
A.SUP_ID, A.BUY_PRICE, A.AMORT_AMT, A.ASS_TYPE, A.BRANCH_ID,BR.BRANCH_CODE,BR.BRANCH_NAME,ISNULL(DP.DEP_ID,BR.BRANCH_ID) AS DEPT_ID,
|
145
|
ISNULL(DP.DEP_CODE,BR.BRANCH_CODE) AS DEPT_CODE
|
146
|
, A.EMP_ID,EM.TLNANME AS EMP_CODE,EM.TLFullName AS EMP_NAME, A.DIVISION_ID,
|
147
|
A.BUY_DATE, A.USE_DATE, A.SPECIAL_ASS, A.AMORT_MONTH, A.AMORT_RATE, A.AMORT_START_DATE, A.AMORT_END_DATE,
|
148
|
A.FIRST_AMORT_AMT,
|
149
|
A.AMORTIZED_MONTH,
|
150
|
(A.AMORT_MONTH - A.AMORTIZED_MONTH) AS REMAIN_MONTH,
|
151
|
A.AMORTIZED_AMT,
|
152
|
ISNULL((A.AMORT_AMT - A.AMORTIZED_AMT), A.AMORT_AMT) AS REMAIN_AMORTIZED_AMT, --So tien khau hao con lai
|
153
|
A.PO_ID,A.PD_ID, A.WAREHOUSE_ID, A.LOCATION, A.REF_ASSET_ID,
|
154
|
A.REF_AMORTIZED_AMT,
|
155
|
A.WARRANTY_MONTHS,
|
156
|
A.NOTES,
|
157
|
A.AMORT_STATUS,
|
158
|
D.STATUS_NAME AMORT_STATUS_NAME,
|
159
|
A.ASS_STATUS,
|
160
|
E.STATUS_NAME ASS_STATUS_NAME, --Tinh trang tai san
|
161
|
A.ASS_STATUS_DESC,
|
162
|
A.RECORD_STATUS,
|
163
|
A.AUTH_STATUS,
|
164
|
ZZ.AUTH_STATUS_NAME,
|
165
|
A.MAKER_ID,
|
166
|
A.CREATE_DT,
|
167
|
A.CHECKER_ID,
|
168
|
A.APPROVE_DT,
|
169
|
B.GROUP_NAME NHOM_TS,
|
170
|
ISNULL(DP.DEP_NAME,BR.BRANCH_NAME) AS DVSD,
|
171
|
DP.DEP_NAME ,
|
172
|
A.BUY_DATE_KT
|
173
|
FROM ASS_MASTER A
|
174
|
LEFT JOIN ASS_GROUP B ON A.GROUP_ID = B.GROUP_ID
|
175
|
LEFT JOIN ASS_TYPE C ON A.[TYPE_ID] = C.[TYPE_ID]
|
176
|
LEFT JOIN ASS_AMORT_STATUS D ON A.AMORT_STATUS = D.STATUS_CODE
|
177
|
LEFT JOIN ASS_STATUS E ON A.ASS_STATUS = E.STATUS_ID
|
178
|
LEFT JOIN CM_AUTH_STATUS ZZ ON ZZ.AUTH_STATUS = A.AUTH_STATUS
|
179
|
LEFT JOIN CM_BRANCH BR ON BR.BRANCH_ID=A.BRANCH_ID
|
180
|
LEFT JOIN TL_USER EM ON EM.TLNANME=A.EMP_ID
|
181
|
LEFT JOIN CM_DEPARTMENT DP ON DP.DEP_ID = A.DEPT_ID
|
182
|
LEFT JOIN ASS_TRANSACTIONS AT ON AT.ASSET_ID = A.ASSET_ID AND AT.TRN_TYPE ='ADD_NEW'
|
183
|
LEFT JOIN ASS_TRANSACTIONS AT2 ON AT2.ASSET_ID = A.ASSET_ID AND AT2.TRN_TYPE ='ADD_USE' AND @p_Use_MasterID <>'' AND @p_Use_MasterID IS NOT NULL
|
184
|
WHERE 1 = 1
|
185
|
AND AMORT_STATUS <> 'DTL'
|
186
|
--AND AMORT_STATUS <> 'VNM' AND AMORT_STATUS <> 'DTL'
|
187
|
--AND (A.ASSET_ID = @p_ASSET_ID OR @p_ASSET_ID IS NULL OR @p_ASSET_ID = '')
|
188
|
AND (A.ASSET_ID IN (SELECT VALUE FROM @l_LSTASSETCODE) OR @p_ASSET_ID IS NULL OR @p_ASSET_ID ='')
|
189
|
AND (A.ASSET_CODE IN (SELECT VALUE FROM @l_LSTASSETCODE_V1) OR @p_ASSET_CODE IS NULL OR @p_ASSET_CODE ='')
|
190
|
AND (A.ASSET_NAME like N'%' + @p_ASSET_NAME + '%' OR @p_ASSET_NAME IS NULL OR @p_ASSET_NAME = '')
|
191
|
AND ((@p_LEVEL = 'UNIT' AND (A.BRANCH_ID = @p_BRANCH_ID OR @p_BRANCH_ID IS NULL OR @p_BRANCH_ID = ''))
|
192
|
OR (@p_LEVEL = 'ALL' AND (A.BRANCH_ID IN (SELECT BRANCH_ID FROM [dbo].[CM_BRANCH_GETCHILDID](@P_BRANCH_ID)) OR @P_BRANCH_ID IS NULL OR @P_BRANCH_ID = '')))
|
193
|
AND (B.GROUP_ID = @p_ASSET_GROUP OR @p_ASSET_GROUP IS NULL OR @p_ASSET_GROUP = '')
|
194
|
AND (A.TYPE_ID = @p_ASSET_TYPE OR @p_ASSET_TYPE IS NULL OR @p_ASSET_TYPE = '')
|
195
|
AND ((CONVERT(DECIMAL,RIGHT(A.ASSET_CODE,4))>= CONVERT(INT,@p_FROM_NUM)) OR @p_FROM_NUM = '' OR @p_FROM_NUM IS NULL)
|
196
|
AND ((CONVERT(DECIMAL,RIGHT(A.ASSET_CODE,4)) <= CONVERT(INT,@p_TO_NUM)) OR @p_TO_NUM = '' OR @p_TO_NUM IS NULL)
|
197
|
AND(A.BUY_DATE_KT <= CONVERT(DATETIME,@p_Todate,103) OR @p_Todate= '' OR @p_Todate IS NULL)
|
198
|
AND (A.BUY_DATE_KT >= CONVERT(datetime, @p_Fromdate, 103) OR @p_Fromdate IS NULL OR @p_Fromdate = '')
|
199
|
AND A.RECORD_STATUS = '1'
|
200
|
AND (A.DEPT_ID = @p_DEPT_ID OR @p_DEPT_ID IS NULL OR @p_DEPT_ID = '') -- THIEUVQ THEM 19_03_2014
|
201
|
--AND (A.ASSET_SERIAL_NO = @p_SerialNo OR @p_SerialNo IS NULL OR @p_SerialNo = '')
|
202
|
AND (A.ASSET_SERIAL_NO IN (SELECT VALUE FROM @l_LSTSERI) OR @p_SerialNo IS NULL OR @p_SerialNo ='')
|
203
|
AND (A.ASSET_CODE IN (SELECT VALUE FROM @l_LSTASSETCODE_V1) OR @p_ASSET_CODE IS NULL OR @p_ASSET_CODE ='')
|
204
|
--AND (AT.TRN_ID = @p_AddNewID OR @p_AddNewID ='' OR @p_AddNewID IS NULL)
|
205
|
--AND (AT2.TRN_ID = @p_Use_MasterID OR @p_Use_MasterID ='' OR @p_Use_MasterID IS NULL)
|
206
|
AND (AT.TRN_ID like N'%' + @p_AddNewID + '%' OR @p_AddNewID IS NULL OR @p_AddNewID = '')
|
207
|
AND (AT2.TRN_ID like N'%' + @p_Use_MasterID + '%' OR @p_Use_MasterID IS NULL OR @p_Use_MasterID = '')
|
208
|
END
|
209
|
End
|