Project

General

Profile

6.0 IN NHAN.txt

Luc Tran Van, 03/01/2021 03:05 PM

 
1

    
2

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