クエリを使用して、第 3 シフトの従業員向けのレポートを取得しています。
レポートが 0 件の結果とともにメールで送信されたときに気付いた問題は、現在、レポートを午後 6 時から翌朝の午前 5 時 59 分まで実行するように設定していることです。日付フィールド = the があるためGETDATE
、前夜 (1800-2359) の結果は表示されません。これを-12時間程度から引っ張るだけだと思っていましたが、いつでもボタンを押して結果を見ることができます.
そのため、シフトが終了する前にプッシュすると、最初のシフトのエントリの一部が表示されます。ボタンが真夜中前または真夜中後に押されたかどうかに関係なく、翌朝 1800-0559 からのみ実行するようにします。これが理にかなっていることを願っています。2359 に達した後、その間が 00 になることを認識するかどうかさえわかりません。私はこれを VB.net アプリケーションに組み込んでおり、いつでも結果を取得したいときにボタンを押すことができます。これは、問題が発生したときに従業員がリアルタイムでデータを入力する必要があるため、経営陣が何が行われているかを追跡するためのものです。
助けてくれてありがとう。私が十分に理解できたことを願っています!:D
SELECT
Assignment, Datemodified, General,
IncNumber, NextSteps, PDCRStatus,
RootCause, Status, Summary,
Timings, UserID
FROM
Turnover
WHERE DATEPART(HOUR, datemodified) between 18 and 05
AND CONVERT(NVARCHAR(50),datemodified,103) = CONVERT(NVARCHAR(50),GETDATE(),103);