Brak opisu
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

SQL_考勤系統.vb 9.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. Module SQL_考勤系統
  2. Friend Sub SQL_人員薪資資料()
  3. ConnOpen()
  4. SQL1 = "SELECT ras_Users.DIN AS [No.], ras_Users.DIN AS 編號, ras_Users.UserName AS 姓名, 使用者權限管理表.CC18 AS 時薪人員,
  5. 使用者權限管理表.月薪, 使用者權限管理表.時薪, 使用者權限管理表.主管加級, 使用者權限管理表.職務加級,
  6. 使用者權限管理表.勞保費, 使用者權限管理表.健保費, 使用者權限管理表.到職日
  7. FROM ras_Users INNER JOIN 使用者權限管理表 ON ras_Users.DIN = 使用者權限管理表.DIN
  8. WHERE IsLockedOut = 0 AND ras_Users.DIN NOT LIKE '18' AND ras_Users.DIN NOT LIKE '19' AND
  9. ras_Users.DIN NOT LIKE '21' AND ras_Users.DIN NOT LIKE '90'
  10. ORDER BY 編號"
  11. CmdSet_For_DGV()
  12. End Sub
  13. Friend Sub SQL_考勤明細表_人員()
  14. ConnOpen()
  15. SQL1 = "SELECT ras_Users.DIN AS [No.], ras_Users.DIN AS 編號, ras_Users.UserName AS 姓名, 使用者權限管理表.CC18,
  16. 使用者權限管理表.月薪, 使用者權限管理表.時薪, 使用者權限管理表.主管加級, 使用者權限管理表.職務加級,
  17. 使用者權限管理表.勞保費, 使用者權限管理表.健保費, 使用者權限管理表.到職日
  18. FROM ras_Users INNER JOIN
  19. (SELECT DIN FROM ras_AttRecord WHERE (MONTH(Clock) = " & PA2 & ") AND (YEAR(Clock) = " & PA1 & ") GROUP BY DIN) AS QQQ
  20. ON ras_Users.DIN = QQQ.DIN INNER JOIN 使用者權限管理表 ON ras_Users.DIN = 使用者權限管理表.DIN
  21. ORDER BY 編號"
  22. CmdSet_For_DGV()
  23. End Sub
  24. Friend Sub SQL_考勤明細表_月份考勤() '8、9、11、12、14、15
  25. ConnOpen()
  26. SQL1 = "SELECT 萬年曆.日期, 萬年曆.星期, AA.請假類別 AS 休假類別, AA.事由 AS 假期內容, AA.是否生效, AA.核准人, AA.核准日期,
  27. 萬年曆.星期 AS 班別判斷, 萬年曆.星期 AS 一段上班, 萬年曆.星期 AS 一段下班, 萬年曆.星期 AS 休息1,
  28. 萬年曆.星期 AS 二段上班, 萬年曆.星期 AS 二段下班, 萬年曆.星期 AS 休息2, 萬年曆.星期 AS 加班上班,
  29. 萬年曆.星期 AS 加班下班, 萬年曆.星期 AS 一段工時, 萬年曆.星期 AS 二段工時, 萬年曆.星期 AS 加班工時,
  30. 萬年曆.星期 AS 一段加班, 萬年曆.星期 AS 二段加班, QQ.半天, QQ.班別, 萬年曆.下診 AS 最後下診,
  31. BB.申請狀態, BB.加班狀態, AA.申請時數
  32. FROM 萬年曆 LEFT OUTER JOIN
  33. (SELECT 排班資料表.日期, 排班資料表.項次, 排班資料表.姓名, 排班資料表.班別, 排班資料表.上班時段,
  34. 排班資料表.時數, 排班資料表.半天, 排班資料表.休息, 排班資料表.一段, 排班資料表.二段,
  35. 排班資料表.排時, ras_Users.DIN
  36. FROM 排班資料表 INNER JOIN ras_Users ON 排班資料表.姓名 = ras_Users.UserName
  37. WHERE (排班資料表.日期 LIKE N'" & PA1 & "/" & PA2 & "%') AND (ras_Users.DIN = " & PA & ")) AS QQ ON 萬年曆.日期 = QQ.日期 LEFT OUTER JOIN
  38. (SELECT 員工編號, 日期, 請假類別, 事由, 是否生效, 核准人, 核准日期, 申請時數
  39. FROM 人事請假單
  40. WHERE (員工編號 LIKE N'" & PA & "') AND (日期 LIKE N'" & PA1 & "/" & PA2 & "%')) AS AA ON 萬年曆.日期 = AA.日期 LEFT OUTER JOIN
  41. (SELECT 員工編號, 日期, 加班狀態, 是否生效 AS 申請狀態
  42. FROM 加班申請單
  43. WHERE (員工編號 LIKE N'" & PA & "') AND (日期 LIKE N'" & PA1 & "/" & PA2 & "%')) AS BB ON 萬年曆.日期 = BB.日期
  44. WHERE (萬年曆.日期 LIKE N'" & PA1 & "/" & PA2 & "%')
  45. ORDER BY 萬年曆.日期"
  46. CmdSet_For_DGV()
  47. End Sub
  48. Friend Sub SQL_考勤明細表_考勤流水()
  49. ConnOpen()
  50. SQL1 = "SELECT ID AS [No.], ID, CONVERT(varchar(100), Clock, 120) AS 打卡時間
  51. FROM ras_AttRecord
  52. WHERE (DIN = " & PA & ") AND (MONTH(Clock) = N'" & PA2 & "') AND (YEAR(Clock) = N'" & PA1 & "')
  53. ORDER BY Clock"
  54. CmdSet_For_DGV()
  55. End Sub
  56. Friend Sub SQL_考勤明細表_班別()
  57. ConnOpen()
  58. SQL1 = "SELECT ID, 時段, 上午上班, 一段休息, 下午上班, 二段休息, 加班上班, 時段1, 時段2, 時段3, 時段4, 時段5, 時段6, 時段7, 時段8
  59. FROM 時段設定 WHERE ID > 0 ORDER BY ID"
  60. CmdSet_For_DGV()
  61. End Sub
  62. Friend Sub SQL_考勤明細表_打卡讀取_上午上班()
  63. ConnOpen()
  64. SQL1 = "SELECT CONVERT(varchar(100), Clock, 24) AS 打卡時間, CONVERT(varchar(10), Clock, 111) AS 日期
  65. FROM ras_AttRecord
  66. WHERE (DIN = " & PA & ") AND (MONTH(Clock) = N'" & PA2 & "') AND (YEAR(Clock) = N'" & PA1 & "') AND
  67. (CAST(Clock AS TIME) >= '05:00:00')
  68. ORDER BY Clock"
  69. CmdSet_For_DGV()
  70. 'SQL1 = "WHERE (DIN = " & PA & ") AND (DAY(Clock) = N'" & PA3 & "') AND (MONTH(Clock) = N'" & PA2 & "') AND (YEAR(Clock) = N'" & PA1 & "') AND
  71. ' (Clock >= N'" & PA1 & "/" & PA2 & "/" & PA3 & " 05:00:00')"
  72. End Sub
  73. Friend Sub SQL_考勤明細表_打卡讀取_中午下上班()
  74. ConnOpen()
  75. SQL1 = "SELECT CONVERT(varchar(100), Clock, 24) AS 打卡時間, CONVERT(varchar(10), Clock, 111) AS 日期
  76. FROM ras_AttRecord
  77. WHERE (DIN = " & PA & ") AND (MONTH(Clock) = N'" & PA2 & "') AND (YEAR(Clock) = N'" & PA1 & "') AND
  78. (CAST(Clock AS TIME) <= '23:59:59')
  79. ORDER BY Clock"
  80. CmdSet_For_DGV()
  81. 'SQL1 = "WHERE (DIN = " & PA & ") AND (DAY(Clock) = N'" & PA3 & "') AND (MONTH(Clock) = N'" & PA2 & "') AND (YEAR(Clock) = N'" & PA1 & "') AND
  82. ' (Clock < N'" & PA1 & "/" & PA2 & "/" & PA3 & " 23:59:59' AND Clock >= N'" & PA1 & "/" & PA2 & "/" & PA3 & " " & DTPS(0) & "')"
  83. End Sub
  84. Friend Sub SQL_考勤明細表_打卡讀取_晚上下上班()
  85. ConnOpen()
  86. SQL1 = "SELECT CONVERT(varchar(100), Clock, 24) AS 打卡時間, CONVERT(varchar(10), Clock, 111) AS 日期
  87. FROM ras_AttRecord
  88. WHERE (DIN = " & PA & ") AND (DAY(Clock) = N'" & PA3 & "') AND (MONTH(Clock) = N'" & PA2 & "') AND (YEAR(Clock) = N'" & PA1 & "') AND
  89. (Clock < N'" & PA1 & "/" & PA2 & "/" & PA3 & " " & DTPS(3) & "' AND Clock >= N'" & PA1 & "/" & PA2 & "/" & PA3 & " " & DTPS(2) & "')
  90. ORDER BY Clock"
  91. CmdSet_For_DGV()
  92. End Sub
  93. Friend Sub SQL_考勤明細表_打卡讀取_加班下班()
  94. ConnOpen()
  95. SQL1 = "SELECT CONVERT(varchar(100), Clock, 24) AS 打卡時間, CONVERT(varchar(10), Clock, 111) AS 日期
  96. FROM ras_AttRecord
  97. WHERE (DIN = " & PA & ") AND (Clock < N'" & PA4 & " 05:00:00' AND Clock >= N'" & PA1 & "/" & PA2 & "/" & PA3 & " " & DTPS(4) & "')
  98. ORDER BY Clock"
  99. CmdSet_For_DGV()
  100. End Sub
  101. Friend Sub SQL_考勤明細表_年份_下拉()
  102. ConnOpen() : SQL1 = "SELECT 年份 FROM 年份清單 ORDER BY 年份 DESC" : CmdSet_For_dr()
  103. End Sub
  104. Friend Sub SQL_考勤明細表_讀取編號()
  105. ConnOpen()
  106. SQL1 = "SELECT DIN FROM ras_Users WHERE (UserName LIKE N'" & gUserName & "')"
  107. CmdSet_For_dr()
  108. End Sub
  109. Friend Sub SQL_讀取日期()
  110. ConnOpen()
  111. SQL1 = "SELECT 日期, 星期 FROM 萬年曆 WHERE 日期 LIKE N'" & PA1 & "/" & PA2 & "%' ORDER BY 日期"
  112. CmdSet_For_DGV()
  113. End Sub
  114. Friend Sub SQL_時間新增()
  115. ConnOpen()
  116. SQL1 = "INSERT INTO ras_AttRecord (DN, DIN, Clock, VerifyMode, Action, AttTypeId, CollectDate, JobCode, Antipassback, LastUpdatedUID,
  117. LastUpdatedDate, Remark)
  118. VALUES ('1', N'" & PA4 & "', N'" & PA3 & "', N'0', N'1', N'H01', N'" & Today() & "', 0, 0, 0, " & Today() & ", N'')"
  119. CmdSet_For_dr()
  120. End Sub
  121. Friend Sub SQL_時間修改()
  122. ConnOpen()
  123. SQL1 = "UPDATE ras_AttRecord SET Clock = N'" & PA3 & "' WHERE ID = " & PA4 & ""
  124. CmdSet_For_dr()
  125. End Sub
  126. Friend Sub SQL_時間刪除()
  127. ConnOpen()
  128. SQL1 = "DELETE ras_AttRecord WHERE ID = " & PA4 & ""
  129. CmdSet_For_dr()
  130. End Sub
  131. Friend Sub SQL_資料庫選擇()
  132. ConnOpen() : SQL1 = "SELECT TOP (1) 圖片資料庫 FROM 圖片資料庫管理 WHERE (是否可用 = 0) ORDER BY 圖片資料庫" : CmdSet_For_dr()
  133. End Sub
  134. End Module