This commit is contained in:
chi
2024-02-06 09:16:54 +09:00
parent fd5b64ca32
commit 16793303e9
9 changed files with 507 additions and 171 deletions

View File

@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 번호가 자동으로
// 지정되도록 할 수 있습니다.
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("24.01.30.1000")]
[assembly: AssemblyFileVersion("24.01.30.1000")]
[assembly: AssemblyVersion("24.02.01.1350")]
[assembly: AssemblyFileVersion("24.02.01.1350")]

View File

@@ -1,120 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -134,6 +134,12 @@
<Compile Include="fProgress.Designer.cs">
<DependentUpon>fProgress.cs</DependentUpon>
</Compile>
<Compile Include="fSelectDays.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="fSelectDays.Designer.cs">
<DependentUpon>fSelectDays.cs</DependentUpon>
</Compile>
<Compile Include="fSelectDay.cs">
<SubType>Form</SubType>
</Compile>
@@ -190,6 +196,9 @@
<EmbeddedResource Include="fProgress.resx">
<DependentUpon>fProgress.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="fSelectDays.resx">
<DependentUpon>fSelectDays.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="fSelectDay.resx">
<DependentUpon>fSelectDay.cs</DependentUpon>
</EmbeddedResource>

106
SubProject/FCOMMON/fSelectDays.Designer.cs generated Normal file
View File

@@ -0,0 +1,106 @@
namespace FCOMMON
{
partial class fSelectDays
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.dts = new System.Windows.Forms.MonthCalendar();
this.button1 = new System.Windows.Forms.Button();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.dte = new System.Windows.Forms.MonthCalendar();
this.tableLayoutPanel1.SuspendLayout();
this.SuspendLayout();
//
// dts
//
this.dts.Dock = System.Windows.Forms.DockStyle.Fill;
this.dts.Font = new System.Drawing.Font("맑은 고딕", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.dts.Location = new System.Drawing.Point(9, 9);
this.dts.Name = "dts";
this.dts.TabIndex = 0;
//
// button1
//
this.button1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.button1.Location = new System.Drawing.Point(0, 180);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(476, 42);
this.button1.TabIndex = 1;
this.button1.Text = "확인";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.ColumnCount = 2;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.Controls.Add(this.dte, 1, 0);
this.tableLayoutPanel1.Controls.Add(this.dts, 0, 0);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 1;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(476, 180);
this.tableLayoutPanel1.TabIndex = 2;
//
// dte
//
this.dte.Dock = System.Windows.Forms.DockStyle.Fill;
this.dte.Font = new System.Drawing.Font("맑은 고딕", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.dte.Location = new System.Drawing.Point(247, 9);
this.dte.Name = "dte";
this.dte.TabIndex = 0;
//
// fSelectDays
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.ClientSize = new System.Drawing.Size(476, 222);
this.Controls.Add(this.tableLayoutPanel1);
this.Controls.Add(this.button1);
this.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "fSelectDays";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "fSelectDay";
this.Load += new System.EventHandler(this.fSelectDay_Load);
this.tableLayoutPanel1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Button button1;
public System.Windows.Forms.MonthCalendar dts;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
public System.Windows.Forms.MonthCalendar dte;
}
}

View File

@@ -0,0 +1,35 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace FCOMMON
{
public partial class fSelectDays : Form
{
public fSelectDays(DateTime dt,DateTime dte)
{
InitializeComponent();
this.dts.SelectionStart = dt;
this.dts.SelectionEnd = dt;
this.dte.SelectionStart = dt;
this.dte.SelectionEnd = dt;
}
private void button1_Click(object sender, EventArgs e)
{
DialogResult = System.Windows.Forms.DialogResult.OK;
}
private void fSelectDay_Load(object sender, EventArgs e)
{
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -96,6 +96,7 @@
this.partListToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripSeparator();
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.qlToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.tam = new FPJ0000.dsPRJTableAdapters.TableAdapterManager();
@@ -468,10 +469,11 @@
this.partListToolStripMenuItem,
this.toolStripMenuItem3,
this.ToolStripMenuItem,
this.qlToolStripMenuItem,
this.ToolStripMenuItem,
this.ToolStripMenuItem});
this.cm.Name = "contextMenuStrip1";
this.cm.Size = new System.Drawing.Size(224, 274);
this.cm.Size = new System.Drawing.Size(224, 332);
//
// columnSizeToolStripMenuItem
//
@@ -559,6 +561,13 @@
this.ToolStripMenuItem.Text = "복사";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// qlToolStripMenuItem
//
this.qlToolStripMenuItem.Name = "qlToolStripMenuItem";
this.qlToolStripMenuItem.Size = new System.Drawing.Size(223, 36);
this.qlToolStripMenuItem.Text = "복사(기간)";
this.qlToolStripMenuItem.Click += new System.EventHandler(this.qlToolStripMenuItem_Click);
//
// 편집ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "편집ToolStripMenuItem";
@@ -735,7 +744,7 @@
dateTimeCellType1.CalendarSurroundingDaysColor = System.Drawing.SystemColors.GrayText;
dateTimeCellType1.DateTimeFormat = FarPoint.Win.Spread.CellType.DateTimeFormat.TimeOnly;
dateTimeCellType1.MaximumTime = System.TimeSpan.Parse("23:59:59.9999999");
dateTimeCellType1.TimeDefault = new System.DateTime(2023, 10, 24, 22, 53, 4, 0);
dateTimeCellType1.TimeDefault = new System.DateTime(2024, 2, 6, 22, 53, 4, 0);
this.fpSpread1_Sheet1.Columns.Get(14).CellType = dateTimeCellType1;
this.fpSpread1_Sheet1.Columns.Get(14).DataField = "otStart";
this.fpSpread1_Sheet1.Columns.Get(14).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
@@ -746,7 +755,7 @@
dateTimeCellType2.CalendarSurroundingDaysColor = System.Drawing.SystemColors.GrayText;
dateTimeCellType2.DateTimeFormat = FarPoint.Win.Spread.CellType.DateTimeFormat.TimeOnly;
dateTimeCellType2.MaximumTime = System.TimeSpan.Parse("23:59:59.9999999");
dateTimeCellType2.TimeDefault = new System.DateTime(2023, 10, 24, 22, 53, 4, 0);
dateTimeCellType2.TimeDefault = new System.DateTime(2024, 2, 6, 22, 53, 4, 0);
this.fpSpread1_Sheet1.Columns.Get(15).CellType = dateTimeCellType2;
this.fpSpread1_Sheet1.Columns.Get(15).DataField = "otEnd";
this.fpSpread1_Sheet1.Columns.Get(15).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
@@ -1103,5 +1112,6 @@
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private FarPoint.Win.Spread.SheetView fpSpread1_Sheet1;
private System.Windows.Forms.ToolStripButton toolStripButton5;
private System.Windows.Forms.ToolStripMenuItem qlToolStripMenuItem;
}
}

View File

@@ -49,7 +49,7 @@ namespace FPJ0000
if (String.IsNullOrEmpty(dr.outdate) == false)
{
var odt = DateTime.Parse(dr.outdate);
if(odt <= DateTime.Now) continue; //퇴사자제외 211221
if (odt <= DateTime.Now) continue; //퇴사자제외 211221
}
string cmbdata = string.Format("{1}({0})", dr.id, dr.name);
this.cmbUser.Items.Add(cmbdata);
@@ -546,7 +546,7 @@ namespace FPJ0000
| FarPoint.Excel.ExcelSaveFlags.SaveAsFiltered
| FarPoint.Excel.ExcelSaveFlags.NoFormulas
| FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders);
var dlg =FCOMMON.Util.MsgQ("다음 파일이 생성 되었습니다.\n\n" + sd.FileName + "\n파일을 확인 할까요?");
var dlg = FCOMMON.Util.MsgQ("다음 파일이 생성 되었습니다.\n\n" + sd.FileName + "\n파일을 확인 할까요?");
if (dlg == DialogResult.Yes)
util.RunExplorer(sd.FileName);
}
@@ -573,7 +573,7 @@ namespace FPJ0000
newdr.idx = -1;
newdr.hrs = 8.0;
newdr.ot = 0.0;
newdr.Setot2Null();
newdr.SetotwuidNull();
newdr.SetotReasonNull();
@@ -585,7 +585,7 @@ namespace FPJ0000
newdr.EndEdit();
//var newdr = this.dsMSSQL.JobReport.NewJobReportRow();
JobReport_.fJobReport_Add f = new JobReport_.fJobReport_Add(newdr,true);
JobReport_.fJobReport_Add f = new JobReport_.fJobReport_Add(newdr, true);
if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
this.dsMSSQL.JobReport.AddJobReportRow(newdr);
@@ -620,7 +620,7 @@ namespace FPJ0000
}
if (ta.CheckOt2Input(dr.gcode, dr.idx) > 0 && FCOMMON.info.Login.level < 5)
if (ta.CheckOt2Input(dr.gcode, dr.idx) > 0 && FCOMMON.info.Login.level < 5)
{
FCOMMON.Util.MsgE("연장/휴일 근무 시간이 승인된 자료이므로 삭제할 수 없습니다");
return;
@@ -653,7 +653,7 @@ namespace FPJ0000
private void btReport_Click(object sender, EventArgs e)
{
}
private void cmbUser_Click(object sender, EventArgs e)
@@ -683,12 +683,12 @@ namespace FPJ0000
private void btReportDay_Click(object sender, EventArgs e)
{
}
private void toolStripButton1_Click(object sender, EventArgs e)
{
}
private void toolStripButton2_Click(object sender, EventArgs e)
@@ -698,7 +698,7 @@ namespace FPJ0000
private void toolStripButton3_Click(object sender, EventArgs e)
{
}
private void btSearch_ButtonClick(object sender, EventArgs e)
@@ -752,7 +752,7 @@ namespace FPJ0000
private void toolStripButton5_Click(object sender, EventArgs e)
{
}
private void btOpenFolder_Click(object sender, EventArgs e)
@@ -780,7 +780,7 @@ namespace FPJ0000
var ed = sd.AddMonths(1).AddDays(-1);
dtSD.Text = sd.ToShortDateString();
dtED.Text = ed.ToShortDateString();
}
private void toolStripButton7_Click(object sender, EventArgs e)
@@ -792,20 +792,20 @@ namespace FPJ0000
dtED.Text = ed.ToShortDateString();
}
private void toolStripButton10_Click(object sender, EventArgs e)
{
private void toolStripButton10_Click(object sender, EventArgs e)
{
var f = new JobReport_.rK5Dailyform();
f.Show();
}
private void toolStripButton11_Click(object sender, EventArgs e)
{
private void toolStripButton11_Click(object sender, EventArgs e)
{
var f = new JobReport_.rJobReportUser();
f.Show();
}
private void toolStripButton12_Click(object sender, EventArgs e)
{
private void toolStripButton12_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('('));
@@ -813,29 +813,29 @@ namespace FPJ0000
f.ShowDialog();
}
private void toolStripButton13_Click(object sender, EventArgs e)
{
private void toolStripButton13_Click(object sender, EventArgs e)
{
var f = new JobReport_.rJobReportDay(dtSD.Text);
f.Show();
}
private void toolStripButton14_Click(object sender, EventArgs e)
{
private void toolStripButton14_Click(object sender, EventArgs e)
{
var f = new JobReport_.rJobReport();
f.Show();
}
private void toolStripButton1_Click_1(object sender, EventArgs e)
{
private void toolStripButton1_Click_1(object sender, EventArgs e)
{
var f = new JobReport_.rJobReportPrj(dtSD.Text);
f.Show();
}
private void toolStripButton3_Click_1(object sender, EventArgs e)
{
var f = new JobReport_.fProjectConnect(dtSD.Text,dtED.Text);
private void toolStripButton3_Click_1(object sender, EventArgs e)
{
var f = new JobReport_.fProjectConnect(dtSD.Text, dtED.Text);
f.ShowDialog();
}
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
@@ -848,5 +848,61 @@ namespace FPJ0000
var f = new JobReport_.rJobReportType();
f.Show();
}
private void qlToolStripMenuItem_Click(object sender, EventArgs e)
{
var drv = this.bs.Current as DataRowView;
if (drv == null) return;
var dr = drv.Row as dsPRJ.JobReportRow;
var f = new FCOMMON.fSelectDays(DateTime.Now, DateTime.Now);
if (f.ShowDialog() != DialogResult.OK) return;
var sd = f.dts.SelectionStart;
var ed = f.dte.SelectionEnd;
DateTime d = sd;
var ucnt = 0;
while (true)
{
//종료일보다 작으면 넘어간다
if (d > ed) break;
if (d.DayOfWeek == DayOfWeek.Sunday || d.DayOfWeek == DayOfWeek.Saturday)
{
d = d.AddDays(1);
continue;
}
//현재 데이터를 입력하여 신규 추가를 한다.
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.pdate = d.ToShortDateString(); //190509
newdr.idx = -1;
newdr.hrs = 8.0;
newdr.ot = 0.0;
newdr.Setot2Null();
newdr.SetotwuidNull();
newdr.SetotReasonNull();
newdr.SetottimeNull();
newdr.SetotEndNull();
newdr.SetotStartNull();
newdr.EndEdit();
this.dsMSSQL.JobReport.AddJobReportRow(newdr);
ucnt += ta.Update(dsMSSQL.JobReport);
d = d.AddDays(1);
}
util.MsgI($"토/일은 제외되었습니다. 기타 휴일은 적용되지 않았으니 데이터를 확인하세요\nupdate count : {ucnt}");
}
}
}

View File

@@ -130,7 +130,7 @@
<data name="bindingNavigatorMoveFirstItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wQAADsEBuJFr7QAAASpJREFUOE9jGDygcNbz/00Lnv/PnPj4P1QIA4S3P8Apx5A789n/VUfe/8elKL77
vwAADr8BOAVTJAAAASpJREFUOE9jGDygcNbz/00Lnv/PnPj4P1QIA4S3P8Apx5A789n/VUfe/8elKL77
wf/ghmu4DciY8vT/wn0fsCqK73n4f+n+///9qy/gNiCh58n/aVveYyiKaL8P1pw56/9/r9ITuA2I7Hr0
v3f1BxRFoa33wJpb1wFt7/z73yX/AG4DApsf/q+b/w6uKLjl7v9Fe///7wBqzpjz879d3c//9hnbcRvg
UXX/f/60NyiK7Ipv/0+f8/u/f9e3/zqF7/5bJKzHbYB96d3/2ZNfYyjSTzn/36ToxX+VrE//jSOX4TbA
@@ -141,7 +141,7 @@
<data name="bindingNavigatorMovePreviousItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wQAADsEBuJFr7QAAALZJREFUOE9jGDogvP3BfyiTdBDf/eB/cMM18gyI73n4f+n+///9qy+QbkBE+32w
vwAADr8BOAVTJAAAALZJREFUOE9jGDogvP3BfyiTdBDf/eB/cMM18gyI73n4f+n+///9qy+QbkBE+32w
5sxZ//97lZ4gzYDQ1ntgza3rgLZ3/v3vkn+AeAOCW+7+X7T3//8OoOaMOT//29X9/G+fsZ00F9gV3/6f
Puf3f/+ub/91Ct/9t0hYT3oY6Kec/29S9OK/Stan/8aRy0g3AAQMkk78l037+l83eB55BoCAfurl/xq+
08g3AARUPCZQZsBgBQwMANAUYJgEulBVAAAAAElFTkSuQmCC
@@ -150,7 +150,7 @@
<data name="bindingNavigatorMoveNextItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wQAADsEBuJFr7QAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78
vwAADr8BOAVTJAAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78
n73v1//OrX//u5VeJt2QyK5H/6ds+/W/ZOnf/wnT//63yT1LmiGBzQ//t659D9ZsXPLlv3T0tf/GkcuI
N8Sj6v7/krnv4JoVXXpIc4F96d3/gS3PyNMMAhZ5d/7bFFwhTzMIGGbdJl8zCOik3SBf81AEDAwAoH5f
oAc0QjgAAAAASUVORK5CYII=
@@ -159,7 +159,7 @@
<data name="bindingNavigatorMoveLastItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wQAADsEBuJFr7QAAASxJREFUOE9jGFygcNbz/1AmBgDJNS14/j9z4mOcahhyZz77n9B9D6sCkNyqI+//
vwAADr8BOAVTJAAAASxJREFUOE9jGFygcNbz/1AmBgDJNS14/j9z4mOcahhyZz77n9B9D6sCkNyqI+//
h7c/wG1AxpSn/+ft//0/oesOhiKQ3MJ9H/4HN1zDbUBCz5P/s/f9+t+59e9/t9LLKApBctO2vP/vX30B
twGRXY/+T9n263/J0r//E6b//W+TexauGCTXu/rDf6/SE7gNCGx++L917XuwZuOSL/+lo6/9N45cBtYA
kqub/+6/S/4B3AZ4VN3/XzL3HVyzoksPXDFILn/am//2GdtxG2Bfevd/YMszDM0gAJLLnvz6v0XCetwG
@@ -170,7 +170,7 @@
<data name="btAdd.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wQAADsEBuJFr7QAAAUpJREFUOE9jGLzg7gL2/7fmcf6/Oofr/8UZvP+hwsSD60CNfx41/v/zsOH/yckC
vwAADr8BOAVTJAAAAUpJREFUOE9jGLzg7gL2/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
@@ -193,7 +193,7 @@
<data name="btDel.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wQAADsEBuJFr7QAAAW9JREFUOE+1kE0ow2Ecx3dV3krt4oJaOSCTvIRkMqSxyITIzCQHDouEdnFwIOVC
vwAADr8BOAVTJAAAAW9JREFUOE+1kE0ow2Ecx3dV3krt4oJaOSCTvIRkMqSxyITIzCQHDouEdnFwIOVC
DrhIDiQl5UTiNG/z2ppafy1S2gX/uDwfY6i1v7Hie3nqeb7fz+/7/FR/Ilwn0G0Exw4fV5GJlXlEZxXC
rIet9bAQvB5Ymgn2sLYAvSZEux7RUQFzE4qQt4bCXAYjPaHvnDoCkLpsRGMB2JqCTGLIijDlwqQ9bEMV
i9OIytR3EMNWcJ/BWH8A6j8/bOGFxwXNxYEvGbMQ9XnQ1/K78KfY3/VXzkMY0qFGG2H4RoLGQshJQNbG
@@ -243,20 +243,20 @@
<data name="toolStripButton10.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALxSURBVDhPhZLrS1NhHMf3qv6EsF70UohSSqmoF6WpTQ3s
Zipm3uYUTU10YZAtppF5CU1UqBCl6EWFdtGpTc05pxtukTkv0znvgpel7nKO7pz57TlnSw2EfvDhefGc
74fz+54j4Cb4oTLhSqlGEVGm+R0i1VDkpHnKuVNLR5T202HP1IbzElXlscj3B/jQ3gl90qtattKrhmEj
a7FvwmLbZdXKQWN00YqCL7OIKRtzCDPlBz1R94QXq5cNoxNs/7QT2hkG2lkGmmkG6qktKCc20TZixyYD
NI9RKPg0g+QXBuofSYi0jdpwbEE/x+LHHENOBgO8ZAs9pk18G3EQgQv6RRbaBSeK5LMIfND1jg9HlweY
b0kjt8U1N5BcfRPV7Q0obCxHoNQHAQRh0TkEy06jormCX8VGM1hacyA4vofhBVGlgR+7hlrQMv4a1Zo8
XhJfFYa8t3HIaoiBqPYqkmqT0Dy4hBaDDV9/bWCd9BQi66V5gbBSeNBfms1qjN14MyRDiTKTlyTUhJPw
NaS9TIXKZOdX6RynoCA9rNmdCCnscwu4CS3uoXPqEqEzqVGrvY+nHbmILr+EhKpI6KYd0JFiuYJVk+5O
LEQQLNsjuPBI6jyTfxRxlULoJ/tR1J0OmTwHMc+D0KD8jJ/zDHSk2P4pJ/oIy1YnAh97BKckXmI/yRFk
1cfidk0oYisu85IceRwkjankTYLA3etnWQxwn5hgJUX6ZqvdAj/JoXk/yWHykBf88rxwvSQIGa8SoRpR
oEiRj/QPiRDVREFHBFryb2iIgHa6iEC5u8LF7F56cZ3G4DzL02NcwL26NKSQoLg2Brn1d3fuOBxbLBE0
7Qo425xlV/A/7NwKqXsEZ3O+O7p1I9v7PbwfRpPZdSK+2eaJkyLTOswzGw5rt37MZV6hYF6mYPKwYnPy
cM3baBbDxkkXRVHr3ndahz1xgcA/rT3DV9TWcVKssPiKm+gdUtz4/EXURHuLWteOJ7V2+iTKkwUCgeAP
E1qff5A1Ne4AAAAASUVORK5CYII=
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALySURBVDhPhZJZTxNRGIZ7pT/BoBdekhiFCEaNXigIWMAE
NwSCyFYKAQEJ1GAi1hSMyGJAAiRqCETjhRpwgQKWrZRCK8WIlJal7EvCUoEuM9CZ8npmWgETEr/kybk4
8z6Z750RcBP4UBl3pVijCCvR/A6Saihy0jyl3Kmlw4r76JBnav15iar8WPj7A3xo7wQ/6VEtW+hVvd7I
mm2bMFt3WbVw0DAuWpD3ZRZRJSN2Ybr8oDvqmtBC9bJ+eJTtm3ZAO8NAO8tAM81APbUF5fgmWgw2bDJA
4wiFvE8zSHyhp/6RBElbqA37FgbmWPyYY8jJoJ+XbKHbtIlvBjsRODGwyEK74ECBfBb+Dzre8eHIUr/J
W9LwbXHVDSRW3kRlax3y60vhL/WCH0FYcA6BstMoayzjV7HSDJbW7AiM7WZ4QUSx/8eOoSY0jb1GpSaH
l8RWhCDnbQwy6qIgqr6KhOoENA4uoUlvxddfG1gnPQXJemheICwXHvSRZrKa0S68GZKhSJnOS+KqQkn4
GlJeJkNlsvGrtI9RUJAe1mwOBOX3ugTcBBd201k18dCZ1KjW3sfTtmxEll5CXEU4dNN26EixXMGqCVcn
ZiIIlO0RXHgkdZzJPYqYciEGJvpQ0JUKmTwLUc8DUKf8jJ/zDHSk2L4pB3oJyxYH/B+7BT4SD7Gv5Agy
aqNxuyoY0WWXeUmWPAaS+mTyJgHg7gdmWfRzn5hgIUV6Z6pdAl/JoXlfyWHykAd8czxwvSgAaa/ioTIo
UKDIReqHeIiqIqAjAi35NzREQDucRKDcXeFiZg+9uE5jcJ7l6R5dwL2aFCSRoLg6Ctm1d3fuOOxbLBE0
7Ao425x5V/A/bNwKyXsEZ7M67R3f9dv7PbwfxjGT80Rso9UdJ0WmtE3ObNgtnf0G5+QKhcllCiY3K1YH
D9e8lWYxZBx3UhS17nmnedgdFwhOpbSmeYta2k6KFWZvcQO9Q5ILr7+IGmhPUfPa8YTmdq94eaJAIBD8
Aekrn18k0ej1AAAAAElFTkSuQmCC
</value>
</data>
<data name="toolStripButton11.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">