From dfea311700462905dfcd381c55c357538a97d76b Mon Sep 17 00:00:00 2001 From: chi Date: Fri, 29 Nov 2019 15:26:55 +0900 Subject: [PATCH] =?UTF-8?q?191024=09chi=20=ED=94=84=EB=A1=9C=EC=A0=9D?= =?UTF-8?q?=ED=8A=B8=20=EA=B3=B5=EC=9C=A0=ED=8F=B4=EB=8D=94=20=EB=88=8C?= =?UTF-8?q?=EB=A0=80=EC=9D=84=EB=96=84=20\\=20=EA=B0=80=20=EC=97=B0?= =?UTF-8?q?=EC=86=8D=EC=9C=BC=EB=A1=9C=20=EB=B6=99=EB=8A=94=ED=98=84?= =?UTF-8?q?=EC=83=81=20=EC=88=98=EC=A0=95=20191018=09chi=09=EC=97=B4?= =?UTF-8?q?=EC=A0=80=EC=9E=A5=EB=B0=A9=EC=8B=9D=20=EB=B3=80=EA=B2=BD(?= =?UTF-8?q?=ED=95=84=EB=93=9C=EB=AA=85=EC=9C=BC=EB=A1=9C=20=EC=A0=80?= =?UTF-8?q?=EC=9E=A5)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Project/History.txt | 4 +- Project/Properties/AssemblyInfo.cs | 4 +- Project/Properties/Settings.Designer.cs | 2 +- Project/Properties/Settings.settings | 4 +- Project/app.config | 2 +- .../FBS0000/Properties/Settings.Designer.cs | 2 +- .../FBS0000/Properties/Settings.settings | 4 +- SubProject/FBS0000/app.config | 2 +- .../FCM0000/Properties/Settings.Designer.cs | 2 +- .../FCM0000/Properties/Settings.settings | 4 +- SubProject/FCM0000/app.config | 2 +- SubProject/FCOMMON/DataBaseManager.cs | 31 + .../FEQ0000/Properties/Settings.Designer.cs | 74 +- .../FEQ0000/Properties/Settings.settings | 4 +- SubProject/FEQ0000/Purchase/fPurchase_AddS.cs | 2 + SubProject/FEQ0000/app.config | 2 +- .../FPJ0000/JobReport/fJobReport.Designer.cs | 225 +- SubProject/FPJ0000/JobReport/fJobReport.cs | 1030 +++--- SubProject/FPJ0000/JobReport/fJobReport.resx | 649 ++-- .../JobReport/fJobReport_Add.Designer.cs | 873 +++--- .../FPJ0000/JobReport/fJobReport_Add.cs | 808 ++--- SubProject/FPJ0000/JobReport/rJobReport.rdlc | 1724 +++++----- .../JobReport/rJobReportDay.Designer.cs | 284 +- SubProject/FPJ0000/JobReport/rJobReportDay.cs | 92 +- .../FPJ0000/JobReport/rJobReportDay.rdlc | 984 +++--- .../FPJ0000/JobReport/rJobReportDay.resx | 259 +- .../FPJ0000/Project/fProjectData.Designer.cs | 8 +- SubProject/FPJ0000/Project/fProjectData.cs | 43 +- .../FPJ0000/Project/fProjectList.Designer.cs | 2764 ++++++++--------- SubProject/FPJ0000/Project/fProjectList.resx | 824 ++--- .../FPJ0000/Properties/Settings.Designer.cs | 2 +- .../FPJ0000/Properties/Settings.settings | 4 +- SubProject/FPJ0000/app.config | 2 +- 33 files changed, 5425 insertions(+), 5295 deletions(-) diff --git a/Project/History.txt b/Project/History.txt index 0ed0156..cd82826 100644 --- a/Project/History.txt +++ b/Project/History.txt @@ -1,6 +1,6 @@ * 주간내역이 업데이트 되지 않는 데이터를 강조시키고 알림을 띄울 방안 확인\ - -1910108 chi 열저장방식 변경(필드명으로 저장) +191024 chi 프로젝트 공유폴더 눌렀을떄 \\ 가 연속으로 붙는현상 수정 +191018 chi 열저장방식 변경(필드명으로 저장) 파트리스트 열 순서를 기존 사용 엑셀과 동일하게 정렬 파트리스트 적용부위 납기일 항목 추가 파트리스트 가져오기 메뉴에 적용부위, 납기일 항목 추가 diff --git a/Project/Properties/AssemblyInfo.cs b/Project/Properties/AssemblyInfo.cs index 56b4211..265744b 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("19.10.08.1400")] -[assembly: AssemblyFileVersion("19.10.08.1400")] +[assembly: AssemblyVersion("19.10.24.1330")] +[assembly: AssemblyFileVersion("19.10.24.1330")] diff --git a/Project/Properties/Settings.Designer.cs b/Project/Properties/Settings.Designer.cs index 7530bb9..a1a9875 100644 --- a/Project/Properties/Settings.Designer.cs +++ b/Project/Properties/Settings.Designer.cs @@ -27,7 +27,7 @@ namespace Project.Properties { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)] [global::System.Configuration.DefaultSettingValueAttribute("Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=ee" + - "user;Password=EEmicro123!")] + "user;Password=Amkor123!")] public string gwcs { get { return ((string)(this["gwcs"])); diff --git a/Project/Properties/Settings.settings b/Project/Properties/Settings.settings index 6e6241c..4ed5260 100644 --- a/Project/Properties/Settings.settings +++ b/Project/Properties/Settings.settings @@ -5,10 +5,10 @@ <?xml version="1.0" encoding="utf-16"?> <SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> - <ConnectionString>Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=EEmicro123!</ConnectionString> + <ConnectionString>Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=Amkor123!</ConnectionString> <ProviderName>System.Data.SqlClient</ProviderName> </SerializableConnectionString> - Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=EEmicro123! + Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=Amkor123! using System; diff --git a/Project/app.config b/Project/app.config index ef94950..59e2d7e 100644 --- a/Project/app.config +++ b/Project/app.config @@ -6,7 +6,7 @@ - diff --git a/SubProject/FBS0000/Properties/Settings.Designer.cs b/SubProject/FBS0000/Properties/Settings.Designer.cs index 7e7ba72..63938e1 100644 --- a/SubProject/FBS0000/Properties/Settings.Designer.cs +++ b/SubProject/FBS0000/Properties/Settings.Designer.cs @@ -27,7 +27,7 @@ namespace FBS0000.Properties { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)] [global::System.Configuration.DefaultSettingValueAttribute("Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=ee" + - "user;Password=EEmicro123!")] + "user;Password=Amkor123!")] public string gwcs { get { return ((string)(this["gwcs"])); diff --git a/SubProject/FBS0000/Properties/Settings.settings b/SubProject/FBS0000/Properties/Settings.settings index 9a04c5f..83ece1a 100644 --- a/SubProject/FBS0000/Properties/Settings.settings +++ b/SubProject/FBS0000/Properties/Settings.settings @@ -5,10 +5,10 @@ <?xml version="1.0" encoding="utf-16"?> <SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> - <ConnectionString>Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=EEmicro123!</ConnectionString> + <ConnectionString>Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=Amkor123!</ConnectionString> <ProviderName>System.Data.SqlClient</ProviderName> </SerializableConnectionString> - Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=EEmicro123! + Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=Amkor123! \ No newline at end of file diff --git a/SubProject/FBS0000/app.config b/SubProject/FBS0000/app.config index 112ba5b..4297a2a 100644 --- a/SubProject/FBS0000/app.config +++ b/SubProject/FBS0000/app.config @@ -5,7 +5,7 @@ - \ No newline at end of file diff --git a/SubProject/FCM0000/Properties/Settings.Designer.cs b/SubProject/FCM0000/Properties/Settings.Designer.cs index f6c9b84..b4d8efc 100644 --- a/SubProject/FCM0000/Properties/Settings.Designer.cs +++ b/SubProject/FCM0000/Properties/Settings.Designer.cs @@ -27,7 +27,7 @@ namespace FCM0000.Properties { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)] [global::System.Configuration.DefaultSettingValueAttribute("Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=ee" + - "user;Password=EEmicro123!")] + "user;Password=Amkor123!")] public string gwcs { get { return ((string)(this["gwcs"])); diff --git a/SubProject/FCM0000/Properties/Settings.settings b/SubProject/FCM0000/Properties/Settings.settings index e574534..c6a3672 100644 --- a/SubProject/FCM0000/Properties/Settings.settings +++ b/SubProject/FCM0000/Properties/Settings.settings @@ -5,10 +5,10 @@ <?xml version="1.0" encoding="utf-16"?> <SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> - <ConnectionString>Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=EEmicro123!</ConnectionString> + <ConnectionString>Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=Amkor123!</ConnectionString> <ProviderName>System.Data.SqlClient</ProviderName> </SerializableConnectionString> - Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=EEmicro123! + Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=Amkor123! \ No newline at end of file diff --git a/SubProject/FCM0000/app.config b/SubProject/FCM0000/app.config index 8ec6ce6..e6f9efd 100644 --- a/SubProject/FCM0000/app.config +++ b/SubProject/FCM0000/app.config @@ -5,7 +5,7 @@ - \ No newline at end of file diff --git a/SubProject/FCOMMON/DataBaseManager.cs b/SubProject/FCOMMON/DataBaseManager.cs index 4fc2794..c975efd 100644 --- a/SubProject/FCOMMON/DataBaseManager.cs +++ b/SubProject/FCOMMON/DataBaseManager.cs @@ -652,6 +652,37 @@ namespace FCOMMON else return null; } + + public static System.Data.DataTable getUserProjectList(string userName) + { + + System.Data.DataTable retval = new System.Data.DataTable(); + retval.Columns.Add("Code"); + retval.Columns.Add("Value"); + + var cn = getCn(); + cn.Open(); + var sql = "select idx,isnull(name,''),pdate from Projects" + + " where gcode='{0}'" + + " and isnull(userManager,'') like '%{1}%'" + + " or isnull(userMain,'') like '%{1}%'" + + " or isnull(usersub,'') like '%{1}%'" + + " order by pdate desc,name"; + sql = string.Format(sql, FCOMMON.info.Login.gcode, userName); + var cmd = new SqlCommand(sql, cn); + var rdr = cmd.ExecuteReader(); + while (rdr.Read()) + { + retval.Rows.Add(new string[] { rdr[0].ToString(), rdr[1].ToString() }); + } + rdr.Close(); + cmd.Dispose(); + cn.Close(); + cn.Dispose(); + return retval; + } + + public static System.Data.DataTable getCodeTable(string GroupCode = "99") { diff --git a/SubProject/FEQ0000/Properties/Settings.Designer.cs b/SubProject/FEQ0000/Properties/Settings.Designer.cs index df96526..d2e4b52 100644 --- a/SubProject/FEQ0000/Properties/Settings.Designer.cs +++ b/SubProject/FEQ0000/Properties/Settings.Designer.cs @@ -1,37 +1,37 @@ -//------------------------------------------------------------------------------ -// -// 이 코드는 도구를 사용하여 생성되었습니다. -// 런타임 버전:4.0.30319.42000 -// -// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 -// 이러한 변경 내용이 손실됩니다. -// -//------------------------------------------------------------------------------ - -namespace FEQ0000.Properties { - - - [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0")] - internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { - - private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); - - public static Settings Default { - get { - return defaultInstance; - } - } - - [global::System.Configuration.ApplicationScopedSettingAttribute()] - [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)] - [global::System.Configuration.DefaultSettingValueAttribute("Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=ee" + - "user;Password=EEmicro123!")] - public string gwcs { - get { - return ((string)(this["gwcs"])); - } - } - } -} +//------------------------------------------------------------------------------ +// +// 이 코드는 도구를 사용하여 생성되었습니다. +// 런타임 버전:4.0.30319.42000 +// +// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면 +// 이러한 변경 내용이 손실됩니다. +// +//------------------------------------------------------------------------------ + +namespace FEQ0000.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + + [global::System.Configuration.ApplicationScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)] + [global::System.Configuration.DefaultSettingValueAttribute("Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=ee" + + "user;Password=Amkor123!")] + public string gwcs { + get { + return ((string)(this["gwcs"])); + } + } + } +} diff --git a/SubProject/FEQ0000/Properties/Settings.settings b/SubProject/FEQ0000/Properties/Settings.settings index bbaa21a..4809148 100644 --- a/SubProject/FEQ0000/Properties/Settings.settings +++ b/SubProject/FEQ0000/Properties/Settings.settings @@ -5,10 +5,10 @@ <?xml version="1.0" encoding="utf-16"?> <SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> - <ConnectionString>Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=EEmicro123!</ConnectionString> + <ConnectionString>Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=Amkor123!</ConnectionString> <ProviderName>System.Data.SqlClient</ProviderName> </SerializableConnectionString> - Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=EEmicro123! + Data Source=10.131.15.18;Initial Catalog=EE;Persist Security Info=True;User ID=eeuser;Password=Amkor123! \ No newline at end of file diff --git a/SubProject/FEQ0000/Purchase/fPurchase_AddS.cs b/SubProject/FEQ0000/Purchase/fPurchase_AddS.cs index aad2bc9..6ff6f69 100644 --- a/SubProject/FEQ0000/Purchase/fPurchase_AddS.cs +++ b/SubProject/FEQ0000/Purchase/fPurchase_AddS.cs @@ -132,7 +132,9 @@ namespace FEQ0000 Application.DoEvents(); tbPumName.Focus(); + //이미지를 불러온다. + pictureBox1.Tag = ""; if (dr.RowState != DataRowState.Detached && dr.RowState != DataRowState.Deleted && dr.RowState != DataRowState.Added) { if (dr.IspumidxNull() == false && dr.pumidx != -1) diff --git a/SubProject/FEQ0000/app.config b/SubProject/FEQ0000/app.config index ce8aa62..367c0f9 100644 --- a/SubProject/FEQ0000/app.config +++ b/SubProject/FEQ0000/app.config @@ -3,7 +3,7 @@ - diff --git a/SubProject/FPJ0000/JobReport/fJobReport.Designer.cs b/SubProject/FPJ0000/JobReport/fJobReport.Designer.cs index 0f63788..190bec1 100644 --- a/SubProject/FPJ0000/JobReport/fJobReport.Designer.cs +++ b/SubProject/FPJ0000/JobReport/fJobReport.Designer.cs @@ -30,18 +30,18 @@ { this.components = new System.ComponentModel.Container(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fJobReport)); - FarPoint.Win.Spread.CellType.TextCellType textCellType10 = new FarPoint.Win.Spread.CellType.TextCellType(); - FarPoint.Win.Spread.CellType.TextCellType textCellType11 = new FarPoint.Win.Spread.CellType.TextCellType(); - FarPoint.Win.Spread.CellType.TextCellType textCellType12 = new FarPoint.Win.Spread.CellType.TextCellType(); - FarPoint.Win.Spread.CellType.TextCellType textCellType13 = new FarPoint.Win.Spread.CellType.TextCellType(); - FarPoint.Win.Spread.CellType.TextCellType textCellType14 = new FarPoint.Win.Spread.CellType.TextCellType(); - FarPoint.Win.Spread.CellType.TextCellType textCellType15 = new FarPoint.Win.Spread.CellType.TextCellType(); - FarPoint.Win.Spread.CellType.TextCellType textCellType16 = new FarPoint.Win.Spread.CellType.TextCellType(); - FarPoint.Win.Spread.CellType.TextCellType textCellType17 = new FarPoint.Win.Spread.CellType.TextCellType(); - FarPoint.Win.Spread.CellType.NumberCellType numberCellType4 = new FarPoint.Win.Spread.CellType.NumberCellType(); - FarPoint.Win.Spread.CellType.NumberCellType numberCellType5 = new FarPoint.Win.Spread.CellType.NumberCellType(); - FarPoint.Win.Spread.CellType.NumberCellType numberCellType6 = new FarPoint.Win.Spread.CellType.NumberCellType(); - FarPoint.Win.Spread.CellType.TextCellType textCellType18 = new FarPoint.Win.Spread.CellType.TextCellType(); + FarPoint.Win.Spread.CellType.TextCellType textCellType1 = new FarPoint.Win.Spread.CellType.TextCellType(); + FarPoint.Win.Spread.CellType.TextCellType textCellType2 = new FarPoint.Win.Spread.CellType.TextCellType(); + FarPoint.Win.Spread.CellType.TextCellType textCellType3 = new FarPoint.Win.Spread.CellType.TextCellType(); + FarPoint.Win.Spread.CellType.TextCellType textCellType4 = new FarPoint.Win.Spread.CellType.TextCellType(); + FarPoint.Win.Spread.CellType.TextCellType textCellType5 = new FarPoint.Win.Spread.CellType.TextCellType(); + FarPoint.Win.Spread.CellType.TextCellType textCellType6 = new FarPoint.Win.Spread.CellType.TextCellType(); + FarPoint.Win.Spread.CellType.TextCellType textCellType7 = new FarPoint.Win.Spread.CellType.TextCellType(); + FarPoint.Win.Spread.CellType.TextCellType textCellType8 = new FarPoint.Win.Spread.CellType.TextCellType(); + FarPoint.Win.Spread.CellType.NumberCellType numberCellType1 = new FarPoint.Win.Spread.CellType.NumberCellType(); + FarPoint.Win.Spread.CellType.NumberCellType numberCellType2 = new FarPoint.Win.Spread.CellType.NumberCellType(); + FarPoint.Win.Spread.CellType.NumberCellType numberCellType3 = new FarPoint.Win.Spread.CellType.NumberCellType(); + FarPoint.Win.Spread.CellType.TextCellType textCellType9 = new FarPoint.Win.Spread.CellType.TextCellType(); this.bn = new System.Windows.Forms.BindingNavigator(this.components); this.bs = new System.Windows.Forms.BindingSource(this.components); this.dsMSSQL = new FPJ0000.dsPRJ(); @@ -84,7 +84,6 @@ this.tam = new FPJ0000.dsPRJTableAdapters.TableAdapterManager(); this.ta = new FPJ0000.dsPRJTableAdapters.JobReportTableAdapter(); this.fpSpread1 = new FarPoint.Win.Spread.FpSpread(); - this.fpSpread1_Sheet1 = new FarPoint.Win.Spread.SheetView(); this.toolStrip1 = new System.Windows.Forms.ToolStrip(); this.lbStt = new System.Windows.Forms.ToolStripLabel(); this.dtSD = new System.Windows.Forms.ToolStripTextBox(); @@ -96,14 +95,15 @@ this.cmbUser = new System.Windows.Forms.ToolStripComboBox(); this.btSearch = new System.Windows.Forms.ToolStripButton(); this.toolStripButton2 = new System.Windows.Forms.ToolStripButton(); + this.fpSpread1_Sheet1 = new FarPoint.Win.Spread.SheetView(); ((System.ComponentModel.ISupportInitialize)(this.bn)).BeginInit(); this.bn.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.dsMSSQL)).BeginInit(); this.cm.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.fpSpread1)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).BeginInit(); this.toolStrip1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).BeginInit(); this.SuspendLayout(); // // bn @@ -474,101 +474,6 @@ this.fpSpread1.StatusBarVisible = true; this.fpSpread1.TabIndex = 2; // - // 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 = 12; - this.fpSpread1_Sheet1.ActiveColumnIndex = -1; - this.fpSpread1_Sheet1.ActiveRowIndex = -1; - this.fpSpread1_Sheet1.AutoGenerateColumns = false; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 0).Value = "날짜"; - this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 1).Value = "WW"; - 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 = "업무형태"; - 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.Rows.Get(0).Height = 28F; - this.fpSpread1_Sheet1.Columns.Get(0).CellType = textCellType10; - this.fpSpread1_Sheet1.Columns.Get(0).DataField = "pdate"; - this.fpSpread1_Sheet1.Columns.Get(0).Label = "날짜"; - this.fpSpread1_Sheet1.Columns.Get(0).Width = 58F; - this.fpSpread1_Sheet1.Columns.Get(1).BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this.fpSpread1_Sheet1.Columns.Get(1).CellType = textCellType11; - this.fpSpread1_Sheet1.Columns.Get(1).DataField = "ww"; - this.fpSpread1_Sheet1.Columns.Get(1).Label = "WW"; - this.fpSpread1_Sheet1.Columns.Get(2).AllowAutoFilter = true; - this.fpSpread1_Sheet1.Columns.Get(2).CellType = textCellType12; - this.fpSpread1_Sheet1.Columns.Get(2).DataField = "requestpart"; - this.fpSpread1_Sheet1.Columns.Get(2).Label = "요청부서"; - this.fpSpread1_Sheet1.Columns.Get(2).Width = 78F; - this.fpSpread1_Sheet1.Columns.Get(3).AllowAutoFilter = true; - this.fpSpread1_Sheet1.Columns.Get(3).CellType = textCellType13; - this.fpSpread1_Sheet1.Columns.Get(3).DataField = "package"; - this.fpSpread1_Sheet1.Columns.Get(3).Label = "패키지"; - this.fpSpread1_Sheet1.Columns.Get(3).Width = 86F; - this.fpSpread1_Sheet1.Columns.Get(4).CellType = textCellType14; - this.fpSpread1_Sheet1.Columns.Get(4).DataField = "status"; - this.fpSpread1_Sheet1.Columns.Get(4).Label = "상태"; - this.fpSpread1_Sheet1.Columns.Get(5).AllowAutoFilter = true; - this.fpSpread1_Sheet1.Columns.Get(5).CellType = textCellType15; - this.fpSpread1_Sheet1.Columns.Get(5).DataField = "type"; - this.fpSpread1_Sheet1.Columns.Get(5).Label = "업무형태"; - this.fpSpread1_Sheet1.Columns.Get(5).Width = 84F; - this.fpSpread1_Sheet1.Columns.Get(6).AllowAutoFilter = true; - this.fpSpread1_Sheet1.Columns.Get(6).CellType = textCellType16; - this.fpSpread1_Sheet1.Columns.Get(6).DataField = "process"; - 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 = 80F; - this.fpSpread1_Sheet1.Columns.Get(7).AllowAutoFilter = true; - this.fpSpread1_Sheet1.Columns.Get(7).CellType = textCellType17; - this.fpSpread1_Sheet1.Columns.Get(7).DataField = "projectName"; - this.fpSpread1_Sheet1.Columns.Get(7).Label = "프로젝트(아이템)"; - this.fpSpread1_Sheet1.Columns.Get(7).Width = 158F; - this.fpSpread1_Sheet1.Columns.Get(8).BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - numberCellType4.DecimalPlaces = 0; - numberCellType4.LeadingZero = FarPoint.Win.Spread.CellType.LeadingZero.Yes; - numberCellType4.MaximumValue = 2147483647D; - numberCellType4.MinimumValue = -2147483648D; - this.fpSpread1_Sheet1.Columns.Get(8).CellType = numberCellType4; - this.fpSpread1_Sheet1.Columns.Get(8).DataField = "pidx"; - this.fpSpread1_Sheet1.Columns.Get(8).Label = "*"; - this.fpSpread1_Sheet1.Columns.Get(8).Width = 39F; - numberCellType5.MaximumValue = 999999999999999D; - numberCellType5.MinimumValue = -999999999999999D; - this.fpSpread1_Sheet1.Columns.Get(9).CellType = numberCellType5; - this.fpSpread1_Sheet1.Columns.Get(9).DataField = "hrs"; - this.fpSpread1_Sheet1.Columns.Get(9).Label = "시간"; - this.fpSpread1_Sheet1.Columns.Get(9).Width = 52F; - numberCellType6.MaximumValue = 999999999999999D; - numberCellType6.MinimumValue = -999999999999999D; - this.fpSpread1_Sheet1.Columns.Get(10).CellType = numberCellType6; - this.fpSpread1_Sheet1.Columns.Get(10).DataField = "ot"; - this.fpSpread1_Sheet1.Columns.Get(10).ForeColor = System.Drawing.Color.Red; - 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(11).CellType = textCellType18; - this.fpSpread1_Sheet1.Columns.Get(11).DataField = "description"; - this.fpSpread1_Sheet1.Columns.Get(11).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left; - this.fpSpread1_Sheet1.Columns.Get(11).Label = "비고"; - this.fpSpread1_Sheet1.Columns.Get(11).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; - this.fpSpread1_Sheet1.Columns.Get(11).Width = 113F; - 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; - // // toolStrip1 // this.toolStrip1.ImageScalingSize = new System.Drawing.Size(30, 30); @@ -667,6 +572,104 @@ this.toolStripButton2.Text = "닫기"; this.toolStripButton2.Click += new System.EventHandler(this.toolStripButton2_Click); // + // 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 = 12; + this.fpSpread1_Sheet1.ActiveColumnIndex = -1; + this.fpSpread1_Sheet1.ActiveRowIndex = -1; + this.fpSpread1_Sheet1.AutoGenerateColumns = false; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 0).Value = "날짜"; + this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 1).Value = "WW"; + 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 = "업무형태"; + 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.Rows.Get(0).Height = 28F; + this.fpSpread1_Sheet1.Columns.Get(0).CellType = textCellType1; + this.fpSpread1_Sheet1.Columns.Get(0).DataField = "pdate"; + this.fpSpread1_Sheet1.Columns.Get(0).Label = "날짜"; + this.fpSpread1_Sheet1.Columns.Get(0).Width = 58F; + this.fpSpread1_Sheet1.Columns.Get(1).BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this.fpSpread1_Sheet1.Columns.Get(1).CellType = textCellType2; + this.fpSpread1_Sheet1.Columns.Get(1).DataField = "ww"; + this.fpSpread1_Sheet1.Columns.Get(1).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(1).Label = "WW"; + this.fpSpread1_Sheet1.Columns.Get(1).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(2).AllowAutoFilter = true; + this.fpSpread1_Sheet1.Columns.Get(2).CellType = textCellType3; + this.fpSpread1_Sheet1.Columns.Get(2).DataField = "requestpart"; + this.fpSpread1_Sheet1.Columns.Get(2).Label = "요청부서"; + this.fpSpread1_Sheet1.Columns.Get(2).Width = 78F; + this.fpSpread1_Sheet1.Columns.Get(3).AllowAutoFilter = true; + this.fpSpread1_Sheet1.Columns.Get(3).CellType = textCellType4; + this.fpSpread1_Sheet1.Columns.Get(3).DataField = "package"; + this.fpSpread1_Sheet1.Columns.Get(3).Label = "패키지"; + this.fpSpread1_Sheet1.Columns.Get(3).Width = 86F; + this.fpSpread1_Sheet1.Columns.Get(4).CellType = textCellType5; + this.fpSpread1_Sheet1.Columns.Get(4).DataField = "status"; + this.fpSpread1_Sheet1.Columns.Get(4).Label = "상태"; + this.fpSpread1_Sheet1.Columns.Get(5).AllowAutoFilter = true; + this.fpSpread1_Sheet1.Columns.Get(5).CellType = textCellType6; + this.fpSpread1_Sheet1.Columns.Get(5).DataField = "type"; + this.fpSpread1_Sheet1.Columns.Get(5).Label = "업무형태"; + this.fpSpread1_Sheet1.Columns.Get(5).Width = 84F; + this.fpSpread1_Sheet1.Columns.Get(6).AllowAutoFilter = true; + this.fpSpread1_Sheet1.Columns.Get(6).CellType = textCellType7; + this.fpSpread1_Sheet1.Columns.Get(6).DataField = "process"; + 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 = 80F; + this.fpSpread1_Sheet1.Columns.Get(7).AllowAutoFilter = true; + this.fpSpread1_Sheet1.Columns.Get(7).CellType = textCellType8; + this.fpSpread1_Sheet1.Columns.Get(7).DataField = "projectName"; + this.fpSpread1_Sheet1.Columns.Get(7).Label = "프로젝트(아이템)"; + this.fpSpread1_Sheet1.Columns.Get(7).Width = 158F; + this.fpSpread1_Sheet1.Columns.Get(8).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(8).CellType = numberCellType1; + this.fpSpread1_Sheet1.Columns.Get(8).DataField = "pidx"; + this.fpSpread1_Sheet1.Columns.Get(8).Label = "*"; + this.fpSpread1_Sheet1.Columns.Get(8).Tag = "pidx"; + this.fpSpread1_Sheet1.Columns.Get(8).Width = 39F; + numberCellType2.MaximumValue = 999999999999999D; + numberCellType2.MinimumValue = -999999999999999D; + this.fpSpread1_Sheet1.Columns.Get(9).CellType = numberCellType2; + this.fpSpread1_Sheet1.Columns.Get(9).DataField = "hrs"; + this.fpSpread1_Sheet1.Columns.Get(9).Label = "시간"; + this.fpSpread1_Sheet1.Columns.Get(9).Width = 52F; + numberCellType3.MaximumValue = 999999999999999D; + numberCellType3.MinimumValue = -999999999999999D; + this.fpSpread1_Sheet1.Columns.Get(10).CellType = numberCellType3; + this.fpSpread1_Sheet1.Columns.Get(10).DataField = "ot"; + this.fpSpread1_Sheet1.Columns.Get(10).ForeColor = System.Drawing.Color.Red; + 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(11).CellType = textCellType9; + this.fpSpread1_Sheet1.Columns.Get(11).DataField = "description"; + this.fpSpread1_Sheet1.Columns.Get(11).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left; + this.fpSpread1_Sheet1.Columns.Get(11).Label = "비고"; + this.fpSpread1_Sheet1.Columns.Get(11).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center; + this.fpSpread1_Sheet1.Columns.Get(11).Width = 113F; + 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; + // // fJobReport // this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); @@ -686,9 +689,9 @@ ((System.ComponentModel.ISupportInitialize)(this.dsMSSQL)).EndInit(); this.cm.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.fpSpread1)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).EndInit(); this.toolStrip1.ResumeLayout(false); this.toolStrip1.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).EndInit(); this.ResumeLayout(false); this.PerformLayout(); @@ -740,7 +743,6 @@ private System.Windows.Forms.ToolStripButton btFind; private System.Windows.Forms.ToolStripComboBox cmbUser; private System.Windows.Forms.ToolStripMenuItem exportListToolStripMenuItem; - private FarPoint.Win.Spread.SheetView fpSpread1_Sheet1; private System.Windows.Forms.ToolStripButton btReport; private System.Windows.Forms.ToolStripLabel lbTime; private System.Windows.Forms.ToolStripSeparator toolStripMenuItem3; @@ -750,5 +752,6 @@ private System.Windows.Forms.ToolStripButton btReportDay; private System.Windows.Forms.ToolStripButton toolStripButton1; private System.Windows.Forms.ToolStripButton toolStripButton2; + private FarPoint.Win.Spread.SheetView fpSpread1_Sheet1; } } \ No newline at end of file diff --git a/SubProject/FPJ0000/JobReport/fJobReport.cs b/SubProject/FPJ0000/JobReport/fJobReport.cs index 6aa4fc1..3e86ec8 100644 --- a/SubProject/FPJ0000/JobReport/fJobReport.cs +++ b/SubProject/FPJ0000/JobReport/fJobReport.cs @@ -1,502 +1,528 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Windows.Forms; -using util = FCOMMON.Util; - -namespace FPJ0000 -{ - public partial class fJobReport : FCOMMON.fBase - { - string fn_fpcolsize = ""; - public fJobReport() - { - InitializeComponent(); - fn_fpcolsize = util.MakeFilePath(util.CurrentPath, "formSetting", "fp_" + this.Name + ".ini"); - this.dsMSSQL.JobReport.TableNewRow += Projects_TableNewRow; - this.FormClosed += __Closed; - - dtSD.KeyDown += dtSD_KeyDown; - dtED.KeyDown += dtSD_KeyDown; - - } - - void __Closed(object sender, FormClosedEventArgs e) - { - - } - - private void __Load(object sender, EventArgs e) - { - this.dtSD.Text = DateTime.Now.ToString("yyyy-MM-01"); - this.dtED.Text = DateTime.Now.ToShortDateString(); - - //담당자목록 - 사용자목록으로 처리한다. - string namestr = string.Format("{0}({1})", FCOMMON.info.Login.nameK, FCOMMON.info.Login.no); - if (FCOMMON.info.Login.no == "dev") namestr = "김치균(395552)"; - this.cmbUser.Items.Clear(); - this.cmbUser.Items.Add(namestr); - try - { - var cn = FCOMMON.DBM.getCn(); - cn.Open(); - string sql = "select uid,dbo.getUserName(uid) as uname " + - " from JobReport" + - " where gcode='{1}' and uid <> '{0}'" + - " group by uid " + - " order by uname"; - sql = string.Format(sql, FCOMMON.info.Login.no, FCOMMON.info.Login.gcode); - var cmd = new System.Data.SqlClient.SqlCommand(sql, cn); - var rdr = cmd.ExecuteReader(); - while (rdr.Read()) - { - string cmbdata = string.Format("{1}({0})", rdr["uid"].ToString(), rdr["uname"].ToString()); - this.cmbUser.Items.Add(cmbdata); - } - cmd.Dispose(); - cn.Close(); - cn.Dispose(); - }catch (Exception ex) - { - FCOMMON.Util.MsgE("User List Error\n\n"+ex.Message); - } - - //var userList = FCOMMON.DBM.getGroupList("name + '(' + id + ')'", "Users", "[level] > 0 and [level] < 10", false, false); - //foreach (var user in userList) - //{ - // this.cmbUser.Items.Add(user); - //} - - cmbUser.Text = namestr; - - //state list - //var stList = FCOMMON.DBM.getCodeList("05"); - //this.cmbState.Items.Clear(); - //cmbState.Items.Add("-- All --"); - //// cmbState.Items.Add("-- incomplete --"); - //foreach (var item in stList) - // cmbState.Items.Add(item); - //this.cmbState.SelectedIndex = 0; - - - //일반사용자의경우에는 상태를 변경하지 못한다. - int curLevel = Math.Max(FCOMMON.info.Login.level, FCOMMON.DBM.getAuth(FCOMMON.DBM.eAuthType.jobreport)); - if (curLevel >= 5) - { - btSave.Visible = true; - } - else - { - btSave.Visible = false; - //btViewDel.Visible = false; - fpSpread1.EditMode = false; - fpSpread1.Sheets[0].SelectionUnit = FarPoint.Win.Spread.Model.SelectionUnit.Row; - fpSpread1.EditModePermanent = false; - fpSpread1.EditModeReplace = false; - - foreach (FarPoint.Win.Spread.Column col in fpSpread1.ActiveSheet.Columns) - col.Locked = true; - } - - refreshData(); - - } - void RefreshTime() - { - lbTime.Text = "--h"; - - //사용자번호추적 - if (cmbUser.Text.Trim() == "") - { - //FCOMMON.Util.MsgE("담당자가 선택되지 않았습니다."); - return; - } - if (cmbUser.Text.IndexOf("(") == -1 || cmbUser.Text.IndexOf(")") == -1) - { - // FCOMMON.Util.MsgE("담당자 번호를 확인할 수 없습니다.(문의 T.8567)"); - return; - } - string request = cmbUser.Text.Substring(cmbUser.Text.LastIndexOf('(') + 1); - request = request.Substring(0, request.Length - 1); - - float work, ot; - int total; - FCOMMON.DBM.getWorkTime(request, this.dtSD.Text.Substring(0, 7), out work, out total, out ot); - lbTime.Text = string.Format(" {0}h/{2}h, OT:{1}h", work, ot, total); - } - void dtSD_KeyDown(object sender, KeyEventArgs e) - { - if (e.KeyCode != Keys.Enter) return; - var tb = sender as ToolStripTextBox; - var input = tb.Text.Trim(); - if (input == "") tb.Text = DateTime.Now.ToShortDateString(); - else - { - string dt = string.Empty; - if (!util.MakeDateString(input, out dt)) - { - FCOMMON.Util.MsgE("입력값이 올바르지 않습니다."); - tb.SelectAll(); - tb.Focus(); - return; - } - else - { - tb.Text = dt; - } - } - if (tb == dtSD) - { - dtED.Focus(); - dtED.SelectAll(); - } - else - { - btSearch.PerformClick(); - tb.SelectAll(); - } - } - - void refreshData() - { - // string state = "%"; - // if (cmbState.SelectedIndex > 0) state = cmbState.Text.Split(',')[0].Substring(1); - - //사용자번호추적 - if (cmbUser.Text.Trim() == "") - { - FCOMMON.Util.MsgE("담당자가 선택되지 않았습니다."); - return; - } - if (cmbUser.Text.IndexOf("(") == -1 || cmbUser.Text.IndexOf(")") == -1) - { - FCOMMON.Util.MsgE("담당자 번호를 확인할 수 없습니다.(문의 T.8567)"); - return; - } - string request = cmbUser.Text.Substring(cmbUser.Text.LastIndexOf('(') + 1); - request = request.Substring(0, request.Length - 1); - - this.ta.Fill(this.dsMSSQL.JobReport, dtSD.Text, dtED.Text, request,FCOMMON.info.Login.gcode); - RefreshTime(); - FPUtil.ColSizeLoad(ref this.fpSpread1, fn_fpcolsize); - } - - void funcSave() - { - this.Validate(); - this.bs.EndEdit(); - try - { - this.tam.UpdateAll(this.dsMSSQL); - } - catch (Exception ex) - { - FCOMMON.Util.MsgE("저장 실패\n" + ex.Message); - } - } - - private void projectsBindingNavigatorSaveItem_Click(object sender, EventArgs e) - { - funcSave(); - - } - void Projects_TableNewRow(object sender, DataTableNewRowEventArgs e) - { - e.Row["gcode"] = FCOMMON.info.Login.gcode; - e.Row["pdate"] = DateTime.Now.ToShortDateString(); - e.Row["wuid"] = FCOMMON.info.Login.no; - e.Row["wdate"] = DateTime.Now; - e.Row["status"] = "진행 완료";//other - e.Row["uid"] = FCOMMON.info.Login.no; //이름을 직접 기록 - e.Row["hrs"] = 8.0; - e.Row["ot"] = 0.0; - } - - private void refreshToolStripMenuItem_Click(object sender, EventArgs e) - { - refreshData(); - } - - private void partListToolStripMenuItem_Click(object sender, EventArgs e) - { - var drv = this.bs.Current as DataRowView; - if (drv == null) return; - var dr = drv.Row as dsPRJ.ProjectsRow; - var f = new fPartList(dr.idx); - f.MdiParent = this.MdiParent; - f.Show(); - } - - - private void autoToolStripMenuItem_Click(object sender, EventArgs e) - { - this.fpSpread1.ActiveSheet.DataAutoSizeColumns = true; - - for (int i = 0; i < this.fpSpread1.ActiveSheet.Rows.Count; i++) - this.fpSpread1.ActiveSheet.SetRowHeight(i, 25); - //dv1.AutoResizeColumns(); - } - - private void resetToolStripMenuItem_Click(object sender, EventArgs e) - { - foreach (FarPoint.Win.Spread.Column col in this.fpSpread1.ActiveSheet.Columns) - { - col.Width = 100; - } - } - - private void saveToolStripMenuItem_Click(object sender, EventArgs e) - { - FPUtil.ColsizeSave(this.fpSpread1, fn_fpcolsize); - } - - private void loadToolStripMenuItem_Click(object sender, EventArgs e) - { - FPUtil.ColSizeLoad(ref this.fpSpread1, fn_fpcolsize); - } - - private void btSearch_Click(object sender, EventArgs e) - { - refreshData(); - } - - private void toolStripLabel3_Click(object sender, EventArgs e) - { - //사용자목록처리 - var namestr = string.Format("{0}({1})", FCOMMON.info.Login.nameK, FCOMMON.info.Login.no); ; - if (FCOMMON.info.Login.no == "dev") namestr = "김치균(395552)"; - this.cmbUser.Text = namestr; - refreshData(); - } - - private void bindingNavigatorAddNewItem_Click(object sender, EventArgs e) - { - var newdr = this.dsMSSQL.JobReport.NewJobReportRow(); - newdr.pdate = DateTime.Now.ToShortDateString(); - if (DateTime.Now.DayOfWeek == DayOfWeek.Sunday || - DateTime.Now.DayOfWeek == DayOfWeek.Saturday) newdr.hrs = 0; - - var f = new JobReport.fJobReport_Add(newdr); - if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK) - { - this.dsMSSQL.JobReport.AddJobReportRow(newdr); - int cnt = this.ta.Update(newdr); - newdr.AcceptChanges(); - if (cnt != 1) - FCOMMON.Util.MsgE("자료가 추가되지 않았습니다.\n\n잠시 후 다시 시도하세요"); - } - else newdr.Delete(); - } - - private void btFind_Click(object sender, EventArgs e) - { - var search = tbFind.Text.Trim(); - search = search.Replace("*", "x"); - if (tbFind.Text != search) tbFind.Text = search; - try - { - if (search.Trim() == "") - { - this.bs.Filter = ""; - tbFind.BackColor = Color.White; - } - else - { - search = search.Replace("'", "''"); - var collist = new string[] { "requestpart", "package", "projectname", "process", "[type]", "description" }; - string filter = ""; // "itemna like ? or package like ? or projectname like ? or process like ? or [type] like ? or description like ?"; - foreach (var col in collist) - { - if (filter != "") filter += " or "; - filter += col + " like ?"; - } - filter = filter.Replace("?", "'%" + search + "%'"); - this.bs.Filter = filter; - tbFind.BackColor = Color.Lime; - } - tbFind.SelectAll(); - tbFind.Focus(); - } - catch (Exception ex) - { - this.tbFind.BackColor = Color.Tomato; - FCOMMON.Util.MsgE(ex.Message); - } - } - - private void tbFind_KeyDown(object sender, KeyEventArgs e) - { - if (e.KeyCode == Keys.Enter) btFind.PerformClick(); - } - - private void btEdit_Click(object sender, EventArgs e) - { - funcEdit(); - } - void funcEdit() - { - var drv = this.bs.Current as DataRowView; - if (drv == null) return; - var dr = drv.Row as dsPRJ.JobReportRow; - if(dr.uid != FCOMMON.info.Login.no && FCOMMON.info.Login.level<5) - { - FCOMMON.Util.MsgE("타인의 자료는 추가/변경/삭제 할 수 없습니다."); - return; - } - - var f = new JobReport.fJobReport_Add(dr); - if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK) - { - if (dr.RowState != DataRowState.Unchanged) - { - int cnt = this.ta.Update(dr); - dr.AcceptChanges(); - } - } - else dr.RejectChanges(); - } - - private void exportListToolStripMenuItem_Click(object sender, EventArgs e) - { - SaveFileDialog sd = new SaveFileDialog(); - sd.Filter = "excel|*.xls"; - sd.FileName = "jobreport.xls"; - if (sd.ShowDialog() == System.Windows.Forms.DialogResult.OK) - { - fpSpread1.SaveExcel(sd.FileName, - FarPoint.Excel.ExcelSaveFlags.SaveAsViewed - | FarPoint.Excel.ExcelSaveFlags.SaveAsFiltered - | FarPoint.Excel.ExcelSaveFlags.NoFormulas - | FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders); - FCOMMON.Util.MsgI("다음 파일이 생성 되었습니다.\n\n" + sd.FileName); - } - } - - private void btCopy_Click(object sender, EventArgs e) - { - funcCopy(); //190509 - } - void funcCopy() - { - var drv = this.bs.Current as DataRowView; - if (drv == null) return; - var dr = drv.Row as dsPRJ.JobReportRow; - - //현재 데이터를 입력하여 신규 추가를 한다. - var newdr = this.dsMSSQL.JobReport.NewJobReportRow(); - FCOMMON.Util.CopyData((System.Data.DataRow)dr, (System.Data.DataRow)newdr); - newdr.wdate = DateTime.Now; - newdr.wuid = FCOMMON.info.Login.no; - newdr.uid = FCOMMON.info.Login.no; - //newdr.description = ""; - newdr.pdate = DateTime.Now.ToShortDateString(); //190509 - newdr.idx = -1; - newdr.hrs = 8.0; - newdr.ot = 0.0; - newdr.EndEdit(); - - //var newdr = this.dsMSSQL.JobReport.NewJobReportRow(); - JobReport.fJobReport_Add f = new JobReport.fJobReport_Add(newdr); - if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK) - { - this.dsMSSQL.JobReport.AddJobReportRow(newdr); - this.ta.Update(newdr); - newdr.AcceptChanges(); - } - else newdr.Delete(); - } - - private void btDel_Click(object sender, EventArgs e) - { - funcDelete(); - } - void funcDelete() - { - var drv = this.bs.Current as DataRowView; - if (drv == null) return; - var dr = drv.Row as dsPRJ.JobReportRow; - if (dr.uid != FCOMMON.info.Login.no && FCOMMON.info.Login.level < 5) - { - FCOMMON.Util.MsgE("타인의 자료는 추가/변경/삭제 할 수 없습니다."); - return; - } - - var dlg = FCOMMON.Util.MsgQ("현재 선택된 자료를 삭제하시겠습니까?"); - if (dlg != System.Windows.Forms.DialogResult.Yes) return; - - dr.Delete(); - try - { - this.ta.Update(dr); - } - catch (Exception ex) - { - FCOMMON.Util.MsgE("삭제실패\n\n" + ex.Message); - } - } - private void lbStt_Click(object sender, EventArgs e) - { - var f = new FCOMMON.fSelectMonth(); - if (f.ShowDialog() != System.Windows.Forms.DialogResult.OK) return; - var sdDate = DateTime.Parse(DateTime.Now.ToString("yyyy-") + f.selectmon.ToString() + "-01"); - dtSD.Text = sdDate.ToShortDateString(); - dtED.Text = sdDate.AddMonths(1).AddDays(-1).ToShortDateString(); - refreshData(); - } - - private void btReport_Click(object sender, EventArgs e) - { - var f = new JobReport.rJobReport(); - f.Show(); - } - - private void cmbUser_Click(object sender, EventArgs e) - { - - } - - private void cmbUser_SelectedIndexChanged(object sender, EventArgs e) - { - RefreshTime(); - } - - private void 복사ToolStripMenuItem_Click(object sender, EventArgs e) - { - funcCopy(); - } - - private void 편집ToolStripMenuItem_Click(object sender, EventArgs e) - { - funcEdit(); - } - - private void 삭제ToolStripMenuItem_Click(object sender, EventArgs e) - { - funcDelete(); - } - - private void btReportDay_Click(object sender, EventArgs e) - { - var f = new JobReport.rJobReportDay(); - f.Show(); - } - - private void toolStripButton1_Click(object sender, EventArgs e) - { - string request = cmbUser.Text.Substring(cmbUser.Text.LastIndexOf('(') + 1); - request = request.Substring(0, request.Length - 1); - string name = cmbUser.Text.Substring(0, cmbUser.Text.IndexOf('(')); - var f = new JobReport.fJobChartMenu(name, request); - f.ShowDialog(); - } - - private void toolStripButton2_Click(object sender, EventArgs e) - { - this.Close(); - } - } -} +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using util = FCOMMON.Util; + +namespace FPJ0000 +{ + public partial class fJobReport : FCOMMON.fBase + { + string fn_fpcolsize = ""; + public fJobReport() + { + InitializeComponent(); + fn_fpcolsize = util.MakeFilePath(util.CurrentPath, "formSetting", "fp_" + this.Name + ".ini"); + this.dsMSSQL.JobReport.TableNewRow += Projects_TableNewRow; + this.FormClosed += __Closed; + + dtSD.KeyDown += dtSD_KeyDown; + dtED.KeyDown += dtSD_KeyDown; + + } + + void __Closed(object sender, FormClosedEventArgs e) + { + + } + + private void __Load(object sender, EventArgs e) + { + this.dtSD.Text = DateTime.Now.ToString("yyyy-MM-01"); + this.dtED.Text = DateTime.Now.ToShortDateString(); + + //담당자목록 - 사용자목록으로 처리한다. + string namestr = string.Format("{0}({1})", FCOMMON.info.Login.nameK, FCOMMON.info.Login.no); + if (FCOMMON.info.Login.no == "dev") namestr = "김치균(395552)"; + this.cmbUser.Items.Clear(); + this.cmbUser.Items.Add(namestr); + try + { + var cn = FCOMMON.DBM.getCn(); + cn.Open(); + string sql = "select uid,dbo.getUserName(uid) as uname " + + " from JobReport" + + " where gcode='{1}' and uid <> '{0}'" + + " group by uid " + + " order by uname"; + sql = string.Format(sql, FCOMMON.info.Login.no, FCOMMON.info.Login.gcode); + var cmd = new System.Data.SqlClient.SqlCommand(sql, cn); + var rdr = cmd.ExecuteReader(); + while (rdr.Read()) + { + string cmbdata = string.Format("{1}({0})", rdr["uid"].ToString(), rdr["uname"].ToString()); + this.cmbUser.Items.Add(cmbdata); + } + cmd.Dispose(); + cn.Close(); + cn.Dispose(); + }catch (Exception ex) + { + FCOMMON.Util.MsgE("User List Error\n\n"+ex.Message); + } + + //var userList = FCOMMON.DBM.getGroupList("name + '(' + id + ')'", "Users", "[level] > 0 and [level] < 10", false, false); + //foreach (var user in userList) + //{ + // this.cmbUser.Items.Add(user); + //} + + cmbUser.Text = namestr; + + //state list + //var stList = FCOMMON.DBM.getCodeList("05"); + //this.cmbState.Items.Clear(); + //cmbState.Items.Add("-- All --"); + //// cmbState.Items.Add("-- incomplete --"); + //foreach (var item in stList) + // cmbState.Items.Add(item); + //this.cmbState.SelectedIndex = 0; + + + //일반사용자의경우에는 상태를 변경하지 못한다. + int curLevel = Math.Max(FCOMMON.info.Login.level, FCOMMON.DBM.getAuth(FCOMMON.DBM.eAuthType.jobreport)); + if (curLevel >= 5) + { + btSave.Visible = true; + } + else + { + btSave.Visible = false; + //btViewDel.Visible = false; + fpSpread1.EditMode = false; + fpSpread1.Sheets[0].SelectionUnit = FarPoint.Win.Spread.Model.SelectionUnit.Row; + fpSpread1.EditModePermanent = false; + fpSpread1.EditModeReplace = false; + + foreach (FarPoint.Win.Spread.Column col in fpSpread1.ActiveSheet.Columns) + col.Locked = true; + } + + refreshData(); + + } + void RefreshTime() + { + lbTime.Text = "--h"; + + //사용자번호추적 + if (cmbUser.Text.Trim() == "") + { + //FCOMMON.Util.MsgE("담당자가 선택되지 않았습니다."); + return; + } + if (cmbUser.Text.IndexOf("(") == -1 || cmbUser.Text.IndexOf(")") == -1) + { + // FCOMMON.Util.MsgE("담당자 번호를 확인할 수 없습니다.(문의 T.8567)"); + return; + } + string request = cmbUser.Text.Substring(cmbUser.Text.LastIndexOf('(') + 1); + request = request.Substring(0, request.Length - 1); + + float work, ot; + int total; + FCOMMON.DBM.getWorkTime(request, this.dtSD.Text.Substring(0, 7), out work, out total, out ot); + lbTime.Text = string.Format(" {0}h/{2}h, OT:{1}h", work, ot, total); + } + void dtSD_KeyDown(object sender, KeyEventArgs e) + { + if (e.KeyCode != Keys.Enter) return; + var tb = sender as ToolStripTextBox; + var input = tb.Text.Trim(); + if (input == "") tb.Text = DateTime.Now.ToShortDateString(); + else + { + string dt = string.Empty; + if (!util.MakeDateString(input, out dt)) + { + FCOMMON.Util.MsgE("입력값이 올바르지 않습니다."); + tb.SelectAll(); + tb.Focus(); + return; + } + else + { + tb.Text = dt; + } + } + if (tb == dtSD) + { + dtED.Focus(); + dtED.SelectAll(); + } + else + { + btSearch.PerformClick(); + tb.SelectAll(); + } + } + + void refreshData() + { + // string state = "%"; + // if (cmbState.SelectedIndex > 0) state = cmbState.Text.Split(',')[0].Substring(1); + + //사용자번호추적 + if (cmbUser.Text.Trim() == "") + { + FCOMMON.Util.MsgE("담당자가 선택되지 않았습니다."); + return; + } + if (cmbUser.Text.IndexOf("(") == -1 || cmbUser.Text.IndexOf(")") == -1) + { + FCOMMON.Util.MsgE("담당자 번호를 확인할 수 없습니다.(문의 T.8567)"); + return; + } + string request = cmbUser.Text.Substring(cmbUser.Text.LastIndexOf('(') + 1); + request = request.Substring(0, request.Length - 1); + + this.ta.Fill(this.dsMSSQL.JobReport, dtSD.Text, dtED.Text, request,FCOMMON.info.Login.gcode); + RefreshTime(); + FPUtil.ColSizeLoad(ref this.fpSpread1, fn_fpcolsize); + FormattingData(); + } + void FormattingData() + { + //삭제컬럼인덱스 + this.fpSpread1.SuspendLayout(); + var delindex = this.fpSpread1.ActiveSheet.Columns["pidx"].Index; + for (int i = 0; i < this.fpSpread1.ActiveSheet.Rows.Count; i++) + { + var state = this.fpSpread1.ActiveSheet.GetValue(i, delindex); + string stateStr = string.Empty; + if (state != null) stateStr = state.ToString(); + + switch (stateStr.ToLower()) + { + case "-1": + this.fpSpread1.ActiveSheet.Rows[i].BackColor = Color.Gold; + break; + default: + this.fpSpread1.ActiveSheet.Rows[i].BackColor = SystemColors.Window; + break; + } + } + this.fpSpread1.ResumeLayout(); + } + void funcSave() + { + this.Validate(); + this.bs.EndEdit(); + try + { + this.tam.UpdateAll(this.dsMSSQL); + FormattingData(); + } + catch (Exception ex) + { + FCOMMON.Util.MsgE("저장 실패\n" + ex.Message); + } + } + + private void projectsBindingNavigatorSaveItem_Click(object sender, EventArgs e) + { + funcSave(); + + } + void Projects_TableNewRow(object sender, DataTableNewRowEventArgs e) + { + e.Row["gcode"] = FCOMMON.info.Login.gcode; + e.Row["pdate"] = DateTime.Now.ToShortDateString(); + e.Row["wuid"] = FCOMMON.info.Login.no; + e.Row["wdate"] = DateTime.Now; + e.Row["status"] = "진행 완료";//other + e.Row["uid"] = FCOMMON.info.Login.no; //이름을 직접 기록 + e.Row["hrs"] = 8.0; + e.Row["ot"] = 0.0; + } + + private void refreshToolStripMenuItem_Click(object sender, EventArgs e) + { + refreshData(); + } + + private void partListToolStripMenuItem_Click(object sender, EventArgs e) + { + var drv = this.bs.Current as DataRowView; + if (drv == null) return; + var dr = drv.Row as dsPRJ.ProjectsRow; + var f = new fPartList(dr.idx); + f.MdiParent = this.MdiParent; + f.Show(); + } + + + private void autoToolStripMenuItem_Click(object sender, EventArgs e) + { + this.fpSpread1.ActiveSheet.DataAutoSizeColumns = true; + + for (int i = 0; i < this.fpSpread1.ActiveSheet.Rows.Count; i++) + this.fpSpread1.ActiveSheet.SetRowHeight(i, 25); + //dv1.AutoResizeColumns(); + } + + private void resetToolStripMenuItem_Click(object sender, EventArgs e) + { + foreach (FarPoint.Win.Spread.Column col in this.fpSpread1.ActiveSheet.Columns) + { + col.Width = 100; + } + } + + private void saveToolStripMenuItem_Click(object sender, EventArgs e) + { + FPUtil.ColsizeSave(this.fpSpread1, fn_fpcolsize); + } + + private void loadToolStripMenuItem_Click(object sender, EventArgs e) + { + FPUtil.ColSizeLoad(ref this.fpSpread1, fn_fpcolsize); + } + + private void btSearch_Click(object sender, EventArgs e) + { + refreshData(); + } + + private void toolStripLabel3_Click(object sender, EventArgs e) + { + //사용자목록처리 + var namestr = string.Format("{0}({1})", FCOMMON.info.Login.nameK, FCOMMON.info.Login.no); ; + if (FCOMMON.info.Login.no == "dev") namestr = "김치균(395552)"; + this.cmbUser.Text = namestr; + refreshData(); + } + + private void bindingNavigatorAddNewItem_Click(object sender, EventArgs e) + { + var newdr = this.dsMSSQL.JobReport.NewJobReportRow(); + newdr.pdate = DateTime.Now.ToShortDateString(); + if (DateTime.Now.DayOfWeek == DayOfWeek.Sunday || + DateTime.Now.DayOfWeek == DayOfWeek.Saturday) newdr.hrs = 0; + + var f = new JobReport.fJobReport_Add(newdr); + if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK) + { + this.dsMSSQL.JobReport.AddJobReportRow(newdr); + int cnt = this.ta.Update(newdr); + newdr.AcceptChanges(); + FormattingData(); + if (cnt != 1) + FCOMMON.Util.MsgE("자료가 추가되지 않았습니다.\n\n잠시 후 다시 시도하세요"); + } + else newdr.Delete(); + } + + private void btFind_Click(object sender, EventArgs e) + { + var search = tbFind.Text.Trim(); + search = search.Replace("*", "x"); + if (tbFind.Text != search) tbFind.Text = search; + try + { + if (search.Trim() == "") + { + this.bs.Filter = ""; + tbFind.BackColor = Color.White; + } + else + { + search = search.Replace("'", "''"); + var collist = new string[] { "requestpart", "package", "projectname", "process", "[type]", "description" }; + string filter = ""; // "itemna like ? or package like ? or projectname like ? or process like ? or [type] like ? or description like ?"; + foreach (var col in collist) + { + if (filter != "") filter += " or "; + filter += col + " like ?"; + } + filter = filter.Replace("?", "'%" + search + "%'"); + this.bs.Filter = filter; + tbFind.BackColor = Color.Lime; + } + tbFind.SelectAll(); + tbFind.Focus(); + } + catch (Exception ex) + { + this.tbFind.BackColor = Color.Tomato; + FCOMMON.Util.MsgE(ex.Message); + } + } + + private void tbFind_KeyDown(object sender, KeyEventArgs e) + { + if (e.KeyCode == Keys.Enter) btFind.PerformClick(); + } + + private void btEdit_Click(object sender, EventArgs e) + { + funcEdit(); + } + void funcEdit() + { + var drv = this.bs.Current as DataRowView; + if (drv == null) return; + var dr = drv.Row as dsPRJ.JobReportRow; + if(dr.uid != FCOMMON.info.Login.no && FCOMMON.info.Login.level<5) + { + FCOMMON.Util.MsgE("타인의 자료는 추가/변경/삭제 할 수 없습니다."); + return; + } + + var f = new JobReport.fJobReport_Add(dr); + if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK) + { + if (dr.RowState != DataRowState.Unchanged) + { + int cnt = this.ta.Update(dr); + dr.AcceptChanges(); + FormattingData(); + } + } + else dr.RejectChanges(); + } + + private void exportListToolStripMenuItem_Click(object sender, EventArgs e) + { + SaveFileDialog sd = new SaveFileDialog(); + sd.Filter = "excel|*.xls"; + sd.FileName = "jobreport.xls"; + if (sd.ShowDialog() == System.Windows.Forms.DialogResult.OK) + { + fpSpread1.SaveExcel(sd.FileName, + FarPoint.Excel.ExcelSaveFlags.SaveAsViewed + | FarPoint.Excel.ExcelSaveFlags.SaveAsFiltered + | FarPoint.Excel.ExcelSaveFlags.NoFormulas + | FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders); + FCOMMON.Util.MsgI("다음 파일이 생성 되었습니다.\n\n" + sd.FileName); + } + } + + private void btCopy_Click(object sender, EventArgs e) + { + funcCopy(); //190509 + } + void funcCopy() + { + var drv = this.bs.Current as DataRowView; + if (drv == null) return; + var dr = drv.Row as dsPRJ.JobReportRow; + + //현재 데이터를 입력하여 신규 추가를 한다. + var newdr = this.dsMSSQL.JobReport.NewJobReportRow(); + FCOMMON.Util.CopyData((System.Data.DataRow)dr, (System.Data.DataRow)newdr); + newdr.wdate = DateTime.Now; + newdr.wuid = FCOMMON.info.Login.no; + newdr.uid = FCOMMON.info.Login.no; + //newdr.description = ""; + newdr.pdate = DateTime.Now.ToShortDateString(); //190509 + newdr.idx = -1; + newdr.hrs = 8.0; + newdr.ot = 0.0; + newdr.EndEdit(); + + //var newdr = this.dsMSSQL.JobReport.NewJobReportRow(); + JobReport.fJobReport_Add f = new JobReport.fJobReport_Add(newdr); + if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK) + { + this.dsMSSQL.JobReport.AddJobReportRow(newdr); + this.ta.Update(newdr); + newdr.AcceptChanges(); + } + else newdr.Delete(); + } + + private void btDel_Click(object sender, EventArgs e) + { + funcDelete(); + } + void funcDelete() + { + var drv = this.bs.Current as DataRowView; + if (drv == null) return; + var dr = drv.Row as dsPRJ.JobReportRow; + if (dr.uid != FCOMMON.info.Login.no && FCOMMON.info.Login.level < 5) + { + FCOMMON.Util.MsgE("타인의 자료는 추가/변경/삭제 할 수 없습니다."); + return; + } + + var dlg = FCOMMON.Util.MsgQ("현재 선택된 자료를 삭제하시겠습니까?"); + if (dlg != System.Windows.Forms.DialogResult.Yes) return; + + dr.Delete(); + try + { + this.ta.Update(dr); + } + catch (Exception ex) + { + FCOMMON.Util.MsgE("삭제실패\n\n" + ex.Message); + } + } + private void lbStt_Click(object sender, EventArgs e) + { + var f = new FCOMMON.fSelectMonth(); + if (f.ShowDialog() != System.Windows.Forms.DialogResult.OK) return; + var sdDate = DateTime.Parse(DateTime.Now.ToString("yyyy-") + f.selectmon.ToString() + "-01"); + dtSD.Text = sdDate.ToShortDateString(); + dtED.Text = sdDate.AddMonths(1).AddDays(-1).ToShortDateString(); + refreshData(); + } + + private void btReport_Click(object sender, EventArgs e) + { + var f = new JobReport.rJobReport(); + f.Show(); + } + + private void cmbUser_Click(object sender, EventArgs e) + { + + } + + private void cmbUser_SelectedIndexChanged(object sender, EventArgs e) + { + RefreshTime(); + } + + private void 복사ToolStripMenuItem_Click(object sender, EventArgs e) + { + funcCopy(); + } + + private void 편집ToolStripMenuItem_Click(object sender, EventArgs e) + { + funcEdit(); + } + + private void 삭제ToolStripMenuItem_Click(object sender, EventArgs e) + { + funcDelete(); + } + + private void btReportDay_Click(object sender, EventArgs e) + { + var f = new JobReport.rJobReportDay(); + f.Show(); + } + + private void toolStripButton1_Click(object sender, EventArgs e) + { + string request = cmbUser.Text.Substring(cmbUser.Text.LastIndexOf('(') + 1); + request = request.Substring(0, request.Length - 1); + string name = cmbUser.Text.Substring(0, cmbUser.Text.IndexOf('(')); + var f = new JobReport.fJobChartMenu(name, request); + f.ShowDialog(); + } + + private void toolStripButton2_Click(object sender, EventArgs e) + { + this.Close(); + } + } +} diff --git a/SubProject/FPJ0000/JobReport/fJobReport.resx b/SubProject/FPJ0000/JobReport/fJobReport.resx index 5e04b29..d901a2c 100644 --- a/SubProject/FPJ0000/JobReport/fJobReport.resx +++ b/SubProject/FPJ0000/JobReport/fJobReport.resx @@ -1,327 +1,324 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 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 - - - 259, 17 - - - 122, 17 - - - 17, 17 - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - wwAADsMBx2+oZAAAASpJREFUOE9jGDygcNbz/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 - Iu/O/9T+11gVGSSd+C+b9vW/bvA83AYYZt3+H9byEqci/dTL/zV8p+E2QCftxn+/6od4Fal4TMBtgFPu - lf8gBXgVDULAwAAA8HbAq6XlmnAAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - wwAADsMBx2+oZAAAALZJREFUOE9jGDogvP3BfyiTdBDf/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 - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - wwAADsMBx2+oZAAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78 - n73v1//OrX//u5VeJt2QyK5H/6ds+/W/ZOnf/wnT//63yT1LmiGBzQ//t659D9ZsXPLlv3T0tf/GkcuI - N8Sj6v7/krnv4JoVXXpIc4F96d3/gS3PyNMMAhZ5d/7bFFwhTzMIGGbdJl8zCOik3SBf81AEDAwAoH5f - oAc0QjgAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - wwAADsMBx2+oZAAAASxJREFUOE9jGFygcNbz/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 - WOTd+W9TcAVDMwiA5FL7X8O9hBUYZt3GqhkEQHJhLS//6wbPw22ATtoNnJIgOb/qh/81fKfhNgAfcMq9 - 8l/FYwIYQ4UGBWBgAAC+0b+zuQxOnAAAAABJRU5ErkJggg== - - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - wwAADsMBx2+oZAAAAUpJREFUOE9jGLzg7gL2/7fmcf6/Oofr/8UZvP+hwsSD60CNfx41/v/zsOH/yckC - pBtwfjov3ICDPSKkG3B8kiBQc93/Pw+q/u9oFydswKWZPP/PTuX7fxKo8Ui/0P993SJAzeX//94r+r++ - Qeb/qhq5/0srFf/PL1X+P6tIFdPAU0B//nlYD9RUC8SV///cKwHivP9/72b+/3sn+f/f23H//92MAOKQ - /5NyNDENONQrDHbu3/ulQI0FQI3ZQI2pQI0J///digZqDPv/70bQ/3/X/f53peliGrCzXeL/lmap/+vA - zpX/v6RC8f/fWzFAjeH/p+Zp/J+QpfW/O0P3f3uq/v/mREPCYTIb6E+Qc//dCPjfk6FDWAM6APnz3w1/ - IPb735qsT7oB3em6YP+CcH2cEekGtCQZ/G+IN/xfE2v8vzLahHQD6AQYGAAkI9iedfyIaQAAAABJRU5E - rkJggg== - - - - - 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 - - - - 17, 17 - - - 325, 17 - - - - R0lGODlhEAAQAIQfAJXG2JXa+ZLO5ChrlkCy4TZ1kiVvpCN0trvo9SN5xTd4lrfh7iR9zo3S+EGz7JDJ - 4TaCromrvC9ymyV+0Dd3mTl1koe72YvN7LTj+9ne6N3g6v7+/0Cw2Stoh////////yH/C05FVFNDQVBF - Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAInwA/CBzooaAHgQUHKvRQoUABCgUlHFT4IYMCBAsQIIBg - wcBEgh0WCBDAgcAFDAc+fvDQIUKHDgMeEHDQIIFKlgoMGgjQoAGDmwUOehhg4EACBhM+GlzKVOkEBgkO - GBggNOhCBhgCBPBYUEGHmwkCOCDwYMCAll8XHghwgQCHkQDSLjRgAcKDBwAAKNCwgaIHiR4oOKygkuDE - pRQTK6YYEAA7 - - - - - R0lGODlhEAAQAIQfALnik2aXQv7+/dPut73llbfala3LmW6gSWqdQ2eYRGqaSLfck568iYrUQN7yzF6R - PLTXlYjUP8XwmYfQQLbYl4jRQGiaQsPumNbyu7nglNPzsLXYlf7+/lCHK////////yH/C05FVFNDQVBF - Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAIlgA/CBzooaAHgQUHEvSgIEAABQUfHFTIwQECDAMwYDhg - oENCgRw8dBgAAECFBgsweJxYsAODDjApTIhAwCMHkCItGOxwgUCGlQQTeAgJsyhQg0iTGvzQ0qhND0IX - dtBwQcJKDxZsIhQpIcIECkVffmwpYUGDCiUheBQg1cCBAgU2QFDg4KZCDxIZOoQ48S7LpQoDCx4cEAA7 - - - - - R0lGODlhEAAQAIQAAJXD9Iasxm6MqnSn2lZtjVaRyEpXbYu767TX/2KZztvr/4Gy5KrT/3ut32+gzlFh - e+r0/0RNX9/u/9Ln+8Xg//n8/4e36CkxQz9GVkSCvKjL35/N/Je91K7T5bDS4////yH/C05FVFNDQVBF - Mi4wAwEBAAAh+QQAAAAAACwAAAAAEAAQAAAIuQA/CBxIsKDACRwScggQwIGAhwIICBDYQcEEgwg+bNjw - QKCHCQgkQBgpQcKBCg0AEBCoAaRIkhIsVBigUiAHCgwkKNjJU8GAAx0/3NwIAMABCwsaDHCwIGgAChuK - HjiQdMDSAQYEPpWKtKqDBA6yfgiAwGhXpUsTJIgg0AGCo0nRfi1QgO0HAQyQNpCrtkAGDAIFbKi69GsC - un8FEohqdEFavxkyXAhMoPKDBwYMRIiAAcOFoAZDCwwIADs= - - - - - R0lGODlhEAAQAIQfAJfL/OTs9HWVsW6aUqnT+6bnZldwkYiux7TZ/O3z+UlVa/P2+ZfTW36wWJDLV4m7 - 69nn78bi/qjL3qDP+VJhe4rAVa7S40NLXJ3bYJrA1ikxQz5FVdDU22OPRf///////yH/C05FVFNDQVBF - Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAIwQA9CBxIcOCHgx4gWLAgIUOGAwcESBTgAaEFCAEGaBwQ - IGOABwYqerCQsYBJBho7JHgAUqCEDjAxYGBQgYHKBAsoCMzQIUIEmA6CdkCAIOfOBT5/MnBQYSgBozCj - SoVJ4KkCDx1MFhhKFEFVAhMCXM1aAANMoh2qTgh7AWvZmQ6igp0AIEDbDg0aLA06YC4AABA2eBjgYcHG - vmv/Akgg2IMBDgsSdJwcAEICDhoECjDAmQIFBQouXNiwQYPOgqgLBgQAOw== - - - - 186, 17 - - - 499, 17 - - - 561, 17 - - - 393, 17 - - - - iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE4SURBVDhPtZPPasJAEMbzPn0FwWA92JtP4NGKB1/DP7ei - QSsovkChh7ZBrCfpyR4sikopUgq9StFzM/UbZ5asSS4FfzAkO7vft5udiZMEnSBpk5dhFJmncjdHxXaG - A+9K4SbFT1luEwQBbXavVO5d0nI3ovnW5yeiMriiu+kt5asXbABEdgRigAUQDr+aHLU3lxoLl/yPJhvF - GsiYJ/vPdX5qPK3bVJ25VFukafztGQNsKHJ791I3w+8KcpNth8XDz5YxACI/gsR1J8sTYcO4UIzwv1gG - cTshgJ5IT8hChTMHsHi+v+fvffmxywVwN2FDkdsGEOK2ceu4feQ0tDqKyKMGqDfqjvprLzyswuX7Tf4E - dBo6zn/3OB7XHovRyuhQ6+hhYKA9DpL+A1keRebNAhkaJH0OHOcP031C4EjYr6wAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADlSURBVEhL7dQxCsIwFMbxnMrZWatzUXRUCo5ewSs4ewZR - DyDeQfEETsUbRL7YYNSXNC/UOiQP/kvzyE9KUcQ7y/VJtlHFvQYPjzf50xKsJsFmq81WHq538swMO9il - zhALxkWd7kAOJwsnjjPsYNeGs2B14fR5YTYq5O5c1u7sL987iAUjF+6LIjaMKJyDoiAYmVAvn8lsXHij - KBhGwDWof4APihqHqQ+OKhg2X3U/n7+9ah88CKY+pM9ndTgbplDbmQtnwS7UtmPDWfDf/jIRLnKhOuzY - UMSGmyrBauKE26jiohshHicE2B3dbRrmAAAAAElFTkSuQmCC - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + 259, 17 + + + 122, 17 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAAASpJREFUOE9jGDygcNbz/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 + Iu/O/9T+11gVGSSd+C+b9vW/bvA83AYYZt3+H9byEqci/dTL/zV8p+E2QCftxn+/6od4Fal4TMBtgFPu + lf8gBXgVDULAwAAA8HbAq6XlmnAAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAAALZJREFUOE9jGDogvP3BfyiTdBDf/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 + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78 + n73v1//OrX//u5VeJt2QyK5H/6ds+/W/ZOnf/wnT//63yT1LmiGBzQ//t659D9ZsXPLlv3T0tf/GkcuI + N8Sj6v7/krnv4JoVXXpIc4F96d3/gS3PyNMMAhZ5d/7bFFwhTzMIGGbdJl8zCOik3SBf81AEDAwAoH5f + oAc0QjgAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAAASxJREFUOE9jGFygcNbz/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 + WOTd+W9TcAVDMwiA5FL7X8O9hBUYZt3GqhkEQHJhLS//6wbPw22ATtoNnJIgOb/qh/81fKfhNgAfcMq9 + 8l/FYwIYQ4UGBWBgAAC+0b+zuQxOnAAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + wwAADsMBx2+oZAAAAUpJREFUOE9jGLzg7gL2/7fmcf6/Oofr/8UZvP+hwsSD60CNfx41/v/zsOH/yckC + pBtwfjov3ICDPSKkG3B8kiBQc93/Pw+q/u9oFydswKWZPP/PTuX7fxKo8Ui/0P993SJAzeX//94r+r++ + Qeb/qhq5/0srFf/PL1X+P6tIFdPAU0B//nlYD9RUC8SV///cKwHivP9/72b+/3sn+f/f23H//92MAOKQ + /5NyNDENONQrDHbu3/ulQI0FQI3ZQI2pQI0J///digZqDPv/70bQ/3/X/f53peliGrCzXeL/lmap/+vA + zpX/v6RC8f/fWzFAjeH/p+Zp/J+QpfW/O0P3f3uq/v/mREPCYTIb6E+Qc//dCPjfk6FDWAM6APnz3w1/ + IPb735qsT7oB3em6YP+CcH2cEekGtCQZ/G+IN/xfE2v8vzLahHQD6AQYGAAkI9iedfyIaQAAAABJRU5E + rkJggg== + + + + + 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 + + + + 325, 17 + + + + R0lGODlhEAAQAIQfAJXG2JXa+ZLO5ChrlkCy4TZ1kiVvpCN0trvo9SN5xTd4lrfh7iR9zo3S+EGz7JDJ + 4TaCromrvC9ymyV+0Dd3mTl1koe72YvN7LTj+9ne6N3g6v7+/0Cw2Stoh////////yH/C05FVFNDQVBF + Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAInwA/CBzooaAHgQUHKvRQoUABCgUlHFT4IYMCBAsQIIBg + wcBEgh0WCBDAgcAFDAc+fvDQIUKHDgMeEHDQIIFKlgoMGgjQoAGDmwUOehhg4EACBhM+GlzKVOkEBgkO + GBggNOhCBhgCBPBYUEGHmwkCOCDwYMCAll8XHghwgQCHkQDSLjRgAcKDBwAAKNCwgaIHiR4oOKygkuDE + pRQTK6YYEAA7 + + + + + R0lGODlhEAAQAIQfALnik2aXQv7+/dPut73llbfala3LmW6gSWqdQ2eYRGqaSLfck568iYrUQN7yzF6R + PLTXlYjUP8XwmYfQQLbYl4jRQGiaQsPumNbyu7nglNPzsLXYlf7+/lCHK////////yH/C05FVFNDQVBF + Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAIlgA/CBzooaAHgQUHEvSgIEAABQUfHFTIwQECDAMwYDhg + oENCgRw8dBgAAECFBgsweJxYsAODDjApTIhAwCMHkCItGOxwgUCGlQQTeAgJsyhQg0iTGvzQ0qhND0IX + dtBwQcJKDxZsIhQpIcIECkVffmwpYUGDCiUheBQg1cCBAgU2QFDg4KZCDxIZOoQ48S7LpQoDCx4cEAA7 + + + + + R0lGODlhEAAQAIQAAJXD9Iasxm6MqnSn2lZtjVaRyEpXbYu767TX/2KZztvr/4Gy5KrT/3ut32+gzlFh + e+r0/0RNX9/u/9Ln+8Xg//n8/4e36CkxQz9GVkSCvKjL35/N/Je91K7T5bDS4////yH/C05FVFNDQVBF + Mi4wAwEBAAAh+QQAAAAAACwAAAAAEAAQAAAIuQA/CBxIsKDACRwScggQwIGAhwIICBDYQcEEgwg+bNjw + QKCHCQgkQBgpQcKBCg0AEBCoAaRIkhIsVBigUiAHCgwkKNjJU8GAAx0/3NwIAMABCwsaDHCwIGgAChuK + HjiQdMDSAQYEPpWKtKqDBA6yfgiAwGhXpUsTJIgg0AGCo0nRfi1QgO0HAQyQNpCrtkAGDAIFbKi69GsC + un8FEohqdEFavxkyXAhMoPKDBwYMRIiAAcOFoAZDCwwIADs= + + + + + R0lGODlhEAAQAIQfAJfL/OTs9HWVsW6aUqnT+6bnZldwkYiux7TZ/O3z+UlVa/P2+ZfTW36wWJDLV4m7 + 69nn78bi/qjL3qDP+VJhe4rAVa7S40NLXJ3bYJrA1ikxQz5FVdDU22OPRf///////yH/C05FVFNDQVBF + Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAIwQA9CBxIcOCHgx4gWLAgIUOGAwcESBTgAaEFCAEGaBwQ + IGOABwYqerCQsYBJBho7JHgAUqCEDjAxYGBQgYHKBAsoCMzQIUIEmA6CdkCAIOfOBT5/MnBQYSgBozCj + SoVJ4KkCDx1MFhhKFEFVAhMCXM1aAANMoh2qTgh7AWvZmQ6igp0AIEDbDg0aLA06YC4AABA2eBjgYcHG + vmv/Akgg2IMBDgsSdJwcAEICDhoECjDAmQIFBQouXNiwQYPOgqgLBgQAOw== + + + + 186, 17 + + + 499, 17 + + + 561, 17 + + + 393, 17 + + + + iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE4SURBVDhPtZPPasJAEMbzPn0FwWA92JtP4NGKB1/DP7ei + QSsovkChh7ZBrCfpyR4sikopUgq9StFzM/UbZ5asSS4FfzAkO7vft5udiZMEnSBpk5dhFJmncjdHxXaG + A+9K4SbFT1luEwQBbXavVO5d0nI3ovnW5yeiMriiu+kt5asXbABEdgRigAUQDr+aHLU3lxoLl/yPJhvF + GsiYJ/vPdX5qPK3bVJ25VFukafztGQNsKHJ791I3w+8KcpNth8XDz5YxACI/gsR1J8sTYcO4UIzwv1gG + cTshgJ5IT8hChTMHsHi+v+fvffmxywVwN2FDkdsGEOK2ceu4feQ0tDqKyKMGqDfqjvprLzyswuX7Tf4E + dBo6zn/3OB7XHovRyuhQ6+hhYKA9DpL+A1keRebNAhkaJH0OHOcP031C4EjYr6wAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADlSURBVEhL7dQxCsIwFMbxnMrZWatzUXRUCo5ewSs4ewZR + DyDeQfEETsUbRL7YYNSXNC/UOiQP/kvzyE9KUcQ7y/VJtlHFvQYPjzf50xKsJsFmq81WHq538swMO9il + zhALxkWd7kAOJwsnjjPsYNeGs2B14fR5YTYq5O5c1u7sL987iAUjF+6LIjaMKJyDoiAYmVAvn8lsXHij + KBhGwDWof4APihqHqQ+OKhg2X3U/n7+9ah88CKY+pM9ndTgbplDbmQtnwS7UtmPDWfDf/jIRLnKhOuzY + UMSGmyrBauKE26jiohshHicE2B3dbRrmAAAAAElFTkSuQmCC + + \ No newline at end of file diff --git a/SubProject/FPJ0000/JobReport/fJobReport_Add.Designer.cs b/SubProject/FPJ0000/JobReport/fJobReport_Add.Designer.cs index 8367f7e..ecec769 100644 --- a/SubProject/FPJ0000/JobReport/fJobReport_Add.Designer.cs +++ b/SubProject/FPJ0000/JobReport/fJobReport_Add.Designer.cs @@ -1,437 +1,438 @@ -namespace FPJ0000.JobReport -{ - partial class fJobReport_Add - { - /// - /// 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.Windows.Forms.Label hrsLabel; - System.Windows.Forms.Label typeLabel; - System.Windows.Forms.Label label1; - System.Windows.Forms.Label label2; - System.Windows.Forms.Label projectLabel; - System.Windows.Forms.Label label4; - System.Windows.Forms.Label stateLabel; - System.Windows.Forms.Label label5; - this.lbSummary = new System.Windows.Forms.Label(); - this.tbHrs = new System.Windows.Forms.TextBox(); - this.bs = new System.Windows.Forms.BindingSource(this.components); - this.dsPRJ = new FPJ0000.dsPRJ(); - this.statusStrip1 = new System.Windows.Forms.StatusStrip(); - this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel(); - this.lbIndex = new System.Windows.Forms.ToolStripStatusLabel(); - this.cmbType = new System.Windows.Forms.ComboBox(); - this.btSave = new System.Windows.Forms.Button(); - this.tbDescription = new System.Windows.Forms.TextBox(); - this.dtPdate = new System.Windows.Forms.DateTimePicker(); - this.cmbUser = new System.Windows.Forms.ComboBox(); - this.tbProject = new System.Windows.Forms.TextBox(); - this.tbProjectIndex = new System.Windows.Forms.TextBox(); - this.tbOt = new System.Windows.Forms.TextBox(); - this.tbWW = new System.Windows.Forms.TextBox(); - this.cmbProcess = new System.Windows.Forms.ComboBox(); - this.cmbState = new System.Windows.Forms.ComboBox(); - this.cmbPackage = new System.Windows.Forms.ComboBox(); - this.cmbRequest = new System.Windows.Forms.ComboBox(); - this.ta = new FPJ0000.dsPRJTableAdapters.JobReportTableAdapter(); - this.tam = new FPJ0000.dsPRJTableAdapters.TableAdapterManager(); - this.chkAutoAdd = new System.Windows.Forms.CheckBox(); - hrsLabel = new System.Windows.Forms.Label(); - typeLabel = new System.Windows.Forms.Label(); - label1 = new System.Windows.Forms.Label(); - label2 = new System.Windows.Forms.Label(); - projectLabel = new System.Windows.Forms.Label(); - label4 = new System.Windows.Forms.Label(); - stateLabel = new System.Windows.Forms.Label(); - label5 = new System.Windows.Forms.Label(); - ((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.dsPRJ)).BeginInit(); - this.statusStrip1.SuspendLayout(); - this.SuspendLayout(); - // - // hrsLabel - // - hrsLabel.AutoSize = true; - hrsLabel.Location = new System.Drawing.Point(18, 162); - hrsLabel.Name = "hrsLabel"; - hrsLabel.Size = new System.Drawing.Size(115, 12); - hrsLabel.TabIndex = 16; - hrsLabel.Text = "근무시간 / 초과시간"; - // - // typeLabel - // - typeLabel.AutoSize = true; - typeLabel.Location = new System.Drawing.Point(18, 129); - typeLabel.Name = "typeLabel"; - typeLabel.Size = new System.Drawing.Size(115, 12); - typeLabel.TabIndex = 13; - typeLabel.Text = "업무형태 / 업무분류"; - // - // label1 - // - label1.AutoSize = true; - label1.Location = new System.Drawing.Point(30, 100); - label1.Name = "label1"; - label1.Size = new System.Drawing.Size(103, 12); - label1.TabIndex = 10; - label1.Text = "요청부서 / 패키지"; - // - // label2 - // - label2.AutoSize = true; - label2.Location = new System.Drawing.Point(76, 190); - label2.Name = "label2"; - label2.Size = new System.Drawing.Size(57, 12); - label2.TabIndex = 18; - label2.Text = "진행 내용"; - // - // projectLabel - // - projectLabel.AutoSize = true; - projectLabel.Location = new System.Drawing.Point(30, 74); - projectLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - projectLabel.Name = "projectLabel"; - projectLabel.Size = new System.Drawing.Size(103, 12); - projectLabel.TabIndex = 7; - projectLabel.Text = "프로젝트 (아이템)"; - // - // label4 - // - label4.AutoSize = true; - label4.Location = new System.Drawing.Point(92, 46); - label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - label4.Name = "label4"; - label4.Size = new System.Drawing.Size(41, 12); - label4.TabIndex = 5; - label4.Text = "담당자"; - // - // stateLabel - // - stateLabel.AutoSize = true; - stateLabel.Location = new System.Drawing.Point(388, 18); - stateLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - stateLabel.Name = "stateLabel"; - stateLabel.Size = new System.Drawing.Size(29, 12); - stateLabel.TabIndex = 3; - stateLabel.Text = "상태"; - // - // label5 - // - label5.AutoSize = true; - label5.Location = new System.Drawing.Point(92, 18); - label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - label5.Name = "label5"; - label5.Size = new System.Drawing.Size(41, 12); - label5.TabIndex = 0; - label5.Text = "등록일"; - // - // lbSummary - // - this.lbSummary.AutoSize = true; - this.lbSummary.ForeColor = System.Drawing.Color.SlateGray; - this.lbSummary.Location = new System.Drawing.Point(309, 156); - this.lbSummary.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.lbSummary.Name = "lbSummary"; - this.lbSummary.Size = new System.Drawing.Size(195, 24); - this.lbSummary.TabIndex = 53; - this.lbSummary.Text = "금월 근무시간 : {0:N1}h / {1:N0}h\r\n금월 초과시간 : {2:N1}h"; - // - // tbHrs - // - this.tbHrs.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bs, "hrs", true, System.Windows.Forms.DataSourceUpdateMode.OnValidation, null, "N2")); - this.tbHrs.Font = new System.Drawing.Font("맑은 고딕", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129))); - this.tbHrs.Location = new System.Drawing.Point(141, 151); - this.tbHrs.Name = "tbHrs"; - this.tbHrs.Size = new System.Drawing.Size(77, 33); - this.tbHrs.TabIndex = 17; - this.tbHrs.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - // - // bs - // - this.bs.DataMember = "JobReport"; - this.bs.DataSource = this.dsPRJ; - // - // dsPRJ - // - this.dsPRJ.DataSetName = "dsPRJ"; - this.dsPRJ.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema; - // - // statusStrip1 - // - this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.toolStripStatusLabel1, - this.lbIndex}); - this.statusStrip1.Location = new System.Drawing.Point(0, 443); - this.statusStrip1.Name = "statusStrip1"; - this.statusStrip1.Size = new System.Drawing.Size(538, 22); - this.statusStrip1.TabIndex = 28; - this.statusStrip1.Text = "statusStrip1"; - // - // toolStripStatusLabel1 - // - this.toolStripStatusLabel1.Name = "toolStripStatusLabel1"; - this.toolStripStatusLabel1.Size = new System.Drawing.Size(36, 17); - this.toolStripStatusLabel1.Text = "Index"; - // - // lbIndex - // - this.lbIndex.Name = "lbIndex"; - this.lbIndex.Size = new System.Drawing.Size(17, 17); - this.lbIndex.Text = "--"; - // - // cmbType - // - this.cmbType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.cmbType.FormattingEnabled = true; - this.cmbType.Location = new System.Drawing.Point(141, 123); - this.cmbType.Name = "cmbType"; - this.cmbType.Size = new System.Drawing.Size(183, 20); - this.cmbType.TabIndex = 14; - this.cmbType.SelectedIndexChanged += new System.EventHandler(this.cmbType_SelectedIndexChanged); - // - // btSave - // - this.btSave.Location = new System.Drawing.Point(141, 376); - this.btSave.Name = "btSave"; - this.btSave.Size = new System.Drawing.Size(381, 43); - this.btSave.TabIndex = 20; - this.btSave.Text = "확인"; - this.btSave.UseVisualStyleBackColor = true; - this.btSave.Click += new System.EventHandler(this.button1_Click); - // - // tbDescription - // - this.tbDescription.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bs, "description", true)); - this.tbDescription.ImeMode = System.Windows.Forms.ImeMode.Hangul; - this.tbDescription.Location = new System.Drawing.Point(141, 190); - this.tbDescription.Multiline = true; - this.tbDescription.Name = "tbDescription"; - this.tbDescription.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; - this.tbDescription.Size = new System.Drawing.Size(381, 181); - this.tbDescription.TabIndex = 19; - // - // dtPdate - // - this.dtPdate.Location = new System.Drawing.Point(141, 14); - this.dtPdate.Margin = new System.Windows.Forms.Padding(4); - this.dtPdate.Name = "dtPdate"; - this.dtPdate.Size = new System.Drawing.Size(178, 21); - this.dtPdate.TabIndex = 1; - this.dtPdate.ValueChanged += new System.EventHandler(this.dtPdate_ValueChanged); - // - // cmbUser - // - this.cmbUser.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend; - this.cmbUser.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; - this.cmbUser.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.cmbUser.FormattingEnabled = true; - this.cmbUser.ImeMode = System.Windows.Forms.ImeMode.Hangul; - this.cmbUser.Location = new System.Drawing.Point(141, 42); - this.cmbUser.Margin = new System.Windows.Forms.Padding(4); - this.cmbUser.Name = "cmbUser"; - this.cmbUser.Size = new System.Drawing.Size(381, 20); - this.cmbUser.TabIndex = 6; - this.cmbUser.SelectedIndexChanged += new System.EventHandler(this.cmbUser_SelectedIndexChanged); - // - // tbProject - // - this.tbProject.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192))))); - this.tbProject.ImeMode = System.Windows.Forms.ImeMode.Hangul; - this.tbProject.Location = new System.Drawing.Point(141, 69); - this.tbProject.Margin = new System.Windows.Forms.Padding(4); - this.tbProject.Name = "tbProject"; - this.tbProject.Size = new System.Drawing.Size(311, 21); - this.tbProject.TabIndex = 8; - // - // tbProjectIndex - // - this.tbProjectIndex.Location = new System.Drawing.Point(458, 69); - this.tbProjectIndex.Margin = new System.Windows.Forms.Padding(4); - this.tbProjectIndex.Name = "tbProjectIndex"; - this.tbProjectIndex.ReadOnly = true; - this.tbProjectIndex.Size = new System.Drawing.Size(64, 21); - this.tbProjectIndex.TabIndex = 9; - this.tbProjectIndex.TabStop = false; - this.tbProjectIndex.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - // - // tbOt - // - this.tbOt.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bs, "ot", true)); - this.tbOt.Font = new System.Drawing.Font("맑은 고딕", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129))); - this.tbOt.ForeColor = System.Drawing.Color.Red; - this.tbOt.Location = new System.Drawing.Point(224, 151); - this.tbOt.Name = "tbOt"; - this.tbOt.Size = new System.Drawing.Size(77, 33); - this.tbOt.TabIndex = 17; - this.tbOt.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - // - // tbWW - // - this.tbWW.Location = new System.Drawing.Point(321, 14); - this.tbWW.Margin = new System.Windows.Forms.Padding(4); - this.tbWW.Name = "tbWW"; - this.tbWW.ReadOnly = true; - this.tbWW.Size = new System.Drawing.Size(63, 21); - this.tbWW.TabIndex = 2; - this.tbWW.TabStop = false; - this.tbWW.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - // - // cmbProcess - // - this.cmbProcess.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.cmbProcess.FormattingEnabled = true; - this.cmbProcess.Location = new System.Drawing.Point(339, 123); - this.cmbProcess.Name = "cmbProcess"; - this.cmbProcess.Size = new System.Drawing.Size(183, 20); - this.cmbProcess.TabIndex = 15; - // - // cmbState - // - this.cmbState.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192))))); - this.cmbState.FormattingEnabled = true; - this.cmbState.Location = new System.Drawing.Point(421, 14); - this.cmbState.Margin = new System.Windows.Forms.Padding(4); - this.cmbState.Name = "cmbState"; - this.cmbState.Size = new System.Drawing.Size(101, 20); - this.cmbState.TabIndex = 4; - // - // cmbPackage - // - this.cmbPackage.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.cmbPackage.FormattingEnabled = true; - this.cmbPackage.Location = new System.Drawing.Point(339, 97); - this.cmbPackage.Name = "cmbPackage"; - this.cmbPackage.Size = new System.Drawing.Size(183, 20); - this.cmbPackage.TabIndex = 12; - // - // cmbRequest - // - this.cmbRequest.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.cmbRequest.FormattingEnabled = true; - this.cmbRequest.Location = new System.Drawing.Point(141, 97); - this.cmbRequest.Name = "cmbRequest"; - this.cmbRequest.Size = new System.Drawing.Size(183, 20); - this.cmbRequest.TabIndex = 11; - // - // ta - // - this.ta.ClearBeforeFill = true; - // - // tam - // - this.tam.BackupDataSetBeforeUpdate = false; - this.tam.JobReportTableAdapter = this.ta; - this.tam.ProjectsHistoryTableAdapter = null; - this.tam.ProjectsIOMapTableAdapter = null; - this.tam.ProjectsMailListTableAdapter = null; - this.tam.ProjectsPartTableAdapter = null; - this.tam.ProjectsScheduleTableAdapter = null; - this.tam.ProjectsTableAdapter = null; - this.tam.UpdateOrder = FPJ0000.dsPRJTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete; - // - // chkAutoAdd - // - this.chkAutoAdd.AutoSize = true; - this.chkAutoAdd.Location = new System.Drawing.Point(141, 424); - this.chkAutoAdd.Name = "chkAutoAdd"; - this.chkAutoAdd.Size = new System.Drawing.Size(176, 16); - this.chkAutoAdd.TabIndex = 54; - this.chkAutoAdd.Text = "프로젝트 주간내역으로 등록"; - this.chkAutoAdd.UseVisualStyleBackColor = true; - // - // fJobReport_Add - // - this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(538, 465); - this.Controls.Add(this.chkAutoAdd); - this.Controls.Add(label5); - this.Controls.Add(this.lbSummary); - this.Controls.Add(this.cmbPackage); - this.Controls.Add(this.cmbRequest); - this.Controls.Add(this.cmbState); - this.Controls.Add(stateLabel); - this.Controls.Add(this.cmbProcess); - this.Controls.Add(this.tbWW); - this.Controls.Add(label4); - this.Controls.Add(this.tbOt); - this.Controls.Add(projectLabel); - this.Controls.Add(this.tbProject); - this.Controls.Add(this.tbProjectIndex); - this.Controls.Add(this.cmbUser); - this.Controls.Add(this.dtPdate); - this.Controls.Add(label2); - this.Controls.Add(this.tbDescription); - this.Controls.Add(label1); - this.Controls.Add(this.btSave); - this.Controls.Add(typeLabel); - this.Controls.Add(this.cmbType); - this.Controls.Add(this.statusStrip1); - this.Controls.Add(hrsLabel); - this.Controls.Add(this.tbHrs); - this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; - this.MaximizeBox = false; - this.MinimizeBox = false; - this.Name = "fJobReport_Add"; - this.Text = "업무일지 등록/변경"; - this.Load += new System.EventHandler(this.fJobReport_Add_Load); - ((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.dsPRJ)).EndInit(); - this.statusStrip1.ResumeLayout(false); - this.statusStrip1.PerformLayout(); - this.ResumeLayout(false); - this.PerformLayout(); - - } - - #endregion - - private dsPRJ dsPRJ; - private System.Windows.Forms.BindingSource bs; - private dsPRJTableAdapters.JobReportTableAdapter ta; - private dsPRJTableAdapters.TableAdapterManager tam; - private System.Windows.Forms.TextBox tbHrs; - private System.Windows.Forms.StatusStrip statusStrip1; - private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1; - private System.Windows.Forms.ToolStripStatusLabel lbIndex; - private System.Windows.Forms.ComboBox cmbType; - private System.Windows.Forms.Button btSave; - private System.Windows.Forms.TextBox tbDescription; - private System.Windows.Forms.DateTimePicker dtPdate; - private System.Windows.Forms.ComboBox cmbUser; - private System.Windows.Forms.TextBox tbProject; - private System.Windows.Forms.TextBox tbProjectIndex; - private System.Windows.Forms.TextBox tbOt; - private System.Windows.Forms.TextBox tbWW; - private System.Windows.Forms.ComboBox cmbProcess; - private System.Windows.Forms.ComboBox cmbState; - private System.Windows.Forms.ComboBox cmbPackage; - private System.Windows.Forms.ComboBox cmbRequest; - private System.Windows.Forms.Label lbSummary; - private System.Windows.Forms.CheckBox chkAutoAdd; - } +namespace FPJ0000.JobReport +{ + partial class fJobReport_Add + { + /// + /// 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.Windows.Forms.Label hrsLabel; + System.Windows.Forms.Label typeLabel; + System.Windows.Forms.Label label1; + System.Windows.Forms.Label label2; + System.Windows.Forms.Label projectLabel; + System.Windows.Forms.Label label4; + System.Windows.Forms.Label stateLabel; + System.Windows.Forms.Label label5; + this.lbSummary = new System.Windows.Forms.Label(); + this.tbHrs = new System.Windows.Forms.TextBox(); + this.bs = new System.Windows.Forms.BindingSource(this.components); + this.dsPRJ = new FPJ0000.dsPRJ(); + this.statusStrip1 = new System.Windows.Forms.StatusStrip(); + this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel(); + this.lbIndex = new System.Windows.Forms.ToolStripStatusLabel(); + this.cmbType = new System.Windows.Forms.ComboBox(); + this.btSave = new System.Windows.Forms.Button(); + this.tbDescription = new System.Windows.Forms.TextBox(); + this.dtPdate = new System.Windows.Forms.DateTimePicker(); + this.cmbUser = new System.Windows.Forms.ComboBox(); + this.tbProjectIndex = new System.Windows.Forms.TextBox(); + this.tbOt = new System.Windows.Forms.TextBox(); + this.tbWW = new System.Windows.Forms.TextBox(); + this.cmbProcess = new System.Windows.Forms.ComboBox(); + this.cmbState = new System.Windows.Forms.ComboBox(); + this.cmbPackage = new System.Windows.Forms.ComboBox(); + this.cmbRequest = new System.Windows.Forms.ComboBox(); + this.ta = new FPJ0000.dsPRJTableAdapters.JobReportTableAdapter(); + this.tam = new FPJ0000.dsPRJTableAdapters.TableAdapterManager(); + this.chkAutoAdd = new System.Windows.Forms.CheckBox(); + this.tbProject = new System.Windows.Forms.ComboBox(); + hrsLabel = new System.Windows.Forms.Label(); + typeLabel = new System.Windows.Forms.Label(); + label1 = new System.Windows.Forms.Label(); + label2 = new System.Windows.Forms.Label(); + projectLabel = new System.Windows.Forms.Label(); + label4 = new System.Windows.Forms.Label(); + stateLabel = new System.Windows.Forms.Label(); + label5 = new System.Windows.Forms.Label(); + ((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.dsPRJ)).BeginInit(); + this.statusStrip1.SuspendLayout(); + this.SuspendLayout(); + // + // hrsLabel + // + hrsLabel.AutoSize = true; + hrsLabel.Location = new System.Drawing.Point(18, 162); + hrsLabel.Name = "hrsLabel"; + hrsLabel.Size = new System.Drawing.Size(115, 12); + hrsLabel.TabIndex = 16; + hrsLabel.Text = "근무시간 / 초과시간"; + // + // typeLabel + // + typeLabel.AutoSize = true; + typeLabel.Location = new System.Drawing.Point(18, 129); + typeLabel.Name = "typeLabel"; + typeLabel.Size = new System.Drawing.Size(115, 12); + typeLabel.TabIndex = 13; + typeLabel.Text = "업무형태 / 업무분류"; + // + // label1 + // + label1.AutoSize = true; + label1.Location = new System.Drawing.Point(30, 100); + label1.Name = "label1"; + label1.Size = new System.Drawing.Size(103, 12); + label1.TabIndex = 10; + label1.Text = "요청부서 / 패키지"; + // + // label2 + // + label2.AutoSize = true; + label2.Location = new System.Drawing.Point(76, 190); + label2.Name = "label2"; + label2.Size = new System.Drawing.Size(57, 12); + label2.TabIndex = 18; + label2.Text = "진행 내용"; + // + // projectLabel + // + projectLabel.AutoSize = true; + projectLabel.Location = new System.Drawing.Point(30, 73); + projectLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + projectLabel.Name = "projectLabel"; + projectLabel.Size = new System.Drawing.Size(103, 12); + projectLabel.TabIndex = 7; + projectLabel.Text = "프로젝트 (아이템)"; + // + // label4 + // + label4.AutoSize = true; + label4.Location = new System.Drawing.Point(92, 46); + label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + label4.Name = "label4"; + label4.Size = new System.Drawing.Size(41, 12); + label4.TabIndex = 5; + label4.Text = "담당자"; + // + // stateLabel + // + stateLabel.AutoSize = true; + stateLabel.Location = new System.Drawing.Point(388, 18); + stateLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + stateLabel.Name = "stateLabel"; + stateLabel.Size = new System.Drawing.Size(29, 12); + stateLabel.TabIndex = 3; + stateLabel.Text = "상태"; + // + // label5 + // + label5.AutoSize = true; + label5.Location = new System.Drawing.Point(92, 18); + label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + label5.Name = "label5"; + label5.Size = new System.Drawing.Size(41, 12); + label5.TabIndex = 0; + label5.Text = "등록일"; + // + // lbSummary + // + this.lbSummary.AutoSize = true; + this.lbSummary.ForeColor = System.Drawing.Color.SlateGray; + this.lbSummary.Location = new System.Drawing.Point(309, 156); + this.lbSummary.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); + this.lbSummary.Name = "lbSummary"; + this.lbSummary.Size = new System.Drawing.Size(195, 24); + this.lbSummary.TabIndex = 53; + this.lbSummary.Text = "금월 근무시간 : {0:N1}h / {1:N0}h\r\n금월 초과시간 : {2:N1}h"; + // + // tbHrs + // + this.tbHrs.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bs, "hrs", true, System.Windows.Forms.DataSourceUpdateMode.OnValidation, null, "N2")); + this.tbHrs.Font = new System.Drawing.Font("맑은 고딕", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129))); + this.tbHrs.Location = new System.Drawing.Point(141, 151); + this.tbHrs.Name = "tbHrs"; + this.tbHrs.Size = new System.Drawing.Size(77, 33); + this.tbHrs.TabIndex = 17; + this.tbHrs.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; + // + // bs + // + this.bs.DataMember = "JobReport"; + this.bs.DataSource = this.dsPRJ; + // + // dsPRJ + // + this.dsPRJ.DataSetName = "dsPRJ"; + this.dsPRJ.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema; + // + // statusStrip1 + // + this.statusStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.toolStripStatusLabel1, + this.lbIndex}); + this.statusStrip1.Location = new System.Drawing.Point(0, 443); + this.statusStrip1.Name = "statusStrip1"; + this.statusStrip1.Size = new System.Drawing.Size(538, 22); + this.statusStrip1.TabIndex = 28; + this.statusStrip1.Text = "statusStrip1"; + // + // toolStripStatusLabel1 + // + this.toolStripStatusLabel1.Name = "toolStripStatusLabel1"; + this.toolStripStatusLabel1.Size = new System.Drawing.Size(36, 17); + this.toolStripStatusLabel1.Text = "Index"; + // + // lbIndex + // + this.lbIndex.Name = "lbIndex"; + this.lbIndex.Size = new System.Drawing.Size(17, 17); + this.lbIndex.Text = "--"; + // + // cmbType + // + this.cmbType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.cmbType.FormattingEnabled = true; + this.cmbType.Location = new System.Drawing.Point(141, 123); + this.cmbType.Name = "cmbType"; + this.cmbType.Size = new System.Drawing.Size(183, 20); + this.cmbType.TabIndex = 14; + this.cmbType.SelectedIndexChanged += new System.EventHandler(this.cmbType_SelectedIndexChanged); + // + // btSave + // + this.btSave.Location = new System.Drawing.Point(141, 376); + this.btSave.Name = "btSave"; + this.btSave.Size = new System.Drawing.Size(381, 43); + this.btSave.TabIndex = 20; + this.btSave.Text = "확인"; + this.btSave.UseVisualStyleBackColor = true; + this.btSave.Click += new System.EventHandler(this.button1_Click); + // + // tbDescription + // + this.tbDescription.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bs, "description", true)); + this.tbDescription.ImeMode = System.Windows.Forms.ImeMode.Hangul; + this.tbDescription.Location = new System.Drawing.Point(141, 190); + this.tbDescription.Multiline = true; + this.tbDescription.Name = "tbDescription"; + this.tbDescription.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; + this.tbDescription.Size = new System.Drawing.Size(381, 181); + this.tbDescription.TabIndex = 19; + // + // dtPdate + // + this.dtPdate.Location = new System.Drawing.Point(141, 14); + this.dtPdate.Margin = new System.Windows.Forms.Padding(4); + this.dtPdate.Name = "dtPdate"; + this.dtPdate.Size = new System.Drawing.Size(178, 21); + this.dtPdate.TabIndex = 1; + this.dtPdate.ValueChanged += new System.EventHandler(this.dtPdate_ValueChanged); + // + // cmbUser + // + this.cmbUser.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend; + this.cmbUser.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; + this.cmbUser.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.cmbUser.FormattingEnabled = true; + this.cmbUser.ImeMode = System.Windows.Forms.ImeMode.Hangul; + this.cmbUser.Location = new System.Drawing.Point(141, 42); + this.cmbUser.Margin = new System.Windows.Forms.Padding(4); + this.cmbUser.Name = "cmbUser"; + this.cmbUser.Size = new System.Drawing.Size(381, 20); + this.cmbUser.TabIndex = 6; + this.cmbUser.SelectedIndexChanged += new System.EventHandler(this.cmbUser_SelectedIndexChanged); + // + // tbProjectIndex + // + this.tbProjectIndex.Location = new System.Drawing.Point(458, 69); + this.tbProjectIndex.Margin = new System.Windows.Forms.Padding(4); + this.tbProjectIndex.Name = "tbProjectIndex"; + this.tbProjectIndex.ReadOnly = true; + this.tbProjectIndex.Size = new System.Drawing.Size(64, 21); + this.tbProjectIndex.TabIndex = 9; + this.tbProjectIndex.TabStop = false; + this.tbProjectIndex.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; + // + // tbOt + // + this.tbOt.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bs, "ot", true)); + this.tbOt.Font = new System.Drawing.Font("맑은 고딕", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129))); + this.tbOt.ForeColor = System.Drawing.Color.Red; + this.tbOt.Location = new System.Drawing.Point(224, 151); + this.tbOt.Name = "tbOt"; + this.tbOt.Size = new System.Drawing.Size(77, 33); + this.tbOt.TabIndex = 17; + this.tbOt.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; + // + // tbWW + // + this.tbWW.Location = new System.Drawing.Point(321, 14); + this.tbWW.Margin = new System.Windows.Forms.Padding(4); + this.tbWW.Name = "tbWW"; + this.tbWW.ReadOnly = true; + this.tbWW.Size = new System.Drawing.Size(63, 21); + this.tbWW.TabIndex = 2; + this.tbWW.TabStop = false; + this.tbWW.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; + // + // cmbProcess + // + this.cmbProcess.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.cmbProcess.FormattingEnabled = true; + this.cmbProcess.Location = new System.Drawing.Point(339, 123); + this.cmbProcess.Name = "cmbProcess"; + this.cmbProcess.Size = new System.Drawing.Size(183, 20); + this.cmbProcess.TabIndex = 15; + // + // cmbState + // + this.cmbState.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192))))); + this.cmbState.FormattingEnabled = true; + this.cmbState.Location = new System.Drawing.Point(421, 14); + this.cmbState.Margin = new System.Windows.Forms.Padding(4); + this.cmbState.Name = "cmbState"; + this.cmbState.Size = new System.Drawing.Size(101, 20); + this.cmbState.TabIndex = 4; + // + // cmbPackage + // + this.cmbPackage.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.cmbPackage.FormattingEnabled = true; + this.cmbPackage.Location = new System.Drawing.Point(339, 97); + this.cmbPackage.Name = "cmbPackage"; + this.cmbPackage.Size = new System.Drawing.Size(183, 20); + this.cmbPackage.TabIndex = 12; + // + // cmbRequest + // + this.cmbRequest.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.cmbRequest.FormattingEnabled = true; + this.cmbRequest.Location = new System.Drawing.Point(141, 97); + this.cmbRequest.Name = "cmbRequest"; + this.cmbRequest.Size = new System.Drawing.Size(183, 20); + this.cmbRequest.TabIndex = 11; + // + // ta + // + this.ta.ClearBeforeFill = true; + // + // tam + // + this.tam.BackupDataSetBeforeUpdate = false; + this.tam.JobReportTableAdapter = this.ta; + this.tam.ProjectsHistoryTableAdapter = null; + this.tam.ProjectsIOMapTableAdapter = null; + this.tam.ProjectsMailListTableAdapter = null; + this.tam.ProjectsPartTableAdapter = null; + this.tam.ProjectsScheduleTableAdapter = null; + this.tam.ProjectsTableAdapter = null; + this.tam.UpdateOrder = FPJ0000.dsPRJTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete; + // + // chkAutoAdd + // + this.chkAutoAdd.AutoSize = true; + this.chkAutoAdd.Location = new System.Drawing.Point(141, 424); + this.chkAutoAdd.Name = "chkAutoAdd"; + this.chkAutoAdd.Size = new System.Drawing.Size(176, 16); + this.chkAutoAdd.TabIndex = 54; + this.chkAutoAdd.Text = "프로젝트 주간내역으로 등록"; + this.chkAutoAdd.UseVisualStyleBackColor = true; + // + // tbProject + // + this.tbProject.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend; + this.tbProject.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; + this.tbProject.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192))))); + this.tbProject.FormattingEnabled = true; + this.tbProject.Location = new System.Drawing.Point(140, 69); + this.tbProject.Name = "tbProject"; + this.tbProject.Size = new System.Drawing.Size(311, 20); + this.tbProject.TabIndex = 55; + // + // fJobReport_Add + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(538, 465); + this.Controls.Add(this.tbProject); + this.Controls.Add(this.chkAutoAdd); + this.Controls.Add(label5); + this.Controls.Add(this.lbSummary); + this.Controls.Add(this.cmbPackage); + this.Controls.Add(this.cmbRequest); + this.Controls.Add(this.cmbState); + this.Controls.Add(stateLabel); + this.Controls.Add(this.cmbProcess); + this.Controls.Add(this.tbWW); + this.Controls.Add(label4); + this.Controls.Add(this.tbOt); + this.Controls.Add(projectLabel); + this.Controls.Add(this.tbProjectIndex); + this.Controls.Add(this.cmbUser); + this.Controls.Add(this.dtPdate); + this.Controls.Add(label2); + this.Controls.Add(this.tbDescription); + this.Controls.Add(label1); + this.Controls.Add(this.btSave); + this.Controls.Add(typeLabel); + this.Controls.Add(this.cmbType); + this.Controls.Add(this.statusStrip1); + this.Controls.Add(hrsLabel); + this.Controls.Add(this.tbHrs); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "fJobReport_Add"; + this.Text = "업무일지 등록/변경"; + this.Load += new System.EventHandler(this.fJobReport_Add_Load); + ((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.dsPRJ)).EndInit(); + this.statusStrip1.ResumeLayout(false); + this.statusStrip1.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private dsPRJ dsPRJ; + private System.Windows.Forms.BindingSource bs; + private dsPRJTableAdapters.JobReportTableAdapter ta; + private dsPRJTableAdapters.TableAdapterManager tam; + private System.Windows.Forms.TextBox tbHrs; + private System.Windows.Forms.StatusStrip statusStrip1; + private System.Windows.Forms.ToolStripStatusLabel toolStripStatusLabel1; + private System.Windows.Forms.ToolStripStatusLabel lbIndex; + private System.Windows.Forms.ComboBox cmbType; + private System.Windows.Forms.Button btSave; + private System.Windows.Forms.TextBox tbDescription; + private System.Windows.Forms.DateTimePicker dtPdate; + private System.Windows.Forms.ComboBox cmbUser; + private System.Windows.Forms.TextBox tbProjectIndex; + private System.Windows.Forms.TextBox tbOt; + private System.Windows.Forms.TextBox tbWW; + private System.Windows.Forms.ComboBox cmbProcess; + private System.Windows.Forms.ComboBox cmbState; + private System.Windows.Forms.ComboBox cmbPackage; + private System.Windows.Forms.ComboBox cmbRequest; + private System.Windows.Forms.Label lbSummary; + private System.Windows.Forms.CheckBox chkAutoAdd; + private System.Windows.Forms.ComboBox tbProject; + } } \ No newline at end of file diff --git a/SubProject/FPJ0000/JobReport/fJobReport_Add.cs b/SubProject/FPJ0000/JobReport/fJobReport_Add.cs index fabe7da..0b7c1be 100644 --- a/SubProject/FPJ0000/JobReport/fJobReport_Add.cs +++ b/SubProject/FPJ0000/JobReport/fJobReport_Add.cs @@ -1,383 +1,425 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Windows.Forms; - -namespace FPJ0000.JobReport -{ - public partial class fJobReport_Add : Form - { - dsPRJ.JobReportRow dr; - Boolean copyMOde = false; - public fJobReport_Add(dsPRJ.JobReportRow dr_,Boolean copy=false) - { - InitializeComponent(); - dr = dr_; - this.KeyPreview = true; - this.StartPosition = FormStartPosition.CenterScreen; - this.KeyDown += (s1, e1) => - { - if (e1.KeyCode == Keys.Escape) this.Close(); - }; - - foreach (Control ctl in this.Controls) - { - if (ctl.GetType() == typeof(TextBox) || ctl.GetType() == typeof(ComboBox)) - { - ctl.KeyDown += ctl_KeyDown; - } - } - copyMOde = copy; - } - - private void fJobReport_Add_Load(object sender, EventArgs e) - { - //사용자목록 - this.bs.DataSource = dr; - - //상태 - var stateList = FCOMMON.DBM.getCodeTable("12"); - this.cmbState.DisplayMember = "Value"; - this.cmbState.ValueMember = "Value"; - this.cmbState.DataSource = stateList; - this.cmbState.Text = dr.status; - - //요청부서 - var dt_request = FCOMMON.DBM.getCodeTable("13"); - this.cmbRequest.DisplayMember = "Value"; - this.cmbRequest.ValueMember = "Value"; - this.cmbRequest.DataSource = dt_request; - - //패키지 - var dt_package = FCOMMON.DBM.getCodeTable("14"); - this.cmbPackage.DisplayMember = "Value"; - this.cmbPackage.ValueMember = "Value"; - this.cmbPackage.DataSource = dt_package; - - //타입 - var dt_type = FCOMMON.DBM.getCodeTable("15"); - this.cmbType.DisplayMember = "Value"; - this.cmbType.ValueMember = "Value"; - this.cmbType.DataSource = dt_type; - - //공정 - var dt_process = FCOMMON.DBM.getCodeTable("16"); - this.cmbProcess.DisplayMember = "Value"; - this.cmbProcess.ValueMember = "Value"; - this.cmbProcess.DataSource = dt_process; - - //담당자목록 - - var dt_users = FCOMMON.DBM.getUserTable();// getGroupList("name + '(' + id + ')'", "Users", "[level] > 0 and [level] < 10", false, false); - this.cmbUser.DisplayMember = "dispName"; - this.cmbUser.ValueMember = "id"; - this.cmbUser.DataSource = dt_users; - if (FCOMMON.info.Login.level < 5) cmbUser.Enabled = false; - - // tbWW.Text = dr.ww; - dtPdate.Value = DateTime.Parse(dr.pdate); //일자선택 - cmbUser.SelectedValue = dr.uid; - tbProject.Text = dr.projectName; - cmbRequest.SelectedValue = dr.requestpart; - cmbPackage.SelectedValue = dr.package; - cmbType.SelectedValue = dr.type; - cmbProcess.SelectedValue = dr.process; - - if (cmbRequest.Text == "") cmbRequest.Text = "EE1"; - if (cmbPackage.Text == "") cmbPackage.Text = "Common"; - - //프로젝트 번호 확인(프로젝트번호가 바뀌면 데이터를 업데이트 해준다) - if (dr.IspidxNull()) - { - tbProjectIndex.Tag = -1; - tbProjectIndex.Text = "-1"; - } - else - { - tbProjectIndex.Tag = dr.pidx; - tbProjectIndex.Text = dr.pidx.ToString(); - } - - //신규일때만 사용가능 함 - if (dr.RowState == DataRowState.Detached || dr.RowState == DataRowState.Added) chkAutoAdd.Enabled = true; - else chkAutoAdd.Enabled = false; - - this.Show(); - Application.DoEvents(); - - if(tbDescription.Text.Trim() != "") - { - tbDescription.Focus(); - tbDescription.SelectAll(); - } - else - { - tbProject.Focus(); - tbProject.SelectAll(); - } - - } - void ctl_KeyDown(object sender, KeyEventArgs e) - { - if (e.KeyCode == Keys.Enter) - { - Control ctl = sender as Control; - string nm = ctl.Name.ToLower(); - string search = ctl.Text.Trim(); - - Console.WriteLine("inner keydown " + nm + ":" + search); - - switch (nm) - { - //case "cmbrequest": - - // //요청자가 마지막으로 입력한 자료의 process 를 찾아서 기입해준다. - // var lastprocess = FCOMMON.DBM.getFirstValue("process", "purchase", "request like '%" + this.cmbUser.Text + "%'", "pdate desc"); - // if (lastprocess != "") cbProcess.Text = lastprocess; - // tbSID.Focus(); - // break; - case "tbdescription": - if (e.Control) - { - btSave.Focus(); - } - break; - case "tbproject": - if (search != "") - { - var f = new fLovProject("%" + search + "%"); - if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK) - { - this.tbProject.Text = f.Title; - this.tbProjectIndex.Text = f.Index.ToString(); - tbHrs.Focus(); - tbHrs.SelectAll(); - - if (tbProjectIndex.Tag.ToString() != f.Index.ToString() || f.Index == -1) - { - //마지막 데이터를 찾아서 공정등의 정보를 업데이트한다. - var uid = cmbUser.SelectedValue.ToString(); - DataTable lastDt = null; - - if (f.Index != -1) lastDt = FCOMMON.DBM.getLastJobReportData(uid, f.Index); - else lastDt = FCOMMON.DBM.getLastJobReportDatabyProjectName(uid, f.Title); - - if (lastDt != null && lastDt.Rows.Count > 0) - { - var predr = lastDt.Rows[0]; - - if (predr["requestpart"] != DBNull.Value) - this.cmbRequest.Text = predr["requestpart"].ToString(); //190506 - - if (predr["package"] != DBNull.Value) - this.cmbPackage.Text = predr["package"].ToString(); //190506 - - if (predr["type"] != DBNull.Value) - this.cmbType.Text = predr["type"].ToString(); //190506 - - if (predr["process"] != DBNull.Value) - cmbProcess.Text = predr["process"].ToString(); //190506 - } - } - } - else - { - //이름만 사용한다. - tbProjectIndex.Text = "-1"; - cmbRequest.Focus(); - } - } - else - { - FCOMMON.Util.MsgE("프로젝트 혹은 아이템이름은 반드시 입력되어야 합니다."); - var tb = sender as TextBox; - tb.SelectAll(); - tb.Focus(); - } - break; - - default: - SendKeys.Send("{TAB}"); - break; - } - } - } - private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) - { - FCM0000.fSelectDate f = new FCM0000.fSelectDate(this.dtPdate.Value.ToShortDateString()); - if (f.ShowDialog() != System.Windows.Forms.DialogResult.OK) return; - dtPdate.Value = f.dtSelect; - } - - private void button1_Click(object sender, EventArgs e) - { - this.Invalidate(); - if(tbProject.Text.Trim() == "") - { - FCOMMON.Util.MsgE("프로젝트(아이템) 명칭이 없습니다."); - tbProject.Focus(); - return; - } - if (cmbType.Text != "휴가" && tbDescription.Text.Trim() == "") - { - FCOMMON.Util.MsgE("진행 내용이 없습니다."); - tbDescription.Focus(); - return; - } - float hour = Single.Parse(tbHrs.Text) + Single.Parse(tbOt.Text); - if (hour == 0) - { - FCOMMON.Util.MsgE("근무시간/초과시간이 입력되지 않았습니다."); - if (tbHrs.Enabled) tbHrs.Focus(); - else tbOt.Focus(); - return; - } - - if (cmbType.Text.Trim() == "") - { - FCOMMON.Util.MsgE("업무형태를 선택하세요"); - cmbType.Focus(); - return; - } - if (cmbProcess.Text.Trim() == "") - { - FCOMMON.Util.MsgE("공정을 선택하세요"); - cmbProcess.Focus(); - return; - } - if (cmbUser.SelectedIndex < 0) - { - FCOMMON.Util.MsgE("담당자가 선택되지 않았습니다."); - cmbUser.Focus(); - return; - } - - ///휴일체크 - var taQ = new dsQueryTableAdapters.QueriesTableAdapter(); - var freeday = taQ.CheckHoliday(dtPdate.Value.ToShortDateString()); - if (freeday != null && freeday == true) - { - var hrs = float.Parse(tbHrs.Text); - if (hrs > 0) - { - FCOMMON.Util.MsgI("입력일자는 휴일로 등록되어 있습니다.\n\n근무시간은 OT에 입력하시기 바랍니다."); - //tbOt.Text = tbHrs.Text; - dr.hrs = 0; - tbHrs.Text = "0"; - tbHrs.Focus(); - return; - } - } - - if(chkAutoAdd.Checked && (dr.RowState == DataRowState.Detached || dr.RowState == DataRowState.Added)) - { - if(tbProjectIndex.Text == "" || tbProjectIndex.Text == "-1") - { - FCOMMON.Util.MsgE("프로젝트 주간내역을 등록하려면 프로젝트가 지정되어야 합니다"); - tbProject.Focus(); - tbProject.SelectAll(); - return; - } - else - { - //190906 - FCOMMON.DBM.addProjectHistory(int.Parse(tbProjectIndex.Text), dtPdate.Value.ToShortDateString(), tbDescription.Text.Trim()); - } - } - - this.dr.uid = this.cmbUser.SelectedValue.ToString(); - this.dr.pdate = dtPdate.Value.ToShortDateString(); - this.dr.status = cmbState.Text; - this.dr.projectName = tbProject.Text; - if (tbProjectIndex.Text != "") dr.pidx = int.Parse(tbProjectIndex.Text); - else dr.SetpidxNull(); - this.dr.requestpart = cmbRequest.Text; - this.dr.package = cmbPackage.Text; - this.dr.type = cmbType.Text; - this.dr.process = cmbProcess.Text; - if (tbHrs.Text != "") this.dr.hrs = double.Parse(tbHrs.Text); - else this.dr.hrs = 0; - if (tbOt.Text != "") this.dr.ot = double.Parse(tbOt.Text); - else this.dr.ot = 0; - this.dr.description = tbDescription.Text.Trim(); - this.bs.EndEdit(); - DialogResult = System.Windows.Forms.DialogResult.OK; - } - - private void cmbType_SelectedIndexChanged(object sender, EventArgs e) - { - if (cmbType.Text.Trim() != "" && - cmbType.SelectedIndex >= 0 && - cmbProcess.SelectedIndex < 0 && - cmbUser.SelectedValue != null) - { - //공정을 자동선택해준다. - //마지막 데이터를 찾아서 공정등의 정보를 업데이트한다. - var uid = cmbUser.SelectedValue.ToString(); - var lastDt = FCOMMON.DBM.getLastJobReportData(uid, cmbType.Text.Trim()); - if (lastDt != null && lastDt.Rows.Count > 0) - { - var predr = lastDt.Rows[0];// as dsPRJ.JobReportRow; - if (predr["process"] != DBNull.Value) - cmbProcess.Text = predr["process"].ToString(); //190506 - - } - } - } - - private void dtPdate_ValueChanged(object sender, EventArgs e) - { - var myCI = new System.Globalization.CultureInfo("ko-KR"); - var myCal = myCI.Calendar; - var myCWR = myCI.DateTimeFormat.CalendarWeekRule; - DayOfWeek myFirstDOW = myCI.DateTimeFormat.FirstDayOfWeek; - var dat = myCal.GetWeekOfYear(dtPdate.Value, myCWR, myFirstDOW); - tbWW.Text = "ww" + dat.ToString(); - UpdateWOrkTime(); - - //공휴일이면 시간을 초기화한다. - if (tbHrs.Text == "") tbHrs.Text = "0"; - if (tbOt.Text == "") tbOt.Text = "0"; - float hrs = float.Parse(tbHrs.Text); - if (dtPdate.Value.DayOfWeek == DayOfWeek.Saturday || dtPdate.Value.DayOfWeek == DayOfWeek.Sunday) - { - tbHrs.Enabled = false; - if (hrs != 0) - { - FCOMMON.Util.MsgI("공휴일에는 근무시간을 입력할 수 없습니다.\n초과시간에 입력하세요.\n\n해당 값은 삭제 됩니다."); - dr.hrs = 0; - tbHrs.Text = "0"; - if (hrs != 8) tbOt.Text = hrs.ToString(); - tbOt.Focus(); - } - } - else tbHrs.Enabled = true; - } - void UpdateWOrkTime() - { - //이번달 근무시간 및 초과시간 구하기 - if (cmbUser.SelectedValue != null) - { - float work, ot; - int total; - FCOMMON.DBM.getWorkTime(cmbUser.SelectedValue.ToString(), dtPdate.Value.ToString("yyyy-MM"), out work, out total, out ot); - string msg = "금월 근무시간 : {0:N1}h / {1:N0}h\n금월 초과시간 : {2:N1}h"; - lbSummary.Text = string.Format(msg, work, total, ot); - } - else - { - lbSummary.Text = "--"; - } - } - private void cmbUser_SelectedIndexChanged(object sender, EventArgs e) - { - if (cmbUser.SelectedIndex >= 0) - UpdateWOrkTime(); ; - } - - } -} +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; + +namespace FPJ0000.JobReport +{ + public partial class fJobReport_Add : Form + { + dsPRJ.JobReportRow dr; + Boolean copyMOde = false; + Boolean bInit = false; + public fJobReport_Add(dsPRJ.JobReportRow dr_,Boolean copy=false) + { + InitializeComponent(); + dr = dr_; + this.KeyPreview = true; + this.StartPosition = FormStartPosition.CenterScreen; + this.KeyDown += (s1, e1) => + { + if (e1.KeyCode == Keys.Escape) this.Close(); + }; + + foreach (Control ctl in this.Controls) + { + if (ctl.GetType() == typeof(TextBox) || ctl.GetType() == typeof(ComboBox)) + { + ctl.KeyDown += ctl_KeyDown; + } + } + copyMOde = copy; + this.tbProject.SelectedIndexChanged += tbProject_SelectedIndexChanged; + } + + void tbProject_SelectedIndexChanged(object sender, EventArgs e) + { + if (bInit==false || this.tbProject.SelectedIndex < 0) return; + var data = this.tbProject.SelectedValue; + if (data == null) return; + if(data.GetType() == typeof(DataRowView)) + { + var drv = data as DataRowView; + var idx = int.Parse(drv["Code"].ToString()); + tbProjectIndex.Text = idx.ToString(); + tbProject.Tag = tbProject.Text; + Console.WriteLine(string.Format("Project Select #1 {0}:{1}",idx,tbProject.Text)); + } + else + { + var idx = int.Parse(data.ToString()); + tbProjectIndex.Text = idx.ToString(); + tbProject.Tag = tbProject.Text; + Console.WriteLine(string.Format("Project Select #2 {0}:{1}", idx, tbProject.Text)); + } + + } + + private void fJobReport_Add_Load(object sender, EventArgs e) + { + //사용자목록 + this.bs.DataSource = dr; + + //해당 사용자에 걸린 프로젝트 목록 가져오기 + var userProject = FCOMMON.DBM.getUserProjectList(FCOMMON.info.Login.nameK); + this.tbProject.DataSource = userProject; + this.tbProject.ValueMember = "Code"; + this.tbProject.DisplayMember = "Value"; + + //상태 + var stateList = FCOMMON.DBM.getCodeTable("12"); + this.cmbState.DisplayMember = "Value"; + this.cmbState.ValueMember = "Value"; + this.cmbState.DataSource = stateList; + this.cmbState.Text = dr.status; + + //요청부서 + var dt_request = FCOMMON.DBM.getCodeTable("13"); + this.cmbRequest.DisplayMember = "Value"; + this.cmbRequest.ValueMember = "Value"; + this.cmbRequest.DataSource = dt_request; + + //패키지 + var dt_package = FCOMMON.DBM.getCodeTable("14"); + this.cmbPackage.DisplayMember = "Value"; + this.cmbPackage.ValueMember = "Value"; + this.cmbPackage.DataSource = dt_package; + + //타입 + var dt_type = FCOMMON.DBM.getCodeTable("15"); + this.cmbType.DisplayMember = "Value"; + this.cmbType.ValueMember = "Value"; + this.cmbType.DataSource = dt_type; + + //공정 + var dt_process = FCOMMON.DBM.getCodeTable("16"); + this.cmbProcess.DisplayMember = "Value"; + this.cmbProcess.ValueMember = "Value"; + this.cmbProcess.DataSource = dt_process; + + //담당자목록 + + var dt_users = FCOMMON.DBM.getUserTable();// getGroupList("name + '(' + id + ')'", "Users", "[level] > 0 and [level] < 10", false, false); + this.cmbUser.DisplayMember = "dispName"; + this.cmbUser.ValueMember = "id"; + this.cmbUser.DataSource = dt_users; + if (FCOMMON.info.Login.level < 5) cmbUser.Enabled = false; + + // tbWW.Text = dr.ww; + dtPdate.Value = DateTime.Parse(dr.pdate); //일자선택 + cmbUser.SelectedValue = dr.uid; + tbProject.Text = dr.projectName; + cmbRequest.SelectedValue = dr.requestpart; + cmbPackage.SelectedValue = dr.package; + cmbType.SelectedValue = dr.type; + cmbProcess.SelectedValue = dr.process; + + if (cmbRequest.Text == "") cmbRequest.Text = "EE1"; + if (cmbPackage.Text == "") cmbPackage.Text = "Common"; + + //프로젝트 번호 확인(프로젝트번호가 바뀌면 데이터를 업데이트 해준다) + if (dr.IspidxNull()) + { + tbProjectIndex.Tag = -1; + tbProjectIndex.Text = "-1"; + } + else + { + tbProjectIndex.Tag = dr.pidx; + tbProjectIndex.Text = dr.pidx.ToString(); + } + + //신규일때만 사용가능 함 + if (dr.RowState == DataRowState.Detached || dr.RowState == DataRowState.Added) chkAutoAdd.Enabled = true; + else chkAutoAdd.Enabled = false; + + this.Show(); + Application.DoEvents(); + + if(tbDescription.Text.Trim() != "") + { + tbDescription.Focus(); + tbDescription.SelectAll(); + } + else + { + tbProject.Focus(); + tbProject.SelectAll(); + } + tbProject.Tag = tbProject.Text; + bInit = true; + } + + void ctl_KeyDown(object sender, KeyEventArgs e) + { + if (e.KeyCode == Keys.Enter) + { + Control ctl = sender as Control; + string nm = ctl.Name.ToLower(); + string search = ctl.Text.Trim(); + + Console.WriteLine("inner keydown " + nm + ":" + search); + + switch (nm) + { + //case "cmbrequest": + + // //요청자가 마지막으로 입력한 자료의 process 를 찾아서 기입해준다. + // var lastprocess = FCOMMON.DBM.getFirstValue("process", "purchase", "request like '%" + this.cmbUser.Text + "%'", "pdate desc"); + // if (lastprocess != "") cbProcess.Text = lastprocess; + // tbSID.Focus(); + // break; + case "tbdescription": + if (e.Control) + { + btSave.Focus(); + } + break; + case "tbproject": + if (search != "") + { + var f = new fLovProject("%" + search + "%"); + if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK) + { + this.tbProject.Text = f.Title; + this.tbProjectIndex.Text = f.Index.ToString(); + tbHrs.Focus(); + tbHrs.SelectAll(); + + if (tbProjectIndex.Tag.ToString() != f.Index.ToString() || f.Index == -1) + { + //마지막 데이터를 찾아서 공정등의 정보를 업데이트한다. + var uid = cmbUser.SelectedValue.ToString(); + DataTable lastDt = null; + + if (f.Index != -1) lastDt = FCOMMON.DBM.getLastJobReportData(uid, f.Index); + else lastDt = FCOMMON.DBM.getLastJobReportDatabyProjectName(uid, f.Title); + + if (lastDt != null && lastDt.Rows.Count > 0) + { + var predr = lastDt.Rows[0]; + + if (predr["requestpart"] != DBNull.Value) + this.cmbRequest.Text = predr["requestpart"].ToString(); //190506 + + if (predr["package"] != DBNull.Value) + this.cmbPackage.Text = predr["package"].ToString(); //190506 + + if (predr["type"] != DBNull.Value) + this.cmbType.Text = predr["type"].ToString(); //190506 + + if (predr["process"] != DBNull.Value) + cmbProcess.Text = predr["process"].ToString(); //190506 + } + } + } + else + { + //이름만 사용한다. + tbProjectIndex.Text = "-1"; + cmbRequest.Focus(); + } + } + else + { + FCOMMON.Util.MsgE("프로젝트 혹은 아이템이름은 반드시 입력되어야 합니다."); + var tb = sender as ComboBox; + tb.SelectAll(); + tb.Focus(); + } + break; + + default: + SendKeys.Send("{TAB}"); + break; + } + } + } + private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + FCM0000.fSelectDate f = new FCM0000.fSelectDate(this.dtPdate.Value.ToShortDateString()); + if (f.ShowDialog() != System.Windows.Forms.DialogResult.OK) return; + dtPdate.Value = f.dtSelect; + } + + private void button1_Click(object sender, EventArgs e) + { + this.Invalidate(); + if(tbProject.Text.Trim() == "") + { + FCOMMON.Util.MsgE("프로젝트(아이템) 명칭이 없습니다."); + tbProject.Focus(); + return; + } + if (cmbType.Text != "휴가" && tbDescription.Text.Trim() == "") + { + FCOMMON.Util.MsgE("진행 내용이 없습니다."); + tbDescription.Focus(); + return; + } + float hour = Single.Parse(tbHrs.Text) + Single.Parse(tbOt.Text); + if (hour == 0) + { + FCOMMON.Util.MsgE("근무시간/초과시간이 입력되지 않았습니다."); + if (tbHrs.Enabled) tbHrs.Focus(); + else tbOt.Focus(); + return; + } + + if (cmbType.Text.Trim() == "") + { + FCOMMON.Util.MsgE("업무형태를 선택하세요"); + cmbType.Focus(); + return; + } + if (cmbProcess.Text.Trim() == "") + { + FCOMMON.Util.MsgE("공정을 선택하세요"); + cmbProcess.Focus(); + return; + } + if (cmbUser.SelectedIndex < 0) + { + FCOMMON.Util.MsgE("담당자가 선택되지 않았습니다."); + cmbUser.Focus(); + return; + } + + if(tbProject.Tag.ToString() != tbProject.Text && tbProjectIndex.Text != "" && tbProjectIndex.Text != "-1") + { + FCOMMON.Util.MsgE("프로젝트가 선택되었으나 이름이 임의 수정되어 프로젝트 연결을 해제 합니다\n\n" + + "잘못된 프로젝트명은 프로젝트 관리화면에서 변경하시기 바랍니다.\n\n"+ + "원본 : " + tbProject.Tag.ToString() + "\n" + + "현재 : " + tbProject.Text); + tbProjectIndex.Text = "-1"; + } + + ///휴일체크 + var taQ = new dsQueryTableAdapters.QueriesTableAdapter(); + var freeday = taQ.CheckHoliday(dtPdate.Value.ToShortDateString()); + if (freeday != null && freeday == true) + { + var hrs = float.Parse(tbHrs.Text); + if (hrs > 0) + { + FCOMMON.Util.MsgI("입력일자는 휴일로 등록되어 있습니다.\n\n근무시간은 OT에 입력하시기 바랍니다."); + //tbOt.Text = tbHrs.Text; + dr.hrs = 0; + tbHrs.Text = "0"; + tbHrs.Focus(); + return; + } + } + + if(chkAutoAdd.Checked && (dr.RowState == DataRowState.Detached || dr.RowState == DataRowState.Added)) + { + if(tbProjectIndex.Text == "" || tbProjectIndex.Text == "-1") + { + FCOMMON.Util.MsgE("프로젝트 주간내역을 등록하려면 프로젝트가 지정되어야 합니다"); + tbProject.Focus(); + tbProject.SelectAll(); + return; + } + else + { + //190906 + FCOMMON.DBM.addProjectHistory(int.Parse(tbProjectIndex.Text), dtPdate.Value.ToShortDateString(), tbDescription.Text.Trim()); + } + } + + this.dr.uid = this.cmbUser.SelectedValue.ToString(); + this.dr.pdate = dtPdate.Value.ToShortDateString(); + this.dr.status = cmbState.Text; + this.dr.projectName = tbProject.Text; + if (tbProjectIndex.Text != "") dr.pidx = int.Parse(tbProjectIndex.Text); + else dr.SetpidxNull(); + this.dr.requestpart = cmbRequest.Text; + this.dr.package = cmbPackage.Text; + this.dr.type = cmbType.Text; + this.dr.process = cmbProcess.Text; + if (tbHrs.Text != "") this.dr.hrs = double.Parse(tbHrs.Text); + else this.dr.hrs = 0; + if (tbOt.Text != "") this.dr.ot = double.Parse(tbOt.Text); + else this.dr.ot = 0; + this.dr.description = tbDescription.Text.Trim(); + this.bs.EndEdit(); + DialogResult = System.Windows.Forms.DialogResult.OK; + } + + private void cmbType_SelectedIndexChanged(object sender, EventArgs e) + { + if (cmbType.Text.Trim() != "" && + cmbType.SelectedIndex >= 0 && + cmbProcess.SelectedIndex < 0 && + cmbUser.SelectedValue != null) + { + //공정을 자동선택해준다. + //마지막 데이터를 찾아서 공정등의 정보를 업데이트한다. + var uid = cmbUser.SelectedValue.ToString(); + var lastDt = FCOMMON.DBM.getLastJobReportData(uid, cmbType.Text.Trim()); + if (lastDt != null && lastDt.Rows.Count > 0) + { + var predr = lastDt.Rows[0];// as dsPRJ.JobReportRow; + if (predr["process"] != DBNull.Value) + cmbProcess.Text = predr["process"].ToString(); //190506 + + } + } + } + + private void dtPdate_ValueChanged(object sender, EventArgs e) + { + var myCI = new System.Globalization.CultureInfo("ko-KR"); + var myCal = myCI.Calendar; + var myCWR = myCI.DateTimeFormat.CalendarWeekRule; + DayOfWeek myFirstDOW = myCI.DateTimeFormat.FirstDayOfWeek; + var dat = myCal.GetWeekOfYear(dtPdate.Value, myCWR, myFirstDOW); + tbWW.Text = "ww" + dat.ToString(); + UpdateWOrkTime(); + + //공휴일이면 시간을 초기화한다. + if (tbHrs.Text == "") tbHrs.Text = "0"; + if (tbOt.Text == "") tbOt.Text = "0"; + float hrs = float.Parse(tbHrs.Text); + if (dtPdate.Value.DayOfWeek == DayOfWeek.Saturday || dtPdate.Value.DayOfWeek == DayOfWeek.Sunday) + { + tbHrs.Enabled = false; + if (hrs != 0) + { + FCOMMON.Util.MsgI("공휴일에는 근무시간을 입력할 수 없습니다.\n초과시간에 입력하세요.\n\n해당 값은 삭제 됩니다."); + dr.hrs = 0; + tbHrs.Text = "0"; + if (hrs != 8) tbOt.Text = hrs.ToString(); + tbOt.Focus(); + } + } + else tbHrs.Enabled = true; + } + void UpdateWOrkTime() + { + //이번달 근무시간 및 초과시간 구하기 + if (cmbUser.SelectedValue != null) + { + float work, ot; + int total; + FCOMMON.DBM.getWorkTime(cmbUser.SelectedValue.ToString(), dtPdate.Value.ToString("yyyy-MM"), out work, out total, out ot); + string msg = "금월 근무시간 : {0:N1}h / {1:N0}h\n금월 초과시간 : {2:N1}h"; + lbSummary.Text = string.Format(msg, work, total, ot); + } + else + { + lbSummary.Text = "--"; + } + } + private void cmbUser_SelectedIndexChanged(object sender, EventArgs e) + { + if (cmbUser.SelectedIndex >= 0) + UpdateWOrkTime(); ; + } + + } +} diff --git a/SubProject/FPJ0000/JobReport/rJobReport.rdlc b/SubProject/FPJ0000/JobReport/rJobReport.rdlc index d127d2b..4e971c7 100644 --- a/SubProject/FPJ0000/JobReport/rJobReport.rdlc +++ b/SubProject/FPJ0000/JobReport/rJobReport.rdlc @@ -1,863 +1,863 @@ - - - - - - - - - - - - true - true - - - - - 사원명 - - - - Textbox7 - - - Middle - 2pt - 2pt - 2pt - 2pt - - - 2 - - - - - - - - - - - - 1.09771cm - - - 0.9125cm - - - 1.30938cm - - - 1.09771cm - - - - - 0.6cm - - - - - true - true - - - - - =Sum(Fields!hrs.Value) - - - - - - - hrs - - - Middle - 2pt - 2pt - 2pt - 2pt - - - true - - - - - - true - true - - - - - =Sum(Fields!ot.Value) - - - - - - - ot - - - Middle - 2pt - 2pt - 2pt - 2pt - - - true - - - - - - true - true - - - - - =Sum(Fields!hrs.Value) - - - - - - - Textbox15 - - true - - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - true - - - - - - true - true - - - - - =Sum(Fields!ot.Value) - - - - - - - Textbox19 - - true - - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - true - - - - - - 0.6cm - - - - - true - true - - - - - =Sum(Fields!hrs.Value) - - - - - - - Textbox11 - - true - - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - true - - - - - - true - true - - - - - =Sum(Fields!ot.Value) - - - - - - - Textbox12 - - true - - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - true - - - - - - true - true - - - - - =Sum(Fields!hrs.Value) - - - - - - - Textbox16 - - true - - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - true - - - - - - true - true - - - - - =Sum(Fields!ot.Value) - - - - - - - Textbox20 - - true - - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - true - - - - - - - - - - - - =Fields!yymm.Value - - - - - =Fields!yymm.Value - - - - 0.6cm - - - true - true - - - - - =Fields!yymm.Value - - - - - - - yymm - - - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - 0.6cm - - - true - true - - - - - 시간 - - - - - - - Textbox3 - - - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - - - - 0.6cm - - - true - true - - - - - 초과 - - - - - - - Textbox5 - - - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - - - 0.6cm - - - true - true - - - - - 합계 - - - - - - - Textbox13 - - true - - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - 0.6cm - - - true - true - - - - - 시간 - - - - - - - Textbox14 - - true - - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - 0.6cm - - - true - true - - - - - 초과 - - - - - - - Textbox18 - - true - - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - - - - - - - - =Fields!uname.Value - - - - - =Fields!uname.Value - - - - 1.91792cm - - - true - true - - - - - =Fields!uname.Value - - - - - - - uname - - - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - - - - 1.91792cm - - - true - true - - - - - 합계 - - - - - - - Textbox10 - - true - - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - - - Before - - - - DataSet1 - 2.4cm - 6.33521cm - - - - - - 0.94488in - + + + Textbox7 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + 2 + + + + + + + + + + + + 1.09771cm + + + 0.9125cm + + + 1.30938cm + + + 1.09771cm + + + + + 0.6cm + + + + + true + true + + + + + =Sum(Fields!hrs.Value) + + + + + + + hrs + + + Middle + 2pt + 2pt + 2pt + 2pt + + + true + + + + + + true + true + + + + + =Sum(Fields!ot.Value) + + + + + + + ot + + + Middle + 2pt + 2pt + 2pt + 2pt + + + true + + + + + + true + true + + + + + =Sum(Fields!hrs.Value) + + + + + + + Textbox15 + + true + + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + true + + + + + + true + true + + + + + =Sum(Fields!ot.Value) + + + + + + + Textbox19 + + true + + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + true + + + + + + 0.6cm + + + + + true + true + + + + + =Sum(Fields!hrs.Value) + + + + + + + Textbox11 + + true + + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + true + + + + + + true + true + + + + + =Sum(Fields!ot.Value) + + + + + + + Textbox12 + + true + + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + true + + + + + + true + true + + + + + =Sum(Fields!hrs.Value) + + + + + + + Textbox16 + + true + + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + true + + + + + + true + true + + + + + =Sum(Fields!ot.Value) + + + + + + + Textbox20 + + true + + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + true + + + + + + + + + + + + =Fields!yymm.Value + + + + + =Fields!yymm.Value + + + + 0.6cm + + + true + true + + + + + =Fields!yymm.Value + + + + + + + yymm + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.6cm + + + true + true + + + + + 시간 + + + + + + + Textbox3 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + 0.6cm + + + true + true + + + + + 초과 + + + + + + + Textbox5 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + 0.6cm + + + true + true + + + + + 합계 + + + + + + + Textbox13 + + true + + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.6cm + + + true + true + + + + + 시간 + + + + + + + Textbox14 + + true + + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.6cm + + + true + true + + + + + 초과 + + + + + + + Textbox18 + + true + + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + =Fields!uname.Value + + + + + =Fields!uname.Value + + + + 1.91792cm + + + true + true + + + + + =Fields!uname.Value + + + + + + + uname + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + 1.91792cm + + + true + true + + + + + 합계 + + + + + + + Textbox10 + + true + + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + Before + + + + DataSet1 + 2.4cm + 6.33522cm + + + + + + 0.94488in + - - - - - - Textbox3 - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - - - - 0.85958cm - - - 1.12417cm - - - - - 0.6cm - - - - - true - true - - - - - =Sum(Fields!hrs.Value) - - - - - - - hrs - - - Middle - 2pt - 2pt - 2pt - 2pt - - - true - - - - - - true - true - - - - - =Sum(Fields!hrs.Value) - - - - - - - Textbox8 - - - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - 0.6cm - - - - - true - true - - - - - =Sum(Fields!hrs.Value) - - - - - - - Textbox6 - - true - - - - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - =Sum(Fields!hrs.Value) - - - - - - - Textbox9 - - true - - - - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - - - - - - - =Fields!pdate.Value - - - - - =Fields!pdate.Value - - - - 0.6cm - - - true - true - - - - - =right(Fields!pdate.Value,2) - - - - - - - pdate - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - - - - 0.6cm - - - true - true - - - - - 합계 - - - - - - - Textbox7 - - - Silver - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - - - - - - =Fields!uname.Value - - - - - =Fields!uname.Value - - - - 1.49458cm - - - true - true - - - - - =Fields!uname.Value - - - - - - - uname - - - Middle - 2pt - 2pt - 2pt - 2pt - - - - - - - - - - - 1.49458cm - - - true - true - - - - - 합계 - - - - - - - Textbox5 - - true - - - - Middle - 2pt - 2pt - 2pt - 2pt - - - - - Before - - - - DataSet1 - 1.8cm - 3.47833cm - - - - - - 0.70866in - + + + + + + Textbox3 + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + 0.85958cm + + + 1.12417cm + + + + + 0.6cm + + + + + true + true + + + + + =Sum(Fields!hrs.Value)+Sum(Fields!ot.Value) + + + + + + + hrs + + + Middle + 2pt + 2pt + 2pt + 2pt + + + true + + + + + + true + true + + + + + =Sum(Fields!hrs.Value)+Sum(Fields!ot.Value) + + + + + + + Textbox8 + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.6cm + + + + + true + true + + + + + =Sum(Fields!hrs.Value)+Sum(Fields!ot.Value) + + + + + + + Textbox6 + + true + + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Sum(Fields!hrs.Value)+Sum(Fields!ot.Value) + + + + + + + Textbox9 + + true + + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + =Fields!pdate.Value + + + + + =Fields!pdate.Value + + + + 0.6cm + + + true + true + + + + + =right(Fields!pdate.Value,2) + + + + + + + pdate + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + 0.6cm + + + true + true + + + + + 합계 + + + + + + + Textbox7 + + + Silver + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + =Fields!uname.Value + + + + + =Fields!uname.Value + + + + 1.49458cm + + + true + true + + + + + =Fields!uname.Value + + + + + + + uname + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + 1.49458cm + + + true + true + + + + + 합계 + + + + + + + Textbox5 + + true + + + + Middle + 2pt + 2pt + 2pt + 2pt + + + + + Before + + + + DataSet1 + 1.8cm + 3.47833cm + + + + + + 0.70866in +