diff --git a/Project/Properties/AssemblyInfo.cs b/Project/Properties/AssemblyInfo.cs index ae9900c..ff54957 100644 --- a/Project/Properties/AssemblyInfo.cs +++ b/Project/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 번호가 자동으로 // 지정되도록 할 수 있습니다. // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("23.12.13.0930")] -[assembly: AssemblyFileVersion("23.12.13.0930")] +[assembly: AssemblyVersion("23.12.17.2230")] +[assembly: AssemblyFileVersion("23.12.17.2230")] diff --git a/SubProject/FCM0000/Item/fItems.Designer.cs b/SubProject/FCM0000/Item/fItems.Designer.cs index c77be87..7f73923 100644 --- a/SubProject/FCM0000/Item/fItems.Designer.cs +++ b/SubProject/FCM0000/Item/fItems.Designer.cs @@ -86,6 +86,7 @@ this.toolStripButton2 = new System.Windows.Forms.ToolStripButton(); this.toolStripButton1 = new System.Windows.Forms.ToolStripButton(); this.fpSpread1 = new FarPoint.Win.Spread.FpSpread(); + this.fpSpread1_Sheet1 = new FarPoint.Win.Spread.SheetView(); this.panel1 = new System.Windows.Forms.Panel(); this.groupBox1 = new System.Windows.Forms.GroupBox(); this.memoTextBox = new System.Windows.Forms.TextBox(); @@ -119,7 +120,7 @@ this.taPurchase = new FCM0000.dsMSSQLTableAdapters.PurchaseTableAdapter(); this.bsStaff = new System.Windows.Forms.BindingSource(this.components); this.taStaff = new FCM0000.dsMSSQLTableAdapters.StaffTableAdapter(); - this.fpSpread1_Sheet1 = new FarPoint.Win.Spread.SheetView(); + this.toolStripButton4 = new System.Windows.Forms.ToolStripButton(); ((System.ComponentModel.ISupportInitialize)(this.bn)).BeginInit(); this.bn.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit(); @@ -127,12 +128,12 @@ this.cm1.SuspendLayout(); this.toolStrip1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.fpSpread1)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).BeginInit(); this.groupBox1.SuspendLayout(); this.panIMage.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); this.toolStrip2.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.bsStaff)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).BeginInit(); this.SuspendLayout(); // // bn @@ -159,7 +160,8 @@ this.toolStripSeparator2, this.toolStripLabel3, this.tbFind, - this.btFind}); + this.btFind, + this.toolStripButton4}); this.bn.Location = new System.Drawing.Point(0, 660); this.bn.MoveFirstItem = this.bindingNavigatorMoveFirstItem; this.bn.MoveLastItem = this.bindingNavigatorMoveLastItem; @@ -511,6 +513,139 @@ this.fpSpread1.Size = new System.Drawing.Size(877, 623); this.fpSpread1.TabIndex = 3; // + // fpSpread1_Sheet1 + // + this.fpSpread1_Sheet1.Reset(); + this.fpSpread1_Sheet1.SheetName = "Sheet1"; + // Formulas and custom names must be loaded with R1C1 reference style + this.fpSpread1_Sheet1.ReferenceStyle = FarPoint.Win.Spread.Model.ReferenceStyle.R1C1; + this.fpSpread1_Sheet1.ColumnCount = 14; + this.fpSpread1_Sheet1.ActiveColumnIndex = -1; + this.fpSpread1_Sheet1.ActiveRowIndex = -1; + this.fpSpread1_Sheet1.AutoGenerateColumns = false; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 0).Value = "IDX"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 1).Value = "숨김"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 2).Value = "보관소"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 3).Value = "분류"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 4).Value = "품명"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 5).Value = "SID#"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 6).Value = "모델명"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 7).Value = "단가"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 8).Value = "단가($)"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 9).Value = "제조사"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 10).Value = "규격"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 11).Value = "단위"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 13).Value = "공급처"; + this.fpSpread1_Sheet1.ColumnHeader.Rows.Get(0).Height = 42F; + this.fpSpread1_Sheet1.Columns.Get(0).BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + numberCellType1.DecimalPlaces = 0; + numberCellType1.LeadingZero = FarPoint.Win.Spread.CellType.LeadingZero.Yes; + numberCellType1.MaximumValue = 2147483647D; + numberCellType1.MinimumValue = -2147483648D; + this.fpSpread1_Sheet1.Columns.Get(0).CellType = numberCellType1; + this.fpSpread1_Sheet1.Columns.Get(0).DataField = "idx"; + this.fpSpread1_Sheet1.Columns.Get(0).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(0).Label = "IDX"; + this.fpSpread1_Sheet1.Columns.Get(0).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(0).Width = 62F; + this.fpSpread1_Sheet1.Columns.Get(1).CellType = checkBoxCellType1; + this.fpSpread1_Sheet1.Columns.Get(1).DataField = "disable"; + this.fpSpread1_Sheet1.Columns.Get(1).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(1).Label = "숨김"; + this.fpSpread1_Sheet1.Columns.Get(1).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(1).Width = 78F; + this.fpSpread1_Sheet1.Columns.Get(2).CellType = textCellType1; + this.fpSpread1_Sheet1.Columns.Get(2).DataField = "Storage"; + this.fpSpread1_Sheet1.Columns.Get(2).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(2).Label = "보관소"; + this.fpSpread1_Sheet1.Columns.Get(2).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(2).Width = 79F; + this.fpSpread1_Sheet1.Columns.Get(3).BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(255))))); + this.fpSpread1_Sheet1.Columns.Get(3).CellType = textCellType2; + this.fpSpread1_Sheet1.Columns.Get(3).DataField = "cate"; + this.fpSpread1_Sheet1.Columns.Get(3).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(3).Label = "분류"; + this.fpSpread1_Sheet1.Columns.Get(3).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(3).Width = 113F; + this.fpSpread1_Sheet1.Columns.Get(4).CellType = textCellType3; + this.fpSpread1_Sheet1.Columns.Get(4).DataField = "name"; + this.fpSpread1_Sheet1.Columns.Get(4).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left; + this.fpSpread1_Sheet1.Columns.Get(4).Label = "품명"; + this.fpSpread1_Sheet1.Columns.Get(4).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(4).Width = 113F; + this.fpSpread1_Sheet1.Columns.Get(5).CellType = textCellType4; + this.fpSpread1_Sheet1.Columns.Get(5).DataField = "sid"; + this.fpSpread1_Sheet1.Columns.Get(5).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(5).Label = "SID#"; + this.fpSpread1_Sheet1.Columns.Get(5).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(5).Width = 113F; + this.fpSpread1_Sheet1.Columns.Get(6).CellType = textCellType5; + this.fpSpread1_Sheet1.Columns.Get(6).DataField = "model"; + this.fpSpread1_Sheet1.Columns.Get(6).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left; + this.fpSpread1_Sheet1.Columns.Get(6).Label = "모델명"; + this.fpSpread1_Sheet1.Columns.Get(6).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(6).Width = 113F; + currencyCellType1.DecimalPlaces = 0; + currencyCellType1.MaximumValue = new decimal(new int[] { + 10000000, + 0, + 0, + 0}); + currencyCellType1.MinimumValue = new decimal(new int[] { + 10000000, + 0, + 0, + -2147483648}); + currencyCellType1.NegativeRed = true; + currencyCellType1.NullDisplay = "--"; + currencyCellType1.Separator = ","; + currencyCellType1.ShowSeparator = true; + this.fpSpread1_Sheet1.Columns.Get(7).CellType = currencyCellType1; + this.fpSpread1_Sheet1.Columns.Get(7).DataField = "price"; + this.fpSpread1_Sheet1.Columns.Get(7).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Right; + this.fpSpread1_Sheet1.Columns.Get(7).Label = "단가"; + this.fpSpread1_Sheet1.Columns.Get(7).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(7).Width = 123F; + numberCellType2.DecimalPlaces = 2; + this.fpSpread1_Sheet1.Columns.Get(8).CellType = numberCellType2; + this.fpSpread1_Sheet1.Columns.Get(8).DataField = "priceD"; + this.fpSpread1_Sheet1.Columns.Get(8).ForeColor = System.Drawing.Color.Blue; + this.fpSpread1_Sheet1.Columns.Get(8).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Right; + this.fpSpread1_Sheet1.Columns.Get(8).Label = "단가($)"; + this.fpSpread1_Sheet1.Columns.Get(8).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(8).Width = 94F; + this.fpSpread1_Sheet1.Columns.Get(9).CellType = textCellType6; + this.fpSpread1_Sheet1.Columns.Get(9).DataField = "manu"; + this.fpSpread1_Sheet1.Columns.Get(9).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left; + this.fpSpread1_Sheet1.Columns.Get(9).Label = "제조사"; + this.fpSpread1_Sheet1.Columns.Get(9).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(9).Width = 113F; + numberCellType3.MaximumValue = 999999999999999D; + numberCellType3.MinimumValue = -999999999999999D; + this.fpSpread1_Sheet1.Columns.Get(10).CellType = numberCellType3; + this.fpSpread1_Sheet1.Columns.Get(10).DataField = "scale"; + this.fpSpread1_Sheet1.Columns.Get(10).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(10).Label = "규격"; + this.fpSpread1_Sheet1.Columns.Get(10).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(10).Width = 84F; + this.fpSpread1_Sheet1.Columns.Get(11).CellType = textCellType7; + this.fpSpread1_Sheet1.Columns.Get(11).DataField = "unit"; + this.fpSpread1_Sheet1.Columns.Get(11).Label = "단위"; + this.fpSpread1_Sheet1.Columns.Get(12).CellType = textCellType8; + this.fpSpread1_Sheet1.Columns.Get(12).DataField = "supply"; + this.fpSpread1_Sheet1.Columns.Get(12).Tag = "supplyname"; + this.fpSpread1_Sheet1.Columns.Get(12).Visible = false; + this.fpSpread1_Sheet1.Columns.Get(13).CellType = textCellType9; + this.fpSpread1_Sheet1.Columns.Get(13).DataField = "supply"; + this.fpSpread1_Sheet1.Columns.Get(13).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(13).Label = "공급처"; + this.fpSpread1_Sheet1.Columns.Get(13).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.DataAutoCellTypes = false; + this.fpSpread1_Sheet1.DataAutoSizeColumns = false; + this.fpSpread1_Sheet1.DataSource = this.bs; + this.fpSpread1_Sheet1.RowHeader.Columns.Default.Resizable = false; + this.fpSpread1_Sheet1.ReferenceStyle = FarPoint.Win.Spread.Model.ReferenceStyle.A1; + // // panel1 // this.panel1.Dock = System.Windows.Forms.DockStyle.Right; @@ -793,138 +928,16 @@ // this.taStaff.ClearBeforeFill = true; // - // fpSpread1_Sheet1 + // toolStripButton4 // - this.fpSpread1_Sheet1.Reset(); - this.fpSpread1_Sheet1.SheetName = "Sheet1"; - // Formulas and custom names must be loaded with R1C1 reference style - this.fpSpread1_Sheet1.ReferenceStyle = FarPoint.Win.Spread.Model.ReferenceStyle.R1C1; - this.fpSpread1_Sheet1.ColumnCount = 14; - this.fpSpread1_Sheet1.ActiveColumnIndex = -1; - this.fpSpread1_Sheet1.ActiveRowIndex = -1; - this.fpSpread1_Sheet1.AutoGenerateColumns = false; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 0).Value = "IDX"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 1).Value = "숨김"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 2).Value = "보관소"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 3).Value = "분류"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 4).Value = "품명"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 5).Value = "SID#"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 6).Value = "모델명"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 7).Value = "단가"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 8).Value = "단가($)"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 9).Value = "제조사"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 10).Value = "규격"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 11).Value = "단위"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 13).Value = "공급처"; - this.fpSpread1_Sheet1.ColumnHeader.Rows.Get(0).Height = 42F; - this.fpSpread1_Sheet1.Columns.Get(0).BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - numberCellType1.DecimalPlaces = 0; - numberCellType1.LeadingZero = FarPoint.Win.Spread.CellType.LeadingZero.Yes; - numberCellType1.MaximumValue = 2147483647D; - numberCellType1.MinimumValue = -2147483648D; - this.fpSpread1_Sheet1.Columns.Get(0).CellType = numberCellType1; - this.fpSpread1_Sheet1.Columns.Get(0).DataField = "idx"; - this.fpSpread1_Sheet1.Columns.Get(0).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(0).Label = "IDX"; - this.fpSpread1_Sheet1.Columns.Get(0).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(0).Width = 62F; - this.fpSpread1_Sheet1.Columns.Get(1).CellType = checkBoxCellType1; - this.fpSpread1_Sheet1.Columns.Get(1).DataField = "disable"; - this.fpSpread1_Sheet1.Columns.Get(1).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(1).Label = "숨김"; - this.fpSpread1_Sheet1.Columns.Get(1).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(1).Width = 78F; - this.fpSpread1_Sheet1.Columns.Get(2).CellType = textCellType1; - this.fpSpread1_Sheet1.Columns.Get(2).DataField = "Storage"; - this.fpSpread1_Sheet1.Columns.Get(2).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(2).Label = "보관소"; - this.fpSpread1_Sheet1.Columns.Get(2).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(2).Width = 79F; - this.fpSpread1_Sheet1.Columns.Get(3).BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(255)))), ((int)(((byte)(255))))); - this.fpSpread1_Sheet1.Columns.Get(3).CellType = textCellType2; - this.fpSpread1_Sheet1.Columns.Get(3).DataField = "cate"; - this.fpSpread1_Sheet1.Columns.Get(3).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(3).Label = "분류"; - this.fpSpread1_Sheet1.Columns.Get(3).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(3).Width = 113F; - this.fpSpread1_Sheet1.Columns.Get(4).CellType = textCellType3; - this.fpSpread1_Sheet1.Columns.Get(4).DataField = "name"; - this.fpSpread1_Sheet1.Columns.Get(4).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left; - this.fpSpread1_Sheet1.Columns.Get(4).Label = "품명"; - this.fpSpread1_Sheet1.Columns.Get(4).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(4).Width = 113F; - this.fpSpread1_Sheet1.Columns.Get(5).CellType = textCellType4; - this.fpSpread1_Sheet1.Columns.Get(5).DataField = "sid"; - this.fpSpread1_Sheet1.Columns.Get(5).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(5).Label = "SID#"; - this.fpSpread1_Sheet1.Columns.Get(5).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(5).Width = 113F; - this.fpSpread1_Sheet1.Columns.Get(6).CellType = textCellType5; - this.fpSpread1_Sheet1.Columns.Get(6).DataField = "model"; - this.fpSpread1_Sheet1.Columns.Get(6).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left; - this.fpSpread1_Sheet1.Columns.Get(6).Label = "모델명"; - this.fpSpread1_Sheet1.Columns.Get(6).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(6).Width = 113F; - currencyCellType1.DecimalPlaces = 0; - currencyCellType1.MaximumValue = new decimal(new int[] { - 10000000, - 0, - 0, - 0}); - currencyCellType1.MinimumValue = new decimal(new int[] { - 10000000, - 0, - 0, - -2147483648}); - currencyCellType1.NegativeRed = true; - currencyCellType1.NullDisplay = "--"; - currencyCellType1.Separator = ","; - currencyCellType1.ShowSeparator = true; - this.fpSpread1_Sheet1.Columns.Get(7).CellType = currencyCellType1; - this.fpSpread1_Sheet1.Columns.Get(7).DataField = "price"; - this.fpSpread1_Sheet1.Columns.Get(7).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Right; - this.fpSpread1_Sheet1.Columns.Get(7).Label = "단가"; - this.fpSpread1_Sheet1.Columns.Get(7).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(7).Width = 123F; - numberCellType2.DecimalPlaces = 2; - this.fpSpread1_Sheet1.Columns.Get(8).CellType = numberCellType2; - this.fpSpread1_Sheet1.Columns.Get(8).DataField = "priceD"; - this.fpSpread1_Sheet1.Columns.Get(8).ForeColor = System.Drawing.Color.Blue; - this.fpSpread1_Sheet1.Columns.Get(8).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Right; - this.fpSpread1_Sheet1.Columns.Get(8).Label = "단가($)"; - this.fpSpread1_Sheet1.Columns.Get(8).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(8).Width = 94F; - this.fpSpread1_Sheet1.Columns.Get(9).CellType = textCellType6; - this.fpSpread1_Sheet1.Columns.Get(9).DataField = "manu"; - this.fpSpread1_Sheet1.Columns.Get(9).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left; - this.fpSpread1_Sheet1.Columns.Get(9).Label = "제조사"; - this.fpSpread1_Sheet1.Columns.Get(9).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(9).Width = 113F; - numberCellType3.MaximumValue = 999999999999999D; - numberCellType3.MinimumValue = -999999999999999D; - this.fpSpread1_Sheet1.Columns.Get(10).CellType = numberCellType3; - this.fpSpread1_Sheet1.Columns.Get(10).DataField = "scale"; - this.fpSpread1_Sheet1.Columns.Get(10).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(10).Label = "규격"; - this.fpSpread1_Sheet1.Columns.Get(10).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(10).Width = 84F; - this.fpSpread1_Sheet1.Columns.Get(11).CellType = textCellType7; - this.fpSpread1_Sheet1.Columns.Get(11).DataField = "unit"; - this.fpSpread1_Sheet1.Columns.Get(11).Label = "단위"; - this.fpSpread1_Sheet1.Columns.Get(12).CellType = textCellType8; - this.fpSpread1_Sheet1.Columns.Get(12).DataField = "supply"; - this.fpSpread1_Sheet1.Columns.Get(12).Tag = "supplyname"; - this.fpSpread1_Sheet1.Columns.Get(12).Visible = false; - this.fpSpread1_Sheet1.Columns.Get(13).CellType = textCellType9; - this.fpSpread1_Sheet1.Columns.Get(13).DataField = "supply"; - this.fpSpread1_Sheet1.Columns.Get(13).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(13).Label = "공급처"; - this.fpSpread1_Sheet1.Columns.Get(13).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.DataAutoCellTypes = false; - this.fpSpread1_Sheet1.DataAutoSizeColumns = false; - this.fpSpread1_Sheet1.DataSource = this.bs; - this.fpSpread1_Sheet1.RowHeader.Columns.Default.Resizable = false; - this.fpSpread1_Sheet1.ReferenceStyle = FarPoint.Win.Spread.Model.ReferenceStyle.A1; + this.toolStripButton4.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.toolStripButton4.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image; + this.toolStripButton4.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton4.Image"))); + this.toolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton4.Name = "toolStripButton4"; + this.toolStripButton4.Size = new System.Drawing.Size(34, 34); + this.toolStripButton4.Text = "엑셀에서가져오기"; + this.toolStripButton4.Click += new System.EventHandler(this.toolStripButton4_Click); // // fItems // @@ -948,6 +961,7 @@ this.toolStrip1.ResumeLayout(false); this.toolStrip1.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.fpSpread1)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).EndInit(); this.groupBox1.ResumeLayout(false); this.groupBox1.PerformLayout(); this.panIMage.ResumeLayout(false); @@ -956,7 +970,6 @@ this.toolStrip2.ResumeLayout(false); this.toolStrip2.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.bsStaff)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).EndInit(); this.ResumeLayout(false); this.PerformLayout(); @@ -1040,5 +1053,6 @@ private System.Windows.Forms.ToolStripLabel toolStripLabel6; private System.Windows.Forms.ToolStripTextBox tbSearch; private FarPoint.Win.Spread.SheetView fpSpread1_Sheet1; + private System.Windows.Forms.ToolStripButton toolStripButton4; } } \ No newline at end of file diff --git a/SubProject/FCM0000/Item/fItems.cs b/SubProject/FCM0000/Item/fItems.cs index a339927..a7186bb 100644 --- a/SubProject/FCM0000/Item/fItems.cs +++ b/SubProject/FCM0000/Item/fItems.cs @@ -4,6 +4,8 @@ using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; +using System.ServiceModel.Activation.Configuration; +using System.ServiceModel.Configuration; using System.Text; using System.Windows.Forms; using util = FCOMMON.Util; @@ -81,10 +83,10 @@ namespace FCM0000 else { if (skey.StartsWith("%") == false) skey = "%" + skey; - if (skey.EndsWith("%") == false) skey += "%"; + if (skey.EndsWith("%") == false) skey += "%"; } - this.ta.FillNoImage(this.dsMSSQL.Items, FCOMMON.info.Login.gcode, cateSearch,skey); + this.ta.FillNoImage(this.dsMSSQL.Items, FCOMMON.info.Login.gcode, cateSearch, skey); } else this.ta.FillDupCheck(this.dsMSSQL.Items, FCOMMON.info.Login.gcode, cateSearch); @@ -132,7 +134,7 @@ namespace FCM0000 tbSearch.Focus(); return; } - + refreshData(); } @@ -425,5 +427,125 @@ namespace FCM0000 { if (e.KeyCode == Keys.Enter) toolStripButton2.PerformClick(); } + + private void toolStripButton4_Click(object sender, EventArgs e) + { + var msg = "이 기능은 엑셀 파일에서 품목정보를 읽어들여 업데이트 하는 기능 입니다\n" + + "엑셀파일의 열 구성은 다음과 같이 합니다\n" + + "SID,품명,모델,단가,공급처,제조\n" + + "1번줄에는 제목 줄이며, 실제 자료는 2번 줄 부터 시작합니다\n" + + "SID는 9자리이며, (SID/품명이) 없는 자료는 입력되지 않습니다\n1번시트에 데이가 있어야 합니다\n계속 할까요?"; + if (util.MsgQ(msg) != DialogResult.Yes) return; + var od = new OpenFileDialog(); + od.Filter = "excel|*.xlsx|allfiles|*.*"; + if (od.ShowDialog() != DialogResult.OK) return; + + + + + libxl.Book book;// = new libxl.BinBook(); + book = new libxl.XmlBook(); + book.setKey(FCOMMON.info.libxlCompany, FCOMMON.info.libxlKey); + var ta = new dsMSSQLTableAdapters.ItemsTableAdapter(); + var dt = new dsMSSQL.ItemsDataTable(); + try + { + book.load(od.FileName); + if (book.sheetCount() < 1) + { + util.MsgE("1번 시트가 없습니다. 파일을 확인하세요"); + return; + } + var sheet = book.getSheet(0); + var maxrow = sheet.lastRow(); + var icnt = 0; + var ucnt = 0; + + if (util.MsgQ($"입력을 시작할까요? 전체({maxrow})건\n시간이 오래 걸릴 수 있으므로 기다려 주세요") != DialogResult.Yes) return; + + + var f = new Form(); + f.Text = "data input"; + f.Size = new Size(400, 100); + f.ControlBox = false; + f.Padding = new Padding(10, 10, 10, 10); + var p = new ProgressBar(); + p.Dock = DockStyle.Fill; + p.Maximum = maxrow; + p.Value = 0; + f.StartPosition = FormStartPosition.CenterScreen; + f.Controls.Add(p); + f.Show(); + Application.DoEvents(); + + for (int i = 1; i < maxrow; i++) + { + var sid = sheet.readStr(i, 0); if (sid.isEmpty()) continue; + var name = sheet.readStr(i, 1); if (name.isEmpty()) continue; + var model = sheet.readStr(i, 2); if (model.isEmpty()) model = name; + if (name.Equals(model)) model = "."; + + f.Text = $"입력중 기다려주세요({i}/{maxrow})"; + p.Value = i; + + decimal price = 0; + if (sheet.cellType(i, 3) == libxl.CellType.CELLTYPE_STRING) + { + var vprice = sheet.readStr(i, 3).Replace(",", ""); + decimal.TryParse(vprice, out price); + } + else + { + price = (decimal)(sheet.readNum(i, 3)); + } + + var supp = sheet.readStr(i, 4); + var manu = sheet.readStr(i, 5); + var dr = ta.GetBySID(FCOMMON.info.Login.gcode, sid).FirstOrDefault(); + if (dr == null) + { + dr = dt.NewItemsRow(); + dr.gcode = FCOMMON.info.Login.gcode; + dr.disable = false; + dr.import = "1"; + dr.sid = sid; + dr.name = name; + dr.model = model; + dr.supply = supp; + dr.manu = manu; + dr.price = price; + dr.wdate = DateTime.Now; + dr.wuid = FCOMMON.info.Login.no; + dt.AddItemsRow(dr); + icnt += ta.Update(dr); + //icnt += 1; + } + else + { + if (dr.name.Equals(name) == false) dr.name = name; + if (dr.model.isEmpty() || model.Length > dr.model.Length) dr.model = model; + if (price > 0) dr.price = price; + if (supp.isEmpty() == false) dr.supply = supp; + if (manu.isEmpty() == false) dr.manu = manu; + dr.EndEdit(); + ucnt += ta.Update(dr); + //ucnt += 1; + } + + if(i % 2 ==0) Application.DoEvents(); + + } + + f.Dispose(); + util.MsgI($"입력수:{icnt}\n변경수:{ucnt}"); + } + catch (Exception ex) + { + FCOMMON.Util.MsgE(ex.Message); + return; + } + ta.Dispose(); + + } } } diff --git a/SubProject/FCM0000/Item/fItems.resx b/SubProject/FCM0000/Item/fItems.resx index 1f60b91..151c610 100644 --- a/SubProject/FCM0000/Item/fItems.resx +++ b/SubProject/FCM0000/Item/fItems.resx @@ -159,7 +159,7 @@ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - wAAADsABataJCQAAASpJREFUOE9jGDygcNbz/00Lnv/PnPj4P1QIA4S3P8Apx5A789n/VUfe/8elKL77 + vwAADr8BOAVTJAAAASpJREFUOE9jGDygcNbz/00Lnv/PnPj4P1QIA4S3P8Apx5A789n/VUfe/8elKL77 wf/ghmu4DciY8vT/wn0fsCqK73n4f+n+///9qy/gNiCh58n/aVveYyiKaL8P1pw56/9/r9ITuA2I7Hr0 v3f1BxRFoa33wJpb1wFt7/z73yX/AG4DApsf/q+b/w6uKLjl7v9Fe///7wBqzpjz879d3c//9hnbcRvg UXX/f/60NyiK7Ipv/0+f8/u/f9e3/zqF7/5bJKzHbYB96d3/2ZNfYyjSTzn/36ToxX+VrE//jSOX4TbA @@ -170,7 +170,7 @@ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - wAAADsABataJCQAAALZJREFUOE9jGDogvP3BfyiTdBDf/eB/cMM18gyI73n4f+n+///9qy+QbkBE+32w + vwAADr8BOAVTJAAAALZJREFUOE9jGDogvP3BfyiTdBDf/eB/cMM18gyI73n4f+n+///9qy+QbkBE+32w 5sxZ//97lZ4gzYDQ1ntgza3rgLZ3/v3vkn+AeAOCW+7+X7T3//8OoOaMOT//29X9/G+fsZ00F9gV3/6f Puf3f/+ub/91Ct/9t0hYT3oY6Kec/29S9OK/Stan/8aRy0g3AAQMkk78l037+l83eB55BoCAfurl/xq+ 08g3AARUPCZQZsBgBQwMANAUYJgEulBVAAAAAElFTkSuQmCC @@ -179,7 +179,7 @@ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - wAAADsABataJCQAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78 + vwAADr8BOAVTJAAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78 n73v1//OrX//u5VeJt2QyK5H/6ds+/W/ZOnf/wnT//63yT1LmiGBzQ//t659D9ZsXPLlv3T0tf/GkcuI N8Sj6v7/krnv4JoVXXpIc4F96d3/gS3PyNMMAhZ5d/7bFFwhTzMIGGbdJl8zCOik3SBf81AEDAwAoH5f oAc0QjgAAAAASUVORK5CYII= @@ -188,7 +188,7 @@ iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - wAAADsABataJCQAAASxJREFUOE9jGFygcNbz/1AmBgDJNS14/j9z4mOcahhyZz77n9B9D6sCkNyqI+// + vwAADr8BOAVTJAAAASxJREFUOE9jGFygcNbz/1AmBgDJNS14/j9z4mOcahhyZz77n9B9D6sCkNyqI+// h7c/wG1AxpSn/+ft//0/oesOhiKQ3MJ9H/4HN1zDbUBCz5P/s/f9+t+59e9/t9LLKApBctO2vP/vX30B twGRXY/+T9n263/J0r//E6b//W+TexauGCTXu/rDf6/SE7gNCGx++L917XuwZuOSL/+lo6/9N45cBtYA kqub/+6/S/4B3AZ4VN3/XzL3HVyzoksPXDFILn/am//2GdtxG2Bfevd/YMszDM0gAJLLnvz6v0XCetwG @@ -222,20 +222,38 @@ iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALxSURBVEhLtVZbTxNBFCZeYrxEjY8++KKiMfHFRAgvCv4H - o/4Bn9RoDBETzcQgRmjLtrbQVuwFygKloZRud5dLvYRCdxcewNALBJSbKbyY4BMkYtY9zTQxZqA7sP2S - L5OdPfN9mXNmzm6ZEXhiCR59bnZfftXSUwMjPONXxuN2b+9BJiA89guyGBrPrsTlta2xxV8qjPDs0eaZ - ztgjhNABvGT/aGoPV/kHFUlJr21//amqO1FJ57a9vJR80x6twkv3DiYg3otOflshGe3EsDS7bGWFu1iC - HiZv9HpEmVsiiRdjeGLhRxO7h51DTSG9JFG9hLRT1xwOUrGaFqOcym3DgcOS+uDjpUGSGC39vCxiyeJ4 - auo4Hk5kVklCtISrpvue1zZ+uPRRWd8iCdGyf2pts7bRexFL7w7U2nVrbHGDKETLxPcNFdm7q7H07qgz - vy/vn1rfJAnREnZcZ2m7gKV3B0LuY1AbkhAt+5LZZapeDr2XJERLnyjzWFIf4P5B7yWJ6aW8mPtt7eAf - YEl9gI7jEffXuXyCNE7dubQFh8y+gZEBeY4oWoyRiYVV6l790GY70twR4bjkjBqMT6rRiXmi+E6ErxPT - zd/BcvoAJ9rk7xc5aUYVlIzKJVNqky+S8HBJCXovyahAqCmk1+SJVGI5fUCM77S200RMSuVNYTR7I0OQ - AagVHDivKAtwReB+wh8IjGEpuwQ9GQ4SfU0tbWfsLD8ak9N5U15Kq80Bbph0B2EOmgxydlfDuOd/LmTv - Omvv4hWhYKqkVSsbG0UOxwkcYjzqbf7zjiA/zWuGYArm1s7oJGQAhxiPBmfgijM4lMob5neaUR0sPw0Z - wCHG47Wr55orFM8UTIHOkDiFrO3ncIjxqHd13nD1jcz/Z5rRPl/lOMR4PHvrPtUais/9a9oWjmdf2INX - cUhp8JLxVIY+ff5TMPVoO0fv2Ar8unS473YfZgLcl17N3N03PNvQwt7Er0oPMEcWfwWyBU7iqRKjrOwv - mt1Z7u+KDIgAAAAASUVORK5CYII= + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALxSURBVEhLtVZbTxNBFCZeYrxEjY8++KKiMfHFRAgviv4H + o/4Bn9RoDBETzcQgRmjLtrbQ1toLlKWUhlK63V0u9RIK3V14AENpIaDcRHgxwSdIxKx7mmlizEB3YPsl + XyY7e+b7MufMnN0yI/DYEj78zOy++LK58waM8IxfGY9bXV37maDwKCDIYmQkt5SUVzeH53+pMMKzV5tn + 2hMPEUL78JK9o7E1WhXoUyQl82Pry09V3Y5KZmXLx0vp163xKrx092CC4t342NclktF2jErTi1ZWuIMl + 6GHyxa/GlJkFkngxRkfnvjeyu9g51BTSSxLVS0g7dc3hIBWraTHKWs3hwGFJffDzUh9JjJYBXhaxZHE8 + MbUdjaayyyQhWsJV033PaxreX/ggr22ShGjZM766UdPgO4+ldwZq6bg5PL9OFKJl6tu6iuyhaiy9M2rN + 78p7xtc2SEK0hB3XWjznsPTOQMh9BGpDEqJldzq3SNXLofeShGjpF2UeS+oD3D/ovSQxvZTnV35b2/j7 + WFIfoON4xb11Lr8gjVB3Lm3BAbO/d7BXniGKFmNsdG6Zulc/sNkONbXFOC49qYaTY2p8dJYovh3h68SE + +NtYTh/gRJsCPSInTaqCklW5dEZt9MdSXi4tQe8lGRUINYX0mryxSiynD4jxn9R2mkpImbwpjGZfrB8y + ALWCA+cTZQGuCNxP+AOBMSrlFqAnw0Gir6nFc8rO8kMJeSpvyktTalOQGyDdQZiDJoOcoWoYd/3Phewd + p+0dvCIUTJUp1comhpDDcQyHGI86W+CsI8xP8JohmIK5tT0+BhnAIcaj3hm85Az3Z/KG+Z1mVQfLT0AG + cIjxeOXqvOKKJLMFU6AzIo4ja+sZHGI86lzt11zdg7P/mWa1z1c5DjEeT9+4T7REkjP/mnqiydxze/gy + DikNXjDeysjHT38Kpl5t5+gtW4Fflw733O6DTJD73KWZu7sHpuub2ev4VekB5sgSqEC24HE8VWKUlf0F + G4pZ4ZTG6PwAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALUSURBVFhH7dX/SxNxGMBxf+uf6Mf+jYiIZAhFkhZhBKU/ + TGbWD35Za+ZuFS7H9LYytfVlNTan2LbcEpdZkRrYN7IIColZUAh9ISqs22172rM+t5Z3t925z2XB3vKg + ewa7F9x9XMV/lTnY6zoe6XOXOsaQY7wx0LGZfCy9rsyE40Ah39w1YK67uOYhZgv5aDrRAvrnxmAiPglM + 1MkZ/MxW8vGlRxN4Y3GKPpI2ECcWvwnWcRcdpBZAqkitgNSQWgKpILUG4pSEpAUM3I/C4KxPds5Oe0Hv + PZYgl1UeLaCS8FrkssorA/MqA0ttzYEcnwDv3TCk02my+bM1BSLuiM8OtvAA2YjTDBh7Mg0/eI68Eifg + ukL9kEqnyFacZkD7mBv058yw9Pk92fxOKQ7TDIhFH92CXT1N8PDVM7IB4JM8mIcccOLqGUimkmQrn6ZA + 7OnrF7C7txkCsxFIqMRhmgMxvM2N7o4sVMltzS/wYOxdVW29EYdcvnhqgdg3bhkckQvAJRNkoyw2dPHr + QVP3W4Pp1FLltr06QiicWiCfuZ2dIyzUOAzZ3/haSR8+foKG1o7U+dEpwKnTt73cpKteTxjyqQEKuKOZ + Z2+Z+577G5/HQvF8EoyMHQYCsSwOZ3A4BtvrGu9t0OnWEYp0SoH5OAEktZPKxg4CeymUwwnDesKpqpr6 + UUKRTglQgOCsvKXCe5YRJ6QzPysbDkahq88nwgljdV7+UrXzQDvhiCsGzOGG5Z833AfnJkTfwY/nn4PZ + 1icJy58mk03+0BQDWkdPF8TJhYeipdMuCZIa2UNTDDg5P6Mah4eifcWhKDZ4aKqlDo3SQ6ImxsaCoc0K + ppOu3HT3+0UofP4aDlkWhNnTcPjNxsraIUL7lRZAqVotPSLg/iZz8a++MpBUBpbaqoEtI90ec5ANaDnO + O57beiOTWBXwb4WYfxpYuWPfYv7/PBzckbfzqqj4CdOAWx6PBjF3AAAAAElFTkSuQmCC @@ -282,25 +300,25 @@ iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAQjSURBVEhLtVdbT1NZGD1xxjg/wUsmceLddy+JD75OdDKI - YioKxdIq9YpipQqSg1WR9gCtWkTEKgi03tAJOlSKDSBtaakKzEwsKtqCipcoBWb0TWvXYW96hOpQOa5k - pyf51v5W9+W7bCZWrF176Yff9/4xfU1O/ZLVOfXL4rJv/rycbfyRmMWFhG2YKyt0cVtLOu27Tb6eXaYH - /exZ38eDNX2hzLJ/3idq7CsIVRxI2MaZ8mNey77zj97q6oIhzjowZhy+9iq0XtPwG5kycUh1TpWq4uEz - zhpdkI7RwlJtiz39VGdg9EjKd/SuybHGEdpY4AxTda7S3Oq+d0IBrDjT0jO4o/Rv1xZju0VhaCtTGDym - TQZ3bQJ7azGZzmwr6awXzsNQlQdeJnPOZEKJDojm1XZ/oJN0dQMhdUX389RCT6kkr2EuoX0RY4WDIWlB - ay0xRwe2V7hS7Z/9obTj3uYkrvkXQvlfRFtxRnXXu5R8505C+Ry4SMNnGhGV69uu/rqjbgqhjAtUWG0J - BPNv9I+Iq8p9vVEXoDC4L9CLhO1NO3GnKVZRAMI406T8FrnS2O6iwvCpKPJWEtowNmjs8xAylIQzjWV7 - hdhw1NGUxDnX4XuVpmkBfFG/qvInLxM1tjk8EZBxLo7GKX5lRZ5TxBQz4tTWmeSTh0LvORsJybDvcCIi - JoZBRqL/KtvsH1ot/FcTBCIh0+wfpP63FHfYeAPiFmmQGnaWdDh5g4jYfvIvN/UPLT63r8y6PmN/xZMB - alAa710gfNGgPH7vIvW/v8I/gCLDxLO2pQdrukYSRqreW0r4ogE+qX8Ul/gs21IG5S23xvddhTcZ2k5T - /7lXfB/ic+oW8VstPPw0o1f8rS5uv0z9o6SuUN2YymzefGey8HLhIhC+aBBeroyyLj8uNG9Qnmy/RQ2Z - 5sCgmOGUyDbOzzb3DFH/W0s6GogpfPgF7gJhkCPoiYnH6KQQC+RFnjPC5CTlnFpiYpiEA/Z5eyofv6b/ - Cmku4cjthbAh/SEN8sQYgZZJXfngBfWbUfX4TULezdnEPAy53mNBIqekcJFwJh5tku6tetSHxE9o40Y4 - SfwEHxGfQVS7KmKOQKKzz9p97v5TKoySpjYHgviOVRiiMr27FqWV+ttzztcrCXekhPI5UrQOZW6N/19K - piMWYWyv0njXIRRlr3T/Jy1oSSeU6EgpbL0euWjjF5ZobAvkhR4TzlR4ZGijUjjH16tdsrZZgjMVimII - hdHYocFDo4eGT1nccRFxesAcGKK3lw6sFKIjcRsNaD3RgkZrTdGyEhqDVhYtrVBg7AiGVOEzTda17CLT - Jo6vCWPFCBmZvq36ixfpW4HnCp4teL6g0iD3ppt8AWS/jVyrVnLIPotQxQWKOB5qeLChssVnWaexLDuJ - mMcJhvkEj8Lzq4oHQwoAAAAASUVORK5CYII= + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAQmSURBVEhLtVftT1NXHL7ZXNyf4LaYaHxh7vvUxA9+NbqI + IKRjQFlpkfqKYqETJBerQ9oLtLoiIlZAoPUNXVCpFBtgtKWlTsAtVIfawpSxZaPA5r5p7XM5h16hKpXr + k5z0Jr/n/J6el9/LYWJFcvKlD7fm/fjp9qK2dYlFbRviC28t3ch2LCJmcSFh21fLyl3crqoB+wGTb3i/ + 6cE4axp8caR5NJRf8+v/KRr7ZkIVBxK2Y5n8hNfy3fmhf3StwRBnnZgzjl37M/SNpv0rMmXhkOqcKlX9 + b084a3RBOmYLS7Xd9pzTA4HZI63UMbK9yBpPaHOBM8zUuaqLm0afCQWw4nzL8OTe6l9cO419FoWht0Zh + 8JiyDO6WJPb2WjKd2V010Cach6GqC4ylc850QokOiJa0DD2nk3StEyF1/cOnmeWeaklJ+2pCey3mCgdD + 0rKeFmKODmyvcKXam+Oh7JPerjSuazmhvBXRVpzbdP9ZRqlzH6G8Clyk6TONiMr1vVc37W1dTCjzAhVW + WwLB0hvjM+KqOt9I1AUoDO4L9CJhe7N/uNMZqygAYZxpWmm3XGnsc1Fh+FRUeBsIbRqpGnscQoaScKax + bK8QqccdnWmc82t8b9N0roEv6ldV93gsRWNbxRMBGefiaJziV1bhOU1MMSNebV1GPnko9J5zkZAM+w4n + ImJiGGQk+q8Kzf6pROG/WiAQCflm/yT1v7Oy38YbELdIg9Swr6rfyRtExJ5T99zUP7T43L6l4Ppnh+of + T1CD0nj3AuGLBuXJuxep/0P1/gkUGSaBta0/0uybSRiZem814YsG+KT+UVwSCmzrGZS34ubB9yqcZeg9 + Q/0XXxl8nlDU+iW/1cLDzzZ6xd/qyr7L1D9K6mbVjSXMjh13PhJeLlwEwhcNwsuVW3PfjwvNG5Sn+m5T + Q745MClmOKWwHZ8XmoenqP9dVf3txBQ+/DJ3mTDIEfTExGN2UogF8grPWWFyknJOLTExTNJhe9zBhkd/ + 0X+FNJf0/U9fwIb0hzTIE2MEWiZ1w4M/qN/cxkd/J5XcWknM05DrPRYkckoKFwlnyvFOaV7j0CgSP6HN + G+Ek8TF8RHwGUe0aiTkCic6+4kDt4O9UGCVNbQ4E8R2rMERlencLSiv1d7DWNyIJd6SE8ioytA5lcbP/ + X0qmIxZhbK/S+LNDKMpeefiftKw7h1CiI6O853rkos1fWKKxrZGXe0w4U+GRoY3K4Bxvrnbp2i4JzlQo + iiEURmOHBg+NHho+ZWX/RcTpYXNgit5eOrBSiM7EbTSg9UQLGq01RctKaAxaWbS0QoG5IxhShc80Xde9 + n0xbON4kjBUjZGT63qbXXqR3BZ4reLbg+YJKg9ybY/IFkP2+5Xq0kqP2FYQqLlDE8VDDgw2VLaHA+gnL + sh8Q8zzBMC8BQcHzoN65zegAAAAASUVORK5CYII= diff --git a/SubProject/FCM0000/dsMSSQL.Designer.cs b/SubProject/FCM0000/dsMSSQL.Designer.cs index 98cfa66..b734334 100644 --- a/SubProject/FCM0000/dsMSSQL.Designer.cs +++ b/SubProject/FCM0000/dsMSSQL.Designer.cs @@ -10986,7 +10986,7 @@ SELECT idx, name, sid, model, manu, supply, price, memo, wuid, wdate, cate, supp [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] private void InitCommandCollection() { - this._commandCollection = new global::System.Data.SqlClient.SqlCommand[12]; + this._commandCollection = new global::System.Data.SqlClient.SqlCommand[13]; this._commandCollection[0] = new global::System.Data.SqlClient.SqlCommand(); this._commandCollection[0].Connection = this.Connection; this._commandCollection[0].CommandText = "SELECT idx, name, sid, model, manu, supply, price, memo, wuid, wdate, cate, supp" + @@ -11016,7 +11016,15 @@ SELECT idx, name, sid, model, manu, supply, price, memo, wuid, wdate, cate, supp this._commandCollection[3].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@sid", global::System.Data.SqlDbType.VarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, "sid", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[4] = new global::System.Data.SqlClient.SqlCommand(); this._commandCollection[4].Connection = this.Connection; - this._commandCollection[4].CommandText = @"SELECT bparam1, cate, disable, gcode, idx, import, iparam1, manu, memo, model, name, price, scale, sid, supply, supplyidx, unit, wdate, wuid, priceD, Storage, barcode + this._commandCollection[4].CommandText = "SELECT idx, name, sid, model, manu, supply, price, memo, wuid, wdate, cate, supp" + + "lyidx, scale, unit, disable, bparam1, iparam1, import, gcode, priceD, Storage, b" + + "arcode\r\nFROM Items\r\nWHERE (gcode = @gcode) and sid = @sid"; + this._commandCollection[4].CommandType = global::System.Data.CommandType.Text; + this._commandCollection[4].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[4].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@sid", global::System.Data.SqlDbType.VarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, "sid", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[5] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[5].Connection = this.Connection; + this._commandCollection[5].CommandText = @"SELECT bparam1, cate, disable, gcode, idx, import, iparam1, manu, memo, model, name, price, scale, sid, supply, supplyidx, unit, wdate, wuid, priceD, Storage, barcode FROM Items WHERE (sid IN (SELECT sid @@ -11024,25 +11032,25 @@ WHERE (sid IN GROUP BY sid HAVING (COUNT(*) > 1))) AND (ISNULL(sid, '') <> '') AND (gcode = @gcode) AND (ISNULL(cate, '') LIKE @cate) ORDER BY sid, name, idx"; - this._commandCollection[4].CommandType = global::System.Data.CommandType.Text; - this._commandCollection[4].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[4].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@cate", global::System.Data.SqlDbType.VarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[5] = new global::System.Data.SqlClient.SqlCommand(); - this._commandCollection[5].Connection = this.Connection; - this._commandCollection[5].CommandText = @"SELECT bparam1, cate, disable, gcode, idx, import, iparam1, manu, memo, model, name, price, scale, sid, supply, supplyidx, unit, wdate, wuid, priceD, Storage, barcode + this._commandCollection[5].CommandType = global::System.Data.CommandType.Text; + this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@cate", global::System.Data.SqlDbType.VarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[6] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[6].Connection = this.Connection; + this._commandCollection[6].CommandText = @"SELECT bparam1, cate, disable, gcode, idx, import, iparam1, manu, memo, model, name, price, scale, sid, supply, supplyidx, unit, wdate, wuid, priceD, Storage, barcode FROM Items WHERE (gcode = @code) AND (ISNULL(cate, N'') LIKE @cate) AND (ISNULL(name, N'') LIKE @search OR ISNULL(model, N'') LIKE @search OR ISNULL(sid, N'') LIKE @search OR ISNULL(manu, N'') LIKE @search) ORDER BY name, idx"; - this._commandCollection[5].CommandType = global::System.Data.CommandType.Text; - this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@code", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@cate", global::System.Data.SqlDbType.VarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[5].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@search", global::System.Data.SqlDbType.NVarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[6] = new global::System.Data.SqlClient.SqlCommand(); - this._commandCollection[6].Connection = this.Connection; - this._commandCollection[6].CommandText = @"SELECT bparam1, cate, disable, gcode, idx, import, iparam1, manu, memo, model, name, price, scale, sid, supply, supplyidx, unit, wdate, wuid, priceD, Storage, barcode + this._commandCollection[6].CommandType = global::System.Data.CommandType.Text; + this._commandCollection[6].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@code", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[6].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@cate", global::System.Data.SqlDbType.VarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[6].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@search", global::System.Data.SqlDbType.NVarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[7] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[7].Connection = this.Connection; + this._commandCollection[7].CommandText = @"SELECT bparam1, cate, disable, gcode, idx, import, iparam1, manu, memo, model, name, price, scale, sid, supply, supplyidx, unit, wdate, wuid, priceD, Storage, barcode FROM Items WHERE (ISNULL(name, N'') LIKE @search OR ISNULL(sid, N'') LIKE @search OR @@ -11054,12 +11062,12 @@ WHERE (ISNULL(name, N'') LIKE @search OR ISNULL(model, N'') LIKE @search OR ISNULL(memo, N'') LIKE @search) AND (gcode = @gcode) ORDER BY name, idx"; - this._commandCollection[6].CommandType = global::System.Data.CommandType.Text; - this._commandCollection[6].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@search", global::System.Data.SqlDbType.NVarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[6].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[7] = new global::System.Data.SqlClient.SqlCommand(); - this._commandCollection[7].Connection = this.Connection; - this._commandCollection[7].CommandText = @"SELECT Storage, barcode, bparam1, cate, disable, gcode, idx, import, iparam1, manu, memo, model, name, price, priceD, scale, sid, supply, supplyidx, unit, wdate, wuid + this._commandCollection[7].CommandType = global::System.Data.CommandType.Text; + this._commandCollection[7].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@search", global::System.Data.SqlDbType.NVarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[7].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[8] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[8].Connection = this.Connection; + this._commandCollection[8].CommandText = @"SELECT Storage, barcode, bparam1, cate, disable, gcode, idx, import, iparam1, manu, memo, model, name, price, priceD, scale, sid, supply, supplyidx, unit, wdate, wuid FROM Items WHERE (ISNULL(name, N'') LIKE @search OR ISNULL(sid, N'') LIKE @search OR @@ -11071,41 +11079,41 @@ WHERE (ISNULL(name, N'') LIKE @search OR ISNULL(model, N'') LIKE @search OR ISNULL(memo, N'') LIKE @search) AND (gcode = @gcode) AND (ISNULL(disable, 0) = 0) ORDER BY name, idx"; - this._commandCollection[7].CommandType = global::System.Data.CommandType.Text; - this._commandCollection[7].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@search", global::System.Data.SqlDbType.NVarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[7].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[8] = new global::System.Data.SqlClient.SqlCommand(); - this._commandCollection[8].Connection = this.Connection; - this._commandCollection[8].CommandText = "SELECT Storage\r\nFROM Items\r\nWHERE (gcode = @gcode) AND (ISNULL(disable, 0) " + - "= 0) AND (ISNULL(Storage, \'\') <> \'\')\r\nGROUP BY Storage\r\nORDER BY Storage"; this._commandCollection[8].CommandType = global::System.Data.CommandType.Text; + this._commandCollection[8].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@search", global::System.Data.SqlDbType.NVarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[8].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[9] = new global::System.Data.SqlClient.SqlCommand(); this._commandCollection[9].Connection = this.Connection; - this._commandCollection[9].CommandText = "SELECT bparam1, cate, disable, gcode, idx, import, iparam1, manu, memo, model, n" + - "ame, price, scale, sid, supply, supplyidx, unit, wdate, wuid, priceD, Storage, b" + - "arcode\r\nFROM Items\r\nWHERE (idx = @idx)"; + this._commandCollection[9].CommandText = "SELECT Storage\r\nFROM Items\r\nWHERE (gcode = @gcode) AND (ISNULL(disable, 0) " + + "= 0) AND (ISNULL(Storage, \'\') <> \'\')\r\nGROUP BY Storage\r\nORDER BY Storage"; this._commandCollection[9].CommandType = global::System.Data.CommandType.Text; - this._commandCollection[9].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@idx", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 0, 0, "idx", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[9].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[10] = new global::System.Data.SqlClient.SqlCommand(); this._commandCollection[10].Connection = this.Connection; - this._commandCollection[10].CommandText = "SELECT ISNULL(idx, - 1) AS Expr1\r\nFROM Items\r\nWHERE (gcode = @gcode) AND (I" + - "SNULL(name, N\'\') = @name) AND (ISNULL(model, N\'\') = @model)"; + this._commandCollection[10].CommandText = "SELECT bparam1, cate, disable, gcode, idx, import, iparam1, manu, memo, model, n" + + "ame, price, scale, sid, supply, supplyidx, unit, wdate, wuid, priceD, Storage, b" + + "arcode\r\nFROM Items\r\nWHERE (idx = @idx)"; this._commandCollection[10].CommandType = global::System.Data.CommandType.Text; - this._commandCollection[10].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[10].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@name", global::System.Data.SqlDbType.NVarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[10].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@model", global::System.Data.SqlDbType.NVarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[10].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@idx", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.Input, 0, 0, "idx", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); this._commandCollection[11] = new global::System.Data.SqlClient.SqlCommand(); this._commandCollection[11].Connection = this.Connection; - this._commandCollection[11].CommandText = "dbo.UpdateItem"; - this._commandCollection[11].CommandType = global::System.Data.CommandType.StoredProcedure; - this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@RETURN_VALUE", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.ReturnValue, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@sid", global::System.Data.SqlDbType.VarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@name", global::System.Data.SqlDbType.NVarChar, 200, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@cate", global::System.Data.SqlDbType.VarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@disable", global::System.Data.SqlDbType.Bit, 1, global::System.Data.ParameterDirection.Input, 1, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); - this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@unit", global::System.Data.SqlDbType.VarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[11].CommandText = "SELECT ISNULL(idx, - 1) AS Expr1\r\nFROM Items\r\nWHERE (gcode = @gcode) AND (I" + + "SNULL(name, N\'\') = @name) AND (ISNULL(model, N\'\') = @model)"; + this._commandCollection[11].CommandType = global::System.Data.CommandType.Text; + this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, "gcode", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@name", global::System.Data.SqlDbType.NVarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[11].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@model", global::System.Data.SqlDbType.NVarChar, 1024, global::System.Data.ParameterDirection.Input, 0, 0, "", global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[12] = new global::System.Data.SqlClient.SqlCommand(); + this._commandCollection[12].Connection = this.Connection; + this._commandCollection[12].CommandText = "dbo.UpdateItem"; + this._commandCollection[12].CommandType = global::System.Data.CommandType.StoredProcedure; + this._commandCollection[12].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@RETURN_VALUE", global::System.Data.SqlDbType.Int, 4, global::System.Data.ParameterDirection.ReturnValue, 10, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[12].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@gcode", global::System.Data.SqlDbType.VarChar, 10, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[12].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@sid", global::System.Data.SqlDbType.VarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[12].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@name", global::System.Data.SqlDbType.NVarChar, 200, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[12].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@cate", global::System.Data.SqlDbType.VarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[12].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@disable", global::System.Data.SqlDbType.Bit, 1, global::System.Data.ParameterDirection.Input, 1, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); + this._commandCollection[12].Parameters.Add(new global::System.Data.SqlClient.SqlParameter("@unit", global::System.Data.SqlDbType.VarChar, 50, global::System.Data.ParameterDirection.Input, 0, 0, null, global::System.Data.DataRowVersion.Current, false, null, "", "", "")); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -11148,7 +11156,7 @@ ORDER BY name, idx"; [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)] - public virtual int FillDupCheck(dsMSSQL.ItemsDataTable dataTable, string gcode, string cate) { + public virtual int FillBySID(dsMSSQL.ItemsDataTable dataTable, string gcode, string sid) { this.Adapter.SelectCommand = this.CommandCollection[4]; if ((gcode == null)) { this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value; @@ -11156,6 +11164,54 @@ ORDER BY name, idx"; else { this.Adapter.SelectCommand.Parameters[0].Value = ((string)(gcode)); } + if ((sid == null)) { + this.Adapter.SelectCommand.Parameters[1].Value = global::System.DBNull.Value; + } + else { + this.Adapter.SelectCommand.Parameters[1].Value = ((string)(sid)); + } + if ((this.ClearBeforeFill == true)) { + dataTable.Clear(); + } + int returnValue = this.Adapter.Fill(dataTable); + return returnValue; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] + public virtual dsMSSQL.ItemsDataTable GetBySID(string gcode, string sid) { + this.Adapter.SelectCommand = this.CommandCollection[4]; + if ((gcode == null)) { + this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value; + } + else { + this.Adapter.SelectCommand.Parameters[0].Value = ((string)(gcode)); + } + if ((sid == null)) { + this.Adapter.SelectCommand.Parameters[1].Value = global::System.DBNull.Value; + } + else { + this.Adapter.SelectCommand.Parameters[1].Value = ((string)(sid)); + } + dsMSSQL.ItemsDataTable dataTable = new dsMSSQL.ItemsDataTable(); + this.Adapter.Fill(dataTable); + return dataTable; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] + [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)] + public virtual int FillDupCheck(dsMSSQL.ItemsDataTable dataTable, string gcode, string cate) { + this.Adapter.SelectCommand = this.CommandCollection[5]; + if ((gcode == null)) { + this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value; + } + else { + this.Adapter.SelectCommand.Parameters[0].Value = ((string)(gcode)); + } if ((cate == null)) { throw new global::System.ArgumentNullException("cate"); } @@ -11174,7 +11230,7 @@ ORDER BY name, idx"; [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] public virtual dsMSSQL.ItemsDataTable GetDupCheck(string gcode, string cate) { - this.Adapter.SelectCommand = this.CommandCollection[4]; + this.Adapter.SelectCommand = this.CommandCollection[5]; if ((gcode == null)) { this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value; } @@ -11197,7 +11253,7 @@ ORDER BY name, idx"; [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)] public virtual int FillNoImage(dsMSSQL.ItemsDataTable dataTable, string code, string cate, string search) { - this.Adapter.SelectCommand = this.CommandCollection[5]; + this.Adapter.SelectCommand = this.CommandCollection[6]; if ((code == null)) { this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value; } @@ -11228,7 +11284,7 @@ ORDER BY name, idx"; [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] public virtual dsMSSQL.ItemsDataTable GetNoImage(string code, string cate, string search) { - this.Adapter.SelectCommand = this.CommandCollection[5]; + this.Adapter.SelectCommand = this.CommandCollection[6]; if ((code == null)) { this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value; } @@ -11257,7 +11313,7 @@ ORDER BY name, idx"; [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)] public virtual int FillSearch(dsMSSQL.ItemsDataTable dataTable, string search, string gcode) { - this.Adapter.SelectCommand = this.CommandCollection[6]; + this.Adapter.SelectCommand = this.CommandCollection[7]; if ((search == null)) { throw new global::System.ArgumentNullException("search"); } @@ -11282,7 +11338,7 @@ ORDER BY name, idx"; [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] public virtual dsMSSQL.ItemsDataTable GetSearch(string search, string gcode) { - this.Adapter.SelectCommand = this.CommandCollection[6]; + this.Adapter.SelectCommand = this.CommandCollection[7]; if ((search == null)) { throw new global::System.ArgumentNullException("search"); } @@ -11305,7 +11361,7 @@ ORDER BY name, idx"; [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)] public virtual int FillSearchNoDisable(dsMSSQL.ItemsDataTable dataTable, string search, string gcode) { - this.Adapter.SelectCommand = this.CommandCollection[7]; + this.Adapter.SelectCommand = this.CommandCollection[8]; if ((search == null)) { throw new global::System.ArgumentNullException("search"); } @@ -11330,7 +11386,7 @@ ORDER BY name, idx"; [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] public virtual dsMSSQL.ItemsDataTable GetSearchNoDisable(string search, string gcode) { - this.Adapter.SelectCommand = this.CommandCollection[7]; + this.Adapter.SelectCommand = this.CommandCollection[8]; if ((search == null)) { throw new global::System.ArgumentNullException("search"); } @@ -11353,7 +11409,7 @@ ORDER BY name, idx"; [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Fill, false)] public virtual int FillStorageList(dsMSSQL.ItemsDataTable dataTable, string gcode) { - this.Adapter.SelectCommand = this.CommandCollection[8]; + this.Adapter.SelectCommand = this.CommandCollection[9]; if ((gcode == null)) { this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value; } @@ -11372,7 +11428,7 @@ ORDER BY name, idx"; [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] public virtual dsMSSQL.ItemsDataTable GetStorageList(string gcode) { - this.Adapter.SelectCommand = this.CommandCollection[8]; + this.Adapter.SelectCommand = this.CommandCollection[9]; if ((gcode == null)) { this.Adapter.SelectCommand.Parameters[0].Value = global::System.DBNull.Value; } @@ -11389,7 +11445,7 @@ ORDER BY name, idx"; [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] [global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)] public virtual dsMSSQL.ItemsDataTable GetbyIDX(int idx) { - this.Adapter.SelectCommand = this.CommandCollection[9]; + this.Adapter.SelectCommand = this.CommandCollection[10]; this.Adapter.SelectCommand.Parameters[0].Value = ((int)(idx)); dsMSSQL.ItemsDataTable dataTable = new dsMSSQL.ItemsDataTable(); this.Adapter.Fill(dataTable); @@ -12307,7 +12363,7 @@ ORDER BY name, idx"; [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] public virtual global::System.Nullable ReadIDX(string gcode, string name, string model) { - global::System.Data.SqlClient.SqlCommand command = this.CommandCollection[10]; + global::System.Data.SqlClient.SqlCommand command = this.CommandCollection[11]; if ((gcode == null)) { command.Parameters[0].Value = global::System.DBNull.Value; } @@ -12353,7 +12409,7 @@ ORDER BY name, idx"; [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")] public virtual int UpdateItem(string gcode, string sid, string name, string cate, global::System.Nullable disable, string unit) { - global::System.Data.SqlClient.SqlCommand command = this.CommandCollection[11]; + global::System.Data.SqlClient.SqlCommand command = this.CommandCollection[12]; if ((gcode == null)) { command.Parameters[1].Value = global::System.DBNull.Value; } diff --git a/SubProject/FCM0000/dsMSSQL.xsd b/SubProject/FCM0000/dsMSSQL.xsd index 3645e27..6901c64 100644 --- a/SubProject/FCM0000/dsMSSQL.xsd +++ b/SubProject/FCM0000/dsMSSQL.xsd @@ -241,6 +241,19 @@ where gcode = @gcode and sid = @sid and isnull(sid,'') <> '' + + + + SELECT idx, name, sid, model, manu, supply, price, memo, wuid, wdate, cate, supplyidx, scale, unit, disable, bparam1, iparam1, import, gcode, priceD, Storage, barcode +FROM Items +WHERE (gcode = @gcode) and sid = @sid + + + + + + + diff --git a/SubProject/FEQ0000/FEQ0000.csproj b/SubProject/FEQ0000/FEQ0000.csproj index a9d1e52..ea66a85 100644 --- a/SubProject/FEQ0000/FEQ0000.csproj +++ b/SubProject/FEQ0000/FEQ0000.csproj @@ -172,12 +172,24 @@ rpt_equipmentAll.cs + + Form + + + fColumnFilter.cs + Form fItemin.cs + + Form + + + fUserExportColumn.cs + @@ -341,9 +353,15 @@ rpt_equipmentAll.cs + + fColumnFilter.cs + fItemin.cs + + fUserExportColumn.cs + ResXFileCodeGenerator diff --git a/SubProject/FEQ0000/PurchaseNR/fMailForm.cs b/SubProject/FEQ0000/PurchaseNR/fMailForm.cs index 56d263d..efe945d 100644 --- a/SubProject/FEQ0000/PurchaseNR/fMailForm.cs +++ b/SubProject/FEQ0000/PurchaseNR/fMailForm.cs @@ -20,15 +20,30 @@ namespace FEQ0000.Purchase Properties.Settings.Default["EEEntities"] = FCOMMON.info.CS; Cate = cate; } + public fMailForm(string subject, string body, string to, string cc, string bcc) + { + InitializeComponent(); + Properties.Settings.Default["gwcs"] = FCOMMON.info.CS; + Properties.Settings.Default["EEEntities"] = FCOMMON.info.CS; + Cate = ""; + this.tbSubject.Text = subject; + this.tbTo.Text = to; + this.tbCC.Text = cc; + this.tbBcc.Text = bcc; + htmlEditor1.Html = body; + } private void fMailForm_Load(object sender, EventArgs e) { - var db = new DataClasses1DataContext(); - - var mailform = db.MailForm.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.cate == Cate).ToList(); - this.cmbForm.DataSource = mailform; - this.cmbForm.DisplayMember = "title"; - this.cmbForm.ValueMember = "idx"; + if (Cate.isEmpty() == false) + { + var db = new DataClasses1DataContext(); + var mailform = db.MailForm.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.cate == Cate).ToList(); + this.cmbForm.DataSource = mailform; + this.cmbForm.DisplayMember = "title"; + this.cmbForm.ValueMember = "idx"; + } + else this.cmbForm.Enabled = false; } private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) @@ -43,6 +58,7 @@ namespace FEQ0000.Purchase private void button1_Click(object sender, EventArgs e) { + DialogResult = DialogResult.OK; } } diff --git a/SubProject/FEQ0000/PurchaseNR/fPurchaseNR.Designer.cs b/SubProject/FEQ0000/PurchaseNR/fPurchaseNR.Designer.cs index fb51f50..8c0f8bd 100644 --- a/SubProject/FEQ0000/PurchaseNR/fPurchaseNR.Designer.cs +++ b/SubProject/FEQ0000/PurchaseNR/fPurchaseNR.Designer.cs @@ -147,9 +147,10 @@ this.btViewDel = new System.Windows.Forms.ToolStripButton(); this.toolStripButton3 = new System.Windows.Forms.ToolStripButton(); this.fpSpread1 = new FarPoint.Win.Spread.FpSpread(); + this.fpSpread1_Sheet1 = new FarPoint.Win.Spread.SheetView(); this.label1 = new System.Windows.Forms.Label(); this.label2 = new System.Windows.Forms.Label(); - this.fpSpread1_Sheet1 = new FarPoint.Win.Spread.SheetView(); + this.사용자내보내기ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); ((System.ComponentModel.ISupportInitialize)(this.dsPurchase)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.bn)).BeginInit(); @@ -487,6 +488,7 @@ this.columnSizeToolStripMenuItem, this.toolStripMenuItem3, this.exportDataToolStripMenuItem, + this.사용자내보내기ToolStripMenuItem, this.toolStripMenuItem4, this.상태일괄변경ToolStripMenuItem, this.입고ToolStripMenuItem, @@ -498,7 +500,7 @@ this.sC검색ToolStripMenuItem, this.cRCF검색ToolStripMenuItem}); this.cm1.Name = "contextMenuStrip1"; - this.cm1.Size = new System.Drawing.Size(314, 442); + this.cm1.Size = new System.Drawing.Size(314, 506); this.cm1.Opening += new System.ComponentModel.CancelEventHandler(this.cm1_Opening); // // columnSizeToolStripMenuItem @@ -854,30 +856,6 @@ this.fpSpread1.TabIndex = 4; this.fpSpread1.EditModeOff += new System.EventHandler(this.fpSpread1_EditModeOff); // - // label1 - // - this.label1.Dock = System.Windows.Forms.DockStyle.Bottom; - this.label1.Font = new System.Drawing.Font("맑은 고딕", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129))); - this.label1.Location = new System.Drawing.Point(0, 639); - this.label1.Name = "label1"; - this.label1.Padding = new System.Windows.Forms.Padding(5, 0, 0, 0); - this.label1.Size = new System.Drawing.Size(1334, 23); - this.label1.TabIndex = 6; - this.label1.Text = "--"; - this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // - // label2 - // - this.label2.Dock = System.Windows.Forms.DockStyle.Bottom; - this.label2.Font = new System.Drawing.Font("맑은 고딕", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129))); - this.label2.Location = new System.Drawing.Point(0, 616); - this.label2.Name = "label2"; - this.label2.Padding = new System.Windows.Forms.Padding(5, 0, 0, 0); - this.label2.Size = new System.Drawing.Size(1334, 23); - this.label2.TabIndex = 7; - this.label2.Text = "--"; - this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; - // // fpSpread1_Sheet1 // this.fpSpread1_Sheet1.Reset(); @@ -1220,6 +1198,37 @@ this.fpSpread1_Sheet1.ShowRowSelector = true; this.fpSpread1_Sheet1.ReferenceStyle = FarPoint.Win.Spread.Model.ReferenceStyle.A1; // + // label1 + // + this.label1.Dock = System.Windows.Forms.DockStyle.Bottom; + this.label1.Font = new System.Drawing.Font("맑은 고딕", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129))); + this.label1.Location = new System.Drawing.Point(0, 639); + this.label1.Name = "label1"; + this.label1.Padding = new System.Windows.Forms.Padding(5, 0, 0, 0); + this.label1.Size = new System.Drawing.Size(1334, 23); + this.label1.TabIndex = 6; + this.label1.Text = "--"; + this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // label2 + // + this.label2.Dock = System.Windows.Forms.DockStyle.Bottom; + this.label2.Font = new System.Drawing.Font("맑은 고딕", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129))); + this.label2.Location = new System.Drawing.Point(0, 616); + this.label2.Name = "label2"; + this.label2.Padding = new System.Windows.Forms.Padding(5, 0, 0, 0); + this.label2.Size = new System.Drawing.Size(1334, 23); + this.label2.TabIndex = 7; + this.label2.Text = "--"; + this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + // + // 사용자내보내기ToolStripMenuItem + // + this.사용자내보내기ToolStripMenuItem.Name = "사용자내보내기ToolStripMenuItem"; + this.사용자내보내기ToolStripMenuItem.Size = new System.Drawing.Size(313, 42); + this.사용자내보내기ToolStripMenuItem.Text = "사용자 내보내기"; + this.사용자내보내기ToolStripMenuItem.Click += new System.EventHandler(this.사용자내보내기ToolStripMenuItem_Click); + // // fPurchaseNR // this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); @@ -1334,5 +1343,6 @@ private System.Windows.Forms.ToolStripMenuItem 엑셀에서열기ToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem 상태일괄변경ToolStripMenuItem; private FarPoint.Win.Spread.SheetView fpSpread1_Sheet1; + private System.Windows.Forms.ToolStripMenuItem 사용자내보내기ToolStripMenuItem; } } diff --git a/SubProject/FEQ0000/PurchaseNR/fPurchaseNR.cs b/SubProject/FEQ0000/PurchaseNR/fPurchaseNR.cs index d62326a..4c86555 100644 --- a/SubProject/FEQ0000/PurchaseNR/fPurchaseNR.cs +++ b/SubProject/FEQ0000/PurchaseNR/fPurchaseNR.cs @@ -15,6 +15,8 @@ using FEQ0000.Purchase; using FCOMMON; using NetOffice.OfficeApi; using System.Web.Services.Protocols; +using System.Diagnostics; +using FarPoint.Win.Spread.CellType; namespace FEQ0000 { @@ -1475,5 +1477,23 @@ namespace FEQ0000 상태일괄변경ToolStripMenuItem.Enabled = IsAdmin; } + + private void 사용자내보내기ToolStripMenuItem_Click(object sender, EventArgs e) + { + var cnt = this.fpSpread1_Sheet1.Columns.Count; + Dictionary cols = new Dictionary(); + foreach(FarPoint.Win.Spread.Column col in fpSpread1_Sheet1.Columns) + { + if (col.Visible == false || col.Width < 10) continue; + if (col.CellType is CheckBoxCellType) continue; + var field = col.DataField; + var label = col.Label; + cols.Add(field, col.Label); + + + } + var f = new fUserExportColumn(this.Name, cols,this.dsPurchase.Purchase,this.bs.Filter); + f.ShowDialog(); + } } } diff --git a/SubProject/FEQ0000/PurchaseNR/fPurchase_Add.Designer.cs b/SubProject/FEQ0000/PurchaseNR/fPurchase_Add.Designer.cs index 3670cfe..c831373 100644 --- a/SubProject/FEQ0000/PurchaseNR/fPurchase_Add.Designer.cs +++ b/SubProject/FEQ0000/PurchaseNR/fPurchase_Add.Designer.cs @@ -459,6 +459,7 @@ this.tbSID.Name = "tbSID"; this.tbSID.Size = new System.Drawing.Size(179, 34); this.tbSID.TabIndex = 26; + this.tbSID.TextChanged += new System.EventHandler(this.tbSID_TextChanged); // // tbPumName // diff --git a/SubProject/FEQ0000/PurchaseNR/fPurchase_Add.cs b/SubProject/FEQ0000/PurchaseNR/fPurchase_Add.cs index e98437e..94af187 100644 --- a/SubProject/FEQ0000/PurchaseNR/fPurchase_Add.cs +++ b/SubProject/FEQ0000/PurchaseNR/fPurchase_Add.cs @@ -1365,5 +1365,14 @@ namespace FEQ0000 { this.dtPrdate.Enabled = chkprdate.Checked; } + + private void tbSID_TextChanged(object sender, EventArgs e) + { + var tb = sender as TextBox; + var bgcolor = tb.Text == "신규" ? Color.Yellow : Color.Gainsboro; + btEQManu.BackColor = bgcolor; + btEQModel.BackColor = bgcolor; + btManuProc.BackColor = bgcolor; + } } } diff --git a/SubProject/FEQ0000/fColumnFilter.Designer.cs b/SubProject/FEQ0000/fColumnFilter.Designer.cs new file mode 100644 index 0000000..1a986f4 --- /dev/null +++ b/SubProject/FEQ0000/fColumnFilter.Designer.cs @@ -0,0 +1,145 @@ +namespace FEQ0000 +{ + partial class fColumnFilter + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.button1 = new System.Windows.Forms.Button(); + this.label1 = new System.Windows.Forms.Label(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.checkBox1 = new System.Windows.Forms.CheckBox(); + this.comboBox1 = new System.Windows.Forms.ComboBox(); + this.label2 = new System.Windows.Forms.Label(); + this.label3 = new System.Windows.Forms.Label(); + this.SuspendLayout(); + // + // button1 + // + this.button1.Dock = System.Windows.Forms.DockStyle.Bottom; + this.button1.Location = new System.Drawing.Point(0, 109); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(353, 47); + this.button1.TabIndex = 0; + this.button1.Text = "변경 합니다"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // label1 + // + this.label1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this.label1.Dock = System.Windows.Forms.DockStyle.Top; + this.label1.Location = new System.Drawing.Point(0, 0); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(353, 28); + this.label1.TabIndex = 1; + this.label1.Text = "label1"; + this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // textBox1 + // + this.textBox1.Font = new System.Drawing.Font("굴림", 15F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129))); + this.textBox1.Location = new System.Drawing.Point(115, 41); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(226, 30); + this.textBox1.TabIndex = 2; + // + // checkBox1 + // + this.checkBox1.AutoSize = true; + this.checkBox1.Font = new System.Drawing.Font("굴림", 20F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129))); + this.checkBox1.Location = new System.Drawing.Point(200, 81); + this.checkBox1.Name = "checkBox1"; + this.checkBox1.Size = new System.Drawing.Size(15, 14); + this.checkBox1.TabIndex = 3; + this.checkBox1.UseVisualStyleBackColor = true; + // + // comboBox1 + // + this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.comboBox1.Font = new System.Drawing.Font("굴림", 15F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129))); + this.comboBox1.FormattingEnabled = true; + this.comboBox1.Items.AddRange(new object[] { + "=", + "<>"}); + this.comboBox1.Location = new System.Drawing.Point(9, 41); + this.comboBox1.Name = "comboBox1"; + this.comboBox1.Size = new System.Drawing.Size(100, 28); + this.comboBox1.TabIndex = 4; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(12, 82); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(181, 12); + this.label2.TabIndex = 5; + this.label2.Text = "위 조건에 맞는 데이터의 선택을 "; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129))); + this.label3.Location = new System.Drawing.Point(221, 82); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(41, 12); + this.label3.TabIndex = 6; + this.label3.Text = "상태로"; + // + // fColumnFilter + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(353, 156); + this.Controls.Add(this.label3); + this.Controls.Add(this.label2); + this.Controls.Add(this.comboBox1); + this.Controls.Add(this.checkBox1); + this.Controls.Add(this.textBox1); + this.Controls.Add(this.label1); + this.Controls.Add(this.button1); + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "fColumnFilter"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "fColumnFilter"; + this.Load += new System.EventHandler(this.fColumnFilter_Load); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Button button1; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label label3; + public System.Windows.Forms.TextBox textBox1; + public System.Windows.Forms.CheckBox checkBox1; + public System.Windows.Forms.ComboBox comboBox1; + } +} \ No newline at end of file diff --git a/SubProject/FEQ0000/fColumnFilter.cs b/SubProject/FEQ0000/fColumnFilter.cs new file mode 100644 index 0000000..a7a950c --- /dev/null +++ b/SubProject/FEQ0000/fColumnFilter.cs @@ -0,0 +1,35 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace FEQ0000 +{ + public partial class fColumnFilter : Form + { + public fColumnFilter(string col) + { + InitializeComponent(); + this.label1.Text = $"{col} 열의 값에 대한 필터를 적용 합니다"; + } + + private void fColumnFilter_Load(object sender, EventArgs e) + { + comboBox1.SelectedIndex = 0; + this.Show(); + textBox1.ImeMode = ImeMode.Hangul; + textBox1.Focus(); + textBox1.SelectAll(); + } + + private void button1_Click(object sender, EventArgs e) + { + DialogResult = DialogResult.OK; + } + } +} diff --git a/SubProject/FEQ0000/fColumnFilter.resx b/SubProject/FEQ0000/fColumnFilter.resx new file mode 100644 index 0000000..29dcb1b --- /dev/null +++ b/SubProject/FEQ0000/fColumnFilter.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/SubProject/FEQ0000/fUserExportColumn.Designer.cs b/SubProject/FEQ0000/fUserExportColumn.Designer.cs new file mode 100644 index 0000000..e6ee039 --- /dev/null +++ b/SubProject/FEQ0000/fUserExportColumn.Designer.cs @@ -0,0 +1,266 @@ +namespace FEQ0000 +{ + partial class fUserExportColumn + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fUserExportColumn)); + this.listView1 = new System.Windows.Forms.ListView(); + this.toolStrip1 = new System.Windows.Forms.ToolStrip(); + this.toolStripButton1 = new System.Windows.Forms.ToolStripButton(); + this.toolStripButton2 = new System.Windows.Forms.ToolStripButton(); + this.toolStripButton3 = new System.Windows.Forms.ToolStripButton(); + this.button1 = new System.Windows.Forms.Button(); + this.button2 = new System.Windows.Forms.Button(); + this.bs = new System.Windows.Forms.BindingSource(this.components); + this.listView2 = new System.Windows.Forms.ListView(); + this.columnHeader1 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); + this.button3 = new System.Windows.Forms.Button(); + this.panel1 = new System.Windows.Forms.Panel(); + this.toolStrip2 = new System.Windows.Forms.ToolStrip(); + this.toolStripButton4 = new System.Windows.Forms.ToolStripButton(); + this.toolStripButton5 = new System.Windows.Forms.ToolStripButton(); + this.toolStripButton6 = new System.Windows.Forms.ToolStripButton(); + this.button4 = new System.Windows.Forms.Button(); + this.toolStrip1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit(); + this.panel1.SuspendLayout(); + this.toolStrip2.SuspendLayout(); + this.SuspendLayout(); + // + // listView1 + // + this.listView1.Dock = System.Windows.Forms.DockStyle.Fill; + this.listView1.HideSelection = false; + this.listView1.Location = new System.Drawing.Point(230, 25); + this.listView1.Name = "listView1"; + this.listView1.Size = new System.Drawing.Size(860, 593); + this.listView1.TabIndex = 1; + this.listView1.UseCompatibleStateImageBehavior = false; + this.listView1.View = System.Windows.Forms.View.Details; + // + // toolStrip1 + // + this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripButton1, + this.toolStripButton2, + this.toolStripButton3}); + this.toolStrip1.Location = new System.Drawing.Point(0, 0); + this.toolStrip1.Name = "toolStrip1"; + this.toolStrip1.Size = new System.Drawing.Size(1090, 25); + this.toolStrip1.TabIndex = 2; + this.toolStrip1.Text = "toolStrip1"; + // + // toolStripButton1 + // + this.toolStripButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton1.Image"))); + this.toolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton1.Name = "toolStripButton1"; + this.toolStripButton1.Size = new System.Drawing.Size(63, 22); + this.toolStripButton1.Text = "refresh"; + this.toolStripButton1.Click += new System.EventHandler(this.toolStripButton1_Click); + // + // toolStripButton2 + // + this.toolStripButton2.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.toolStripButton2.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton2.Image"))); + this.toolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton2.Name = "toolStripButton2"; + this.toolStripButton2.Size = new System.Drawing.Size(96, 22); + this.toolStripButton2.Text = "save to excel"; + this.toolStripButton2.Click += new System.EventHandler(this.toolStripButton2_Click); + // + // toolStripButton3 + // + this.toolStripButton3.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right; + this.toolStripButton3.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton3.Image"))); + this.toolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton3.Name = "toolStripButton3"; + this.toolStripButton3.Size = new System.Drawing.Size(110, 22); + this.toolStripButton3.Text = "save to outlook"; + this.toolStripButton3.Click += new System.EventHandler(this.toolStripButton3_Click); + // + // button1 + // + this.button1.Dock = System.Windows.Forms.DockStyle.Top; + this.button1.Location = new System.Drawing.Point(0, 0); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(89, 70); + this.button1.TabIndex = 3; + this.button1.Text = "up"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // button2 + // + this.button2.Dock = System.Windows.Forms.DockStyle.Top; + this.button2.Location = new System.Drawing.Point(0, 70); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(89, 70); + this.button2.TabIndex = 3; + this.button2.Text = "down"; + this.button2.UseVisualStyleBackColor = true; + this.button2.Click += new System.EventHandler(this.button2_Click); + // + // listView2 + // + this.listView2.CheckBoxes = true; + this.listView2.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { + this.columnHeader1}); + this.listView2.Dock = System.Windows.Forms.DockStyle.Left; + this.listView2.HideSelection = false; + this.listView2.Location = new System.Drawing.Point(0, 25); + this.listView2.Name = "listView2"; + this.listView2.Size = new System.Drawing.Size(141, 618); + this.listView2.TabIndex = 5; + this.listView2.UseCompatibleStateImageBehavior = false; + this.listView2.View = System.Windows.Forms.View.Details; + // + // columnHeader1 + // + this.columnHeader1.Width = 122; + // + // button3 + // + this.button3.Dock = System.Windows.Forms.DockStyle.Bottom; + this.button3.Location = new System.Drawing.Point(0, 548); + this.button3.Name = "button3"; + this.button3.Size = new System.Drawing.Size(89, 70); + this.button3.TabIndex = 6; + this.button3.Text = "prewview"; + this.button3.UseVisualStyleBackColor = true; + this.button3.Click += new System.EventHandler(this.button3_Click); + // + // panel1 + // + this.panel1.Controls.Add(this.button4); + this.panel1.Controls.Add(this.button3); + this.panel1.Controls.Add(this.button2); + this.panel1.Controls.Add(this.button1); + this.panel1.Dock = System.Windows.Forms.DockStyle.Left; + this.panel1.Location = new System.Drawing.Point(141, 25); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(89, 618); + this.panel1.TabIndex = 7; + this.panel1.Paint += new System.Windows.Forms.PaintEventHandler(this.panel1_Paint); + // + // toolStrip2 + // + this.toolStrip2.Dock = System.Windows.Forms.DockStyle.Bottom; + this.toolStrip2.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripButton4, + this.toolStripButton5, + this.toolStripButton6}); + this.toolStrip2.Location = new System.Drawing.Point(230, 618); + this.toolStrip2.Name = "toolStrip2"; + this.toolStrip2.Size = new System.Drawing.Size(860, 25); + this.toolStrip2.TabIndex = 8; + this.toolStrip2.Text = "toolStrip2"; + // + // toolStripButton4 + // + this.toolStripButton4.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton4.Image"))); + this.toolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton4.Name = "toolStripButton4"; + this.toolStripButton4.Size = new System.Drawing.Size(75, 22); + this.toolStripButton4.Text = "전체선택"; + this.toolStripButton4.Click += new System.EventHandler(this.toolStripButton4_Click); + // + // toolStripButton5 + // + this.toolStripButton5.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton5.Image"))); + this.toolStripButton5.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton5.Name = "toolStripButton5"; + this.toolStripButton5.Size = new System.Drawing.Size(75, 22); + this.toolStripButton5.Text = "선택반전"; + this.toolStripButton5.Click += new System.EventHandler(this.toolStripButton5_Click); + // + // toolStripButton6 + // + this.toolStripButton6.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton6.Image"))); + this.toolStripButton6.ImageTransparentColor = System.Drawing.Color.Magenta; + this.toolStripButton6.Name = "toolStripButton6"; + this.toolStripButton6.Size = new System.Drawing.Size(75, 22); + this.toolStripButton6.Text = "선택해제"; + this.toolStripButton6.Click += new System.EventHandler(this.toolStripButton6_Click); + // + // button4 + // + this.button4.Dock = System.Windows.Forms.DockStyle.Top; + this.button4.Location = new System.Drawing.Point(0, 140); + this.button4.Name = "button4"; + this.button4.Size = new System.Drawing.Size(89, 70); + this.button4.TabIndex = 7; + this.button4.Text = "Filter"; + this.button4.UseVisualStyleBackColor = true; + this.button4.Click += new System.EventHandler(this.button4_Click); + // + // fUserExportColumn + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(1090, 643); + this.Controls.Add(this.listView1); + this.Controls.Add(this.toolStrip2); + this.Controls.Add(this.panel1); + this.Controls.Add(this.listView2); + this.Controls.Add(this.toolStrip1); + this.Name = "fUserExportColumn"; + this.Text = "fUserExportColumn"; + this.Load += new System.EventHandler(this.fUserExportColumn_Load); + this.toolStrip1.ResumeLayout(false); + this.toolStrip1.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit(); + this.panel1.ResumeLayout(false); + this.toolStrip2.ResumeLayout(false); + this.toolStrip2.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + private System.Windows.Forms.ListView listView1; + private System.Windows.Forms.ToolStrip toolStrip1; + private System.Windows.Forms.ToolStripButton toolStripButton1; + private System.Windows.Forms.Button button1; + private System.Windows.Forms.Button button2; + private System.Windows.Forms.BindingSource bs; + private System.Windows.Forms.ListView listView2; + private System.Windows.Forms.ColumnHeader columnHeader1; + private System.Windows.Forms.Button button3; + private System.Windows.Forms.ToolStripButton toolStripButton2; + private System.Windows.Forms.ToolStripButton toolStripButton3; + private System.Windows.Forms.Panel panel1; + private System.Windows.Forms.ToolStrip toolStrip2; + private System.Windows.Forms.ToolStripButton toolStripButton4; + private System.Windows.Forms.ToolStripButton toolStripButton5; + private System.Windows.Forms.ToolStripButton toolStripButton6; + private System.Windows.Forms.Button button4; + } +} \ No newline at end of file diff --git a/SubProject/FEQ0000/fUserExportColumn.cs b/SubProject/FEQ0000/fUserExportColumn.cs new file mode 100644 index 0000000..f46fa24 --- /dev/null +++ b/SubProject/FEQ0000/fUserExportColumn.cs @@ -0,0 +1,530 @@ +using arUtil; +using FarPoint.Win.Spread; +using FCOMMON; +using GrapeCity.CalcEngine; +using Microsoft.Reporting.Map.WebForms.BingMaps; + +using NetOffice; +using Outlook = NetOffice.OutlookApi; +using NetOffice.OutlookApi.Enums; +using NetOffice.OfficeApi; + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Diagnostics; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using static System.Windows.Forms.VisualStyles.VisualStyleElement; +using libxl; +using FarPoint.Excel; + +namespace FEQ0000 +{ + public partial class fUserExportColumn : Form + { + string presavefn = ""; + //this.Name, cols,this.dsPurchase.Purchase,this.bs.Filter + string Source = ""; + dsPurchase.PurchaseDataTable dt; + public fUserExportColumn(string source, Dictionary cols, DataTable dt_, string filter) + { + InitializeComponent(); + this.StartPosition = FormStartPosition.CenterScreen; + presavefn = Util.MakeFilePath("exportsetting", source); + var prelists = ""; + if (System.IO.File.Exists(presavefn)) prelists = System.IO.File.ReadAllText(presavefn, System.Text.Encoding.Default); + // Dictionary preitems = new Dictionary(); + this.listView2.Items.Clear(); + this.listView1.FullRowSelect = true; + this.listView1.CheckBoxes = true; + + Source = source; + dt = new dsPurchase.PurchaseDataTable(); + this.dt.Merge(dt_); + this.bs.DataSource = dt; + this.bs.Filter = filter; + + if (prelists.Length > 0) + { + var itemsbu = prelists.Split('\n'); + foreach (var item in prelists.Split('\n')) + { + if (item.isEmpty()) continue; + var items = item.Split('|'); + var chk = items[0] == "1"; + var field = items[1]; + var title = items[2].Replace("\r", ""); + + var lv = listView2.Items.Add(title); + lv.Tag = field; + lv.Checked = chk; + + } + } + else + { + + foreach (var item in cols) + { + var title = item.Value.Replace("\n", "").Replace("\r", ""); + var lv = listView2.Items.Add(title); + lv.Tag = item.Key; + } + } + + + listView2.FullRowSelect = true; + listView2.HideSelection = false; + listView2.GridLines = true; + listView2.MultiSelect = false; + + + } + + private void button1_Click(object sender, EventArgs e) + { + // 선택된 아이템이 있고, 그것이 첫 번째 아이템이 아닌 경우에만 실행합니다. + if (listView2.FocusedItem.Index > 0) + { + int currentIndex = listView2.FocusedItem.Index; + ListViewItem currentItem = listView2.FocusedItem; + + // 이전 아이템과 위치를 바꿉니다. + listView2.Items.RemoveAt(currentIndex); + listView2.Items.Insert(currentIndex - 1, currentItem); + + // 위로 올리는 동작을 시각적으로 보여주기 위해 선택된 아이템을 변경합니다. + currentItem.Selected = true; + currentItem.Focused = true; + } + + } + + private void button2_Click(object sender, EventArgs e) + { + if (listView2.FocusedItem.Index < listView2.Items.Count - 1) + { + int currentIndex = listView2.FocusedItem.Index; + ListViewItem currentItem = listView2.FocusedItem; + + // 다음 아이템과 위치를 바꿉니다. + listView2.Items.RemoveAt(currentIndex); + listView2.Items.Insert(currentIndex + 1, currentItem); + + // 아래로 내리는 동작을 시각적으로 보여주기 위해 선택된 아이템을 변경합니다. + currentItem.Selected = true; + currentItem.Focused = true; + } + } + + private void toolStripButton1_Click(object sender, EventArgs e) + { + + } + + private void fUserExportColumn_Load(object sender, EventArgs e) + { + button3.PerformClick(); + } + + private void button3_Click(object sender, EventArgs e) + { + //rprewviwe + var items = this.listView2.CheckedItems; + SortedDictionary cols = new SortedDictionary(); + + var sb = new System.Text.StringBuilder(); + foreach (ListViewItem lv in items) + { + var no = lv.Index; + var field = lv.SubItems[0].Text + "|" + lv.Tag.ToString(); + cols.Add(no, field); + + } + foreach (ListViewItem lv in listView2.Items) + { + + sb.AppendLine($"{(lv.Checked ? "1" : "0")}|{lv.Tag}|{lv.SubItems[0].Text}"); + } + var fi = new System.IO.FileInfo(presavefn); + if (fi.Directory.Exists == false) fi.Directory.Create(); + System.IO.File.WriteAllText(fi.FullName, sb.ToString(), System.Text.Encoding.Default); + + + listView1.Clear(); + listView1.Columns.Add("No"); + foreach (var item in cols) + { + var titles = item.Value.Split('|'); + listView1.Columns.Add(titles[0],titles[0]); + } + for (int i = 0; i < bs.Count; i++) + { + var drv = bs[i] as DataRowView; + + var no = this.listView1.Items.Count + 1; + var lv = this.listView1.Items.Add(no.ToString()); + lv.Checked = true; + lv.Tag = string.Empty; + var colno = -1; + foreach (var item in cols) + { + colno += 1; + var titles = item.Value.Split('|'); + var field = titles[1]; + var title = titles[0]; + var val = drv[field]; + var dr = drv.Row; + var coldata = dr.Table.Columns[field]; + if (coldata.DataType == typeof(int)) + { + if (val == null) lv.SubItems.Add("--"); + else lv.SubItems.Add(((int)val).ToString("N0")); + lv.Tag += "," + (colno+1).ToString(); + } + else if (coldata.DataType == typeof(decimal)) + { + if (val == null) lv.SubItems.Add("--"); + else lv.SubItems.Add(((decimal)val).ToString("N0")); + lv.Tag += "," + (colno + 1).ToString(); + } + else + { + if (val == null) lv.SubItems.Add(""); + else lv.SubItems.Add(val.ToString()); + } + + } + + } + + + + } + List ChangeMailAddress(List userid) + { + var db = new DataClasses1DataContext(); + + List retval = new List(); + foreach (var id in userid) + { + UInt32 userno; + if (UInt32.TryParse(id, out userno) == true) + { + var user = db.Users.Where(t => t.id == id).FirstOrDefault(); + if (user != null) + { + var data = string.Format("{0}<{1}>", user.name, user.email); + if (retval.Contains(data) == false) + retval.Add(data); + } + } + else + { + if (retval.Contains(id) == false) + retval.Add(id); + } + } + return retval; + } + + void save(string fn = "") + { + if (fn.isEmpty()) fn = (Util.MakeFilePath("temp", DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".xlsx")); + var fi = new System.IO.FileInfo(fn); + if (fi.Directory.Exists == false) fi.Directory.Create(); + + + libxl.Book book;// = new libxl.BinBook(); + book = new libxl.XmlBook(); + book.setKey(FCOMMON.info.libxlCompany, FCOMMON.info.libxlKey); + var sheet = book.addSheet("data"); + var colno = 0; + var rowno = 0; + for (int i = 0; i < this.listView1.Columns.Count; i++) + { + var col = this.listView1.Columns[i]; + sheet.writeStr(rowno, i, col.Text); + } + + foreach (ListViewItem lv in this.listView1.CheckedItems) + { + rowno += 1; + var tagstr = lv.Tag?.ToString() ?? string.Empty; + var numcols = tagstr.Split(','); + for (int i = 0; i < this.listView1.Columns.Count; i++) + { + var data = lv.SubItems[i].Text; + + if (i == 0) data = rowno.ToString(); + + if (numcols.Contains(i.ToString())) + sheet.writeNum(rowno, i, double.Parse(data)); + else + sheet.writeStr(rowno, i, data); + } + } + //sheet.siz + book.save(fi.FullName); + } + + private void toolStripButton3_Click(object sender, EventArgs e) + { + //데이터수집 + if(listView1.CheckedItems.Count < 1) + { + Util.MsgE("선택된 대상이 없습니다"); + return; + } + + //현재표시데이터중에 수신자목록을 가져온다 + var drows = (dsPurchase.PurchaseRow[])(this.dt.Select(this.bs.Filter, this.bs.Sort)); + var grp_req = drows.Where(t => t.request.isEmpty() == false).GroupBy(t => t.request).Select(t => t.FirstOrDefault().request).ToList(); + var grp_rec = drows.Where(t => t.receive.isEmpty() == false).GroupBy(t => t.receive).Select(t => t.FirstOrDefault().receive).ToList(); + + List tolist = new List(); //최종받는사람 + List cclist = new List(); + List bcclist = new List(); + + + + + var fn = new System.IO.FileInfo(Util.MakeFilePath("mailform", this.Source + ".xml")); + if (fn.Directory.Exists == false) fn.Directory.Create(); + + + + var xml = new XMLHelper(fn.FullName); + string form_subject, form_body, form_to, form_cc, form_bcc; + + form_subject = form_body = form_to = form_cc = form_bcc = ""; + + form_subject = xml.get_Data("subject"); + form_body = xml.get_Data("body"); + form_to = xml.get_Data("to"); + form_cc = xml.get_Data("cc"); + if (form_cc.isEmpty()) form_cc = "{요청}"; + form_bcc = xml.get_Data("bcc"); + + var f = new Purchase.fMailForm(form_subject, form_body, form_to, form_cc, form_bcc); + if (f.ShowDialog() != DialogResult.OK) return; + + + + //받는사람 + if (form_to.Contains("{요청}") == true) tolist.AddRange(grp_req); + if (form_to.Contains("{수령}") == true) tolist.AddRange(grp_rec); + form_to = form_to.Replace("{요청}", ""); + form_to = form_to.Replace("{수령}", ""); + tolist.AddRange(form_to.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)); + tolist = ChangeMailAddress(tolist); + + + + //참조 + if (form_cc.Contains("{요청}") == true) cclist.AddRange(grp_req); + if (form_cc.Contains("{수령}") == true) cclist.AddRange(grp_rec); + form_cc = form_cc.Replace("{요청}", ""); + form_cc = form_cc.Replace("{수령}", ""); + cclist.AddRange(form_cc.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)); + cclist = ChangeMailAddress(cclist); + + //숨은참조 + if (form_bcc.Contains("{요청}") == true) bcclist.AddRange(grp_req); + if (form_bcc.Contains("{수령}") == true) bcclist.AddRange(grp_rec); + form_bcc = form_bcc.Replace("{요청}", ""); + form_bcc = form_bcc.Replace("{수령}", ""); + bcclist.AddRange(form_bcc.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)); + bcclist = ChangeMailAddress(bcclist); + + + + + form_subject = f.tbSubject.Text.Trim(); + form_body = f.htmlEditor1.Html; + form_to = f.tbTo.Text.Trim(); + form_cc = f.tbCC.Text.Trim(); + form_bcc = f.tbBcc.Text.Trim(); + + + + + xml.set_Data("subject", form_subject); + xml.set_Data("body", form_body); + xml.set_Data("to", form_to); + xml.set_Data("cc", form_cc); + xml.set_Data("bcc", form_bcc); + xml.Save(); + + + //받는사람 + if (form_to.Contains("{요청}") == true) tolist.AddRange(grp_req); + if (form_to.Contains("{수령}") == true) tolist.AddRange(grp_rec); + form_to = form_to.Replace("{요청}", ""); + form_to = form_to.Replace("{수령}", ""); + tolist.AddRange(form_to.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)); + tolist = ChangeMailAddress(tolist); + + //참조 + if (form_cc.Contains("{요청}") == true) cclist.AddRange(grp_req); + if (form_cc.Contains("{수령}") == true) cclist.AddRange(grp_rec); + form_cc = form_cc.Replace("{요청}", ""); + form_cc = form_cc.Replace("{수령}", ""); + cclist.AddRange(form_cc.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)); + cclist = ChangeMailAddress(cclist); + + //숨은참조 + if (form_bcc.Contains("{요청}") == true) bcclist.AddRange(grp_req); + if (form_bcc.Contains("{수령}") == true) bcclist.AddRange(grp_rec); + form_bcc = form_bcc.Replace("{요청}", ""); + form_bcc = form_bcc.Replace("{수령}", ""); + bcclist.AddRange(form_bcc.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)); + bcclist = ChangeMailAddress(bcclist); + + //form_subject = form_subject.Replace("{DATE}", datestr); + + try + { + Outlook.Application outlookApplication = new Outlook.Application(); + var newMail = outlookApplication.CreateItem(OlItemType.olMailItem) as Outlook.MailItem; + newMail.Display(); + newMail.Subject = form_subject; // this.tbSubject.Text.Trim(); // dr.title; + newMail.To = string.Join(";", tolist.ToArray()); + newMail.CC = string.Join(";", cclist.ToArray()); + newMail.BCC = string.Join(";", bcclist.ToArray()); + if (f.chkAttach.Checked) + { + var fi = new System.IO.FileInfo(FCOMMON.Util.CurrentPath + "\\Export\\Purchase_" + DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".xls"); + if (fi.Directory.Exists == false) fi.Directory.Create(); + + ///save file + save(fi.FullName); + newMail.Attachments.Add(fi.FullName); + } + if (f.chkList.Checked) + { + //목록을 본문에 추가한다 + System.Text.StringBuilder sb = new StringBuilder(); + sb.AppendLine(""); + sb.AppendLine(""); + + for (int i = 0; i < this.listView1.Columns.Count; i++) + { + var col = this.listView1.Columns[i]; + + sb.AppendLine($""); + } + + sb.AppendLine(""); + sb.AppendLine(""); + + + var row = 1; + foreach (ListViewItem lv in this.listView1.CheckedItems) + { + sb.AppendLine(""); + for (int i = 0; i < this.listView1.Columns.Count; i++) + { + + var data = lv.SubItems[i].Text; + var txt = i == 0 ? (row).ToString() : data; + sb.AppendLine($""); + } + sb.AppendLine(""); + row += 1; + } + + + sb.AppendLine(""); + sb.AppendLine("
{col.Text}
{txt}
"); + form_body += sb.ToString(); + } + + //newMail.BodyFormat = OlBodyFormat.olFormatHTML; + //form_body = form_body.Replace("{DATE}", datestr); + newMail.HTMLBody = form_body + newMail.HTMLBody; // + } + catch (System.Exception ex) + { + Util.MsgE("전송실패\n\n" + ex.Message + "\n\n" + + "아웃룩의 설정이 정상인지 확인하세요"); + } + } + + private void toolStripButton2_Click(object sender, EventArgs e) + { + if (listView1.CheckedItems.Count < 1) + { + Util.MsgE("선택된 대상이 없습니다"); + return; + } + + var sd = new SaveFileDialog(); + sd.Filter = "xlsx|*.xlsx"; + if (sd.ShowDialog() != DialogResult.OK) return; + save(sd.FileName); + Util.RunExplorer(sd.FileName); + } + + private void panel1_Paint(object sender, PaintEventArgs e) + { + + } + + private void toolStripButton4_Click(object sender, EventArgs e) + { + foreach (ListViewItem lv in this.listView1.Items) + lv.Checked = true; + } + + private void toolStripButton5_Click(object sender, EventArgs e) + { + foreach (ListViewItem lv in this.listView1.Items) + lv.Checked = !lv.Checked; + } + + private void toolStripButton6_Click(object sender, EventArgs e) + { + foreach (ListViewItem lv in this.listView1.Items) + lv.Checked = false; + } + + private void button4_Click(object sender, EventArgs e) + { + var lv = this.listView2.FocusedItem; + if (lv == null) + { + Util.MsgE("필터를 적용할 컬럼을 좌측에서 선택하세요"); + return; + } + if(lv.Checked ==false) + { + Util.MsgE("선택된 열이 아닙니다. 필터는 선택된 열만 가능합니다"); + return; + } + var f = new fColumnFilter(lv.SubItems[0].Text); + if (f.ShowDialog() != DialogResult.OK) return; + + var 조건 = f.comboBox1.Text; + var 값 = f.textBox1.Text; + var 체크 = f.checkBox1.Checked; + + var col = listView1.Columns[lv.SubItems[0].Text]; + foreach(ListViewItem item in this.listView1.Items) + { + var curvalue = item.SubItems[col.Index].Text; + if(curvalue.Equals(값)) + { + item.Checked = 체크; + item.ForeColor = 체크 ? System.Drawing.Color.Blue : System.Drawing.Color.DimGray; + } + + } + } + } +} diff --git a/SubProject/FEQ0000/fUserExportColumn.resx b/SubProject/FEQ0000/fUserExportColumn.resx new file mode 100644 index 0000000..1e76991 --- /dev/null +++ b/SubProject/FEQ0000/fUserExportColumn.resx @@ -0,0 +1,220 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + 123, 17 + + + 187, 17 + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG + YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9 + 0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw + bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc + VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9 + c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32 + Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo + mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ + kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D + TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + \ No newline at end of file