Project

General

Profile

ALTER_COLUMN.txt

Luc Tran Van, 04/14/2023 11:21 AM

 
1

    
2
ALTER TABLE [dbo].[CM_EMPLOYEE] ALTER COLUMN [EMP_CODE] [varchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
3
GO
4
IF @@ERROR <> 0 SET NOEXEC ON
5
GO
6
ALTER TABLE [dbo].[CM_EMPLOYEE] ALTER COLUMN [EMP_NAME] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
7
GO
8
IF @@ERROR <> 0 SET NOEXEC ON
9
GO
10
ALTER TABLE [dbo].[CM_EMPLOYEE] ALTER COLUMN [POS_CODE] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
11
GO
12
IF @@ERROR <> 0 SET NOEXEC ON
13
GO
14
ALTER TABLE [dbo].[CM_EMPLOYEE] ALTER COLUMN [POS_NAME] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
15
GO
16
IF @@ERROR <> 0 SET NOEXEC ON
17
GO
18
PRINT N'Altering [dbo].[CM_EMPLOYEE_LOG]'
19
GO
20
IF @@ERROR <> 0 SET NOEXEC ON
21
GO
22
ALTER TABLE [dbo].[CM_EMPLOYEE_LOG] ALTER COLUMN [POS_CODE] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
23
GO
24
IF @@ERROR <> 0 SET NOEXEC ON
25
GO
26
PRINT N'Altering [dbo].[ASS_ADDNEW_PO]'
27
GO
28
IF @@ERROR <> 0 SET NOEXEC ON
29
GO
30
ALTER TABLE [dbo].[ASS_ADDNEW_PO] ADD
31
[INVOICE_SYMPOL] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
32
GO
33
IF @@ERROR <> 0 SET NOEXEC ON
34
GO
35
PRINT N'Altering [dbo].[ASS_ADDNEW_GD]'
36
GO
37
IF @@ERROR <> 0 SET NOEXEC ON
38
GO
39
ALTER TABLE [dbo].[ASS_ADDNEW_GD] ADD
40
[INVOICE_SYMPOL] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
41
GO
42
IF @@ERROR <> 0 SET NOEXEC ON
43
GO
44
PRINT N'Altering [dbo].[ASS_PO]'
45
GO
46
IF @@ERROR <> 0 SET NOEXEC ON
47
GO
48
ALTER TABLE [dbo].[ASS_PO] ADD
49
[INVOICE_SYMPOL] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
50
GO
51
IF @@ERROR <> 0 SET NOEXEC ON
52
GO
53
PRINT N'Altering [dbo].[THREAD_TIME_SEND_LOG]'
54
GO
55
IF @@ERROR <> 0 SET NOEXEC ON
56
GO
57
ALTER TABLE [dbo].[THREAD_TIME_SEND_LOG] ALTER COLUMN [MESSAGE] [nvarchar] (max) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
58
GO
59
IF @@ERROR <> 0 SET NOEXEC ON
60
GO
61
PRINT N'Altering [dbo].[ASS_PENDING_ITEM]'
62
GO
63
ALTER VIEW [dbo].[ASS_PENDING_ITEM] 
64
AS SELECT A.ADDNEW_ID ID, A.AUTH_STATUS, AA.AUTH_STATUS_NAME, A.MAKER_ID, 'ASS_ADDNEW' TRAN_TYPE, N'Nhập mới TSCD/CCLD' TRAN_TYPE_NAME,
65
A.BRANCH_CREATE, A.TYPE_ID, A.BUY_PRICE AMT, A.ASSET_DESC DIENGIAI, A.CREATE_DT CREATE_DT,A.MAKER_ID_KT , A.AUTH_STATUS_KT,A.CREATE_DT_KT
66
FROM ASS_ADDNEW A
67
INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = A.AUTH_STATUS
68

    
69
UNION ALL
70

    
71
SELECT A.USE_ID ID, A.AUTH_STATUS, AA.AUTH_STATUS_NAME,  A.MAKER_ID, 'ASS_USE' TRAN_TYPE, N'Xuất sử dụng' TRAN_TYPE_NAME,
72
A.BRANCH_CREATE, CC.TYPE_ID, CC.BUY_PRICE AMT, A.NOTES DIENGIAI, A.CREATE_DT CREATE_DT, '' MAKER_ID_KT , '' AUTH_STATUS_KT,'' CREATE_DT_KT
73
--FROM ASS_USE A
74
FROM ASS_USE A
75
INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = A.AUTH_STATUS
76
INNER JOIN ASS_MASTER CC ON CC.ASSET_ID = A.ASSET_ID
77

    
78
UNION ALL
79

    
80

    
81
SELECT A.TRANSFER_ID ID, A.AUTH_STATUS, AA.AUTH_STATUS_NAME, A.MAKER_ID, 'ASS_TRANSFER' TRAN_TYPE, N'Giao dịch điều chuyển' TRAN_TYPE_NAME,
82
A.BRANCH_CREATE, CC.TYPE_ID, CC.BUY_PRICE AMT, A.[DESCRIPTION] DIENGIAI, A.CREATE_DT CREATE_DT,'' MAKER_ID_KT , '' AUTH_STATUS_KT,'' CREATE_DT_KT
83
FROM ASS_TRANSFER A
84
INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = A.AUTH_STATUS
85
INNER JOIN ASS_MASTER CC ON CC.ASSET_ID = A.ASSET_ID
86

    
87
--UNION ALL
88

    
89
--SELECT  A.ASSET_ID ID, A.AUTH_STATUS, AA.AUTH_STATUS_NAME, A.MAKER_ID, 'ASS_MASTER' TRAN_TYPE, N'Bảng TSCD/CCLD' TRAN_TYPE_NAME,
90
--'' BRANCH_CREATE, A.TYPE_ID
91
--FROM ASS_MASTER A 
92
--INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = A.AUTH_STATUS
93

    
94
UNION ALL
95

    
96
SELECT A.COLLECT_ID ID, A.AUTH_STATUS, AA.AUTH_STATUS_NAME, A.MAKER_ID, 'ASS_COLLECT' TRAN_TYPE, N'Giao dịch thu hồi' TRAN_TYPE_NAME,
97
A.BRANCH_CREATE, CC.TYPE_ID, CC.BUY_PRICE AMT, A.COLLECT_NOTE DIENGIAI, A.CREATE_DT CREATE_DT,'' MAKER_ID_KT , '' AUTH_STATUS_KT,'' CREATE_DT_KT
98
FROM ASS_COLLECT A
99
INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = A.AUTH_STATUS
100
INNER JOIN ASS_MASTER CC ON CC.ASSET_ID = A.ASSET_ID
101

    
102
UNION ALL
103

    
104
SELECT A.GROUP_ID ID, A.AUTH_STATUS, AA.AUTH_STATUS_NAME, A.MAKER_ID, 'ASS_GROUP' TRAN_TYPE, N'Nhóm tài sản' TRAN_TYPE_NAME,
105
'' BRANCH_CREATE, A.TYPE_ID, 0 AMT, A.NOTES DIENGIAI, A.CREATE_DT CREATE_DT,'' MAKER_ID_KT , '' AUTH_STATUS_KT,'' CREATE_DT_KT
106
FROM ASS_GROUP A
107
INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = A.AUTH_STATUS
108

    
109

    
110
UNION ALL
111

    
112
SELECT A.AMORT_ID ID, CASE WHEN A.PROCESS_STATUS='P' THEN 'U' ELSE 'A' END  AUTH_STATUS, CASE WHEN A.PROCESS_STATUS='P' THEN N'Chưa thực thi' ELSE N'Đã thực thi' END AUTH_STATUS_NAME, 
113
		A.MAKER_ID, 'ASS_AMORT' TRAN_TYPE, A.NOTES TRAN_TYPE_NAME,--N'Khấu hao' 
114
		A.BRANCH_ID BRANCH_CREATE, A.ASSET_TYPE AS [TYPE_ID],
115
		A.TOTAL_AMT AMT, A.NOTES DIENGIAI, A.CREATE_DT CREATE_DT,'' MAKER_ID_KT , '' AUTH_STATUS_KT,'' CREATE_DT_KT
116
FROM ASS_AMORT A
117

    
118

    
119
UNION ALL
120

    
121
SELECT  A.ASSET_ID ID, A.AUTH_STATUS, AA.AUTH_STATUS_NAME, A.MAKER_ID, 'ASS_UPDATE' TRAN_TYPE, N'Cập nhật thông tin tài sản' TRAN_TYPE_NAME,
122
A.BRANCH_ID BRANCH_CREATE, CC.TYPE_ID, CC.BUY_PRICE AMT, A.NOTES DIENGIAI, A.CREATE_DT CREATE_DT,A.MAKER_ID MAKER_ID_KT ,
123
 A.AUTH_STATUS AUTH_STATUS_KT,A.CREATE_DT CREATE_DT_KT
124
FROM ASS_UPDATE A 
125
INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = A.AUTH_STATUS
126
INNER JOIN ASS_MASTER CC ON CC.ASSET_ID = A.ASSET_ID
127

    
128
-----thieuvq 5102016 - them dieu kien kiem tra danh sach dieu chuyen nhieu tai san chua duyet
129
UNION ALL
130

    
131
SELECT  A.ASSET_ID ID, BB.AUTH_STATUS, AA.AUTH_STATUS_NAME, BB.MAKER_ID, 'ASS_TRANSFER_MULTI_MASTER' TRAN_TYPE, N'Điều chuyển nhiều tài sản.' TRAN_TYPE_NAME,
132
A.BRANCH_ID BRANCH_CREATE, CC.TYPE_ID, CC.BUY_PRICE AMT, BB.NOTES DIENGIAI, BB.CREATE_DT CREATE_DT,BB.MAKER_ID_KT , BB.AUTH_STATUS_KT,BB.CREATE_DT_KT
133
FROM ASS_TRANSFER_MULTI_DT A 
134
INNER JOIN ASS_TRANSFER_MULTI_MASTER BB ON A.TRANS_MULTI_MASTER_ID = BB.TRANS_MULTI_MASTER_ID
135
INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = BB.AUTH_STATUS
136
INNER JOIN ASS_MASTER CC ON CC.ASSET_ID = A.ASSET_ID
137

    
138
UNION ALL
139

    
140
-----thieuvq 5102016 - them dieu kien kiem tra danh sach xuat nhieu tai san chua duyet
141
SELECT  A.ASSET_ID ID, BB.AUTH_STATUS, AA.AUTH_STATUS_NAME, BB.MAKER_ID, 'ASS_USE_MULTI_MASTER' TRAN_TYPE, N'Xuất nhiều tài sản.' TRAN_TYPE_NAME,
142
A.BRANCH_ID BRANCH_CREATE, CC.TYPE_ID, CC.BUY_PRICE AMT, BB.NOTES DIENGIAI, BB.CREATE_DT CREATE_DT,BB.MAKER_ID_KT , BB.AUTH_STATUS_KT,BB.CREATE_DT_KT
143
FROM ASS_USE_MULTI_DT A 
144
INNER JOIN ASS_USE_MULTI_MASTER BB ON A.USER_MASTER_ID = BB.USER_MASTER_ID
145
INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = BB.AUTH_STATUS
146
INNER JOIN ASS_MASTER CC ON CC.ASSET_ID = A.ASSET_ID
147

    
148
UNION ALL
149

    
150
-----thieuvq 5102016 - them dieu kien kiem tra danh sach xuat nhieu tai san chua duyet
151
SELECT  A.ASSET_ID ID, BB.AUTH_STATUS, AA.AUTH_STATUS_NAME, BB.MAKER_ID, 'ASS_COLLECT_MULTI_MASTER' TRAN_TYPE, N'Thu hồi nhiều tài sản.' TRAN_TYPE_NAME,
152
A.BRANCH_ID BRANCH_CREATE, CC.TYPE_ID, CC.BUY_PRICE AMT, BB.NOTES DIENGIAI, BB.CREATE_DT CREATE_DT,BB.MAKER_ID_KT , BB.AUTH_STATUS_KT,BB.CREATE_DT_KT
153
FROM ASS_COLLECT_MULTI_DT A 
154
INNER JOIN ASS_COLLECT_MULTI_MASTER BB ON A.COL_MULTI_MASTER_ID = BB.COL_MULTI_MASTER_ID
155
INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = BB.AUTH_STATUS
156
INNER JOIN ASS_MASTER CC ON CC.ASSET_ID = A.ASSET_ID
157

    
158

    
159
UNION ALL
160

    
161
-----luctv 07012018 - them dieu kien kiem tra danh sach thanh ly nhieu tai san chua duyet
162
SELECT  A.ASSET_ID ID, BB.AUTH_STATUS, AA.AUTH_STATUS_NAME, BB.MAKER_ID, 'ASS_LIQ_MULTI_MASTER' TRAN_TYPE, N'Thanh lý nhiều tài sản.' TRAN_TYPE_NAME,
163
BB.BRANCH_ID BRANCH_CREATE, CC.TYPE_ID, CC.BUY_PRICE AMT, BB.NOTES DIENGIAI, BB.CREATE_DT CREATE_DT,BB.MAKER_ID_KT , BB.AUTH_STATUS_KT,BB.CREATE_DT_KT
164
FROM ASS_LIQUIDATION_DT A 
165
INNER JOIN ASS_LIQUIDATION BB ON A.LIQ_ID = BB.LIQ_ID
166
INNER JOIN CM_AUTH_STATUS AA ON AA.AUTH_STATUS = BB.AUTH_STATUS
167
INNER JOIN ASS_MASTER CC ON CC.ASSET_ID = A.ASSET_ID
168
GO
169
IF @@ERROR <> 0 SET NOEXEC ON
170
GO
171
PRINT N'Altering [dbo].[CM_BRANCH_DEP_MAP]'
172
GO
173
IF @@ERROR <> 0 SET NOEXEC ON
174
GO
175
ALTER TABLE [dbo].[CM_BRANCH_DEP_MAP] ALTER COLUMN [HR_ID] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
176
GO
177
IF @@ERROR <> 0 SET NOEXEC ON
178
GO
179
PRINT N'Creating primary key [PK__CM_BRANC__272A3F7EB20C7BE2] on [dbo].[CM_BRANCH_DEP_MAP]'
180
GO
181
ALTER TABLE [dbo].[CM_BRANCH_DEP_MAP] ADD CONSTRAINT [PK__CM_BRANC__272A3F7EB20C7BE2] PRIMARY KEY CLUSTERED  ([HR_ID])
182
GO
183
IF @@ERROR <> 0 SET NOEXEC ON
184
GO
185
PRINT N'Altering [dbo].[CM_EMPLOYEE_SYNC]'
186
GO
187
IF @@ERROR <> 0 SET NOEXEC ON
188
GO
189
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [MaNS] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
190
GO
191
IF @@ERROR <> 0 SET NOEXEC ON
192
GO
193
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [HoTen] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
194
GO
195
IF @@ERROR <> 0 SET NOEXEC ON
196
GO
197
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [MaDVCu] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
198
GO
199
IF @@ERROR <> 0 SET NOEXEC ON
200
GO
201
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [DVCu] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
202
GO
203
IF @@ERROR <> 0 SET NOEXEC ON
204
GO
205
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [MaDVMoi] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
206
GO
207
IF @@ERROR <> 0 SET NOEXEC ON
208
GO
209
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [DVMoi] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
210
GO
211
IF @@ERROR <> 0 SET NOEXEC ON
212
GO
213
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [MaCDCu] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
214
GO
215
IF @@ERROR <> 0 SET NOEXEC ON
216
GO
217
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [CDCu] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
218
GO
219
IF @@ERROR <> 0 SET NOEXEC ON
220
GO
221
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [MaCDMoi] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
222
GO
223
IF @@ERROR <> 0 SET NOEXEC ON
224
GO
225
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [CDMoi] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
226
GO
227
IF @@ERROR <> 0 SET NOEXEC ON
228
GO
229
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [LoaiHDLD] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
230
GO
231
IF @@ERROR <> 0 SET NOEXEC ON
232
GO
233
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [Email] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
234
GO
235
IF @@ERROR <> 0 SET NOEXEC ON
236
GO
237
ALTER TABLE [dbo].[CM_EMPLOYEE_SYNC] ALTER COLUMN [So] [nvarchar] (500) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
238
GO
239
IF @@ERROR <> 0 SET NOEXEC ON
240
GO
241
PRINT N'Altering [dbo].[vASS_ADDNEW]'
242
GO
243
ALTER VIEW [dbo].[vASS_ADDNEW] 
244
AS SELECT        A.ADDNEW_ID, A.BUY_DATE, A.TYPE_ID, C.TYPE_NAME, A.GROUP_ID, D.GROUP_CODE, D.GROUP_NAME, A.ASSET_NAME, A.ASSET_SERIAL_NO, A.ASSET_DESC, A.BRANCH_ID, A.AMORT_START_DATE, A.DEPT_ID, 
245
                         H.DEP_CODE, H.DEP_NAME, A.EMP_ID, G.EMP_CODE, G.EMP_NAME, A.DIVISION_ID, A.BUY_PRICE, A.AMORT_AMT, A.AMORT_MONTH, A.AMORT_RATE, A.IS_MULTIPLE, A.QTY, A.PO_ID, PO.PO_CODE, A.PD_ID, 
246
                         A.REF_ASSET_ID, I.ASSET_CODE AS REF_CODE, I.ASSET_NAME AS REF_NAME, A.REF_AMORTIZED_AMT, A.WARRANTY_MONTHS, A.NOTES, A.CORE_NOTE, A.RECORD_STATUS, A.AUTH_STATUS, B.AUTH_STATUS_NAME, 
247
                         A.MAKER_ID, A.POSTED_STATUS, A.BRANCH_CREATE, UM.TLFullName AS MAKER_NAME, A.CREATE_DT, A.CHECKER_ID, A.APPROVE_DT, A.ENTRY_BOOKED, A.CONSTRUCT_ID, A.AMORT_END_DATE, E.BRANCH_CODE, 
248
                         E.BRANCH_NAME, F.DIV_CODE, F.DIV_NAME, F.ADDR AS DIV_ADDR, E.BRANCH_TYPE, A.ACCOUNT_GL, A.VAT, A.PRICE_VAT, A.APPROVE_DT_KT, A.CONTRACT_ID, A.SUP_ID, S.SUP_NAME, S.ADDR AS SUP_ADDR, S.TEL AS SUP_PHONE, S.TAX_NO AS SUP_MST, A.ASS_STATUS, A.PL_CODE, A.WAR_EXPIRE_DT, A.REQ_CODE, A.PR_CODE, A.UNIT
249
                         ,A.WIN_CRACK AS WIN, A.OFFICE_CRACK AS OFFICE, A.FORWARD_CONTENT
250
                         ,AG1.GROUP_ID AS PARENT_GROUP_ID, AG1.GROUP_CODE AS PARENT_GROUP_CODE
251
FROM            dbo.ASS_ADDNEW AS A LEFT OUTER JOIN
252
                         dbo.CM_AUTH_STATUS AS B ON A.AUTH_STATUS = B.AUTH_STATUS LEFT OUTER JOIN
253
                         dbo.ASS_TYPE AS C ON A.TYPE_ID = C.TYPE_ID LEFT OUTER JOIN
254
                         dbo.ASS_GROUP AS D ON A.GROUP_ID = D.GROUP_ID LEFT OUTER JOIN
255
                         dbo.TL_USER AS UM ON UM.TLNANME = A.CHECKER_ID LEFT OUTER JOIN
256
                         dbo.TR_PO_MASTER AS PO ON PO.PO_ID = A.PO_ID LEFT OUTER JOIN
257
                         dbo.CM_BRANCH AS E ON E.BRANCH_ID = A.BRANCH_ID LEFT OUTER JOIN
258
                         dbo.CM_DIVISION AS F ON F.DIV_ID = A.DIVISION_ID LEFT OUTER JOIN
259
                         dbo.CM_EMPLOYEE AS G ON G.EMP_ID = A.EMP_ID LEFT OUTER JOIN
260
                         dbo.CM_DEPARTMENT AS H ON H.DEP_ID = A.DEPT_ID LEFT OUTER JOIN
261
                         dbo.ASS_MASTER AS I ON I.ASSET_ID = A.REF_ASSET_ID LEFT OUTER JOIN
262
                         dbo.CM_SUPPLIER AS S ON A.SUP_ID = S.SUP_ID LEFT OUTER JOIN 
263
                         dbo.ASS_GROUP AS AG1 ON D.PARENT_ID = AG1.GROUP_ID
264
GO
265
IF @@ERROR <> 0 SET NOEXEC ON
266
GO
267
PRINT N'Altering trigger [dbo].[TRIG_CM_EMPLOYEE_SYNC_Ins] on [dbo].[CM_EMPLOYEE_SYNC]'
268
GO
269
ALTER TRIGGER [dbo].[TRIG_CM_EMPLOYEE_SYNC_Ins]
270
	ON [dbo].[CM_EMPLOYEE_SYNC]
271
	AFTER INSERT
272
AS 
273
BEGIN
274
  --STORE ĐỒNG BỘ NHÂN VIÊN VÀ ĐIỀU CHUYỂN TÀI SẢN NHÂN SỰ
275
  --29/09/22
276
	SET NOCOUNT ON;
277
          IF (EXISTS(SELECT TOP 1 MaNS FROM INSERTED)) 
278
          BEGIN  
279
          
280
              DECLARE @MaDV_Cu_SYNC VARCHAR(500) = (SELECT TOP 1 MaDVCu FROM INSERTED)
281
              DECLARE @MaDV_Moi_SYNC VARCHAR(500) = (SELECT TOP 1 MaDVMoi FROM INSERTED) 
282

    
283
              --UPDATE MÃ MỚI DO KT UPDATE
284
              IF(@MaDV_Cu_SYNC = '0100')
285
              BEGIN
286
                  SET @MaDV_Cu_SYNC = '0600'
287
              END
288

    
289
              IF(@MaDV_Cu_SYNC = '0101')
290
              BEGIN
291
                  SET @MaDV_Cu_SYNC = '0601'
292
              END
293

    
294
              IF(@MaDV_Moi_SYNC = '0100')
295
              BEGIN
296
                  SET @MaDV_Moi_SYNC = '0600'
297
              END
298

    
299
              IF(@MaDV_Moi_SYNC = '0101')
300
              BEGIN
301
                  SET @MaDV_Moi_SYNC = '0601'
302
              END
303
                
304
              --MAP DATA HR VỚI KT
305
              IF(EXISTS(SELECT 1 FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Cu_SYNC))
306
              BEGIN
307
                  SET @MaDV_Cu_SYNC = (SELECT TOP 1 KT_ID FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Cu_SYNC)
308
              END
309
              IF(EXISTS(SELECT 1 FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Moi_SYNC))
310
              BEGIN
311
                  SET @MaDV_Moi_SYNC = (SELECT TOP 1 KT_ID FROM CM_BRANCH_DEP_MAP WHERE HR_ID = @MaDV_Moi_SYNC)
312
              END
313
              DECLARE @MACD_CU_SYNC VARCHAR(500) = (SELECT TOP 1 MaCDCu FROM INSERTED)
314
              DECLARE @MACD_MOI_SYNC VARCHAR(500) = (SELECT TOP 1 MaCDMoi FROM INSERTED)
315
    
316
            --START: PARAM INSERT NHÂN VIÊN MỚI
317
              DECLARE @l_EMP_ID VARCHAR(500)
318
              DECLARE @p_EMP_CODE	varchar(500)  = (SELECT TOP 1 MaNS FROM INSERTED)
319
              DECLARE @p_EMP_NAME	nvarchar(500)  = (SELECT TOP 1 HoTen FROM INSERTED)
320
      
321
              DECLARE @p_BRANCH_ID	varchar(15) = NULL 
322
              DECLARE @p_DEP_ID	varchar(15) = NULL             
323
              
324
              DECLARE @p_POS_CODE VARCHAR(50) = NULL
325
              DECLARE @p_POS_NAME NVARCHAR(MAX) = NULL             
326
      
327
              DECLARE @p_NOTES	nvarchar(1000)  = N'ĐỒNG BỘ'
328
              DECLARE @p_RECORD_STATUS	varchar(1)  = '1'
329
              DECLARE @p_AUTH_STATUS	varchar(1)  = 'A'
330
              DECLARE @p_MAKER_ID	varchar(15)  = 'ADMIN'
331
              DECLARE @p_CREATE_DT	VARCHAR(50) = GETDATE()
332
              DECLARE @p_CHECKER_ID	varchar(15)  = 'ADMIN'
333
              DECLARE @p_APPROVE_DT	VARCHAR(50) = GETDATE()
334
            --END: PARAM INSERT NHÂN VIÊN MỚI
335
    
336
            --START: PARAM INSERT CM_EMPLOYEE_TRANSFER_LOG
337
              DECLARE @I_EMP_ID VARCHAR(20) = (SELECT TOP 1 ce.EMP_ID FROM CM_EMPLOYEE ce WHERE ce.EMP_CODE = (SELECT MaNS FROM INSERTED))
338
              DECLARE @I_STATUS VARCHAR(5) 
339
    
340
              DECLARE @C_Ma_DV_Cu VARCHAR(500) = NULL  --MÃ ĐV CŨ ĐỂ CHECK IF
341
              DECLARE @C_Ma_DV_Moi VARCHAR(500) = NULL --MÃ DV MỚI ĐỂ CHECK IF
342
              DECLARE @C_Ma_PB_Cu VARCHAR(500) = NULL  --MÃ PB CŨ ĐỂ CHECK IF
343
              DECLARE @C_Ma_PB_Moi VARCHAR(500) = NULL --MÃ PB MỚI ĐỂ CHECK IF
344
            --END: PARAM INSERT CM_EMPLOYEE_TRANSFER_LOG
345

    
346
              DECLARE @TLNAME VARCHAR(200) = NULL
347
    
348
            --START: PARAM INSERT 
349
    
350
            --CHECK XEM ĐƠN VỊ/PHÒNG BAN CỦA NHÂN VIÊN MỚI CỬA KH LƯU TRONG CỘT MaDVCu HAY CỘT MaDVMoi
351
            IF (EXISTS(SELECT TOP 1 MaDVCu FROM INSERTED WHERE MaDVCu IS NOT NULL AND MaDVCu <> ''))
352
            BEGIN 
353
                --CHECK XEM MÃ LÀ ĐƠN VỊ HAY PHÒNG BAN
354
                IF(EXISTS(SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Cu_SYNC))
355
                BEGIN
356
                    SET @p_BRANCH_ID = 'DV0001'
357
                    SET @C_Ma_DV_Cu = 'DV0001'
358
                    SET @p_DEP_ID = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Cu_SYNC)
359
                    SET @C_Ma_PB_Cu = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Cu_SYNC)
360
                END
361
                ELSE
362
                BEGIN
363
                    SET @p_BRANCH_ID = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Cu_SYNC)
364
                    SET @C_Ma_DV_Cu = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Cu_SYNC)
365
                END         
366
            END
367
            --ELSE
368
    
369
            IF(EXISTS(SELECT TOP 1 MaDVMoi FROM INSERTED WHERE MaDVMoi IS NOT NULL AND MaDVMoi <> ''))
370
            BEGIN
371
                --CHECK XEM MÃ LÀ ĐƠN VỊ HAY PHÒNG BAN
372
                IF(EXISTS(SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = (SELECT MaDVMoi FROM INSERTED)))
373
                BEGIN
374
                    SET @p_BRANCH_ID = 'DV0001'
375
                    SET @C_Ma_DV_Moi = 'DV0001'
376
                    SET @p_DEP_ID = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Moi_SYNC)
377
                    SET @C_Ma_PB_Moi = (SELECT TOP 1 cd.DEP_ID FROM CM_DEPARTMENT cd WHERE cd.DEP_CODE = @MaDV_Moi_SYNC)
378
                END
379
                ELSE
380
                BEGIN
381
                    SET @p_BRANCH_ID = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Moi_SYNC)
382
                    SET @C_Ma_DV_Moi = (SELECT TOP 1 cb.BRANCH_ID FROM CM_BRANCH cb WHERE cb.BRANCH_CODE = @MaDV_Moi_SYNC)
383
                END
384
            END              
385
                               
386
            PRINT @C_Ma_DV_Cu
387
            PRINT @C_Ma_DV_Moi
388
        		IF((@C_Ma_DV_Cu IS NULL OR @C_Ma_DV_Cu = '') AND (@C_Ma_DV_Moi IS NULL OR @C_Ma_DV_Moi = ''))
389
        		BEGIN
390
          			--N'Mã DV cũ và Mã DV mới không có giá trị'
391
                PRINT 1
392
        		END
393
            ELSE
394
            BEGIN
395
            
396
              IF((SELECT COUNT(*) FROM CM_EMPLOYEE_LOG CEL WHERE CEL.EMP_CODE = @p_EMP_CODE) > 1)
397
              BEGIN
398
                    SET @TLNAME = (SELECT TOP 1 CEL.USER_DOMAIN FROM CM_EMPLOYEE_LOG CEL WHERE CEL.EMP_CODE = @p_EMP_CODE 
399
                              AND CEL.BRANCH_CODE = @MaDV_Cu_SYNC
400
                              AND (CEL.DEP_CODE = @C_Ma_PB_Cu OR @C_Ma_PB_Cu IS NULL))
401
              END
402
              ELSE
403
              BEGIN
404
                  SET @TLNAME = (SELECT TOP 1 CEL.USER_DOMAIN FROM CM_EMPLOYEE_LOG CEL WHERE CEL.EMP_CODE = @p_EMP_CODE)
405
              END
406

    
407
            --CHECK DATA CHỨC DANH LƯU CỘT CDMOI HAY CDCU
408
            IF(EXISTS(SELECT 1 FROM INSERTED WHERE MaCDMoi IS NOT NULL AND MaCDMoi <> ''))
409
            BEGIN
410
                  --NẾU CHỨC DANH CHƯA CÓ TRONG HỆ THỐNG THÌ THÊM MỚI CHỨC DANH
411
                  IF(NOT EXISTS(SELECT 1 FROM CM_MAPPING_CHUCDANH_ROLE WHERE MA_CHUC_DANH = @MACD_MOI_SYNC))
412
                  BEGIN
413
                       INSERT INTO CM_MAPPING_CHUCDANH_ROLE (MA_CHUC_DANH, TEN_CHUC_DANH, NHOM_CHUC_DANH, ROLE_ID)
414
                       VALUES (@MACD_MOI_SYNC, (SELECT TOP 1 CDMoi FROM INSERTED), NULL, NULL);
415
                  END
416
    
417
                  SET @p_POS_CODE = @MACD_MOI_SYNC
418
                  SET @p_POS_NAME = (SELECT TOP 1 CDMoi FROM INSERTED)
419
            END
420
            ELSE IF(EXISTS(SELECT 1 FROM INSERTED WHERE MaCDCu IS NOT NULL AND MaCDCu <> ''))
421
            BEGIN
422
                  --NẾU CHỨC DANH CHƯA CÓ TRONG HỆ THỐNG THÌ THÊM MỚI CHỨC DANH
423
                  IF(NOT EXISTS(SELECT 1 FROM CM_MAPPING_CHUCDANH_ROLE WHERE MA_CHUC_DANH = @MACD_CU_SYNC))
424
                  BEGIN
425
                       INSERT INTO CM_MAPPING_CHUCDANH_ROLE (MA_CHUC_DANH, TEN_CHUC_DANH, NHOM_CHUC_DANH, ROLE_ID)
426
                       VALUES (@MACD_CU_SYNC, (SELECT TOP 1 CDCu FROM INSERTED), NULL, NULL);
427
                  END
428
    
429
                  SET @p_POS_CODE = @MACD_CU_SYNC
430
                  SET @p_POS_NAME = (SELECT TOP 1 CDCu FROM INSERTED)
431
            END
432
    
433
    
434
             --CHECK NHÂN VIÊN XEM CÓ XEM TRONG HỆ THỐNG KHÔNG
435
             IF(EXISTS(SELECT TOP 1 ce.EMP_ID FROM CM_EMPLOYEE ce WHERE ce.EMP_CODE = (SELECT MaNS FROM INSERTED)))
436
             BEGIN
437
                
438
                IF(EXISTS(
439
                        SELECT atmd.ASSET_ID FROM ASS_TRANSFER_MULTI_DT atmd
440
                        WHERE (atmd.EMP_ID = @I_EMP_ID AND atmd.EMP_ID_OLD = @I_EMP_ID AND (atmd.BRANCH_ID = @C_Ma_DV_Moi AND atmd.BRANCH_ID_OLD = @C_Ma_DV_Cu) 
441
      																				 AND atmd.AUTH_STATUS_KT <> 'A') --ĐIỀU CHUYỂN TS TỪ ĐV NÀY SANG ĐV KHÁC CHO CHÙNG NV
442
                              OR (atmd.EMP_ID_OLD = @I_EMP_ID AND atmd.BRANCH_ID_OLD = @C_Ma_DV_Cu AND atmd.EMP_ID <> @I_EMP_ID AND atmd.AUTH_STATUS_KT <> 'A') --ĐIỀU CHUYỂN TS TỪ ĐV NÀY SANG ĐV KHÁC NHƯNG KHÁC NV
443
                        UNION ALL
444
                        SELECT am.ASSET_ID FROM ASS_MASTER am WHERE am.BRANCH_ID = @C_Ma_DV_Cu AND am.EMP_ID = @I_EMP_ID))
445
                  SET @I_STATUS = '0'
446
                ELSE
447
                  SET @I_STATUS = '1'
448
      
449
                INSERT INTO CM_EMPLOYEE_TRANSFER_LOG (EMP_ID, TRANSFER_DT, BRANCH_ID_OLD, BRANCH_ID_NEW, STATUS)
450
                VALUES (@I_EMP_ID, CONVERT(DATETIME,(SELECT TOP 1 TGTao FROM INSERTED),103), @C_Ma_DV_Cu, @C_Ma_DV_Moi, @I_STATUS);  
451
      
452
                --CHECK TRƯỜNG HỢP 1 NHÂN VIÊN CÓ QUYỀN 2 CHI NHÁNH TRỞ TRÊN (KHÁC TLNAME)
453

    
454
                --PHUCVH 22/12/22 CHECK NẾU MADV,PB MỚI THAY ĐỔI THÌ UPDATE LẠI MADV,PB CHO NHANVIEN
455
                IF(EXISTS(SELECT 1 FROM CM_EMPLOYEE A WHERE A.EMP_CODE = @p_EMP_CODE 
456
                              AND (ISNULL(A.BRANCH_ID,'') <> ISNULL(@p_BRANCH_ID,'')
457
                                  OR ISNULL(A.DEP_ID,'') <> ISNULL(@p_DEP_ID,''))))
458
                BEGIN
459
                      UPDATE CM_EMPLOYEE SET BRANCH_ID = @p_BRANCH_ID, DEP_ID = @p_DEP_ID 
460
                      WHERE EMP_CODE = @p_EMP_CODE
461
    
462
                      --CHECK UPDATE TL_USER VÀ CM_EMPLOYEE_LOG
463
                      IF(EXISTS(SELECT 1 FROM CM_EMPLOYEE_LOG WHERE EMP_CODE = @p_EMP_CODE))
464
                      BEGIN
465
                          UPDATE CM_EMPLOYEE_LOG SET BRANCH_CODE = (SELECT TOP 1 BRANCH_CODE FROM CM_BRANCH WHERE BRANCH_ID = @p_BRANCH_ID),
466
                                                     DEP_CODE = (SELECT TOP 1 DEP_CODE FROM CM_DEPARTMENT WHERE DEP_ID = @p_DEP_ID)
467
                          WHERE EMP_CODE = @p_EMP_CODE AND USER_DOMAIN = @TLNAME
468
    
469
                          UPDATE TL_USER SET TLSUBBRID = @p_BRANCH_ID, SECUR_CODE = @p_DEP_ID, DEP_ID = @p_DEP_ID
470
                          WHERE TLNANME = @TLNAME
471
                      END
472
    
473
                END  
474
                
475
                --PHUCVH 22/12/22 CHECK NẾU MA CHUC DANH THAY ĐỔI THÌ UPDATE
476
                IF(EXISTS(SELECT 1 FROM CM_EMPLOYEE A WHERE A.EMP_CODE = @p_EMP_CODE
477
                                AND ISNULL(A.POS_CODE,'') <> ISNULL(@p_POS_CODE,'')))
478
                BEGIN
479
                     UPDATE CM_EMPLOYEE SET POS_CODE = @p_POS_CODE, POS_NAME = @p_POS_NAME
480
                     WHERE EMP_CODE = @p_EMP_CODE 
481
    
482
                     UPDATE CM_EMPLOYEE_LOG SET POS_CODE = @p_POS_CODE, POS_NAME = @p_POS_NAME
483
                     WHERE EMP_CODE = @p_EMP_CODE AND USER_DOMAIN = @TLNAME
484
                END                     
485
    
486
                --IF @@Error <> 0 GOTO ABORT
487
          		  --SET @Message = N'Đồng bộ điều chuyển nhân sự thành công'
488
             END
489
             ELSE
490
             BEGIN
491
                --KHÔNG CÓ TRONG HỆ THỐNG
492
                --THÊM THÔNG TIN NHÂN VIÊN
493
                		EXEC SYS_CodeMasters_Gen 'CM_EMPLOYEE', @l_EMP_ID out		       
494
                		INSERT INTO CM_EMPLOYEE([EMP_ID],[EMP_CODE],[EMP_NAME],[BRANCH_ID],[DEP_ID],[NOTES],[RECORD_STATUS],[AUTH_STATUS],[MAKER_ID],[CREATE_DT],[CHECKER_ID],[APPROVE_DT],[POS_CODE],[POS_NAME])
495
                		VALUES(@l_EMP_ID ,@p_EMP_CODE ,@p_EMP_NAME ,@p_BRANCH_ID ,@p_DEP_ID ,@p_NOTES ,@p_RECORD_STATUS ,@p_AUTH_STATUS ,@p_MAKER_ID ,CONVERT(DATETIME, @p_CREATE_DT, 103) ,@p_CHECKER_ID ,CONVERT(DATETIME, @p_APPROVE_DT, 103), @p_POS_CODE, @p_POS_NAME )
496
                    --IF @@Error <> 0 GOTO ABORT
497
            				--SET @Message = N'Đồng bộ nhân viên mới thành công'
498
             END
499
            END
500
    
501
            
502
          END
503
END