using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace FCM0000 { public partial class fCustoms : FCOMMON.fBase { string fn_fpcolsize1 = ""; string fn_fpcolsize2 = ""; public fCustoms() { InitializeComponent(); fn_fpcolsize1 = FCOMMON.Util.MakeFilePath(FCOMMON.Util.CurrentPath, "formSetting", "fp1_" + this.Name + ".ini"); fn_fpcolsize2 = FCOMMON.Util.MakeFilePath(FCOMMON.Util.CurrentPath, "formSetting", "fp2_" + this.Name + ".ini"); } private void __Load(object sender, EventArgs e) { // TODO: 이 코드는 데이터를 'dsMSSQL.Staff' 테이블에 로드합니다. 필요한 경우 이 코드를 이동하거나 제거할 수 있습니다. this.Show(); Application.DoEvents(); refreshData(); refreshDataS(); this.dsMSSQL.Customs.TableNewRow += Customs_TableNewRow; this.dsMSSQL.Staff.TableNewRow += Staff_TableNewRow; } void Staff_TableNewRow(object sender, DataTableNewRowEventArgs e) { e.Row["wuid"] = FCOMMON.info.Login.no; e.Row["wdate"] = DateTime.Now; e.Row["cid"] = selcectIDX; e.Row["gcode"] = FCOMMON.info.Login.gcode; } void Customs_TableNewRow(object sender, DataTableNewRowEventArgs e) { e.Row["wuid"] = FCOMMON.info.Login.no; e.Row["wdate"] = DateTime.Now; e.Row["grp"] = "Supply"; e.Row["gcode"] = FCOMMON.info.Login.gcode; } void refreshData() { try { this.ta.Fill(this.dsMSSQL.Customs,FCOMMON.info.Login.gcode); // this.taStaff.Fill(this.dsMSSQL.Staff); FPUtil.ColSizeLoad(ref this.fpSpread1, fn_fpcolsize1); }catch (Exception ex) { FCOMMON.Util.MsgE(ex.Message); } } void refreshDataS() { try { // this.ta.Fill(this.dsMSSQL.Customs); this.taStaff.Fill(this.dsMSSQL.Staff, FCOMMON.info.Login.gcode); FPUtil.ColSizeLoad(ref this.fpSpread2, fn_fpcolsize2); } catch (Exception ex) { FCOMMON.Util.MsgE(ex.Message); } } private void customsBindingNavigatorSaveItem_Click(object sender, EventArgs e) { this.Validate(); this.bs.EndEdit(); int cnt = this.ta.Update(this.dsMSSQL.Customs); if (cnt < 1) { FCOMMON.Util.MsgI("변경된 내역이 없습니다."); } else FCOMMON.Util.MsgI(string.Format("{0} 건의 자료가 업데이트 되었습니다.",cnt)); } private void toolStripButton1_Click(object sender, EventArgs e) { refreshData(); } private void autoResizeColummsToolStripMenuItem_Click(object sender, EventArgs e) { this.fpSpread1.ActiveSheet.DataAutoSizeColumns = true; for (int i = 0; i < this.fpSpread1.ActiveSheet.Rows.Count; i++) this.fpSpread1.ActiveSheet.SetRowHeight(i, 25); } private void btFind_Click(object sender, EventArgs e) { var search = tbFind.Text.Trim(); search = search.Replace("*", "x"); if (tbFind.Text != search) tbFind.Text = search; try { if (search.isEmpty()) { this.bs.Filter = ""; tbFind.BackColor = Color.White; } else { search = search.Replace("'", "''"); string filter = "stafftel like ? or grp like ? or name2 like ? or name like ? or owner like ? or address like ? or tel like ? or email like ? or memo like ? or staff like ?"; filter = filter.Replace("?", "'%" + search + "%'"); this.bs.Filter = filter; tbFind.BackColor = Color.Lime; } tbFind.SelectAll(); tbFind.Focus(); } catch (Exception ex) { this.tbFind.BackColor = Color.Tomato; FCOMMON.Util.MsgE(ex.Message); } } private void tbFind_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) btFind.PerformClick(); } private void autoToolStripMenuItem_Click(object sender, EventArgs e) { this.fpSpread1.ActiveSheet.DataAutoSizeColumns = true; for (int i = 0; i < this.fpSpread1.ActiveSheet.Rows.Count; i++) this.fpSpread1.ActiveSheet.SetRowHeight(i, 25); } private void resetToolStripMenuItem_Click(object sender, EventArgs e) { foreach (FarPoint.Win.Spread.Column col in this.fpSpread1.ActiveSheet.Columns) { col.Width = 100; } } private void saveToolStripMenuItem_Click(object sender, EventArgs e) { FCOMMON.Util.FPColsizeSave(this.fpSpread1, fn_fpcolsize1); } private void loadToolStripMenuItem_Click(object sender, EventArgs e) { FCOMMON.Util.FPColSizeLoad(ref this.fpSpread1, fn_fpcolsize1); } private void bindingNavigatorAddNewItem_Click(object sender, EventArgs e) { } private void bindingNavigatorDeleteItem_Click(object sender, EventArgs e) { var drv = this.bs.Current as DataRowView; if (drv == null) return; var dr = drv.Row as dsMSSQL.CustomsRow; if (dr.RowState == DataRowState.Added || dr.RowState == DataRowState.Detached || dr.RowState == DataRowState.Deleted) this.bs.RemoveCurrent(); var taq = new DSQueryTableAdapters.QueriesTableAdapter(); var cnt = (int)taq.CheckSupplyUsage(dr.idx); if(cnt > 0) { FCOMMON.Util.MsgE("해당 거래처가 연결된 자료가 있어 삭제할 수 없습니다.\n\n" + "개발자에 문의 하세요"); return; } var dlg =FCOMMON.Util.MsgQ("다음 거래처를 삭제하시겠습니까?\n"+ dr.name + "\n" + dr.staff); if(dlg == System.Windows.Forms.DialogResult.Yes) { this.bs.RemoveCurrent(); } } private int selcectIDX = -1; private void bs_CurrentChanged(object sender, EventArgs e) { //선택되면 staff 를 연결해준다. var drv = this.bs.Current as DataRowView; if(drv == null) { selcectIDX = -1; this.bsStaff.Filter = "cid=-1"; bindingNavigator1.Enabled = false; } else { selcectIDX = int.Parse(drv["idx"].ToString()); this.bsStaff.Filter = "cid=" + selcectIDX; bindingNavigator1.Enabled = true; } } private void toolStripMenuItem2_Click(object sender, EventArgs e) { FCOMMON.Util.FPColSizeAuto(this.fpSpread2); } private void toolStripMenuItem3_Click(object sender, EventArgs e) { FCOMMON.Util.FPCollSizeReset(this.fpSpread2); } private void toolStripMenuItem4_Click(object sender, EventArgs e) { FCOMMON.Util.FPColsizeSave(this.fpSpread2, fn_fpcolsize2); } private void toolStripMenuItem5_Click(object sender, EventArgs e) { FCOMMON.Util.FPColsizeSave(this.fpSpread2, fn_fpcolsize2); } private void toolStripButton2_Click(object sender, EventArgs e) { refreshDataS(); } private void toolStripButton3_Click(object sender, EventArgs e) { this.Validate(); this.bsStaff.EndEdit(); int cnt = this.taStaff.Update(this.dsMSSQL.Staff); if (cnt < 1) { FCOMMON.Util.MsgI("변경된 내역이 없습니다."); } else FCOMMON.Util.MsgI(string.Format("{0} 건의 자료가 업데이트 되었습니다.", cnt)); } } }