Project

General

Profile

CM SUPPLIER SEARCH.txt

Luc Tran Van, 03/04/2022 11:56 AM

 
1

    
2
 
3
ALTER PROCEDURE [dbo].[CM_SUPPLIER_Search]  
4
@p_SUP_CODE varchar(15) = NULL,  
5
@p_SUP_NAME Nvarchar(300) = NULL,  
6
@p_SUP_TYPE_ID varchar(15) = NULL,  
7
@p_REGION_ID varchar(15) = NULL,  
8
@p_ADDR nvarchar(200) = NULL,  
9
@p_EMAIL varchar(50) = NULL,  
10
@p_TAX_NO varchar(20) = NULL,  
11
@p_TEL varchar(20) = NULL,  
12
@p_CONTACT_PERSON nvarchar(200) = NULL,  
13
@p_DISCIPLINES NVARCHAR(15) = NULL,  
14
@p_NOTES nvarchar(1000) = NULL,  
15
@p_RECORD_STATUS varchar(1) = NULL,  
16
@p_MAKER_ID varchar(20) = NULL,  
17
@p_CREATE_DT VARCHAR(20) = NULL,  
18
@p_AUTH_STATUS varchar(50) = NULL,  
19
@p_CHECKER_ID varchar(20) = NULL,  
20
@p_APPROVE_DT VARCHAR(20) = NULL,  
21
@p_TRN_TYPE VARCHAR(50) = NULL,  
22
@p_REF_ID VARCHAR(20) = NULL,
23
@p_TOTAL_AMT DECIMAL(18,0),  
24
@p_TOP INT = NULL,
25
@p_EDITOR_ID varchar(15) =  NULL
26
AS  
27
BEGIN -- PAGING
28
------thieuvq -BEGIN 231219------  
29
--SELECT * FROM TR_CONTRACT A  
30
--INNER JOIN TR_CONTRACT_DT B ON A.CONTRACT_ID = B.CONTRACT_ID AND B.GOODS_ID = ''  
31
--SELECT * FROM TR_CONTRACT_DT  
32
--SELECT * FROM CM_GOODS  
33
----SELECT * FROM wsiSplit('TR_REQ_DOC_RE;GOO000000000452',';') WHERE value LIKE 'GOO%'  
34
--SELECT DATEADD(MONTH,3,GETDATE())  
35
 
36
SET @p_TOP  = 1000
37
IF @p_REF_ID <> '' AND @p_REF_ID IS NOT NULL  
38
BEGIN
39
IF(@p_TRN_TYPE='PO-PYC') 
40
BEGIN 
41
-- PAGING BEGIN
42
	SELECT A.*,T.SUP_TYPE_NAME,B.AUTH_STATUS_NAME,C.CONTENT AS DISCIPLINES_NAME, '' AS TK_GL, '' AS TK_GL_NAME, '' AS TK_GL_OUT, '' AS TK_GL_NAME_OUT, U.TLFullName  
43
	-- SELECT END
44
	FROM CM_SUPPLIER A  
45
	INNER JOIN dbo.TR_REQUEST_DOC_DT TR ON TR.SUP_ID=A.SUP_ID AND TR.REQ_DOC_ID=@p_REF_ID  
46
	LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS = B.AUTH_STATUS  
47
	LEFT JOIN CM_ALLCODE C ON C.CDVAL = A.DISCIPLINES AND C.CDNAME = 'DISCIPLINES'
48
	LEFT JOIN TL_USER U ON A.EDITOR_ID = U.TLNANME
49
	LEFT JOIN CM_SUPPLIERTYPE T ON T.SUP_TYPE_ID = A.SUP_TYPE_ID--,T.SUP_TYPE_NAME
50
	WHERE 1 = 1  
51
	AND (A.SUP_CODE like + '%' + @p_SUP_CODE + '%' OR @p_SUP_CODE IS NULL OR @p_SUP_CODE = '')  
52
	AND (A.SUP_NAME like '%' + @p_SUP_NAME + '%' OR @p_SUP_NAME IS NULL OR @p_SUP_NAME = '')  
53
	AND (A.SUP_TYPE_ID LIKE '%' + @p_SUP_TYPE_ID OR @p_SUP_TYPE_ID IS NULL OR @p_SUP_TYPE_ID = '')  
54
	AND (A.REGION_ID LIKE '%' + @p_REGION_ID + '%' OR @p_REGION_ID IS NULL OR @p_REGION_ID = '')  
55
	AND (A.EMAIL LIKE '%' + @p_EMAIL + '%' OR @p_EMAIL IS NULL OR @p_EMAIL = '')  
56
	AND (A.TAX_NO LIKE '%' + @p_TAX_NO + '%' OR @p_TAX_NO IS NULL OR @p_TAX_NO = '')  
57
	AND (A.TEL LIKE '%' + @p_TEL + '%' OR @p_TEL IS NULL OR @p_TEL = '')  
58
	AND (A.DISCIPLINES LIKE '%' + @p_DISCIPLINES + '%' OR @p_DISCIPLINES IS NULL OR @p_DISCIPLINES = '')  
59
	AND (A.CONTACT_PERSON LIKE '%' + @p_CONTACT_PERSON + '%' OR @p_CONTACT_PERSON IS NULL OR @p_CREATE_DT = '')  
60
	AND (A.NOTES LIKE '%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')  
61
	AND (A.RECORD_STATUS LIKE '%' + @p_RECORD_STATUS + '%' OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')  
62
	AND (A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')  
63
	AND (DATEDIFF(DAY,A.CREATE_DT ,CONVERT(DATETIME, @p_CREATE_DT, 103)) =0 OR @p_CREATE_DT IS NULL OR @p_CREATE_DT = '')  
64
	AND (A.AUTH_STATUS LIKE '%' + @p_AUTH_STATUS + '%' OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')  
65
	AND (A.CHECKER_ID LIKE '%' + @p_CHECKER_ID + '%' OR @p_CHECKER_ID IS NULL OR @p_CHECKER_ID = '')  
66
	AND (DATEDIFF(DAY,A.APPROVE_DT ,CONVERT(DATETIME, @p_APPROVE_DT, 103)) = 0 OR @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')  
67
	AND A.RECORD_STATUS = '1'
68
-- PAGING END 
69
END 
70
---CO THE TRUYEN GOODS_ID XUONG HOAC TRUYEN HANG MUC --> XUONG NAY LAY RA GOODS_ID  
71
ELSE IF(@p_TOTAL_AMT <= (SELECT LIMIT_VALUE FROM dbo.TL_SYSROLE_LIMIT WHERE ROLE_ID='MSTT'))  
72
BEGIN  
73
-- PAGING BEGIN
74
SELECT A.*,T.SUP_TYPE_NAME,B.AUTH_STATUS_NAME,C.CONTENT AS DISCIPLINES_NAME,'' AS TK_GL, '' AS TK_GL_NAME, '' AS TK_GL_OUT, '' AS TK_GL_NAME_OUT, U.TLFullName  
75
-- SELECT END
76
FROM CM_SUPPLIER A  
77
LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS = B.AUTH_STATUS  
78
LEFT JOIN CM_ALLCODE C ON C.CDVAL = A.DISCIPLINES AND C.CDNAME = 'DISCIPLINES'  
79
LEFT JOIN TL_USER U ON A.EDITOR_ID = U.TLNANME
80
LEFT JOIN CM_SUPPLIERTYPE T ON T.SUP_TYPE_ID = A.SUP_TYPE_ID--,T.SUP_TYPE_NAME
81
WHERE 1 = 1  
82
AND (A.SUP_CODE like + '%' + @p_SUP_CODE + '%' OR @p_SUP_CODE IS NULL OR @p_SUP_CODE = '')  
83
AND (A.SUP_NAME like '%' + @p_SUP_NAME + '%' OR @p_SUP_NAME IS NULL OR @p_SUP_NAME = '')  
84
AND (A.SUP_TYPE_ID LIKE '%' + @p_SUP_TYPE_ID OR @p_SUP_TYPE_ID IS NULL OR @p_SUP_TYPE_ID = '')  
85
AND (A.REGION_ID LIKE '%' + @p_REGION_ID + '%' OR @p_REGION_ID IS NULL OR @p_REGION_ID = '')  
86
AND (A.EMAIL LIKE '%' + @p_EMAIL + '%' OR @p_EMAIL IS NULL OR @p_EMAIL = '')  
87
AND (A.TAX_NO LIKE '%' + @p_TAX_NO + '%' OR @p_TAX_NO IS NULL OR @p_TAX_NO = '')  
88
AND (A.TEL LIKE '%' + @p_TEL + '%' OR @p_TEL IS NULL OR @p_TEL = '')  
89
AND (A.DISCIPLINES LIKE '%' + @p_DISCIPLINES + '%' OR @p_DISCIPLINES IS NULL OR @p_DISCIPLINES = '')  
90
AND (A.CONTACT_PERSON LIKE '%' + @p_CONTACT_PERSON + '%' OR @p_CONTACT_PERSON IS NULL OR @p_CREATE_DT = '')  
91
AND (A.NOTES LIKE '%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')  
92
AND (A.RECORD_STATUS LIKE '%' + @p_RECORD_STATUS + '%' OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')  
93
AND (A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')  
94
AND (DATEDIFF(DAY,A.CREATE_DT ,CONVERT(DATETIME, @p_CREATE_DT, 103)) =0 OR @p_CREATE_DT IS NULL OR @p_CREATE_DT = '')  
95
AND (A.AUTH_STATUS LIKE '%' + @p_AUTH_STATUS + '%' OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')  
96
AND (A.CHECKER_ID LIKE '%' + @p_CHECKER_ID + '%' OR @p_CHECKER_ID IS NULL OR @p_CHECKER_ID = '')  
97
AND (DATEDIFF(DAY,A.APPROVE_DT ,CONVERT(DATETIME, @p_APPROVE_DT, 103)) = 0 OR @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')  
98
AND A.RECORD_STATUS = '1'
99
-- PAGING END
100
END  
101
ELSE  
102
-- PAGING BEGIN
103
SELECT A.*,T.SUP_TYPE_NAME,B.AUTH_STATUS_NAME,C.CONTENT AS DISCIPLINES_NAME,'' AS TK_GL, '' AS TK_GL_NAME, '' AS TK_GL_OUT, '' AS TK_GL_NAME_OUT, U.TLFullName  
104
-- SELECT END
105
FROM CM_SUPPLIER A  
106
LEFT JOIN  
107
(  
108
SELECT A.SUP_ID FROM TR_CONTRACT A  
109
INNER JOIN TR_CONTRACT_DT B ON A.CONTRACT_ID = B.CONTRACT_ID --AND B.GOODS_ID = @GD_ID  
110
WHERE B.GOODS_ID = @p_REF_ID AND A.APPROVE_DT IS NOT NULL AND  
111
((DATEADD(MONTH,6,A.APPROVE_DT) >= GETDATE() AND (A.REQUEST_ID = '' or A.REQUEST_ID IS NULL)) ---LAY HD KY CACH DAY 6 THANG  
112
OR A.REQUEST_ID IS not NULL OR A.REQUEST_ID <> '')---HOP DONG NGUYEN TAC THI KHONG BAT BUOC NHAP SO PHIEU YEU CAU MUA SAM  
113
) SUP ON SUP.SUP_ID = A.SUP_ID  
114
LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS = B.AUTH_STATUS  
115
LEFT JOIN CM_ALLCODE C ON C.CDVAL = A.DISCIPLINES AND C.CDNAME = 'DISCIPLINES'  
116
LEFT JOIN TL_USER U ON A.EDITOR_ID = U.TLNANME
117
LEFT JOIN CM_SUPPLIERTYPE T ON T.SUP_TYPE_ID = A.SUP_TYPE_ID--,T.SUP_TYPE_NAME
118
WHERE 1 = 1  
119
AND (A.SUP_CODE like + '%' + @p_SUP_CODE + '%' OR @p_SUP_CODE IS NULL OR @p_SUP_CODE = '')  
120
AND (A.SUP_NAME like '%' + @p_SUP_NAME + '%' OR @p_SUP_NAME IS NULL OR @p_SUP_NAME = '')  
121
AND (A.SUP_TYPE_ID LIKE '%' + @p_SUP_TYPE_ID OR @p_SUP_TYPE_ID IS NULL OR @p_SUP_TYPE_ID = '')  
122
AND (A.REGION_ID LIKE '%' + @p_REGION_ID + '%' OR @p_REGION_ID IS NULL OR @p_REGION_ID = '')  
123
AND (A.EMAIL LIKE '%' + @p_EMAIL + '%' OR @p_EMAIL IS NULL OR @p_EMAIL = '')  
124
AND (A.TAX_NO LIKE '%' + @p_TAX_NO + '%' OR @p_TAX_NO IS NULL OR @p_TAX_NO = '')  
125
AND (A.TEL LIKE '%' + @p_TEL + '%' OR @p_TEL IS NULL OR @p_TEL = '')  
126
AND (A.DISCIPLINES LIKE '%' + @p_DISCIPLINES + '%' OR @p_DISCIPLINES IS NULL OR @p_DISCIPLINES = '')  
127
AND (A.CONTACT_PERSON LIKE '%' + @p_CONTACT_PERSON + '%' OR @p_CONTACT_PERSON IS NULL OR @p_CREATE_DT = '')  
128
AND (A.NOTES LIKE '%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')  
129
AND (A.RECORD_STATUS LIKE '%' + @p_RECORD_STATUS + '%' OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')  
130
AND (A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')  
131
AND (DATEDIFF(DAY,A.CREATE_DT ,CONVERT(DATETIME, @p_CREATE_DT, 103)) =0 OR @p_CREATE_DT IS NULL OR @p_CREATE_DT = '')  
132
AND (A.AUTH_STATUS LIKE '%' + @p_AUTH_STATUS + '%' OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')  
133
AND (A.CHECKER_ID LIKE '%' + @p_CHECKER_ID + '%' OR @p_CHECKER_ID IS NULL OR @p_CHECKER_ID = '')  
134
AND (DATEDIFF(DAY,A.APPROVE_DT ,CONVERT(DATETIME, @p_APPROVE_DT, 103)) = 0 OR @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')  
135
AND A.RECORD_STATUS = '1'
136
-- PAGING END
137
END  
138
ELSE  
139
------END 231219  
140
IF(@p_TOP IS NULL OR @p_TOP = '' OR @p_TOP = 0) 
141
-- PAGING BEGIN
142
SELECT A.*,T.SUP_TYPE_NAME,B.AUTH_STATUS_NAME,C.CONTENT AS DISCIPLINES_NAME,'' AS TK_GL, '' AS TK_GL_NAME, '' AS TK_GL_OUT, '' AS TK_GL_NAME_OUT, U.TLFullName  
143
-- SELECT END
144
FROM CM_SUPPLIER A LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS = B.AUTH_STATUS  
145
LEFT JOIN CM_ALLCODE C ON C.CDVAL = A.DISCIPLINES AND C.CDNAME = 'DISCIPLINES'  
146
LEFT JOIN TL_USER U ON A.EDITOR_ID = U.TLNANME
147
LEFT JOIN CM_SUPPLIERTYPE T ON T.SUP_TYPE_ID = A.SUP_TYPE_ID--,T.SUP_TYPE_NAME
148
WHERE 1 = 1  
149
AND (A.SUP_CODE like + '%' + @p_SUP_CODE + '%' OR @p_SUP_CODE IS NULL OR @p_SUP_CODE = '')  
150
AND (A.SUP_NAME like '%' + @p_SUP_NAME + '%' OR @p_SUP_NAME IS NULL OR @p_SUP_NAME = '')  
151
AND (A.SUP_TYPE_ID LIKE '%' + @p_SUP_TYPE_ID OR @p_SUP_TYPE_ID IS NULL OR @p_SUP_TYPE_ID = '')  
152
AND (A.REGION_ID LIKE '%' + @p_REGION_ID + '%' OR @p_REGION_ID IS NULL OR @p_REGION_ID = '')  
153
AND (A.EMAIL LIKE '%' + @p_EMAIL + '%' OR @p_EMAIL IS NULL OR @p_EMAIL = '')  
154
AND (A.TAX_NO LIKE '%' + @p_TAX_NO + '%' OR @p_TAX_NO IS NULL OR @p_TAX_NO = '')  
155
AND (A.TEL LIKE '%' + @p_TEL + '%' OR @p_TEL IS NULL OR @p_TEL = '')  
156
AND (A.DISCIPLINES LIKE '%' + @p_DISCIPLINES + '%' OR @p_DISCIPLINES IS NULL OR @p_DISCIPLINES = '')  
157
AND (A.CONTACT_PERSON LIKE '%' + @p_CONTACT_PERSON + '%' OR @p_CONTACT_PERSON IS NULL OR @p_CREATE_DT = '')  
158
AND (A.NOTES LIKE '%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')  
159
AND (A.RECORD_STATUS LIKE '%' + @p_RECORD_STATUS + '%' OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')  
160
AND (A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')  
161
AND (DATEDIFF(DAY,A.CREATE_DT ,CONVERT(DATETIME, @p_CREATE_DT, 103)) =0 OR @p_CREATE_DT IS NULL OR @p_CREATE_DT = '')  
162
AND (A.AUTH_STATUS LIKE '%' + @p_AUTH_STATUS + '%' OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')  
163
AND (A.CHECKER_ID LIKE '%' + @p_CHECKER_ID + '%' OR @p_CHECKER_ID IS NULL OR @p_CHECKER_ID = '')  
164
AND (DATEDIFF(DAY,A.APPROVE_DT ,CONVERT(DATETIME, @p_APPROVE_DT, 103)) = 0 OR @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')  
165
AND A.RECORD_STATUS = '1'
166
-- PAGING END
167
ELSE  
168
-- PAGING BEGIN
169
SELECT TOP(@p_TOP)A.*,T.SUP_TYPE_NAME,B.AUTH_STATUS_NAME,C.CONTENT AS DISCIPLINES_NAME,'' AS TK_GL, '' AS TK_GL_NAME, '' AS TK_GL_OUT, '' AS TK_GL_NAME_OUT, U.TLFullName
170
-- SELECT END
171
FROM CM_SUPPLIER A LEFT JOIN CM_AUTH_STATUS B ON A.AUTH_STATUS = B.AUTH_STATUS  
172
LEFT JOIN CM_ALLCODE C ON C.CDVAL = A.DISCIPLINES AND C.CDNAME = 'DISCIPLINES'  
173
LEFT JOIN TL_USER U ON A.EDITOR_ID = U.TLNANME
174
LEFT JOIN CM_SUPPLIERTYPE T ON T.SUP_TYPE_ID = A.SUP_TYPE_ID--,T.SUP_TYPE_NAME
175
WHERE 1 = 1  
176
AND (A.SUP_CODE like + '%' + @p_SUP_CODE + '%' OR @p_SUP_CODE IS NULL OR @p_SUP_CODE = '')  
177
AND (A.SUP_NAME like '%' + @p_SUP_NAME + '%' OR @p_SUP_NAME IS NULL OR @p_SUP_NAME = '')  
178
AND (A.SUP_TYPE_ID LIKE '%' + @p_SUP_TYPE_ID OR @p_SUP_TYPE_ID IS NULL OR @p_SUP_TYPE_ID = '')  
179
AND (A.REGION_ID LIKE '%' + @p_REGION_ID + '%' OR @p_REGION_ID IS NULL OR @p_REGION_ID = '')  
180
AND (A.EMAIL LIKE '%' + @p_EMAIL + '%' OR @p_EMAIL IS NULL OR @p_EMAIL = '')  
181
AND (A.TAX_NO LIKE '%' + @p_TAX_NO + '%' OR @p_TAX_NO IS NULL OR @p_TAX_NO = '')  
182
AND (A.TEL LIKE '%' + @p_TEL + '%' OR @p_TEL IS NULL OR @p_TEL = '')  
183
AND (A.DISCIPLINES LIKE '%' + @p_DISCIPLINES + '%' OR @p_DISCIPLINES IS NULL OR @p_DISCIPLINES = '')  
184
AND (A.CONTACT_PERSON LIKE '%' + @p_CONTACT_PERSON + '%' OR @p_CONTACT_PERSON IS NULL OR @p_CREATE_DT = '')  
185
AND (A.NOTES LIKE '%' + @p_NOTES + '%' OR @p_NOTES IS NULL OR @p_NOTES = '')  
186
AND (A.RECORD_STATUS LIKE '%' + @p_RECORD_STATUS + '%' OR @p_RECORD_STATUS IS NULL OR @p_RECORD_STATUS = '')  
187
AND (A.MAKER_ID LIKE '%' + @p_MAKER_ID + '%' OR @p_MAKER_ID IS NULL OR @p_MAKER_ID = '')  
188
AND (DATEDIFF(DAY,A.CREATE_DT ,CONVERT(DATETIME, @p_CREATE_DT, 103)) =0 OR @p_CREATE_DT IS NULL OR @p_CREATE_DT = '')  
189
AND (A.AUTH_STATUS LIKE '%' + @p_AUTH_STATUS + '%' OR @p_AUTH_STATUS IS NULL OR @p_AUTH_STATUS = '')  
190
AND (A.CHECKER_ID LIKE '%' + @p_CHECKER_ID + '%' OR @p_CHECKER_ID IS NULL OR @p_CHECKER_ID = '')  
191
AND (DATEDIFF(DAY,A.APPROVE_DT ,CONVERT(DATETIME, @p_APPROVE_DT, 103)) = 0 OR @p_APPROVE_DT IS NULL OR @p_APPROVE_DT = '')  
192
AND A.RECORD_STATUS = '1'  
193
-- PAGING END
194
END -- PAGING  
195

    
196
--EXEC CM_SUPPLIER_Search '','','','','','','','','','','','','','','','',100