Hallo,
ich bin gerade dabei eine kleine Zeiterfassung auf einem MS SQL Server 2k8 R2 zu Realisieren
Derzeit werden die Arbeitszeiten schon von Hand in der DB erfasst.
Hier als erstes das Aktuelle Tabellen Layout
Nun soll das ganze durch Stempelkarten erweitert werden.
Mein Problem das ich nun habe sieht folgender maßen aus
Ein Mitarbeiter MA1 ist an Folgenden Tagen und Zeiten in dieser Tabelle
Geplant
23.11.2010 15:00 - 17:30 an Standort 1
24.11.2010 14:30 - 17:00 an Standort 2
24.11.2010 18:00 - 22:00 an Standort 3
25.11.2010 08:00 - 12:00 an Standort 2
25.11.2010 13:00 - 14:00 an Standort 2
25.11.2010 20:00 - 23:30 an Standort 2
Jetzt kommt der MA1 am 25.11.2010 um 13:07 Uhr zur Arbeit und Stempelt sich ein. Wie kann ich per SQL die Entsprechende Position nicht diese
25.11.2010 13:00 - 14:00 an Standort 2
Ermitteln ?
ich bin gerade dabei eine kleine Zeiterfassung auf einem MS SQL Server 2k8 R2 zu Realisieren
Derzeit werden die Arbeitszeiten schon von Hand in der DB erfasst.
Hier als erstes das Aktuelle Tabellen Layout
Code:
USE [BeEvent] GO /****** Object: Table [dbo].[assignment_of_personnel] Script Date: 04/29/2011 15:15:48 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO SET ANSI_PADDING ON GO CREATE TABLE [dbo].[assignment_of_personnel]( [aop_guid] [uniqueidentifier] NOT NULL, [OperationID] [varchar](25) NOT NULL, [default_guid] [uniqueidentifier] NOT NULL, [bp_guid] [uniqueidentifier] NULL, [work_begin] [datetime] NOT NULL, [work_end] [datetime] NOT NULL, [hours] [decimal](4, 2) NOT NULL, [hourly_rate] [decimal](6, 2) NOT NULL, [cost] [decimal](6, 2) NOT NULL, [informed_yn] [decimal](1, 0) NULL, [controlling_yn] [decimal](1, 0) NULL, [controlling_date] [datetime] NULL, [invoice_in_yn] [decimal](1, 0) NULL, [invoice_in_date] [datetime] NULL, [invoice_transfer_yn] [decimal](1, 0) NULL, [invioce_transfer_date] [datetime] NULL, [deducation] [decimal](18, 2) NULL, [zs_yn] [decimal](1, 0) NULL, [rf_yn] [decimal](1, 0) NULL, [ne_yn] [decimal](1, 0) NULL, [pz_yn] [decimal](1, 0) NULL, [fg_yn] [decimal](1, 0) NULL, [Card_Login] [datetime] NULL, [Card_Logout] [datetime] NULL, [Manual_Login] [datetime] NULL, [Manual_Logout] [datetime] NULL, [Calc_Login] [datetime] NULL, [Calc_Logout] [datetime] NULL, [Calc_hours] [decimal](4, 2) NULL, [Calc_cost] [decimal](6, 2) NULL, [Controlling_Position_yn] [decimal](1, 0) NULL, [Position_remark] [varchar](500) NULL, CONSTRAINT [PK_assignment_of_personnel] PRIMARY KEY CLUSTERED ( [aop_guid] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 10) ON [PRIMARY] ) ON [PRIMARY] GO SET ANSI_PADDING OFF GO ALTER TABLE [dbo].[assignment_of_personnel] ADD CONSTRAINT [DF_assignment_of_personnel_informed_yn] DEFAULT ((0)) FOR [informed_yn] GO
Mein Problem das ich nun habe sieht folgender maßen aus
Ein Mitarbeiter MA1 ist an Folgenden Tagen und Zeiten in dieser Tabelle
Geplant
23.11.2010 15:00 - 17:30 an Standort 1
24.11.2010 14:30 - 17:00 an Standort 2
24.11.2010 18:00 - 22:00 an Standort 3
25.11.2010 08:00 - 12:00 an Standort 2
25.11.2010 13:00 - 14:00 an Standort 2
25.11.2010 20:00 - 23:30 an Standort 2
Jetzt kommt der MA1 am 25.11.2010 um 13:07 Uhr zur Arbeit und Stempelt sich ein. Wie kann ich per SQL die Entsprechende Position nicht diese
25.11.2010 13:00 - 14:00 an Standort 2
Ermitteln ?
Comment