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
|