BEGIN TRAN DECLARE @PER_SERIL_NO PER_SERIL_NO; SET @PER_SERIL_NO= '' DELETE A FROM dbo.LOL_LEV_OT A WHERE EXISTS (SELECT 'X' FROM LOL_LEV X WHERE A.LE_APPLY_NO=X.LE_APPLY_NO AND dbo.ufnIsContains(X.PER_SERIL_NO,@PER_SERIL_NO,',','Y')='Y' ) UPDATE A SET OT_COMPEN_RHR = OT_COMPEN_HR , MOD_REASON = REPLACE(MOD_REASON,N'加班補休假撤回',N'') FROM dbo.LOL_OT A WHERE EFORM_STATUS_COD IN ('P','W') AND dbo.ufnIsContains(A.PER_SERIL_NO,@PER_SERIL_NO,',','Y')='Y' UPDATE A SET LEV_BORROW_HR = 0 FROM LOL_LEV A WHERE EFORM_STATUS_COD IN ('P','W') AND dbo.ufnIsContains(A.PER_SERIL_NO,@PER_SERIL_NO,',','Y')='Y' DECLARE @strOT_PER_SERIL_NO PER_SERIL_NO, @strOT_LE_APPLY_NO CHAR(20) DECLARE lev_cursor CURSOR FOR SELECT PER_SERIL_NO, LE_APPLY_NO FROM LOL_LEV WHERE LEV_TYPE_COD = '00014' AND EFORM_STATUS_COD IN ('W','P') AND dbo.ufnIsContains(PER_SERIL_NO,@PER_SERIL_NO,',','Y')='Y' ORDER BY PER_SERIL_NO , SDATE OPEN lev_cursor FETCH NEXT FROM lev_cursor INTO @strOT_PER_SERIL_NO, @strOT_LE_APPLY_NO WHILE @@FETCH_STATUS = 0 BEGIN EXEC spApplyLeaveOT '', @strOT_PER_SERIL_NO, @strOT_LE_APPLY_NO, NULL, NULL, 0, 'HIHI', 0 FETCH NEXT FROM lev_cursor INTO @strOT_PER_SERIL_NO, @strOT_LE_APPLY_NO END CLOSE lev_cursor DEALLOCATE lev_cursor --ROLLBACK --COMMIT
2010年12月6日
[GH] 重算補休資料(個人)
標籤:
T-SQL
訂閱:
張貼留言
(
Atom
)
沒有留言 :
張貼留言