Beispiel #1
0
        /// <summary>
        /// Update a Timesheet but make a copy of all the changes to the entries in the MoveMiscTime table
        /// This method will NOT update the Timeentry table
        /// Uses the MMT Dataset to update the MMT table
        /// </summary>
        /// <param name="ds">The Typed Data set for the timesheet</param>
        public void UpdateTimeSheet_CopyTimeEntryToMMT(TimeSheetDS ds)
        {
            string        sql;
            SqlConnection conn       = new SqlConnection(this.DBConnectionString);
            TimeSheetDS   entry_copy = (TimeSheetDS)ds.Copy();

            sql = "insert into TimeSheet (PEID, EmpID, StatusID, Notes) values (@PEID, @EmpID, @StatusID, @Notes)";
            SqlCommand insertCommand = new SqlCommand(sql, conn);

            insertCommand.Parameters.Add("@PEID", System.Data.SqlDbType.Int, 4, "PEID");
            insertCommand.Parameters.Add("@EmpID", System.Data.SqlDbType.Int, 4, "EmpID");
            insertCommand.Parameters.Add("@StatusID", System.Data.SqlDbType.Int, 4, "StatusID");
            insertCommand.Parameters.Add("@Notes", System.Data.SqlDbType.VarChar, 500, "Notes");
            insertCommand.UpdatedRowSource = UpdateRowSource.FirstReturnedRecord;

            sql = "update TimeSheet set PEID = @PEID, EmpID = @EmpID, StatusID = @StatusID, Notes = @Notes where TID = @TID";
            SqlCommand updateCommand = new SqlCommand(sql, conn);

            updateCommand.Parameters.Add("@TID", System.Data.SqlDbType.Int, 4, "TID");
            updateCommand.Parameters.Add("@PEID", System.Data.SqlDbType.Int, 4, "PEID");
            updateCommand.Parameters.Add("@EmpID", System.Data.SqlDbType.Int, 4, "EmpID");
            updateCommand.Parameters.Add("@StatusID", System.Data.SqlDbType.Int, 4, "StatusID");
            updateCommand.Parameters.Add("@Notes", System.Data.SqlDbType.VarChar, 500, "Notes");

            sql = "delete from TimeSheet Where TID = @TID";
            SqlCommand deleteCommand = new SqlCommand(sql, conn);

            deleteCommand.Parameters.Add("@TID", System.Data.SqlDbType.Int, 4, "TID");

            // update the timesheet table
            SqlHelper.UpdateDataset(insertCommand, deleteCommand, updateCommand, ds, "TimeSheet");

            // update the MMT table if there were changes
            if (entry_copy.TimeEntry.GetChanges() != null)
            {
                // build the move misc time dataset
                MMTDS mmtds = new MMTDS();
                // assign the changes to a local var for easier access
                TimeSheetDS.TimeEntryDataTable tedt = (TimeSheetDS.TimeEntryDataTable)entry_copy.TimeEntry.GetChanges();
                for (int i = 0; i < tedt.Count; i++)
                {
                    mmtds.MMT.AddMMTRow(tedt[i].EntryID, tedt[i].ProjectID, tedt[i].WorkTypeID);
                }

                sql           = "insert into MMT (EntryID,WorkTypeID,ProjectID) values (@EntryID,@WorkTypeID,@ProjectID)";
                insertCommand = new SqlCommand(sql, conn);
                insertCommand.Parameters.Add("@EntryID", System.Data.SqlDbType.Int, 4, "EntryID");
                insertCommand.Parameters.Add("@WorktypeID", System.Data.SqlDbType.Int, 4, "WorktypeID");
                insertCommand.Parameters.Add("@ProjectID", System.Data.SqlDbType.Int, 4, "ProjectID");
                insertCommand.UpdatedRowSource = UpdateRowSource.FirstReturnedRecord;

                sql           = "update MMT set EntryID = @EntryID,WorktypeID = @WorktypeID,ProjectID=@ProjectID where MMTID = @MMTID";
                updateCommand = new SqlCommand(sql, conn);
                updateCommand.Parameters.Add("@MMTID", System.Data.SqlDbType.Int, 4, "MMTID");
                updateCommand.Parameters.Add("@EntryID", System.Data.SqlDbType.Int, 4, "EntryID");
                updateCommand.Parameters.Add("@WorktypeID", System.Data.SqlDbType.Int, 4, "WorktypeID");
                updateCommand.Parameters.Add("@ProjectID", System.Data.SqlDbType.Int, 4, "ProjectID");

                sql           = "delete from MMT where MMTID = @MMTID";
                deleteCommand = new SqlCommand(sql, conn);
                deleteCommand.Parameters.Add("@MMTID", System.Data.SqlDbType.Int, 4, "MMTID");

                // update the TimeEntry Table
                SqlHelper.UpdateDataset(insertCommand, deleteCommand, updateCommand, mmtds, "MMT");
            }
        }
Beispiel #2
0
        /// <summary>
        /// Update a Timesheet
        /// This method will update the Timeentry table as well
        /// </summary>
        /// <param name="ds">The Typed Data set for the timesheet</param>
        public void Update(TimeSheetDS ds)
        {
            string        sql;
            SqlConnection conn       = new SqlConnection(this.DBConnectionString);
            TimeSheetDS   entry_copy = (TimeSheetDS)ds.Copy();

            sql = "insert into TimeSheet (PEID, EmpID, StatusID, Notes) values (@PEID, @EmpID, @StatusID, @Notes)";
            SqlCommand insertCommand = new SqlCommand(sql, conn);

            insertCommand.Parameters.Add("@PEID", System.Data.SqlDbType.Int, 4, "PEID");
            insertCommand.Parameters.Add("@EmpID", System.Data.SqlDbType.Int, 4, "EmpID");
            insertCommand.Parameters.Add("@StatusID", System.Data.SqlDbType.Int, 4, "StatusID");
            insertCommand.Parameters.Add("@Notes", System.Data.SqlDbType.VarChar, 500, "Notes");
            insertCommand.UpdatedRowSource = UpdateRowSource.FirstReturnedRecord;

            sql = "update TimeSheet set PEID = @PEID, EmpID = @EmpID, StatusID = @StatusID, Notes = @Notes where TID = @TID";
            SqlCommand updateCommand = new SqlCommand(sql, conn);

            updateCommand.Parameters.Add("@TID", System.Data.SqlDbType.Int, 4, "TID");
            updateCommand.Parameters.Add("@PEID", System.Data.SqlDbType.Int, 4, "PEID");
            updateCommand.Parameters.Add("@EmpID", System.Data.SqlDbType.Int, 4, "EmpID");
            updateCommand.Parameters.Add("@StatusID", System.Data.SqlDbType.Int, 4, "StatusID");
            updateCommand.Parameters.Add("@Notes", System.Data.SqlDbType.VarChar, 500, "Notes");

            sql = "delete from TimeSheet Where TID = @TID";
            SqlCommand deleteCommand = new SqlCommand(sql, conn);

            deleteCommand.Parameters.Add("@TID", System.Data.SqlDbType.Int, 4, "TID");

            // update the timesheet table
            SqlHelper.UpdateDataset(insertCommand, deleteCommand, updateCommand, ds, "TimeSheet");


            // update the Timeentry table
            sql           = "insert into TimeEntry (TID,Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,WorktypeID, ProjectID) values ";
            sql          += "(@TID,@Sunday,@Monday,@Tuesday,@Wednesday,@Thursday,@Friday,@Saturday,@WorktypeID, @ProjectID)";
            insertCommand = new SqlCommand(sql, conn);
            insertCommand.Parameters.Add("@TID", System.Data.SqlDbType.Int, 4, "TID");
            insertCommand.Parameters.Add("@Sunday", System.Data.SqlDbType.Decimal, 5, "Sunday");
            insertCommand.Parameters.Add("@Monday", System.Data.SqlDbType.Decimal, 5, "Monday");
            insertCommand.Parameters.Add("@Tuesday", System.Data.SqlDbType.Decimal, 5, "Tuesday");
            insertCommand.Parameters.Add("@Wednesday", System.Data.SqlDbType.Decimal, 5, "Wednesday");
            insertCommand.Parameters.Add("@Thursday", System.Data.SqlDbType.Decimal, 5, "Thursday");
            insertCommand.Parameters.Add("@Friday", System.Data.SqlDbType.Decimal, 5, "Friday");
            insertCommand.Parameters.Add("@Saturday", System.Data.SqlDbType.Decimal, 5, "Saturday");
            insertCommand.Parameters.Add("@WorktypeID", System.Data.SqlDbType.Int, 4, "WorktypeID");
            insertCommand.Parameters.Add("@ProjectID", System.Data.SqlDbType.Int, 4, "ProjectID");
            insertCommand.UpdatedRowSource = UpdateRowSource.FirstReturnedRecord;

            sql           = "update TimeEntry set TID = @TID,Sunday = @Sunday,Monday=@Monday,Tuesday=@Tuesday,Wednesday=@Wednesday,";
            sql          += "Thursday=@Thursday,Friday=@Friday,Saturday=@Saturday,WorktypeID=@WorkTypeID, ProjectID=@ProjectID where EntryID = @EntryID";
            updateCommand = new SqlCommand(sql, conn);
            updateCommand.Parameters.Add("@TID", System.Data.SqlDbType.Int, 4, "TID");
            updateCommand.Parameters.Add("@Sunday", System.Data.SqlDbType.Decimal, 5, "Sunday");
            updateCommand.Parameters.Add("@Monday", System.Data.SqlDbType.Decimal, 5, "Monday");
            updateCommand.Parameters.Add("@Tuesday", System.Data.SqlDbType.Decimal, 5, "Tuesday");
            updateCommand.Parameters.Add("@Wednesday", System.Data.SqlDbType.Decimal, 5, "Wednesday");
            updateCommand.Parameters.Add("@Thursday", System.Data.SqlDbType.Decimal, 5, "Thursday");
            updateCommand.Parameters.Add("@Friday", System.Data.SqlDbType.Decimal, 5, "Friday");
            updateCommand.Parameters.Add("@Saturday", System.Data.SqlDbType.Decimal, 5, "Saturday");
            updateCommand.Parameters.Add("@WorktypeID", System.Data.SqlDbType.Int, 4, "WorktypeID");
            updateCommand.Parameters.Add("@ProjectID", System.Data.SqlDbType.Int, 4, "ProjectID");
            updateCommand.Parameters.Add("@EntryID", System.Data.SqlDbType.Int, 4, "EntryID");

            sql           = "delete from TimeEntry Where EntryID = @EntryID";
            deleteCommand = new SqlCommand(sql, conn);
            deleteCommand.Parameters.Add("@EntryID", System.Data.SqlDbType.Int, 4, "EntryID");

            // update the TimeEntry Table
            SqlHelper.UpdateDataset(insertCommand, deleteCommand, updateCommand, entry_copy, "TimeEntry");
        }