Project

General

Profile

Update_emp_insert_emp.txt

Luc Tran Van, 04/26/2023 08:34 AM

 
1
UPDATE B SET B.BRANCH_ID = C.BRANCH_ID, B.DEP_ID = D.DEP_ID,B.POS_CODE = A.POS_CODE, B.POS_NAME = A.POS_NAME
2
FROM CM_EMPLOYEE_LOG A
3
INNER JOIN CM_EMPLOYEE B ON A.EMP_CODE = B.EMP_CODE
4
LEFT JOIN CM_BRANCH C ON A.BRANCH_CODE = C.BRANCH_CODE
5
LEFT JOIN CM_DEPARTMENT D ON A.DEP_CODE = D.DEP_CODE
6

    
7
DECLARE @EMP_CODE VARCHAR(100), @EMP_NAME NVARCHAR(1000), @BRANCH_ID VARCHAR(15), @DEP_ID VARCHAR(15), @POS_NAME NVARCHAR(500), @POS_CODE NVARCHAR(500)
8

    
9
DECLARE cur CURSOR FAST_FORWARD READ_ONLY LOCAL FOR
10
SELECT A.EMP_CODE,A.EMP_NAME,C.BRANCH_ID,D.DEP_ID,A.POS_NAME,A.POS_CODE 
11
FROM CM_EMPLOYEE_LOG A
12
LEFT JOIN CM_EMPLOYEE B ON A.EMP_CODE = B.EMP_CODE
13
LEFT JOIN CM_BRANCH C ON A.BRANCH_CODE = C.BRANCH_CODE
14
LEFT JOIN CM_DEPARTMENT D ON A.DEP_CODE = D.DEP_CODE
15
WHERE B.EMP_ID IS NULL AND A.EMP_CODE <> '0000-0000'
16

    
17

    
18
OPEN cur
19

    
20
FETCH NEXT FROM cur INTO @EMP_CODE ,@EMP_NAME ,@BRANCH_ID , @DEP_ID ,@POS_NAME,@POS_CODE
21

    
22
WHILE @@FETCH_STATUS = 0 BEGIN
23

    
24
	DECLARE @l_EMP_ID VARCHAR(15)
25
	EXEC SYS_CodeMasters_Gen 'CM_EMPLOYEE', @l_EMP_ID OUT		
26

    
27
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])
28
VALUES(@l_EMP_ID ,@EMP_CODE ,@EMP_NAME ,@BRANCH_ID ,@DEP_ID ,N'EMP_GEN_26/04/2023' ,'1' ,'A' ,'admin' ,GETDATE() ,'admin' ,GETDATE() )
29

    
30

    
31
	FETCH NEXT FROM cur INTO @EMP_CODE ,@EMP_NAME ,@BRANCH_ID , @DEP_ID ,@POS_NAME,@POS_CODE
32

    
33
END
34

    
35
CLOSE cur
36
DEALLOCATE cur