123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- Module SQL_長照拆帳制計算
- Friend Sub SQL_薪資彙總表_仁寶()
- ConnOpen()
- SQL1 = "SELECT 人事拆帳制薪資報表明細_仁寶.姓名, Q1.BA比例, Q1.BA比例 AS BA正常, Q1.BA比例 AS GA正常, Q2.BA, Q3.GA, Q3.GA AS GA加給, Q4.其他,
- Q1.BA比例 AS 主薪, Q1.BA比例 AS AA比例,
- Q1.BA比例 AS AA, Q1.BA比例 AS 副薪, Q1.BA比例 AS 總薪, M3.平日轉場 + M3.[平0-8] AS 平日工時,
- Q1.BA比例 AS [平日平均時薪/含平日加班], Q1.BA比例 AS 平日加班扣除額, Q1.BA比例 AS [平日月薪/不含加班], Q1.BA比例 AS 正常班平均時薪,
- Q1.BA比例 AS 服務津貼, Q1.BA比例 AS 轉場津貼, Q1.BA比例 AS [修正後月薪+A+津貼], Q1.BA比例 AS 加班費計算時薪標準, Q1.BA比例 AS 加班費,
- Q1.BA比例 AS 總薪資, Q4.A01 " & Ao(0) & ", Q4.A02 " & Ao(1) & ", Q4.A03 " & Ao(2) & ", Q4.A04 " & Ao(3) & ", Q4.A05 " & Ao(4) & ", Q4.A06 " & Ao(5) & ",
- Q4.A07 " & Ao(6) & ", Q4.A08 " & Ao(7) & ", Q4.A09 " & Ao(8) & ", Q4.A10 " & Ao(9) & ", Q4.A11 " & Ao(10) & ", Q4.A12 " & Ao(11) & ", Q4.A12 AS 減項總計,
- Q4.B01 " & Bo(0) & ", Q4.B02 " & Bo(1) & ", Q4.B03 " & Bo(2) & ", Q4.B04 " & Bo(3) & ", Q4.B05 " & Bo(4) & ", Q4.B06 " & Bo(5) & ", Q4.B07 " & Bo(6) & ",
- Q4.B08 " & Bo(7) & ", Q4.B09 " & Bo(8) & ", Q4.B10 " & Bo(9) & ", Q4.B11 " & Bo(10) & ", Q4.B12 " & Bo(11) & ", Q4.A12 AS 加項總計, Q4.C01 " & Co(0) & ",
- Q1.BA比例 AS 總時數, Q1.BA比例 AS 平均時薪, Q1.BA比例 AS [BA+AA總額], Q1.BA比例 AS [餘額], Q1.BA比例 AS [餘額比],
-
- A1.AA03, A2.AA04, A3.AA05, A4.AA06, A5.AA08, A6.AA10, A7.AA11,
- M1.GAM1, M2.GAM2,
- M3.平日轉場, M3.假日轉場, M3.[平0-8], M3.[平9-10], M3.[平11-12], M3.[國0-2], M3.[國3-8], M3.[休0-2], M3.[休3-8], M3.平日轉場 AS 總服務時數,
- M3.平日轉場 AS 總轉場時數
-
- FROM 人事拆帳制薪資報表明細_仁寶 LEFT OUTER JOIN
- (SELECT 姓名, 姓名 AS BA比例 FROM 人事拆帳制明細_仁寶
- WHERE (姓名 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%')
- GROUP BY 姓名, 姓名) AS Q1 ON 人事拆帳制薪資報表明細_仁寶.姓名 = Q1.姓名 LEFT OUTER JOIN
- (SELECT 姓名, SUM(CONVERT(DECIMAL(18, 2), 全額)) AS BA FROM 人事拆帳制明細_仁寶 AS 人事拆帳制明細_仁寶_1
- WHERE (姓名 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (加班類型 LIKE N'正常班') AND (編號 LIKE 'BA%')
- GROUP BY 姓名) AS Q2 ON 人事拆帳制薪資報表明細_仁寶.姓名 = Q2.姓名 LEFT OUTER JOIN
- (SELECT 姓名, SUM(CONVERT(DECIMAL(18, 2), 全額)) AS GA FROM 人事拆帳制明細_仁寶 AS 人事拆帳制明細_仁寶_2
- WHERE (姓名 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (加班類型 LIKE N'正常班') AND (編號 LIKE 'GA%')
- GROUP BY 姓名) AS Q3 ON 人事拆帳制薪資報表明細_仁寶.姓名 = Q3.姓名 LEFT OUTER JOIN
- (SELECT 姓名, SUM(CONVERT(DECIMAL(18, 2), 次數)) AS GAM1 FROM 人事拆帳制明細_仁寶 AS 人事拆帳制明細_仁寶_3
- WHERE (姓名 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (加班類型 LIKE N'正常班') AND (編號 LIKE 'GA%')
- GROUP BY 姓名) AS M1 ON 人事拆帳制薪資報表明細_仁寶.姓名 = M1.姓名 LEFT OUTER JOIN
- (SELECT 姓名, SUM(CONVERT(DECIMAL(18, 2), 次數)) AS GAM2 FROM 人事拆帳制明細_仁寶 AS 人事拆帳制明細_仁寶_4
- WHERE (姓名 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (編號 LIKE 'GA%')
- GROUP BY 姓名) AS M2 ON 人事拆帳制薪資報表明細_仁寶.姓名 = M2.姓名 LEFT OUTER JOIN
- (SELECT 服務人員 AS 姓名, SUM(CONVERT(DECIMAL(18, 2), 小計)) AS AA03 FROM " & SQL2 & "
- WHERE (服務人員 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (服務代碼 LIKE 'AA03%')
- GROUP BY 服務人員) AS A1 ON 人事拆帳制薪資報表明細_仁寶.姓名 = A1.姓名 LEFT OUTER JOIN
- (SELECT 服務人員 AS 姓名, SUM(CONVERT(DECIMAL(18, 2), 小計)) AS AA04 FROM " & SQL2 & " AS " & SQL2 & "_6
- WHERE (服務人員 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (服務代碼 LIKE 'AA04%')
- GROUP BY 服務人員) AS A2 ON 人事拆帳制薪資報表明細_仁寶.姓名 = A2.姓名 LEFT OUTER JOIN
- (SELECT 服務人員 AS 姓名, SUM(CONVERT(DECIMAL(18, 2), 小計)) AS AA05 FROM " & SQL2 & " AS " & SQL2 & "_5
- WHERE (服務人員 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (服務代碼 LIKE 'AA05%')
- GROUP BY 服務人員) AS A3 ON 人事拆帳制薪資報表明細_仁寶.姓名 = A3.姓名 LEFT OUTER JOIN
- (SELECT 服務人員 AS 姓名, SUM(CONVERT(DECIMAL(18, 2), 小計)) AS AA06 FROM " & SQL2 & " AS " & SQL2 & "_4
- WHERE (服務人員 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (服務代碼 LIKE 'AA06%')
- GROUP BY 服務人員) AS A4 ON 人事拆帳制薪資報表明細_仁寶.姓名 = A4.姓名 LEFT OUTER JOIN
- (SELECT 服務人員 AS 姓名, SUM(CONVERT(DECIMAL(18, 2), 小計)) AS AA08 FROM " & SQL2 & " AS " & SQL2 & "_3
- WHERE (服務人員 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (服務代碼 LIKE 'AA08%')
- GROUP BY 服務人員) AS A5 ON 人事拆帳制薪資報表明細_仁寶.姓名 = A5.姓名 LEFT OUTER JOIN
- (SELECT 服務人員 AS 姓名, SUM(CONVERT(DECIMAL(18, 2), 小計)) AS AA10 FROM " & SQL2 & " AS " & SQL2 & "_2
- WHERE (服務人員 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (服務代碼 LIKE 'AA10%')
- GROUP BY 服務人員) AS A6 ON 人事拆帳制薪資報表明細_仁寶.姓名 = A6.姓名 LEFT OUTER JOIN
- (SELECT 服務人員 AS 姓名, SUM(CONVERT(DECIMAL(18, 2), 小計)) AS AA11 FROM " & SQL2 & " AS " & SQL2 & "_1
- WHERE (服務人員 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (服務代碼 LIKE 'AA11%')
- GROUP BY 服務人員) AS A7 ON 人事拆帳制薪資報表明細_仁寶.姓名 = A7.姓名 LEFT OUTER JOIN
- (SELECT TOP (100) PERCENT 姓名, CONVERT(DECIMAL(18, 2), 平日排班轉場時間_分) / 60 AS 平日轉場,
- CONVERT(DECIMAL(18, 2), 假日排班轉場時間_分) / 60 AS 假日轉場, CONVERT(DECIMAL(18, 2), 平日班時數_分) / 60 AS [平0-8],
- CONVERT(DECIMAL(18, 2), B平日9_10小時) / 60 + CONVERT(DECIMAL(18, 2), GS平日9_10小時) / 60 AS [平9-10],
- CONVERT(DECIMAL(18, 2), B平日11_12小時) / 60 + CONVERT(DECIMAL(18, 2), GS平日11_12小時) / 60 AS [平11-12],
- CONVERT(DECIMAL(18, 2), B國假0_2小時) / 60 + CONVERT(DECIMAL(18, 2), GS國假0_2小時) / 60 AS [國0-2],
- CONVERT(DECIMAL(18, 2), B國假3_8小時) / 60 + CONVERT(DECIMAL(18, 2), GS國假3_8小時) / 60 AS [國3-8],
- CONVERT(DECIMAL(18, 2), B休假0_2小時) / 60 + CONVERT(DECIMAL(18, 2), GS休假0_2小時) / 60 AS [休0-2],
- CONVERT(DECIMAL(18, 2), B休假3_8小時) / 60 + CONVERT(DECIMAL(18, 2), GS休假3_8小時) / 60 AS [休3-8]
- FROM 人事拆帳制薪資報表明細_仁寶 AS 人事拆帳制薪資報表明細_仁寶_1
- WHERE (姓名 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%')
- ORDER BY 姓名) AS M3 ON 人事拆帳制薪資報表明細_仁寶.姓名 = M3.姓名 LEFT OUTER JOIN
- (SELECT 姓名, A01, A02, A03, A04, A05, A06, A07, A08, A09, A10, A11, A12, B01, B02, B03, B04, B05, B06, B07, B08, B09, B10,
- B11, B12, C01, 其他
- FROM 人事拆帳制其他應收付表
- WHERE (流水號 LIKE '" & PA1 & "')) AS Q4 ON 人事拆帳制薪資報表明細_仁寶.姓名 = Q4.姓名
-
- WHERE (人事拆帳制薪資報表明細_仁寶.姓名 NOT LIKE '') AND (人事拆帳制薪資報表明細_仁寶.流水號 LIKE '" & PA1 & "%')
- ORDER BY 人事拆帳制薪資報表明細_仁寶.姓名"
- CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_加班計算_仁寶()
- ConnOpen()
- SQL1 = "SELECT 人事拆帳制每日明細_仁寶.日期, DATENAME(WEEKDAY, CONVERT(DATE, 人事拆帳制每日明細_仁寶.日期)) AS 星期, 人事拆帳制每日明細_仁寶.姓名,
- 人事拆帳制每日明細_仁寶.服務個案, 人事拆帳制每日明細_仁寶.排班轉場時間_分, 人事拆帳制每日明細_仁寶.服務時間_分, 人事拆帳制每日明細_仁寶.日期 AS [上班時間累加/分],
- 人事拆帳制每日明細_仁寶.日期 AS 開始加班, 人事拆帳制每日明細_仁寶.日期 AS 第一段, 人事拆帳制每日明細_仁寶.日期 AS 第二段, 人事拆帳制每日明細_仁寶.日期 AS A10,
- 人事拆帳制每日明細_仁寶.日期 AS A11, 人事拆帳制每日明細_仁寶.日期 AS A12, 人事拆帳制每日明細_仁寶.日期 AS A20, 人事拆帳制每日明細_仁寶.日期 AS A21,
- 人事拆帳制每日明細_仁寶.日期 AS A22, 人事拆帳制每日明細_仁寶.日期 AS A30, 人事拆帳制每日明細_仁寶.日期 AS A31, 人事拆帳制每日明細_仁寶.日期 AS A32,
- 人事拆帳制每日明細_仁寶.日期 AS A40, 人事拆帳制每日明細_仁寶.日期 AS A41, 人事拆帳制每日明細_仁寶.日期 AS A42, 人事拆帳制每日明細_仁寶.日期 AS A50,
- 人事拆帳制每日明細_仁寶.日期 AS A51, 人事拆帳制每日明細_仁寶.日期 AS A52, 人事拆帳制每日明細_仁寶.日期 AS A60, 人事拆帳制每日明細_仁寶.日期 AS A61,
- 人事拆帳制每日明細_仁寶.日期 AS A62, 人事拆帳制每日明細_仁寶.日期 AS 驗1, 人事拆帳制每日明細_仁寶.日期 AS 驗2, 人事拆帳制每日明細_仁寶.日期 AS 驗3,
- 人事拆帳制每日明細_仁寶.日期 AS 驗4, 人事拆帳制每日明細_仁寶.日期 AS 驗5, 人事拆帳制每日明細_仁寶.日期 AS 驗6, Q1.BA比例,
- 人事拆帳制每日明細_仁寶.日期 AS 退1, 人事拆帳制每日明細_仁寶.日期 AS 退2, 人事拆帳制每日明細_仁寶.日期 AS 退3, 人事拆帳制每日明細_仁寶.日期 AS 退4,
- 人事拆帳制每日明細_仁寶.日期 AS 退5, 人事拆帳制每日明細_仁寶.日期 AS 退6, 人事拆帳制每日明細_仁寶.日期 AS 合退
- FROM 人事拆帳制每日明細_仁寶 LEFT OUTER JOIN
- (SELECT 姓名, 員工拆帳比 AS BA比例 FROM 人事拆帳制明細_仁寶
- WHERE (姓名 NOT LIKE '') AND (流水號 LIKE '" & PA1 & "%') AND (員工拆帳比 NOT LIKE '')
- GROUP BY 姓名, 員工拆帳比) AS Q1 ON 人事拆帳制每日明細_仁寶.姓名 = Q1.姓名
- WHERE (人事拆帳制每日明細_仁寶.流水號 LIKE '" & PA1 & "%') AND (人事拆帳制每日明細_仁寶.姓名 IS NOT NULL)
- ORDER BY 人事拆帳制每日明細_仁寶.姓名, 人事拆帳制每日明細_仁寶.日期, CONVERT(DECIMAL(18, 2),
- 人事拆帳制每日明細_仁寶.序)"
- CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_服務資料_仁寶()
- ConnOpen()
- SQL1 = "SELECT 服務日期, 排班時間, 居服員姓名, 姓名, 排班時間長度, LEFT(服務項目代碼, 5) AS 代碼, 姓名 AS 已使用
- FROM 人事拆帳制服務紀錄_仁寶
- WHERE (流水號 LIKE '" & PA1 & "%') AND (服務項目代碼 NOT LIKE '')
- ORDER BY 居服員姓名, 服務日期, 排班時間 DESC"
- CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_碼別()
- ConnOpen() : SQL1 = "SELECT 碼別, 每小時_錢 FROM 人事拆帳制碼別" : CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_碼別_新增()
- ConnOpen() : SQL1 = "INSERT INTO 人事拆帳制碼別 (碼別, 每小時_錢) VALUES (N'" & PA20 & "', N'" & PA21 & "')" : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_碼別_修改()
- ConnOpen() : SQL1 = "UPDATE 人事拆帳制碼別 SET 每小時_錢 = N'" & PA21 & "' WHERE 碼別 LIKE N'" & PA20 & "'" : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_碼別_查詢()
- ConnOpen() : SQL1 = "SELECT 碼別, 每小時_錢 FROM 人事拆帳制碼別 WHERE 碼別 LIKE N'" & PA20 & "'" : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_表頭()
- ConnOpen() : SQL1 = "SELECT 對應, 欄位名稱 FROM 人事拆帳制其他表抬頭 ORDER BY 對應" : CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_放差額()
- ConnOpen()
- SQL1 = "SELECT 流水號, 姓名, 流水號 AS 差額 FROM 人事拆帳制薪資報表明細_仁寶 WHERE (流水號 LIKE '" & PA1 & "%') AND (姓名 NOT LIKE '') GROUP BY 姓名, 流水號 ORDER BY 姓名"
- CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_讀差額()
- ConnOpen() : SQL1 = "SELECT 流水號, 姓名, 差額 FROM 人事拆帳制A碼差額 WHERE (流水號 LIKE '" & PA10 & "%') ORDER BY 姓名" : CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_查差額()
- ConnOpen() : SQL1 = "SELECT TOP(1) 流水號, 姓名, 差額 FROM 人事拆帳制A碼差額 WHERE (流水號 LIKE '" & PA10 & "%')" : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_差額刪除()
- ConnOpen() : SQL1 = "DELETE 人事拆帳制A碼差額 WHERE (流水號 LIKE '" & PA1 & "%')" : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_差額新增()
- ConnOpen() : SQL1 = "INSERT INTO 人事拆帳制A碼差額 (流水號, 姓名, 差額) VALUES " & SQL2 : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_確認A碼長照()
- ConnOpen() : SQL1 = "SELECT TOP (1) 流水號 FROM 人事拆帳制A碼項目長照所 WHERE (流水號 LIKE '" & PA1 & "%')" : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_表頭_修改()
- ConnOpen() : SQL1 = "UPDATE 人事拆帳制其他表抬頭 SET 欄位名稱 = N'" & PA3 & "' WHERE 對應 LIKE N'" & PA2 & "'" : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_BA比()
- ConnOpen() : SQL1 = "SELECT 流水號, 姓名, BA FROM 人事拆帳制BA比 WHERE 流水號 LIKE ''" : CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_BA比_當月()
- ConnOpen() : SQL1 = "SELECT 流水號, 姓名, BA FROM 人事拆帳制BA比 WHERE 流水號 LIKE '" & PA1 & "%'" : CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_BA比_新增()
- ConnOpen() : SQL1 = "INSERT INTO 人事拆帳制BA比 (流水號, 姓名, BA) VALUES" & SQL2 : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_BA比_修改()
- ConnOpen() : SQL1 = "UPDATE 人事拆帳制BA比 SET BA = N'" & PA3 & "' WHERE 流水號 LIKE N'" & PA1 & "' AND 姓名 LIKE N'" & PA2 & "'" : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_階級加給()
- ConnOpen()
- SQL1 = "SELECT 流水號, 內容, 級數, 加給, 級數 AS 級數1 FROM 人事拆帳制階級津貼設定 WHERE 流水號 LIKE N'" & PA1 & "%' ORDER BY 內容, 級數 DESC"
- CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_階級加給_預設()
- ConnOpen() : SQL1 = "SELECT 流水號, 內容, 級數, 加給 FROM 人事拆帳制階級津貼設定 WHERE 流水號 LIKE N''" : CmdSet_For_DGV()
- End Sub
- Friend Sub SQL_階級加給_新增()
- ConnOpen() : SQL1 = "INSERT INTO 人事拆帳制階級津貼設定 (流水號, 內容, 級數, 加給) VALUES " & SQL2 : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_階級加給_修改()
- ConnOpen()
- SQL1 = "UPDATE 人事拆帳制階級津貼設定 SET 級數 = N'" & PA10 & "', 加給 = N'" & PA20 & "'
- WHERE 流水號 LIKE N'" & PA1 & "' AND 內容 LIKE N'" & PA30 & "' AND 級數 = N'" & PA11 & "'"
- CmdSet_For_dr()
- End Sub
- Friend Sub SQL_資料日期01()
- ConnOpen() : SQL1 = "SELECT 流水號 FROM 人事拆帳制薪資報表明細_仁寶 GROUP BY 流水號 ORDER BY 流水號 DESC" : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_其他表查詢()
- ConnOpen() : SQL1 = "SELECT 流水號 FROM 人事拆帳制其他應收付表 WHERE (流水號 LIKE N'" & PA1 & "%')" : CmdSet_For_dr()
- End Sub
- Friend Sub SQL_其他表_新增()
- ConnOpen()
- SQL1 = "INSERT INTO 人事拆帳制其他應收付表 (流水號, 姓名, A01, A02, A03, A04, A05, A06, A07, A08, A09, A10, A11, A12, B01, B02, B03, B04, B05, B06,
- B07, B08, B09, B10, B11, B12, C01, 其他) VALUES " & SQL2
- CmdSet_For_dr()
- End Sub
- Friend Sub SQL_其他表_修改()
- ConnOpen() : SQL1 = "UPDATE 人事拆帳制其他應收付表 SET " & SQL2 : CmdSet_For_dr()
- End Sub
- End Module
|