/// <summary> /// Get all Tasks /// </summary> /// <returns>A TasksTD</returns> public static DataSet GetTasks() { TasksTD td = new TasksTD(); TasksTableAdapter ta = new TasksTableAdapter(); ta.Fill(td.Tasks); ta.Dispose(); return(td); }
/// <summary> /// Returns true or false if a Tasks exists /// </summary> /// <param name="taskId">The TaskId to check existance</param> /// <returns>true if Tasks exists, false if not</returns> public static bool IsExistingTask(int taskId) { if (taskId == 0) { throw new Exception("The TaskId cannot be zero."); } TasksTableAdapter ta = new TasksTableAdapter(); bool isExistingTask = (ta.IsExistingTask(taskId) == 1 ? true : false); ta.Dispose(); return(isExistingTask); }
/// <summary> /// Get Task row by TaskId /// </summary> /// <returns>A TasksDataTable with one row if TaskId exists</returns> public static DataTable GetTask(int taskId) { if (taskId == 0) { throw new Exception("The TaskId is zero."); } TasksTableAdapter ta = new TasksTableAdapter(); TasksDataTable tt = ta.GetDataByTaskId(taskId); ta.Dispose(); return(tt); }
/// <summary> /// Service callable code to Delete/Insert/Update Tasks /// </summary> /// <returns>A TasksTD. If ALL updated OK contains updated data, if not contains the RowErrors</returns> public static DataSet UpdateTasks(DataSet tasksDataSet, ref SqlTransaction transaction) { if (tasksDataSet == null || tasksDataSet.Tables["Tasks"] == null || tasksDataSet.Tables["Tasks"].Rows.Count == 0) { throw new Exception("The DataSet and/or DataTable is null or empty."); } TasksDataTable dtTasks = new TasksDataTable(); dtTasks.BeginLoadData(); dtTasks.Merge(tasksDataSet.Tables["Tasks"], false, MissingSchemaAction.Error); TasksTableAdapter taTasks = new TasksTableAdapter(); TableAdapterUtils.UseTransaction(taTasks, ref transaction); #region do deletes foreach (TasksRow deletedRow in dtTasks.Select("", "", DataViewRowState.Deleted)) { // get the primary key value(s) from the Original version (for child deletes) int taskId = (int)deletedRow["TaskId", DataRowVersion.Original]; // do child deletes (if any exist) //TasksChildrenDataSet.UpdateTasksChildren // delete the row taTasks.Delete(taskId); } #endregion #region do inserts foreach (TasksRow insertedRow in dtTasks.Select("", "", DataViewRowState.Added)) { //insertedRow["SubmitDt"] = DBNull.Value; // for testing SetDefaultValues insertedRow.SetDefaultValues(); if (insertedRow.IsValidRow()) { taTasks.Update(insertedRow); } else { throw new Exception("A row to be inserted contains invalid data. Entire transaction cancelled."); } } #endregion #region do updates foreach (TasksRow modifiedRow in dtTasks.Select("", "", DataViewRowState.ModifiedCurrent)) { // get the primary key value(s) from the Original version int taskId = (int)modifiedRow["TaskId", DataRowVersion.Original]; // do not allow key changes int taskIdCurr = (int)modifiedRow["TaskId", DataRowVersion.Current]; if (taskId != taskIdCurr) { throw new Exception("Change of primary key(s) is not permitted. Entire transaction cancelled."); } if (modifiedRow.IsValidRow()) { taTasks.Update(modifiedRow); } else { throw new Exception("A row to be modified contains invalid data. Entire transaction cancelled."); } } #endregion dtTasks.AcceptChanges(); tasksDataSet.Tables["Tasks"].Merge(dtTasks, false, MissingSchemaAction.Ignore); return(tasksDataSet); }