void LoadUnfilledData() { if (cbxLaborNumber.SelectedIndex != -1) { DatabaseSet.工時DataTable table = 工時TableAdapter.Instance.GetFilledDataBy員工編號(cbxLaborNumber.SelectedValue.ToString()); DateTime from = Settings.UnfilledDate; DateTime to = DateTime.Today; for (DateTime date = from; date <= to; date = date.AddDays(1)) { if (!假日TableAdapter.Instance.IsHoliday(_holidayTable, date)) { if (date != dtpDate.Value) { DataRow[] rows = table.Select("日期 = #" + date.ToString("yyyy/MM/dd") + "#"); if (rows.Length == 0) { llbUnfilledTip.Text = date.ToString("yyyy/MM/dd") + "的資料尚未填寫完畢"; llbUnfilledTip.Tag = date; llbUnfilledTip.Visible = true; return; } } } } llbUnfilledTip.Visible = false; } }
public EditHourDataForm() { InitializeComponent(); _lwHelper = new LaborWageHelper(); _holidayTable = 假日TableAdapter.Instance.GetByRange(Settings.UnfilledDate, DateTime.Today); rbProduce.Checked = true; // Load the lines _suspendLineChangedEvent = true; bsLine.DataSource = DatabaseSet.產線Table; // Load the nonproduce items bsNonProduce.DataSource = DatabaseSet.非生產Table; // Create a table for input bsHourData.DataSource = _dataTable = CreateDataTable(); cbbLine.ValueMember = cbbLine.DisplayMember = "產線"; cbbNonProduce.ValueMember = "編號"; cbbNonProduce.DisplayMember = "名稱"; dtpDate.Value = dateFinishDate.Value = DateTime.Today; cbbLine.SelectedIndex = -1; _suspendLineChangedEvent = false; }
public DatabaseSet.工時DataTable CreateDataTable() { DatabaseSet.工時DataTable table = new DatabaseSet.工時DataTable(); //table.Columns.Add(new DataColumn("QCN", typeof(string))); table.Columns.Add(new DataColumn("待驗數量", typeof(Int32))); table.Columns.Add(new DataColumn("品號", typeof(string))); table.Columns.Add(new DataColumn("取代編號", typeof(string))); table.Columns.Add(new DataColumn("工時類型名稱", typeof(string))); return(table); }
private void btnSearch_Click(object sender, EventArgs e) { btnDelHourData.Enabled = true; string laborNumber = string.Empty; if (ckbLabor.Checked && cbxLaborNumber.SelectedIndex != -1) { laborNumber = cbxLaborNumber.SelectedValue.ToString(); } DateTime from = dtpFrom.Value; DateTime to = dtpTo.Value; DatabaseSet.工時DataTable table = new DatabaseSet.工時DataTable(); int count = 0; if (cbxProduceOrNot.SelectedIndex == 0) { count = 工時TableAdapter.Instance.Fill(table, laborNumber, ckbDate.Checked, from, to); } else if (cbxProduceOrNot.SelectedIndex == 1) { string worksheetNumber = tbxWorksheetNumber.Text; string partNumber = tbxPartNumber.Text; count = 工時TableAdapter.Instance.Fill(table, laborNumber, worksheetNumber, partNumber, ckbDate.Checked, from, to); } else { int nonProduce = (int)cbxNonProduce.SelectedValue; count = 工時TableAdapter.Instance.Fill(table, laborNumber, nonProduce, ckbDate.Checked, from, to); } table.Columns.Add("工時類型名稱"); foreach (DataRow row in table) { row["工時類型名稱"] = ((HourType)row["工時類型"]).ToString(); } bsHourData.DataSource = table; dgvHourData.AutoResizeColumns(); lbSearchResult.Text = "找到 " + count + " 筆資料"; }
public virtual DatabaseSet.工時DataTable GetData() { this.Adapter.SelectCommand = this.CommandCollection[0]; DatabaseSet.工時DataTable dataTable = new DatabaseSet.工時DataTable(); this.Adapter.Fill(dataTable); return dataTable; }
private void btnStore_Click(object sender, EventArgs e) { try { if (_remainHours > 0 && !this.TodayIsHoliday) { if (MessageBox.Show("尚有時數未填寫完畢,確定要儲存嗎?", "儲存提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel) { return; } } //SetFinishDate(); //重驗後的工時資料刪除時進行復原工作 int update = 0; DatabaseSet.工時DataTable table = (DatabaseSet.工時DataTable)_dataTable.Copy(); foreach (DataRow row in _dataTable) { if (row.RowState == DataRowState.Deleted) { string id = (string)row["編號", DataRowVersion.Original]; update += 工時TableAdapter.Instance.DeleteEx(id); } } foreach (DataRow row in table.Select(null, null, DataViewRowState.Deleted)) { row.AcceptChanges(); } update += 工時TableAdapter.Instance.Update(table); int reinspect; int qa = UpdateQATable(out reinspect); UpdateFinishDate(); string msg = "更新了 " + update + " 筆資料"; if (qa > 0) { msg += "\n新增了 " + qa + " 筆待驗資料"; } if (reinspect > 0) { msg += "\n重新送驗了 " + reinspect + "筆資料"; } MessageBox.Show(msg); UpdateRemainAmount(); LoadOldHourData(); LoadNGData(); } catch (Exception ex) { //MessageBox.Show(ex.Message); Global.ShowError(ex); } }
public DatabaseSet.工時DataTable GetUnfilledData() { DatabaseSet.工時DataTable table = new DatabaseSet.工時DataTable(); table.PrimaryKey = null; table.Columns.Remove("編號"); foreach (DatabaseSet.員工Row laborRow in DatabaseSet.員工Table) { DatabaseSet.工時DataTable tmpTable = GetFilledDataBy員工編號(laborRow.編號); DateTime from = Settings.UnfilledDate; DateTime to = DateTime.Today; DatabaseSet.假日DataTable holidayTable = 假日TableAdapter.Instance.GetByRange(from, to); for (DateTime date = from; date <= to; date = date.AddDays(1)) { if (!假日TableAdapter.Instance.IsHoliday(holidayTable, date)) { DataRow[] rows = tmpTable.Select("日期 = #" + date.ToString("yyyy/MM/dd") + "#"); if (rows.Length == 0) { DatabaseSet.工時Row newRow = table.New工時Row(); newRow.員工姓名 = laborRow.姓名; newRow.員工編號 = laborRow.編號; newRow.日期 = date; table.Add工時Row(newRow); } } } } //table.DefaultView.Sort = "日期, 員工編號"; table.AcceptChanges(); return table; }
public DatabaseSet.工時DataTable GetFilledDataBy員工編號(string 員工編號) { DatabaseSet.工時DataTable table = new DatabaseSet.工時DataTable(); table.PrimaryKey = null; table.Columns.Remove("編號"); FillFilledDataBy員工編號(table, 員工編號); return table; }