This commit is contained in:
chi
2021-02-22 20:13:19 +09:00
parent 55510b84b8
commit 71698b5d8b
138 changed files with 19619 additions and 6658 deletions

View File

@@ -0,0 +1,231 @@
namespace FPJ0000.JobReport_
{
partial class fJobChartMenu
{
/// <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.panel1 = new System.Windows.Forms.Panel();
this.cmbUser = new System.Windows.Forms.ComboBox();
this.label4 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.dte = new System.Windows.Forms.DateTimePicker();
this.label2 = new System.Windows.Forms.Label();
this.dts = new System.Windows.Forms.DateTimePicker();
this.tbProcess = new System.Windows.Forms.ComboBox();
this.label1 = new System.Windows.Forms.Label();
this.btRefresh = new System.Windows.Forms.Button();
this.fpSpread1 = new FarPoint.Win.Spread.FpSpread();
this.fpSpread1_Sheet1 = new FarPoint.Win.Spread.SheetView();
this.btSave = new System.Windows.Forms.Button();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.fpSpread1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).BeginInit();
this.SuspendLayout();
//
// panel1
//
this.panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(200)))), ((int)(((byte)(200)))), ((int)(((byte)(200)))));
this.panel1.Controls.Add(this.btSave);
this.panel1.Controls.Add(this.cmbUser);
this.panel1.Controls.Add(this.label4);
this.panel1.Controls.Add(this.label3);
this.panel1.Controls.Add(this.dte);
this.panel1.Controls.Add(this.label2);
this.panel1.Controls.Add(this.dts);
this.panel1.Controls.Add(this.tbProcess);
this.panel1.Controls.Add(this.label1);
this.panel1.Controls.Add(this.btRefresh);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Padding = new System.Windows.Forms.Padding(5);
this.panel1.Size = new System.Drawing.Size(888, 58);
this.panel1.TabIndex = 1;
//
// cmbUser
//
this.cmbUser.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbUser.FormattingEnabled = true;
this.cmbUser.Location = new System.Drawing.Point(289, 32);
this.cmbUser.Name = "cmbUser";
this.cmbUser.Size = new System.Drawing.Size(180, 20);
this.cmbUser.TabIndex = 11;
//
// label4
//
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(254, 36);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(29, 12);
this.label4.TabIndex = 10;
this.label4.Text = "사원";
//
// label3
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(261, 12);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(14, 12);
this.label3.TabIndex = 9;
this.label3.Text = "~";
//
// dte
//
this.dte.Location = new System.Drawing.Point(289, 8);
this.dte.Name = "dte";
this.dte.Size = new System.Drawing.Size(180, 21);
this.dte.TabIndex = 8;
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(10, 12);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(53, 12);
this.label2.TabIndex = 7;
this.label2.Text = "검색기간";
//
// dts
//
this.dts.Location = new System.Drawing.Point(68, 8);
this.dts.Name = "dts";
this.dts.Size = new System.Drawing.Size(180, 21);
this.dts.TabIndex = 6;
//
// tbProcess
//
this.tbProcess.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.tbProcess.FormattingEnabled = true;
this.tbProcess.Location = new System.Drawing.Point(68, 32);
this.tbProcess.Name = "tbProcess";
this.tbProcess.Size = new System.Drawing.Size(180, 20);
this.tbProcess.TabIndex = 5;
this.tbProcess.SelectedIndexChanged += new System.EventHandler(this.tbProcess_SelectedIndexChanged);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(34, 36);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(29, 12);
this.label1.TabIndex = 3;
this.label1.Text = "공정";
//
// btRefresh
//
this.btRefresh.Dock = System.Windows.Forms.DockStyle.Right;
this.btRefresh.Location = new System.Drawing.Point(808, 5);
this.btRefresh.Name = "btRefresh";
this.btRefresh.Size = new System.Drawing.Size(75, 48);
this.btRefresh.TabIndex = 2;
this.btRefresh.Text = "새로고침";
this.btRefresh.UseVisualStyleBackColor = true;
this.btRefresh.Click += new System.EventHandler(this.btRefresh_Click);
//
// fpSpread1
//
this.fpSpread1.AccessibleDescription = "";
this.fpSpread1.Dock = System.Windows.Forms.DockStyle.Fill;
this.fpSpread1.Location = new System.Drawing.Point(0, 58);
this.fpSpread1.Name = "fpSpread1";
this.fpSpread1.Sheets.AddRange(new FarPoint.Win.Spread.SheetView[] {
this.fpSpread1_Sheet1});
this.fpSpread1.Size = new System.Drawing.Size(888, 638);
this.fpSpread1.TabIndex = 4;
//
// 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.ColumnFooter.DefaultStyle.BackColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.ColumnFooter.DefaultStyle.ForeColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.ColumnFooterSheetCornerStyle.BackColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.ColumnFooterSheetCornerStyle.ForeColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.ColumnHeader.DefaultStyle.BackColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.ColumnHeader.DefaultStyle.ForeColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.DefaultStyle.BackColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.DefaultStyle.ForeColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.FilterBar.DefaultStyle.BackColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.FilterBar.DefaultStyle.ForeColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.FilterBarHeaderStyle.BackColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.FilterBarHeaderStyle.ForeColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.RowHeader.DefaultStyle.BackColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.RowHeader.DefaultStyle.ForeColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.SheetCornerStyle.BackColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.SheetCornerStyle.ForeColor = System.Drawing.Color.Empty;
this.fpSpread1_Sheet1.ReferenceStyle = FarPoint.Win.Spread.Model.ReferenceStyle.A1;
//
// btSave
//
this.btSave.Dock = System.Windows.Forms.DockStyle.Right;
this.btSave.Location = new System.Drawing.Point(733, 5);
this.btSave.Name = "btSave";
this.btSave.Size = new System.Drawing.Size(75, 48);
this.btSave.TabIndex = 13;
this.btSave.Text = "파일저장";
this.btSave.UseVisualStyleBackColor = true;
this.btSave.Click += new System.EventHandler(this.btSave_Click);
//
// fJobChartMenu
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(888, 696);
this.Controls.Add(this.fpSpread1);
this.Controls.Add(this.panel1);
this.Name = "fJobChartMenu";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "작업 분포 확인";
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
this.Load += new System.EventHandler(this.fJobChartMenu_Load);
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.fpSpread1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.ComboBox cmbUser;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.DateTimePicker dte;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.DateTimePicker dts;
private System.Windows.Forms.ComboBox tbProcess;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Button btRefresh;
private FarPoint.Win.Spread.FpSpread fpSpread1;
private FarPoint.Win.Spread.SheetView fpSpread1_Sheet1;
private System.Windows.Forms.Button btSave;
}
}

View File

@@ -0,0 +1,364 @@
using FarPoint.Win;
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 fJobChartMenu : Form
{
Boolean binit = false;
public fJobChartMenu()
{
InitializeComponent();
this.dts.Value = DateTime.Parse(DateTime.Now.AddMonths(-1).ToString("yyyy-MM-01"));
this.dte.Value = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1);
}
private void fJobChartMenu_Load(object sender, EventArgs e)
{
this.tbProcess.Items.Clear();
tbProcess.Items.Add("--전체--");
var taProcess = new dsReportTableAdapters.ProcessListTableAdapter();
var dtProcessList = taProcess.GetData(FCOMMON.info.Login.gcode);
foreach (dsReport.ProcessListRow dr in dtProcessList.Rows)
tbProcess.Items.Add(dr.processs);
//사용자의 공정명을 선택해준다
this.tbProcess.Text = FCOMMON.info.Login.process;
//프로세스가 선택되지 않았다면 전체를 선택해준다.
if (tbProcess.SelectedIndex < 0) tbProcess.SelectedIndex = 0;
//사용자 목록을 선택한다
UpdateUserList();
//엑셀파일불러오기
var file = FCOMMON.Util.CurrentPath + "ReportProjectSummary.xlsx";
this.fpSpread1.OpenExcel(file);
if (this.fpSpread1.Sheets.Count > 1) this.fpSpread1.ActiveSheetIndex = 0;
//refrehData();
binit = true;
}
void UpdateUserList()
{
var db = new EEEntities();
cmbUser.Items.Clear();
cmbUser.Items.Add("--전체--");
//일반사용자 목록 가져온다
IQueryable<IGrouping<String, vJobReportForUser>> userlist;
if (tbProcess.SelectedIndex <= 0)
{
//공정구분없이 전체사용자를 가져온다
userlist = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode).OrderBy(t => t.name).GroupBy(t => t.name);
}
else
{
userlist = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.userProcess == tbProcess.Text).OrderBy(t => t.name).GroupBy(t => t.name);
}
//if (tbProcess.SelectedIndex != 0) userlist = userlist.Where(t => t.processs == tbProcess.Text); //해당 공정의 인원만 처리한다
foreach (var item in userlist)
{
var dr = item.First();
cmbUser.Items.Add(String.Format("[{0}] {1}", dr.id, dr.name));
}
if (tbProcess.SelectedIndex > 0)
cmbUser.Text = string.Format("[{0}] {1}", FCOMMON.info.Login.no, FCOMMON.info.Login.nameK);
if (cmbUser.SelectedIndex < 0) cmbUser.SelectedIndex = 0; //기본전체로 선택해준다.
}
void refrehData()
{
var db = new EEEntities();
//조회공정
this.fpSpread1.Sheets[0].Cells[3, 2].Value = tbProcess.Text;
//담당자
this.fpSpread1.Sheets[0].Cells[3, 3].Value = cmbUser.Text;
//시작일:F4
this.fpSpread1.Sheets[0].Cells[3, 4].Value = dts.Value;
//종료일:G4
this.fpSpread1.Sheets[0].Cells[3, 5].Value = dte.Value;
//근문일수,시간
var vSD = dts.Value.ToShortDateString();
var vED = dte.Value.ToShortDateString();
//휴가일수확인
var drDays = db.HolidayLIst.Where(t => t.free == false && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0);
//근무일수적용
if (drDays == null || drDays.Count() < 1) this.fpSpread1.Sheets[0].Cells[3, 6].Value = 0;
else this.fpSpread1.Sheets[0].Cells[3, 6].Value = drDays.Count();
ComplexBorderSide left = new ComplexBorderSide(Color.Gray, 1);
ComplexBorderSide top = new ComplexBorderSide(Color.Gray, 1);
ComplexBorderSide right = new ComplexBorderSide(Color.Gray, 1);
ComplexBorderSide bottom = new ComplexBorderSide(Color.Gray, 1);
//사용자목록을 가져온다
List<vJobReportForUser> baseData;
if (cmbUser.SelectedIndex > 0)
{
//사용자번호
var UserNo = cmbUser.Text.Substring(1, cmbUser.Text.IndexOf(']') - 1);
baseData = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.id == UserNo).OrderBy(t => t.name).ToList();
}
else if (tbProcess.SelectedIndex > 0)
{
baseData = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.userProcess == tbProcess.Text).OrderBy(t => t.name).ToList();
}
else
{
baseData = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode).OrderBy(t => t.name).ToList();
}
//사용자로 그룹해서 수량을 세명 , 사용자 숫자가 된다.
this.fpSpread1.Sheets[0].Cells[3, 7].Value = baseData.GroupBy(t => t.id).Count(); //인원수
var col = 0;
var row = 0;
//해당 그룹의 기간데이터를 가져온다
if (cmbUser.SelectedIndex > 0)
{
//사용자번호
var UserNo = cmbUser.Text.Substring(1, cmbUser.Text.IndexOf(']') - 1);
baseData = db.vJobReportForUser
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.id == UserNo && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
}
else if (tbProcess.SelectedIndex > 0)
{
baseData = db.vJobReportForUser
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0 && t.userProcess == tbProcess.Text)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
}
else
{
baseData = db.vJobReportForUser
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
}
col = 0;
row = 1;
fpSpread1.Sheets[1].RowCount = baseData.GroupBy(t => t.id).Count() + 1;
foreach (var item in baseData.GroupBy(t => t.id)) //사용자별로 그룹을 해서
{
var dr = item.FirstOrDefault();
this.fpSpread1.Sheets[2].Cells[row, 0].Value = dr.name;
this.fpSpread1.Sheets[2].Cells[row, 1].Value = dr.id;
this.fpSpread1.Sheets[2].Cells[row, 2].Value = item.Sum(t => t.hrs);
this.fpSpread1.Sheets[2].Cells[row, 3].Value = item.Sum(t => t.ot);
row += 1;
}
fpSpread1.Sheets[1].ColumnCount = 5;
fpSpread1.Sheets[1].RowCount = row + 1;
//Raw dat a표시
row = 1;
this.fpSpread1.Sheets[2].RowCount = baseData.Count + 1;
foreach (var item in baseData)
{
col = 0;
this.fpSpread1.Sheets[3].Cells[row, col++].Value = item.id;
this.fpSpread1.Sheets[3].Cells[row, col++].Value = item.name;
this.fpSpread1.Sheets[3].Cells[row, col++].Value = item.pdate;
this.fpSpread1.Sheets[3].Cells[row, col++].Value = item.userProcess;
this.fpSpread1.Sheets[3].Cells[row, col++].Value = item.process;
this.fpSpread1.Sheets[3].Cells[row, col++].Value = item.svalue;
this.fpSpread1.Sheets[3].Cells[row, col++].Value = item.hrs;
this.fpSpread1.Sheets[3].Cells[row, col++].Value = item.ot;
this.fpSpread1.Sheets[3].Cells[row, col++].Value = item.requestpart;
this.fpSpread1.Sheets[3].Cells[row, col++].Value = item.package;
row += 1;
}
// var dtRaw = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0);
//공정목록(우측으로 전개함)
col = 2;
var orTypeName = baseData.Where(t => t.svalue != "휴가").OrderBy(t => t.process).GroupBy(t => t.process);
this.fpSpread1.ActiveSheetIndex = 0;
foreach (var item in orTypeName)
{
var dr = item.FirstOrDefault();
this.fpSpread1.Sheets[0].Cells[6, col++].Value = dr.process;
if (col == 11) break; //목록개수를 넘었으니 더이상 진행하지 못한다 이것들은 모두 ETC에 넣는다
//col += 1;
}
//나머지 열을 * 로 채운다
for (int i = col; i < 11; i++)
this.fpSpread1.Sheets[0].Cells[6, i].Value = "*";
System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("ko-KR", false);
FarPoint.Win.Spread.CellType.NumberCellType numberCellType1 = new FarPoint.Win.Spread.CellType.NumberCellType();
numberCellType1.NegativeRed = true;
numberCellType1.NullDisplay = "--";
//프로세스목록을 먼저 기록한다
row = 7;
var orProcess = baseData.OrderBy(t => t.requestpart).GroupBy(t => t.requestpart);
this.fpSpread1.Sheets[0].RowCount = 7+ orProcess.Count() + 1;
foreach (var item in orProcess)
{
var RequestPart = item.FirstOrDefault().requestpart;
this.fpSpread1.Sheets[0].Cells[row, 1].Value = RequestPart;
//2번부터는 데이터를 넣어야 한다
double sumOt = 0.0;
double holytime = 0.0;
int coldata = 2;
for (int i = 2; i < 11; i++)
{
var colName = fpSpread1.Sheets[0].Cells[6, i].Value.ToString();
//이 이름에 해당하는 데이터의 시간을 가져온다
double ot = 0.0;
double hrs = 0.0;
if (colName != "*")
{
//double holytime = 0.0;
var timeList = item.Where(t => t.process == colName);
if (timeList != null)
{
hrs = (double)timeList.Sum(t => t.hrs);
ot = (double)timeList.Sum(t => t.ot);
sumOt += ot;
}
}
if (ot + hrs == 0.0) fpSpread1.Sheets[0].Cells[row, coldata].Value = null;
else fpSpread1.Sheets[0].Cells[row, coldata].Value = ot + hrs; //없음으로한다
coldata += 1;
}
//ETC영역계산
{
//전체합산데이터와, 2~10까지의 데이터가 일치하지 않으면 그것이 ETC이다
var etchr = item.Sum(t => t.hrs);
var etcot = item.Sum(t => t.ot);
//현재데이터의 hrs의 합
var subtotal = 0.0;
for(int i = 2; i <11;i++)
{
var ivalue = fpSpread1.Sheets[0].Cells[row, i].Value;
if (ivalue != null) subtotal += (double)ivalue;
}
var etcval = (etchr + etcot) - subtotal;
fpSpread1.Sheets[0].Cells[row, 11].Value = etcval;
}
fpSpread1.Sheets[0].Cells[row, 12].CellType = numberCellType1;
fpSpread1.Sheets[0].Cells[row, 12].ParseFormatString = "N1";
fpSpread1.Sheets[0].Cells[row, 12].Formula = string.Format("SUM(C{0}:G{0})+L{0}", row + 1);
//H8 /$I$4
if (sumOt == 0.0) fpSpread1.Sheets[0].Cells[row, 13].Value = null; //OT합계
else fpSpread1.Sheets[0].Cells[row, 13].Value = sumOt; //OT합계
// process 의 휴가시간을 다시 계산한다.
var = baseData.Where(t => t.requestpart == RequestPart && t.svalue == "휴가");
if ( == null || .Count() < 1)
{
fpSpread1.Sheets[0].Cells[row, 14].Value = null;// 0.0; //휴가시간
}
else fpSpread1.Sheets[0].Cells[row, 14].Value = .Sum(t => t.hrs); //휴가시간
for (int i = 1; i <= 14; i++)
{
if(i == 12) fpSpread1.Sheets[0].Cells[row, i].BackColor = Color.LightGray;
else fpSpread1.Sheets[0].Cells[row, i].BackColor = Color.White;
fpSpread1.Sheets[0].Cells[row, i].Border = new ComplexBorder(left, top, right, bottom);
fpSpread1.Sheets[0].Cells[row, i].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
fpSpread1.Sheets[0].Cells[row, i].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
}
row += 1;
}
//합계데이터
fpSpread1.Sheets[0].Cells[row, 1].Value = "합계";
fpSpread1.Sheets[0].Cells[row, 1].BackColor = Color.LightGray;
fpSpread1.Sheets[0].Cells[row, 1].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
fpSpread1.Sheets[0].Cells[row, 1].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
fpSpread1.Sheets[0].Cells[row, 1].Border = new ComplexBorder(left, top, right, bottom);
for (int i = 2; i <= 14; i++)
{
char basec = 'C';
char newc = (char)(basec + (i - 2));
fpSpread1.Sheets[0].Cells[row, i].Formula = "SUM(" + newc.ToString() + "8:" + newc.ToString() + row.ToString() + ")";
fpSpread1.Sheets[0].Cells[row, i].BackColor = Color.LightGray;
fpSpread1.Sheets[0].Cells[row, i].CellType = numberCellType1;
fpSpread1.Sheets[0].Cells[row, i].ParseFormatString = "N1";
fpSpread1.Sheets[0].Cells[row, i].CellType = numberCellType1;
fpSpread1.Sheets[0].Cells[row, i].ParseFormatString = "N1";
fpSpread1.Sheets[0].Cells[row, i].Border = new ComplexBorder(left, top, right, bottom);
fpSpread1.Sheets[0].Cells[row, i].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
fpSpread1.Sheets[0].Cells[row, i].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
}
this.fpSpread1.Sheets[0].RowCount = row + 1;
}
private void tbProcess_SelectedIndexChanged(object sender, EventArgs e)
{
if (binit == false) return;
UpdateUserList();
//if (tbProcess.SelectedIndex >= 0) refrehData();
}
private void btRefresh_Click(object sender, EventArgs e)
{
refrehData();
}
private void btSave_Click(object sender, EventArgs e)
{
var sd = new SaveFileDialog();
sd.Filter = "excel(*.xls)|*.xls";
sd.FilterIndex = 0;
sd.FileName = "작업분포.xls";
if (sd.ShowDialog() == DialogResult.OK)
{
fpSpread1.SaveExcel(sd.FileName);
FCOMMON.Util.MsgE("파일저장완료\n" + sd.FileName);
}
}
}
}

View File

@@ -0,0 +1,126 @@
<?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>
<metadata name="fpSpread1_Sheet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="fpSpread1_Sheet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,863 @@
namespace FPJ0000
{
partial class fJobReport
{
/// <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.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fJobReport));
FarPoint.Win.Spread.CellType.TextCellType textCellType23 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType24 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType25 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType26 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType27 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType28 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType29 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType30 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType31 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.NumberCellType numberCellType7 = new FarPoint.Win.Spread.CellType.NumberCellType();
FarPoint.Win.Spread.CellType.NumberCellType numberCellType8 = new FarPoint.Win.Spread.CellType.NumberCellType();
FarPoint.Win.Spread.CellType.NumberCellType numberCellType9 = new FarPoint.Win.Spread.CellType.NumberCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType32 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType33 = 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();
this.bindingNavigatorCountItem = new System.Windows.Forms.ToolStripLabel();
this.bindingNavigatorMoveFirstItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorMovePreviousItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorSeparator = new System.Windows.Forms.ToolStripSeparator();
this.bindingNavigatorPositionItem = new System.Windows.Forms.ToolStripTextBox();
this.bindingNavigatorSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.bindingNavigatorMoveNextItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorMoveLastItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.btAdd = new System.Windows.Forms.ToolStripButton();
this.btCopy = new System.Windows.Forms.ToolStripButton();
this.btEdit = new System.Windows.Forms.ToolStripButton();
this.btDel = new System.Windows.Forms.ToolStripButton();
this.btSave = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.toolStripLabel2 = new System.Windows.Forms.ToolStripLabel();
this.tbFind = new System.Windows.Forms.ToolStripTextBox();
this.btFind = new System.Windows.Forms.ToolStripButton();
this.btReport = new System.Windows.Forms.ToolStripButton();
this.btReportDay = new System.Windows.Forms.ToolStripButton();
this.toolStripButton1 = new System.Windows.Forms.ToolStripButton();
this.toolStripButton3 = new System.Windows.Forms.ToolStripButton();
this.cm = new System.Windows.Forms.ContextMenuStrip(this.components);
this.columnSizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.autoToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.resetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.loadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.exportListToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripSeparator();
this.refreshToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator();
this.partListToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripSeparator();
this.ToolStripMenuItem = 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();
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();
this.lbEnd = new System.Windows.Forms.ToolStripLabel();
this.toolStripLabel4 = new System.Windows.Forms.ToolStripLabel();
this.dtED = new System.Windows.Forms.ToolStripTextBox();
this.lbTime = new System.Windows.Forms.ToolStripLabel();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.toolStripLabel1 = new System.Windows.Forms.ToolStripLabel();
this.tbProcess = new System.Windows.Forms.ToolStripTextBox();
this.toolStripButton4 = new System.Windows.Forms.ToolStripButton();
this.toolStripLabel3 = new System.Windows.Forms.ToolStripLabel();
this.cmbUser = new System.Windows.Forms.ToolStripComboBox();
this.btSearch = new System.Windows.Forms.ToolStripSplitButton();
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripButton2 = new System.Windows.Forms.ToolStripButton();
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
((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();
this.SuspendLayout();
//
// bn
//
this.bn.AddNewItem = null;
this.bn.BindingSource = this.bs;
this.bn.CountItem = this.bindingNavigatorCountItem;
this.bn.DeleteItem = null;
this.bn.Dock = System.Windows.Forms.DockStyle.Bottom;
this.bn.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.bindingNavigatorMoveFirstItem,
this.bindingNavigatorMovePreviousItem,
this.bindingNavigatorSeparator,
this.bindingNavigatorPositionItem,
this.bindingNavigatorCountItem,
this.bindingNavigatorSeparator1,
this.bindingNavigatorMoveNextItem,
this.bindingNavigatorMoveLastItem,
this.bindingNavigatorSeparator2,
this.btAdd,
this.btCopy,
this.btEdit,
this.btDel,
this.btSave,
this.toolStripSeparator1,
this.toolStripLabel2,
this.tbFind,
this.btFind,
this.btReport,
this.btReportDay,
this.toolStripButton1,
this.toolStripButton3});
this.bn.Location = new System.Drawing.Point(0, 637);
this.bn.MoveFirstItem = this.bindingNavigatorMoveFirstItem;
this.bn.MoveLastItem = this.bindingNavigatorMoveLastItem;
this.bn.MoveNextItem = this.bindingNavigatorMoveNextItem;
this.bn.MovePreviousItem = this.bindingNavigatorMovePreviousItem;
this.bn.Name = "bn";
this.bn.PositionItem = this.bindingNavigatorPositionItem;
this.bn.Size = new System.Drawing.Size(1139, 25);
this.bn.TabIndex = 0;
this.bn.Text = "bindingNavigator1";
//
// bs
//
this.bs.DataMember = "JobReport";
this.bs.DataSource = this.dsMSSQL;
this.bs.Sort = "pdate desc";
//
// dsMSSQL
//
this.dsMSSQL.DataSetName = "dsMSSQL";
this.dsMSSQL.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
//
// bindingNavigatorCountItem
//
this.bindingNavigatorCountItem.Name = "bindingNavigatorCountItem";
this.bindingNavigatorCountItem.Size = new System.Drawing.Size(27, 22);
this.bindingNavigatorCountItem.Text = "/{0}";
this.bindingNavigatorCountItem.ToolTipText = "전체 항목 수";
//
// bindingNavigatorMoveFirstItem
//
this.bindingNavigatorMoveFirstItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveFirstItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveFirstItem.Image")));
this.bindingNavigatorMoveFirstItem.Name = "bindingNavigatorMoveFirstItem";
this.bindingNavigatorMoveFirstItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveFirstItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveFirstItem.Text = "처음으로 이동";
//
// bindingNavigatorMovePreviousItem
//
this.bindingNavigatorMovePreviousItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMovePreviousItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMovePreviousItem.Image")));
this.bindingNavigatorMovePreviousItem.Name = "bindingNavigatorMovePreviousItem";
this.bindingNavigatorMovePreviousItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMovePreviousItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMovePreviousItem.Text = "이전으로 이동";
//
// bindingNavigatorSeparator
//
this.bindingNavigatorSeparator.Name = "bindingNavigatorSeparator";
this.bindingNavigatorSeparator.Size = new System.Drawing.Size(6, 25);
//
// bindingNavigatorPositionItem
//
this.bindingNavigatorPositionItem.AccessibleName = "위치";
this.bindingNavigatorPositionItem.AutoSize = false;
this.bindingNavigatorPositionItem.Font = new System.Drawing.Font("맑은 고딕", 9F);
this.bindingNavigatorPositionItem.Name = "bindingNavigatorPositionItem";
this.bindingNavigatorPositionItem.Size = new System.Drawing.Size(50, 23);
this.bindingNavigatorPositionItem.Text = "0";
this.bindingNavigatorPositionItem.ToolTipText = "현재 위치";
//
// bindingNavigatorSeparator1
//
this.bindingNavigatorSeparator1.Name = "bindingNavigatorSeparator1";
this.bindingNavigatorSeparator1.Size = new System.Drawing.Size(6, 25);
//
// bindingNavigatorMoveNextItem
//
this.bindingNavigatorMoveNextItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveNextItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveNextItem.Image")));
this.bindingNavigatorMoveNextItem.Name = "bindingNavigatorMoveNextItem";
this.bindingNavigatorMoveNextItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveNextItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveNextItem.Text = "다음으로 이동";
//
// bindingNavigatorMoveLastItem
//
this.bindingNavigatorMoveLastItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveLastItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveLastItem.Image")));
this.bindingNavigatorMoveLastItem.Name = "bindingNavigatorMoveLastItem";
this.bindingNavigatorMoveLastItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveLastItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveLastItem.Text = "마지막으로 이동";
//
// bindingNavigatorSeparator2
//
this.bindingNavigatorSeparator2.Name = "bindingNavigatorSeparator2";
this.bindingNavigatorSeparator2.Size = new System.Drawing.Size(6, 25);
//
// btAdd
//
this.btAdd.Image = ((System.Drawing.Image)(resources.GetObject("btAdd.Image")));
this.btAdd.Name = "btAdd";
this.btAdd.RightToLeftAutoMirrorImage = true;
this.btAdd.Size = new System.Drawing.Size(67, 22);
this.btAdd.Text = "추가(&A)";
this.btAdd.Click += new System.EventHandler(this.bindingNavigatorAddNewItem_Click);
//
// btCopy
//
this.btCopy.Image = global::FPJ0000.Properties.Resources.copy;
this.btCopy.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btCopy.Name = "btCopy";
this.btCopy.Size = new System.Drawing.Size(67, 22);
this.btCopy.Text = "복사(&C)";
this.btCopy.Click += new System.EventHandler(this.btCopy_Click);
//
// btEdit
//
this.btEdit.Image = ((System.Drawing.Image)(resources.GetObject("btEdit.Image")));
this.btEdit.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btEdit.Name = "btEdit";
this.btEdit.Size = new System.Drawing.Size(65, 22);
this.btEdit.Text = "편집(&E)";
this.btEdit.Click += new System.EventHandler(this.btEdit_Click);
//
// btDel
//
this.btDel.Image = ((System.Drawing.Image)(resources.GetObject("btDel.Image")));
this.btDel.Name = "btDel";
this.btDel.RightToLeftAutoMirrorImage = true;
this.btDel.Size = new System.Drawing.Size(68, 22);
this.btDel.Text = "삭제(&D)";
this.btDel.Click += new System.EventHandler(this.btDel_Click);
//
// btSave
//
this.btSave.Image = global::FPJ0000.Properties.Resources.action_save;
this.btSave.Name = "btSave";
this.btSave.Size = new System.Drawing.Size(66, 22);
this.btSave.Text = "저장(&S)";
this.btSave.Click += new System.EventHandler(this.projectsBindingNavigatorSaveItem_Click);
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(6, 25);
//
// toolStripLabel2
//
this.toolStripLabel2.Name = "toolStripLabel2";
this.toolStripLabel2.Size = new System.Drawing.Size(31, 22);
this.toolStripLabel2.Text = "검색";
//
// tbFind
//
this.tbFind.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbFind.Font = new System.Drawing.Font("맑은 고딕", 9F);
this.tbFind.Name = "tbFind";
this.tbFind.Size = new System.Drawing.Size(100, 25);
this.tbFind.KeyDown += new System.Windows.Forms.KeyEventHandler(this.tbFind_KeyDown);
//
// btFind
//
this.btFind.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.btFind.Image = ((System.Drawing.Image)(resources.GetObject("btFind.Image")));
this.btFind.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btFind.Name = "btFind";
this.btFind.Size = new System.Drawing.Size(23, 22);
this.btFind.Text = "toolStripButton2";
this.btFind.Click += new System.EventHandler(this.btFind_Click);
//
// btReport
//
this.btReport.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.btReport.Image = ((System.Drawing.Image)(resources.GetObject("btReport.Image")));
this.btReport.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btReport.Name = "btReport";
this.btReport.Size = new System.Drawing.Size(108, 22);
this.btReport.Text = "월/개인별 요약";
this.btReport.Click += new System.EventHandler(this.btReport_Click);
//
// btReportDay
//
this.btReportDay.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.btReportDay.Image = ((System.Drawing.Image)(resources.GetObject("btReportDay.Image")));
this.btReportDay.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btReportDay.Name = "btReportDay";
this.btReportDay.Size = new System.Drawing.Size(108, 22);
this.btReportDay.Text = "일/개인별 요약";
this.btReportDay.Click += new System.EventHandler(this.btReportDay_Click);
//
// toolStripButton1
//
this.toolStripButton1.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.toolStripButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton1.Image")));
this.toolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton1.Name = "toolStripButton1";
this.toolStripButton1.Size = new System.Drawing.Size(75, 22);
this.toolStripButton1.Text = "작업분포";
this.toolStripButton1.Click += new System.EventHandler(this.toolStripButton1_Click);
//
// toolStripButton3
//
this.toolStripButton3.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.toolStripButton3.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton3.Image")));
this.toolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton3.Name = "toolStripButton3";
this.toolStripButton3.Size = new System.Drawing.Size(111, 22);
this.toolStripButton3.Text = "적정인원보고서";
this.toolStripButton3.Click += new System.EventHandler(this.toolStripButton3_Click);
//
// cm
//
this.cm.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.cm.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.columnSizeToolStripMenuItem,
this.exportListToolStripMenuItem,
this.toolStripMenuItem2,
this.refreshToolStripMenuItem,
this.toolStripMenuItem1,
this.partListToolStripMenuItem,
this.toolStripMenuItem3,
this.ToolStripMenuItem,
this.ToolStripMenuItem,
this.ToolStripMenuItem});
this.cm.Name = "contextMenuStrip1";
this.cm.Size = new System.Drawing.Size(226, 274);
//
// columnSizeToolStripMenuItem
//
this.columnSizeToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.autoToolStripMenuItem,
this.resetToolStripMenuItem,
this.saveToolStripMenuItem,
this.loadToolStripMenuItem});
this.columnSizeToolStripMenuItem.Name = "columnSizeToolStripMenuItem";
this.columnSizeToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.columnSizeToolStripMenuItem.Text = "Column Size";
//
// autoToolStripMenuItem
//
this.autoToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("autoToolStripMenuItem.Image")));
this.autoToolStripMenuItem.Name = "autoToolStripMenuItem";
this.autoToolStripMenuItem.Size = new System.Drawing.Size(149, 36);
this.autoToolStripMenuItem.Text = "Auto";
this.autoToolStripMenuItem.Click += new System.EventHandler(this.autoToolStripMenuItem_Click);
//
// resetToolStripMenuItem
//
this.resetToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("resetToolStripMenuItem.Image")));
this.resetToolStripMenuItem.Name = "resetToolStripMenuItem";
this.resetToolStripMenuItem.Size = new System.Drawing.Size(149, 36);
this.resetToolStripMenuItem.Text = "Reset";
this.resetToolStripMenuItem.Click += new System.EventHandler(this.resetToolStripMenuItem_Click);
//
// saveToolStripMenuItem
//
this.saveToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("saveToolStripMenuItem.Image")));
this.saveToolStripMenuItem.Name = "saveToolStripMenuItem";
this.saveToolStripMenuItem.Size = new System.Drawing.Size(149, 36);
this.saveToolStripMenuItem.Text = "Save";
this.saveToolStripMenuItem.Click += new System.EventHandler(this.saveToolStripMenuItem_Click);
//
// loadToolStripMenuItem
//
this.loadToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("loadToolStripMenuItem.Image")));
this.loadToolStripMenuItem.Name = "loadToolStripMenuItem";
this.loadToolStripMenuItem.Size = new System.Drawing.Size(149, 36);
this.loadToolStripMenuItem.Text = "Load";
this.loadToolStripMenuItem.Click += new System.EventHandler(this.loadToolStripMenuItem_Click);
//
// exportListToolStripMenuItem
//
this.exportListToolStripMenuItem.Name = "exportListToolStripMenuItem";
this.exportListToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.exportListToolStripMenuItem.Text = "Export List";
this.exportListToolStripMenuItem.Click += new System.EventHandler(this.exportListToolStripMenuItem_Click);
//
// toolStripMenuItem2
//
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
this.toolStripMenuItem2.Size = new System.Drawing.Size(222, 6);
//
// refreshToolStripMenuItem
//
this.refreshToolStripMenuItem.Name = "refreshToolStripMenuItem";
this.refreshToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.refreshToolStripMenuItem.Text = "Refresh";
this.refreshToolStripMenuItem.Click += new System.EventHandler(this.refreshToolStripMenuItem_Click);
//
// toolStripMenuItem1
//
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
this.toolStripMenuItem1.Size = new System.Drawing.Size(222, 6);
//
// partListToolStripMenuItem
//
this.partListToolStripMenuItem.Name = "partListToolStripMenuItem";
this.partListToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.partListToolStripMenuItem.Text = "PartList";
this.partListToolStripMenuItem.Click += new System.EventHandler(this.partListToolStripMenuItem_Click);
//
// toolStripMenuItem3
//
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
this.toolStripMenuItem3.Size = new System.Drawing.Size(222, 6);
//
// 복사ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "복사ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.ToolStripMenuItem.Text = "복사";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 편집ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "편집ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.ToolStripMenuItem.Text = "편집";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 삭제ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "삭제ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.ToolStripMenuItem.Text = "삭제";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// tam
//
this.tam.BackupDataSetBeforeUpdate = false;
this.tam.EETGW_JobReport_AutoInputTableAdapter = null;
this.tam.EETGW_JobReport_EBoardTableAdapter = null;
this.tam.EETGW_NoteTableAdapter = null;
this.tam.EETGW_ProjecthistoryDTableAdapter = null;
this.tam.EETGW_ProjectToDoTableAdapter = null;
this.tam.EETGW_SaveCostTableAdapter = null;
this.tam.JobReportTableAdapter = this.ta;
this.tam.ProjectPartStatusTableAdapter = null;
this.tam.ProjectsHistoryTableAdapter = null;
this.tam.ProjectsIOMapTableAdapter = null;
this.tam.ProjectsMailListTableAdapter = null;
this.tam.ProjectsPartTableAdapter = null;
this.tam.ProjectsTableAdapter = null;
this.tam.SPMasterTableAdapter = null;
this.tam.UpdateOrder = FPJ0000.dsPRJTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete;
//
// ta
//
this.ta.ClearBeforeFill = true;
//
// fpSpread1
//
this.fpSpread1.AccessibleDescription = "";
this.fpSpread1.AutoFitColumnOptions = FarPoint.Win.Spread.PreferredSizeColumnOptions.Off;
this.fpSpread1.ContextMenuStrip = this.cm;
this.fpSpread1.Dock = System.Windows.Forms.DockStyle.Fill;
this.fpSpread1.Font = new System.Drawing.Font("맑은 고딕", 9F);
this.fpSpread1.Location = new System.Drawing.Point(0, 37);
this.fpSpread1.Name = "fpSpread1";
this.fpSpread1.Sheets.AddRange(new FarPoint.Win.Spread.SheetView[] {
this.fpSpread1_Sheet1});
this.fpSpread1.Size = new System.Drawing.Size(1139, 540);
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 = 14;
this.fpSpread1_Sheet1.ActiveColumnIndex = -1;
this.fpSpread1_Sheet1.ActiveRowIndex = -1;
this.fpSpread1_Sheet1.AutoGenerateColumns = false;
this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 0).Value = "날짜";
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.Cells.Get(0, 12).Value = "비고";
this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 13).Value = "#";
this.fpSpread1_Sheet1.ColumnHeader.Rows.Get(0).Height = 28F;
this.fpSpread1_Sheet1.Columns.Get(0).CellType = textCellType23;
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 = textCellType24;
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).CellType = textCellType25;
this.fpSpread1_Sheet1.Columns.Get(2).DataField = "username";
this.fpSpread1_Sheet1.Columns.Get(2).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(2).Label = "담당";
this.fpSpread1_Sheet1.Columns.Get(2).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(3).AllowAutoFilter = true;
this.fpSpread1_Sheet1.Columns.Get(3).CellType = textCellType26;
this.fpSpread1_Sheet1.Columns.Get(3).DataField = "requestpart";
this.fpSpread1_Sheet1.Columns.Get(3).Label = "요청부서";
this.fpSpread1_Sheet1.Columns.Get(3).Width = 78F;
this.fpSpread1_Sheet1.Columns.Get(4).AllowAutoFilter = true;
this.fpSpread1_Sheet1.Columns.Get(4).CellType = textCellType27;
this.fpSpread1_Sheet1.Columns.Get(4).DataField = "package";
this.fpSpread1_Sheet1.Columns.Get(4).Label = "패키지";
this.fpSpread1_Sheet1.Columns.Get(4).Width = 86F;
this.fpSpread1_Sheet1.Columns.Get(5).CellType = textCellType28;
this.fpSpread1_Sheet1.Columns.Get(5).DataField = "status";
this.fpSpread1_Sheet1.Columns.Get(5).Label = "상태";
this.fpSpread1_Sheet1.Columns.Get(6).AllowAutoFilter = true;
this.fpSpread1_Sheet1.Columns.Get(6).CellType = textCellType29;
this.fpSpread1_Sheet1.Columns.Get(6).DataField = "type";
this.fpSpread1_Sheet1.Columns.Get(6).Label = "업무형태";
this.fpSpread1_Sheet1.Columns.Get(6).Width = 84F;
this.fpSpread1_Sheet1.Columns.Get(7).AllowAutoFilter = true;
this.fpSpread1_Sheet1.Columns.Get(7).CellType = textCellType30;
this.fpSpread1_Sheet1.Columns.Get(7).DataField = "process";
this.fpSpread1_Sheet1.Columns.Get(7).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left;
this.fpSpread1_Sheet1.Columns.Get(7).Label = "업무분류";
this.fpSpread1_Sheet1.Columns.Get(7).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(7).Width = 80F;
this.fpSpread1_Sheet1.Columns.Get(8).AllowAutoFilter = true;
this.fpSpread1_Sheet1.Columns.Get(8).CellType = textCellType31;
this.fpSpread1_Sheet1.Columns.Get(8).DataField = "projectName";
this.fpSpread1_Sheet1.Columns.Get(8).Label = "프로젝트(아이템)";
this.fpSpread1_Sheet1.Columns.Get(8).Width = 158F;
this.fpSpread1_Sheet1.Columns.Get(9).BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
numberCellType7.DecimalPlaces = 0;
numberCellType7.LeadingZero = FarPoint.Win.Spread.CellType.LeadingZero.Yes;
numberCellType7.MaximumValue = 2147483647D;
numberCellType7.MinimumValue = -2147483648D;
this.fpSpread1_Sheet1.Columns.Get(9).CellType = numberCellType7;
this.fpSpread1_Sheet1.Columns.Get(9).DataField = "pidx";
this.fpSpread1_Sheet1.Columns.Get(9).Label = "*";
this.fpSpread1_Sheet1.Columns.Get(9).Tag = "pidx";
this.fpSpread1_Sheet1.Columns.Get(9).Width = 39F;
numberCellType8.MaximumValue = 999999999999999D;
numberCellType8.MinimumValue = -999999999999999D;
this.fpSpread1_Sheet1.Columns.Get(10).CellType = numberCellType8;
this.fpSpread1_Sheet1.Columns.Get(10).DataField = "hrs";
this.fpSpread1_Sheet1.Columns.Get(10).Label = "시간";
this.fpSpread1_Sheet1.Columns.Get(10).Width = 52F;
numberCellType9.MaximumValue = 999999999999999D;
numberCellType9.MinimumValue = -999999999999999D;
this.fpSpread1_Sheet1.Columns.Get(11).CellType = numberCellType9;
this.fpSpread1_Sheet1.Columns.Get(11).DataField = "ot";
this.fpSpread1_Sheet1.Columns.Get(11).ForeColor = System.Drawing.Color.Red;
this.fpSpread1_Sheet1.Columns.Get(11).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(11).Label = "초과";
this.fpSpread1_Sheet1.Columns.Get(11).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(12).CellType = textCellType32;
this.fpSpread1_Sheet1.Columns.Get(12).DataField = "description";
this.fpSpread1_Sheet1.Columns.Get(12).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left;
this.fpSpread1_Sheet1.Columns.Get(12).Label = "비고";
this.fpSpread1_Sheet1.Columns.Get(12).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(12).Width = 113F;
this.fpSpread1_Sheet1.Columns.Get(13).CellType = textCellType33;
this.fpSpread1_Sheet1.Columns.Get(13).DataField = "tag";
this.fpSpread1_Sheet1.Columns.Get(13).Label = "#";
this.fpSpread1_Sheet1.Columns.Get(13).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
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);
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.lbStt,
this.dtSD,
this.lbEnd,
this.toolStripLabel4,
this.dtED,
this.lbTime,
this.toolStripSeparator2,
this.toolStripLabel1,
this.tbProcess,
this.toolStripButton4,
this.toolStripLabel3,
this.cmbUser,
this.btSearch,
this.toolStripButton2});
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(1139, 37);
this.toolStrip1.TabIndex = 4;
this.toolStrip1.Text = "toolStrip1";
//
// lbStt
//
this.lbStt.Font = new System.Drawing.Font("맑은 고딕", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.lbStt.ForeColor = System.Drawing.Color.Blue;
this.lbStt.Name = "lbStt";
this.lbStt.Size = new System.Drawing.Size(43, 34);
this.lbStt.Text = "시작일";
this.lbStt.Click += new System.EventHandler(this.lbStt_Click);
//
// dtSD
//
this.dtSD.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.dtSD.Font = new System.Drawing.Font("맑은 고딕", 9F);
this.dtSD.Name = "dtSD";
this.dtSD.Size = new System.Drawing.Size(90, 37);
this.dtSD.Text = "1982-11-23";
this.dtSD.TextBoxTextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// lbEnd
//
this.lbEnd.Name = "lbEnd";
this.lbEnd.Size = new System.Drawing.Size(15, 34);
this.lbEnd.Text = "~";
//
// toolStripLabel4
//
this.toolStripLabel4.Font = new System.Drawing.Font("맑은 고딕", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.toolStripLabel4.ForeColor = System.Drawing.Color.Blue;
this.toolStripLabel4.Name = "toolStripLabel4";
this.toolStripLabel4.Size = new System.Drawing.Size(43, 34);
this.toolStripLabel4.Text = "종료일";
this.toolStripLabel4.Click += new System.EventHandler(this.toolStripLabel4_Click);
//
// dtED
//
this.dtED.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.dtED.Font = new System.Drawing.Font("맑은 고딕", 9F);
this.dtED.Name = "dtED";
this.dtED.Size = new System.Drawing.Size(90, 37);
this.dtED.Text = "1982-11-23";
this.dtED.TextBoxTextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// lbTime
//
this.lbTime.Name = "lbTime";
this.lbTime.Size = new System.Drawing.Size(29, 34);
this.lbTime.Text = "{0}h";
//
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
this.toolStripSeparator2.Size = new System.Drawing.Size(6, 37);
//
// toolStripLabel1
//
this.toolStripLabel1.Name = "toolStripLabel1";
this.toolStripLabel1.Size = new System.Drawing.Size(31, 34);
this.toolStripLabel1.Text = "공정";
//
// tbProcess
//
this.tbProcess.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(180)))), ((int)(((byte)(180)))), ((int)(((byte)(180)))));
this.tbProcess.Font = new System.Drawing.Font("맑은 고딕", 9F);
this.tbProcess.Name = "tbProcess";
this.tbProcess.Size = new System.Drawing.Size(200, 37);
//
// toolStripButton4
//
this.toolStripButton4.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.toolStripButton4.Image = global::FPJ0000.Properties.Resources.find;
this.toolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton4.Name = "toolStripButton4";
this.toolStripButton4.Size = new System.Drawing.Size(34, 34);
this.toolStripButton4.Text = "toolStripButton4";
this.toolStripButton4.Click += new System.EventHandler(this.toolStripButton4_Click);
//
// toolStripLabel3
//
this.toolStripLabel3.Name = "toolStripLabel3";
this.toolStripLabel3.Size = new System.Drawing.Size(43, 34);
this.toolStripLabel3.Text = "사용자";
this.toolStripLabel3.Click += new System.EventHandler(this.toolStripLabel3_Click);
//
// cmbUser
//
this.cmbUser.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbUser.Name = "cmbUser";
this.cmbUser.Size = new System.Drawing.Size(200, 37);
this.cmbUser.SelectedIndexChanged += new System.EventHandler(this.cmbUser_SelectedIndexChanged);
this.cmbUser.Click += new System.EventHandler(this.cmbUser_Click);
//
// btSearch
//
this.btSearch.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.ToolStripMenuItem});
this.btSearch.Image = ((System.Drawing.Image)(resources.GetObject("btSearch.Image")));
this.btSearch.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btSearch.Name = "btSearch";
this.btSearch.Size = new System.Drawing.Size(92, 34);
this.btSearch.Text = "조회(&R)";
this.btSearch.ButtonClick += new System.EventHandler(this.btSearch_ButtonClick);
this.btSearch.Click += new System.EventHandler(this.btSearch_Click);
//
// 태그자료만조회ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "태그자료만조회ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(162, 22);
this.ToolStripMenuItem.Text = "태그자료만 조회";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// toolStripButton2
//
this.toolStripButton2.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.toolStripButton2.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton2.Image")));
this.toolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton2.Name = "toolStripButton2";
this.toolStripButton2.Size = new System.Drawing.Size(65, 34);
this.toolStripButton2.Text = "닫기";
this.toolStripButton2.Click += new System.EventHandler(this.toolStripButton2_Click);
//
// richTextBox1
//
this.richTextBox1.BackColor = System.Drawing.Color.Gainsboro;
this.richTextBox1.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bs, "description", true));
this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.richTextBox1.Location = new System.Drawing.Point(0, 577);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.ReadOnly = true;
this.richTextBox1.Size = new System.Drawing.Size(1139, 60);
this.richTextBox1.TabIndex = 5;
this.richTextBox1.Text = "";
//
// fJobReport
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1139, 662);
this.Controls.Add(this.fpSpread1);
this.Controls.Add(this.richTextBox1);
this.Controls.Add(this.toolStrip1);
this.Controls.Add(this.bn);
this.Name = "fJobReport";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "업무일지";
this.Load += new System.EventHandler(this.@__Load);
((System.ComponentModel.ISupportInitialize)(this.bn)).EndInit();
this.bn.ResumeLayout(false);
this.bn.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit();
((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();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private dsPRJ dsMSSQL;
private System.Windows.Forms.BindingSource bs;
private dsPRJTableAdapters.TableAdapterManager tam;
private System.Windows.Forms.BindingNavigator bn;
private System.Windows.Forms.ToolStripButton btAdd;
private System.Windows.Forms.ToolStripLabel bindingNavigatorCountItem;
private System.Windows.Forms.ToolStripButton btDel;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveFirstItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorMovePreviousItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator;
private System.Windows.Forms.ToolStripTextBox bindingNavigatorPositionItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator1;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveNextItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveLastItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator2;
private System.Windows.Forms.ToolStripButton btSave;
private System.Windows.Forms.ContextMenuStrip cm;
private System.Windows.Forms.ToolStripMenuItem refreshToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1;
private System.Windows.Forms.ToolStripMenuItem partListToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
private FarPoint.Win.Spread.FpSpread fpSpread1;
private System.Windows.Forms.ToolStripMenuItem columnSizeToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem autoToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem resetToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem saveToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem loadToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem2;
private System.Windows.Forms.ToolStrip toolStrip1;
private System.Windows.Forms.ToolStripLabel lbStt;
private System.Windows.Forms.ToolStripTextBox dtSD;
private System.Windows.Forms.ToolStripLabel lbEnd;
private System.Windows.Forms.ToolStripTextBox dtED;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
private System.Windows.Forms.ToolStripLabel toolStripLabel3;
private dsPRJTableAdapters.JobReportTableAdapter ta;
private System.Windows.Forms.ToolStripButton btCopy;
private System.Windows.Forms.ToolStripButton btEdit;
private System.Windows.Forms.ToolStripLabel toolStripLabel2;
private System.Windows.Forms.ToolStripTextBox tbFind;
private System.Windows.Forms.ToolStripButton btFind;
private System.Windows.Forms.ToolStripComboBox cmbUser;
private System.Windows.Forms.ToolStripMenuItem exportListToolStripMenuItem;
private System.Windows.Forms.ToolStripButton btReport;
private System.Windows.Forms.ToolStripLabel lbTime;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem3;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripButton btReportDay;
private System.Windows.Forms.ToolStripButton toolStripButton1;
private System.Windows.Forms.ToolStripButton toolStripButton2;
private System.Windows.Forms.ToolStripLabel toolStripLabel1;
private System.Windows.Forms.RichTextBox richTextBox1;
private System.Windows.Forms.ToolStripButton toolStripButton3;
private FarPoint.Win.Spread.SheetView fpSpread1_Sheet1;
private System.Windows.Forms.ToolStripSplitButton btSearch;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripLabel toolStripLabel4;
private System.Windows.Forms.ToolStripTextBox tbProcess;
private System.Windows.Forms.ToolStripButton toolStripButton4;
}
}

View File

@@ -0,0 +1,665 @@
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)
{
}
Boolean binit = false;
void UpdateUserList()
{
//담당자목록 - 사용자목록으로 처리한다.
this.cmbUser.Items.Clear();
this.cmbUser.Items.Add("-- 전체 --");
var taUserList = new dsReportTableAdapters.ProcessUserListTableAdapter();
var prclist = this.tbProcess.Tag as List<string>;
if (prclist.Count < 1)
{
var processStr = "%";
var dtUserList = taUserList.GetData(processStr, FCOMMON.info.Login.gcode);
foreach (dsReport.ProcessUserListRow dr in dtUserList)
{
string cmbdata = string.Format("{1}({0})", dr.id, dr.name);
this.cmbUser.Items.Add(cmbdata);
}
}
else
{
foreach (var prc in prclist)
{
var processStr = prc;// cmbProcess.Text;
var dtUserList = taUserList.GetData(processStr, FCOMMON.info.Login.gcode);
foreach (dsReport.ProcessUserListRow dr in dtUserList)
{
string cmbdata = string.Format("{1}({0})", dr.id, dr.name);
this.cmbUser.Items.Add(cmbdata);
}
}
}
}
private void __Load(object sender, EventArgs e)
{
this.dtSD.Text = DateTime.Now.ToString("yyyy-MM-01");
var sdate = DateTime.Parse(dtSD.Text);
this.dtED.Text = sdate.AddMonths(1).AddDays(-1).ToShortDateString();
//공정목록
var taProc = new dsReportTableAdapters.ProcessListTableAdapter();
var dtProcList = taProc.GetData(FCOMMON.info.Login.gcode);
//cmbProcess.Items.Clear();
//cmbProcess.Items.Add("--전체--");
//foreach (dsReport.ProcessListRow dr in dtProcList)
//{
// cmbProcess.Items.Add(dr.processs);
//}
//cmbProcess.Text = FCOMMON.info.Login.process;
//if (cmbProcess.SelectedIndex < 0) cmbProcess.SelectedIndex = 0; //공정이 없는 사람은 전체보기로 함
tbProcess.Text = FCOMMON.info.Login.process;
tbProcess.Tag = new List<string>(new string[] { FCOMMON.info.Login.process });
//담당자목록 - 사용자목록으로 처리한다.
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.Add(namestr);
UpdateUserList(); //현재사용자의 이름을 반환한다
cmbUser.Text = namestr;
if (cmbUser.SelectedIndex < 0)
{
//내 아이템이 없다면, 목록을 추가해서 선택해줘야 한다
this.cmbUser.Items.Add(namestr);
cmbUser.Text = namestr;
}
//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);
//}
//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();
binit = true;
}
private void cmbProcess_SelectedIndexChanged(object sender, EventArgs e)
{
if (binit == false) return;
UpdateUserList();
}
private void cmbProcess_Click(object sender, EventArgs e)
{
}
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(bool tagonly = false)
{
// string state = "%";
// if (cmbState.SelectedIndex > 0) state = cmbState.Text.Split(',')[0].Substring(1);
//사용자번호추적
if (cmbUser.Text.Trim() == "")
{
FCOMMON.Util.MsgE("담당자가 선택되지 않았습니다.");
return;
}
if (cmbUser.SelectedIndex > 0 && (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);
if (cmbUser.SelectedIndex == 0) request = "%"; //전체검색 201028 - chi(임현대)
//사용자 목록다중선택으로 인해 처리
var sql = "SELECT *, dbo.getUserName(uid) AS username, dbo.getWorkWeek(pdate) AS ww";
sql += " FROM JobReport";
sql += " WHERE(pdate BETWEEN @sd AND @ed) AND(gcode = @gcode)";
if (request != "%")
{
//사용자가 지정되어있다
sql += $" AND uid = '{request}'";
}
else
{
//전체사용자가 지정되어있다. 해당하는 사용자 목록에서만 취한다.
var userlist = new List<string>();
for (int i = 1; i < cmbUser.Items.Count; i++) //0번요소는 전체이다
{
var userinfo = cmbUser.Items[i].ToString();
var userno = userinfo.Substring(userinfo.LastIndexOf('(') + 1);
userno = userno.Substring(0, userno.Length - 1);
userlist.Add(userno);
}
sql += " and uid in ('" + string.Join("','", userlist) + "')";
}
if (tagonly) sql += " and isnull(tag,'') <> ''";
sql += " ORDER BY pdate DESC";
var cmd = new System.Data.SqlClient.SqlCommand(sql, ta.Connection);
cmd.Parameters.Add("sd", SqlDbType.VarChar).Value = dtSD.Text;
cmd.Parameters.Add("ed", SqlDbType.VarChar).Value = dtED.Text;
cmd.Parameters.Add("gcode", SqlDbType.VarChar).Value = FCOMMON.info.Login.gcode;
var da = new System.Data.SqlClient.SqlDataAdapter(cmd);
dsMSSQL.JobReport.Clear();
da.Fill(this.dsMSSQL.JobReport);
dsMSSQL.JobReport.AcceptChanges();
//if (tagonly == false)
// this.ta.Fill(this.dsMSSQL.JobReport, dtSD.Text, dtED.Text, request, FCOMMON.info.Login.gcode);
//else
// this.ta.FillByTagOnly(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.WhiteSmoke;
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)
{
}
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", "tag" };
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.fSelectDay(DateTime.Parse(dtSD.Text));
if (f.ShowDialog() != System.Windows.Forms.DialogResult.OK) return;
var sdDate = f.dtPick.SelectionStart;// DateTime.Parse(DateTime.Now.ToString("yyyy-") + f.selectmon.ToString() + "-01");
dtSD.Text = sdDate.ToShortDateString();
if (f.dtPick.SelectionStart.ToShortDateString() == f.dtPick.SelectionEnd.ToShortDateString())
dtED.Text = sdDate.AddMonths(1).AddDays(-1).ToShortDateString();
else
dtED.Text = f.dtPick.SelectionEnd.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();
f.ShowDialog();
}
private void toolStripButton2_Click(object sender, EventArgs e)
{
this.Close();
}
private void toolStripButton3_Click(object sender, EventArgs e)
{
var f = new JobReport_.rJobReportUser();
f.Show();
}
private void btSearch_ButtonClick(object sender, EventArgs e)
{
refreshData();
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
refreshData(true);
}
private void toolStripLabel4_Click(object sender, EventArgs e)
{
var f = new FCOMMON.fSelectDay(DateTime.Parse(dtED.Text));
if (f.ShowDialog() != System.Windows.Forms.DialogResult.OK) return;
dtED.Text = f.dtPick.SelectionStart.ToShortDateString();
}
private void toolStripButton4_Click(object sender, EventArgs e)
{
var oldlist = (List<string>)tbProcess.Tag;
var f = new JobReport_.fSelectProcess(oldlist.ToArray());
if (f.ShowDialog() == DialogResult.OK)
{
tbProcess.Tag = f.values;
tbProcess.Text = string.Join(",", f.values);
UpdateUserList();
}
}
}
}

View File

@@ -0,0 +1,338 @@
<?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>
<metadata name="bn.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>259, 17</value>
</metadata>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>122, 17</value>
</metadata>
<metadata name="dsMSSQL.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="bindingNavigatorMoveFirstItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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=
</value>
</data>
<data name="bindingNavigatorMovePreviousItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="bindingNavigatorMoveNextItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78
n73v1//OrX//u5VeJt2QyK5H/6ds+/W/ZOnf/wnT//63yT1LmiGBzQ//t659D9ZsXPLlv3T0tf/GkcuI
N8Sj6v7/krnv4JoVXXpIc4F96d3/gS3PyNMMAhZ5d/7bFFwhTzMIGGbdJl8zCOik3SBf81AEDAwAoH5f
oAc0QjgAAAAASUVORK5CYII=
</value>
</data>
<data name="bindingNavigatorMoveLastItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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==
</value>
</data>
<data name="btAdd.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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==
</value>
</data>
<data name="btEdit.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEvSURBVDhPpZI/S0JRGIed+i6Nbk0t0iCuSkuDi1MfIKfm
+gAOQktTQkMggYtRkwgidKmgyQwMCgqz0CivvvK8cK7neG4KdeHhHs45v+c9/xLyz08Ft713OQ+6SqXV
kfLlnXJw1lSK5VrERqGkMB4JCCLpvQ7lZfDlQJ+B4EnwI9nTkbYdAZMbjxOPq4eJPH1MvXC2sD8XsOzP
0bcX/C3MXEfAfmzBsnCnP10uWBWu3IS+gJOm0w5fHCZiw0aQzu3GC0xYgm2R+poTRnh8HeqNOALu920w
9MK0F8NGkMrs+ALewqrwUXss3ed+vKB6H+rh2OT3SjpO0IBgcyvnCjgDBGCq8mcMiQ3FHAGdLB/J4vMF
KhoI83LXk6m5gCpmufbyOWlgv0BVIMx4JPj7JzIDGHRUPz2nxiQAAAAASUVORK5CYII=
</value>
</data>
<data name="btDel.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAW9JREFUOE+1kE0ow2Ecx3dV3krt4oJaOSCTvIRkMqSxyITIzCQHDouEdnFwIOVC
DrhIDiQl5UTiNG/z2ppafy1S2gX/uDwfY6i1v7Hie3nqeb7fz+/7/FR/Ilwn0G0Exw4fV5GJlXlEZxXC
rIet9bAQvB5Ymgn2sLYAvSZEux7RUQFzE4qQt4bCXAYjPaHvnDoCkLpsRGMB2JqCTGLIijDlwqQ9bEMV
i9OIytR3EMNWcJ/BWH8A6j8/bOGFxwXNxYEvGbMQ9XnQ1/K78KfY3/VXzkMY0qFGG2H4RoLGQshJQNbG
86CNhdrsX9a/uQZTPhQl4rMY4OLofbl3aX7I8uwPC7y/g1YdjyVJuEvT8e1tfwUYteHUxCCfHChDeHmG
QQvokjlOU+PbWA0x3pZnILVVI3uvQyHsbiLnqnGmRCF1NYD8pDhpRxOH7HQoAKZGkFKjceszQbpSrumX
bO+G80MFwKUTxgfgcO/b8D9IpXoFiiMDHIQm0skAAAAASUVORK5CYII=
</value>
</data>
<data name="btFind.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE3SURBVDhPnZIxS8NQFEb7W/wLjh0Fl9a1SxBHBekkWFd1
qYg4Ci5dndSCg2AHl4LQSaRSKDqoFUE7VAjUmvTKueWmL2mw2gunL7zmO+/mJhmZoTJusdF868vpXUfO
b5/lpPEox9f3SvnsRtk8uojxHQ7HEgSEkXS6vrz3xqtdu+xdfUiheEBsJOGCk/mz/hROUHsIIrp+qIKY
hB/a9r+CVAG4Auj5g7iA5/1NACaptgIVLHkb0wWVw13ZL60p2+uerqkCJs1mMgwUU6d1k/xJwI10RZj1
9TPUN7Wam9dgTMC75QR7TjCBkRQs5Jd1jQS8c1ewtZLTPcQW/peADpC44cudgnjZOQ1OCGjTwkwaGBon
GoSrpcVIQqmAj6LZftFBup9vWiUlUQdIDCbsQrsGZRJKBbOXyA++SlEsu6QjvQAAAABJRU5ErkJggg==
</value>
</data>
<data name="btReport.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE3SURBVDhPnZIxS8NQFEb7W/wLjh0Fl9a1SxBHBekkWFd1
qYg4Ci5dndSCg2AHl4LQSaRSKDqoFUE7VAjUmvTKueWmL2mw2gunL7zmO+/mJhmZoTJusdF868vpXUfO
b5/lpPEox9f3SvnsRtk8uojxHQ7HEgSEkXS6vrz3xqtdu+xdfUiheEBsJOGCk/mz/hROUHsIIrp+qIKY
hB/a9r+CVAG4Auj5g7iA5/1NACaptgIVLHkb0wWVw13ZL60p2+uerqkCJs1mMgwUU6d1k/xJwI10RZj1
9TPUN7Wam9dgTMC75QR7TjCBkRQs5Jd1jQS8c1ewtZLTPcQW/peADpC44cudgnjZOQ1OCGjTwkwaGBon
GoSrpcVIQqmAj6LZftFBup9vWiUlUQdIDCbsQrsGZRJKBbOXyA++SlEsu6QjvQAAAABJRU5ErkJggg==
</value>
</data>
<data name="btReportDay.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE3SURBVDhPnZIxS8NQFEb7W/wLjh0Fl9a1SxBHBekkWFd1
qYg4Ci5dndSCg2AHl4LQSaRSKDqoFUE7VAjUmvTKueWmL2mw2gunL7zmO+/mJhmZoTJusdF868vpXUfO
b5/lpPEox9f3SvnsRtk8uojxHQ7HEgSEkXS6vrz3xqtdu+xdfUiheEBsJOGCk/mz/hROUHsIIrp+qIKY
hB/a9r+CVAG4Auj5g7iA5/1NACaptgIVLHkb0wWVw13ZL60p2+uerqkCJs1mMgwUU6d1k/xJwI10RZj1
9TPUN7Wam9dgTMC75QR7TjCBkRQs5Jd1jQS8c1ewtZLTPcQW/peADpC44cudgnjZOQ1OCGjTwkwaGBon
GoSrpcVIQqmAj6LZftFBup9vWiUlUQdIDCbsQrsGZRJKBbOXyA++SlEsu6QjvQAAAABJRU5ErkJggg==
</value>
</data>
<data name="toolStripButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE3SURBVDhPnZIxS8NQFEb7W/wLjh0Fl9a1SxBHBekkWFd1
qYg4Ci5dndSCg2AHl4LQSaRSKDqoFUE7VAjUmvTKueWmL2mw2gunL7zmO+/mJhmZoTJusdF868vpXUfO
b5/lpPEox9f3SvnsRtk8uojxHQ7HEgSEkXS6vrz3xqtdu+xdfUiheEBsJOGCk/mz/hROUHsIIrp+qIKY
hB/a9r+CVAG4Auj5g7iA5/1NACaptgIVLHkb0wWVw13ZL60p2+uerqkCJs1mMgwUU6d1k/xJwI10RZj1
9TPUN7Wam9dgTMC75QR7TjCBkRQs5Jd1jQS8c1ewtZLTPcQW/peADpC44cudgnjZOQ1OCGjTwkwaGBon
GoSrpcVIQqmAj6LZftFBup9vWiUlUQdIDCbsQrsGZRJKBbOXyA++SlEsu6QjvQAAAABJRU5ErkJggg==
</value>
</data>
<data name="toolStripButton3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE3SURBVDhPnZIxS8NQFEb7W/wLjh0Fl9a1SxBHBekkWFd1
qYg4Ci5dndSCg2AHl4LQSaRSKDqoFUE7VAjUmvTKueWmL2mw2gunL7zmO+/mJhmZoTJusdF868vpXUfO
b5/lpPEox9f3SvnsRtk8uojxHQ7HEgSEkXS6vrz3xqtdu+xdfUiheEBsJOGCk/mz/hROUHsIIrp+qIKY
hB/a9r+CVAG4Auj5g7iA5/1NACaptgIVLHkb0wWVw13ZL60p2+uerqkCJs1mMgwUU6d1k/xJwI10RZj1
9TPUN7Wam9dgTMC75QR7TjCBkRQs5Jd1jQS8c1ewtZLTPcQW/peADpC44cudgnjZOQ1OCGjTwkwaGBon
GoSrpcVIQqmAj6LZftFBup9vWiUlUQdIDCbsQrsGZRJKBbOXyA++SlEsu6QjvQAAAABJRU5ErkJggg==
</value>
</data>
<metadata name="dsMSSQL.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="cm.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>325, 17</value>
</metadata>
<data name="autoToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
R0lGODlhEAAQAIQfAJXG2JXa+ZLO5ChrlkCy4TZ1kiVvpCN0trvo9SN5xTd4lrfh7iR9zo3S+EGz7JDJ
4TaCromrvC9ymyV+0Dd3mTl1koe72YvN7LTj+9ne6N3g6v7+/0Cw2Stoh////////yH/C05FVFNDQVBF
Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAInwA/CBzooaAHgQUHKvRQoUABCgUlHFT4IYMCBAsQIIBg
wcBEgh0WCBDAgcAFDAc+fvDQIUKHDgMeEHDQIIFKlgoMGgjQoAGDmwUOehhg4EACBhM+GlzKVOkEBgkO
GBggNOhCBhgCBPBYUEGHmwkCOCDwYMCAll8XHghwgQCHkQDSLjRgAcKDBwAAKNCwgaIHiR4oOKygkuDE
pRQTK6YYEAA7
</value>
</data>
<data name="resetToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
R0lGODlhEAAQAIQfALnik2aXQv7+/dPut73llbfala3LmW6gSWqdQ2eYRGqaSLfck568iYrUQN7yzF6R
PLTXlYjUP8XwmYfQQLbYl4jRQGiaQsPumNbyu7nglNPzsLXYlf7+/lCHK////////yH/C05FVFNDQVBF
Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAIlgA/CBzooaAHgQUHEvSgIEAABQUfHFTIwQECDAMwYDhg
oENCgRw8dBgAAECFBgsweJxYsAODDjApTIhAwCMHkCItGOxwgUCGlQQTeAgJsyhQg0iTGvzQ0qhND0IX
dtBwQcJKDxZsIhQpIcIECkVffmwpYUGDCiUheBQg1cCBAgU2QFDg4KZCDxIZOoQ48S7LpQoDCx4cEAA7
</value>
</data>
<data name="saveToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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=
</value>
</data>
<data name="loadToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
R0lGODlhEAAQAIQfAJfL/OTs9HWVsW6aUqnT+6bnZldwkYiux7TZ/O3z+UlVa/P2+ZfTW36wWJDLV4m7
69nn78bi/qjL3qDP+VJhe4rAVa7S40NLXJ3bYJrA1ikxQz5FVdDU22OPRf///////yH/C05FVFNDQVBF
Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAIwQA9CBxIcOCHgx4gWLAgIUOGAwcESBTgAaEFCAEGaBwQ
IGOABwYqerCQsYBJBho7JHgAUqCEDjAxYGBQgYHKBAsoCMzQIUIEmA6CdkCAIOfOBT5/MnBQYSgBozCj
SoVJ4KkCDx1MFhhKFEFVAhMCXM1aAANMoh2qTgh7AWvZmQ6igp0AIEDbDg0aLA06YC4AABA2eBjgYcHG
vmv/Akgg2IMBDgsSdJwcAEICDhoECjDAmQIFBQouXNiwQYPOgqgLBgQAOw==
</value>
</data>
<metadata name="tam.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>186, 17</value>
</metadata>
<metadata name="ta.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>499, 17</value>
</metadata>
<metadata name="fpSpread1_Sheet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>561, 17</value>
</metadata>
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>393, 17</value>
</metadata>
<data name="btSearch.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE4SURBVDhPtZPPasJAEMbzPn0FwWA92JtP4NGKB1/DP7ei
QSsovkChh7ZBrCfpyR4sikopUgq9StFzM/UbZ5asSS4FfzAkO7vft5udiZMEnSBpk5dhFJmncjdHxXaG
A+9K4SbFT1luEwQBbXavVO5d0nI3ovnW5yeiMriiu+kt5asXbABEdgRigAUQDr+aHLU3lxoLl/yPJhvF
GsiYJ/vPdX5qPK3bVJ25VFukafztGQNsKHJ791I3w+8KcpNth8XDz5YxACI/gsR1J8sTYcO4UIzwv1gG
cTshgJ5IT8hChTMHsHi+v+fvffmxywVwN2FDkdsGEOK2ceu4feQ0tDqKyKMGqDfqjvprLzyswuX7Tf4E
dBo6zn/3OB7XHovRyuhQ6+hhYKA9DpL+A1keRebNAhkaJH0OHOcP031C4EjYr6wAAAAASUVORK5CYII=
</value>
</data>
<data name="toolStripButton2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADlSURBVEhL7dQxCsIwFMbxnMrZWatzUXRUCo5ewSs4ewZR
DyDeQfEETsUbRL7YYNSXNC/UOiQP/kvzyE9KUcQ7y/VJtlHFvQYPjzf50xKsJsFmq81WHq538swMO9il
zhALxkWd7kAOJwsnjjPsYNeGs2B14fR5YTYq5O5c1u7sL987iAUjF+6LIjaMKJyDoiAYmVAvn8lsXHij
KBhGwDWof4APihqHqQ+OKhg2X3U/n7+9ah88CKY+pM9ndTgbplDbmQtnwS7UtmPDWfDf/jIRLnKhOuzY
UMSGmyrBauKE26jiohshHicE2B3dbRrmAAAAAElFTkSuQmCC
</value>
</data>
</root>

View File

@@ -0,0 +1,686 @@
namespace FPJ0000
{
partial class fJobReportAI
{
/// <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.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fJobReportAI));
FarPoint.Win.Spread.CellType.CheckBoxCellType checkBoxCellType2 = new FarPoint.Win.Spread.CellType.CheckBoxCellType();
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.TextCellType textCellType18 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType19 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType20 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType21 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType22 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType23 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType24 = 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 textCellType25 = new FarPoint.Win.Spread.CellType.TextCellType();
FarPoint.Win.Spread.CellType.TextCellType textCellType26 = 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();
this.bindingNavigatorCountItem = new System.Windows.Forms.ToolStripLabel();
this.bindingNavigatorMoveFirstItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorMovePreviousItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorSeparator = new System.Windows.Forms.ToolStripSeparator();
this.bindingNavigatorPositionItem = new System.Windows.Forms.ToolStripTextBox();
this.bindingNavigatorSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.bindingNavigatorMoveNextItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorMoveLastItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.btAdd = new System.Windows.Forms.ToolStripButton();
this.btCopy = new System.Windows.Forms.ToolStripButton();
this.btEdit = new System.Windows.Forms.ToolStripButton();
this.btDel = new System.Windows.Forms.ToolStripButton();
this.btSave = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.toolStripLabel2 = new System.Windows.Forms.ToolStripLabel();
this.tbFind = new System.Windows.Forms.ToolStripTextBox();
this.btFind = new System.Windows.Forms.ToolStripButton();
this.cm = new System.Windows.Forms.ContextMenuStrip(this.components);
this.columnSizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.autoToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.resetToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.saveToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.loadToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.exportListToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripSeparator();
this.refreshToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator();
this.partListToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripSeparator();
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.fpSpread1 = new FarPoint.Win.Spread.FpSpread();
this.fpSpread1_Sheet1 = new FarPoint.Win.Spread.SheetView();
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
this.toolStripLabel1 = new System.Windows.Forms.ToolStripLabel();
this.cmbProcess = new System.Windows.Forms.ToolStripComboBox();
this.btSearch = new System.Windows.Forms.ToolStripButton();
this.toolStripButton2 = new System.Windows.Forms.ToolStripButton();
this.ta = new FPJ0000.dsPRJTableAdapters.EETGW_JobReport_AutoInputTableAdapter();
this.btDebug = new System.Windows.Forms.ToolStripButton();
((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();
this.SuspendLayout();
//
// bn
//
this.bn.AddNewItem = null;
this.bn.BindingSource = this.bs;
this.bn.CountItem = this.bindingNavigatorCountItem;
this.bn.DeleteItem = null;
this.bn.Dock = System.Windows.Forms.DockStyle.Bottom;
this.bn.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.bindingNavigatorMoveFirstItem,
this.bindingNavigatorMovePreviousItem,
this.bindingNavigatorSeparator,
this.bindingNavigatorPositionItem,
this.bindingNavigatorCountItem,
this.bindingNavigatorSeparator1,
this.bindingNavigatorMoveNextItem,
this.bindingNavigatorMoveLastItem,
this.bindingNavigatorSeparator2,
this.btAdd,
this.btCopy,
this.btEdit,
this.btDel,
this.btSave,
this.toolStripSeparator1,
this.toolStripLabel2,
this.tbFind,
this.btFind,
this.btDebug});
this.bn.Location = new System.Drawing.Point(0, 586);
this.bn.MoveFirstItem = this.bindingNavigatorMoveFirstItem;
this.bn.MoveLastItem = this.bindingNavigatorMoveLastItem;
this.bn.MoveNextItem = this.bindingNavigatorMoveNextItem;
this.bn.MovePreviousItem = this.bindingNavigatorMovePreviousItem;
this.bn.Name = "bn";
this.bn.PositionItem = this.bindingNavigatorPositionItem;
this.bn.Size = new System.Drawing.Size(1292, 25);
this.bn.TabIndex = 0;
this.bn.Text = "bindingNavigator1";
//
// bs
//
this.bs.DataMember = "EETGW_JobReport_AutoInput";
this.bs.DataSource = this.dsMSSQL;
this.bs.Sort = "enable,pdate desc";
//
// dsMSSQL
//
this.dsMSSQL.DataSetName = "dsMSSQL";
this.dsMSSQL.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
//
// bindingNavigatorCountItem
//
this.bindingNavigatorCountItem.Name = "bindingNavigatorCountItem";
this.bindingNavigatorCountItem.Size = new System.Drawing.Size(27, 22);
this.bindingNavigatorCountItem.Text = "/{0}";
this.bindingNavigatorCountItem.ToolTipText = "전체 항목 수";
//
// bindingNavigatorMoveFirstItem
//
this.bindingNavigatorMoveFirstItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveFirstItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveFirstItem.Image")));
this.bindingNavigatorMoveFirstItem.Name = "bindingNavigatorMoveFirstItem";
this.bindingNavigatorMoveFirstItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveFirstItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveFirstItem.Text = "처음으로 이동";
//
// bindingNavigatorMovePreviousItem
//
this.bindingNavigatorMovePreviousItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMovePreviousItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMovePreviousItem.Image")));
this.bindingNavigatorMovePreviousItem.Name = "bindingNavigatorMovePreviousItem";
this.bindingNavigatorMovePreviousItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMovePreviousItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMovePreviousItem.Text = "이전으로 이동";
//
// bindingNavigatorSeparator
//
this.bindingNavigatorSeparator.Name = "bindingNavigatorSeparator";
this.bindingNavigatorSeparator.Size = new System.Drawing.Size(6, 25);
//
// bindingNavigatorPositionItem
//
this.bindingNavigatorPositionItem.AccessibleName = "위치";
this.bindingNavigatorPositionItem.AutoSize = false;
this.bindingNavigatorPositionItem.Font = new System.Drawing.Font("맑은 고딕", 9F);
this.bindingNavigatorPositionItem.Name = "bindingNavigatorPositionItem";
this.bindingNavigatorPositionItem.Size = new System.Drawing.Size(50, 23);
this.bindingNavigatorPositionItem.Text = "0";
this.bindingNavigatorPositionItem.ToolTipText = "현재 위치";
//
// bindingNavigatorSeparator1
//
this.bindingNavigatorSeparator1.Name = "bindingNavigatorSeparator1";
this.bindingNavigatorSeparator1.Size = new System.Drawing.Size(6, 25);
//
// bindingNavigatorMoveNextItem
//
this.bindingNavigatorMoveNextItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveNextItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveNextItem.Image")));
this.bindingNavigatorMoveNextItem.Name = "bindingNavigatorMoveNextItem";
this.bindingNavigatorMoveNextItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveNextItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveNextItem.Text = "다음으로 이동";
//
// bindingNavigatorMoveLastItem
//
this.bindingNavigatorMoveLastItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveLastItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveLastItem.Image")));
this.bindingNavigatorMoveLastItem.Name = "bindingNavigatorMoveLastItem";
this.bindingNavigatorMoveLastItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveLastItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveLastItem.Text = "마지막으로 이동";
//
// bindingNavigatorSeparator2
//
this.bindingNavigatorSeparator2.Name = "bindingNavigatorSeparator2";
this.bindingNavigatorSeparator2.Size = new System.Drawing.Size(6, 25);
//
// btAdd
//
this.btAdd.Image = ((System.Drawing.Image)(resources.GetObject("btAdd.Image")));
this.btAdd.Name = "btAdd";
this.btAdd.RightToLeftAutoMirrorImage = true;
this.btAdd.Size = new System.Drawing.Size(67, 22);
this.btAdd.Text = "추가(&A)";
this.btAdd.Click += new System.EventHandler(this.bindingNavigatorAddNewItem_Click);
//
// btCopy
//
this.btCopy.Image = global::FPJ0000.Properties.Resources.copy;
this.btCopy.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btCopy.Name = "btCopy";
this.btCopy.Size = new System.Drawing.Size(67, 22);
this.btCopy.Text = "복사(&C)";
this.btCopy.Click += new System.EventHandler(this.btCopy_Click);
//
// btEdit
//
this.btEdit.Image = ((System.Drawing.Image)(resources.GetObject("btEdit.Image")));
this.btEdit.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btEdit.Name = "btEdit";
this.btEdit.Size = new System.Drawing.Size(65, 22);
this.btEdit.Text = "편집(&E)";
this.btEdit.Click += new System.EventHandler(this.btEdit_Click);
//
// btDel
//
this.btDel.Image = ((System.Drawing.Image)(resources.GetObject("btDel.Image")));
this.btDel.Name = "btDel";
this.btDel.RightToLeftAutoMirrorImage = true;
this.btDel.Size = new System.Drawing.Size(68, 22);
this.btDel.Text = "삭제(&D)";
this.btDel.Click += new System.EventHandler(this.btDel_Click);
//
// btSave
//
this.btSave.Image = global::FPJ0000.Properties.Resources.action_save;
this.btSave.Name = "btSave";
this.btSave.Size = new System.Drawing.Size(66, 22);
this.btSave.Text = "저장(&S)";
this.btSave.Click += new System.EventHandler(this.projectsBindingNavigatorSaveItem_Click);
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(6, 25);
//
// toolStripLabel2
//
this.toolStripLabel2.Name = "toolStripLabel2";
this.toolStripLabel2.Size = new System.Drawing.Size(31, 22);
this.toolStripLabel2.Text = "검색";
//
// tbFind
//
this.tbFind.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbFind.Font = new System.Drawing.Font("맑은 고딕", 9F);
this.tbFind.Name = "tbFind";
this.tbFind.Size = new System.Drawing.Size(100, 25);
this.tbFind.KeyDown += new System.Windows.Forms.KeyEventHandler(this.tbFind_KeyDown);
//
// btFind
//
this.btFind.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.btFind.Image = ((System.Drawing.Image)(resources.GetObject("btFind.Image")));
this.btFind.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btFind.Name = "btFind";
this.btFind.Size = new System.Drawing.Size(23, 22);
this.btFind.Text = "toolStripButton2";
this.btFind.Click += new System.EventHandler(this.btFind_Click);
//
// cm
//
this.cm.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.cm.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.columnSizeToolStripMenuItem,
this.exportListToolStripMenuItem,
this.toolStripMenuItem2,
this.refreshToolStripMenuItem,
this.toolStripMenuItem1,
this.partListToolStripMenuItem,
this.toolStripMenuItem3,
this.ToolStripMenuItem,
this.ToolStripMenuItem,
this.ToolStripMenuItem});
this.cm.Name = "contextMenuStrip1";
this.cm.Size = new System.Drawing.Size(226, 274);
//
// columnSizeToolStripMenuItem
//
this.columnSizeToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.autoToolStripMenuItem,
this.resetToolStripMenuItem,
this.saveToolStripMenuItem,
this.loadToolStripMenuItem});
this.columnSizeToolStripMenuItem.Name = "columnSizeToolStripMenuItem";
this.columnSizeToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.columnSizeToolStripMenuItem.Text = "Column Size";
//
// autoToolStripMenuItem
//
this.autoToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("autoToolStripMenuItem.Image")));
this.autoToolStripMenuItem.Name = "autoToolStripMenuItem";
this.autoToolStripMenuItem.Size = new System.Drawing.Size(149, 36);
this.autoToolStripMenuItem.Text = "Auto";
this.autoToolStripMenuItem.Click += new System.EventHandler(this.autoToolStripMenuItem_Click);
//
// resetToolStripMenuItem
//
this.resetToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("resetToolStripMenuItem.Image")));
this.resetToolStripMenuItem.Name = "resetToolStripMenuItem";
this.resetToolStripMenuItem.Size = new System.Drawing.Size(149, 36);
this.resetToolStripMenuItem.Text = "Reset";
this.resetToolStripMenuItem.Click += new System.EventHandler(this.resetToolStripMenuItem_Click);
//
// saveToolStripMenuItem
//
this.saveToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("saveToolStripMenuItem.Image")));
this.saveToolStripMenuItem.Name = "saveToolStripMenuItem";
this.saveToolStripMenuItem.Size = new System.Drawing.Size(149, 36);
this.saveToolStripMenuItem.Text = "Save";
this.saveToolStripMenuItem.Click += new System.EventHandler(this.saveToolStripMenuItem_Click);
//
// loadToolStripMenuItem
//
this.loadToolStripMenuItem.Image = ((System.Drawing.Image)(resources.GetObject("loadToolStripMenuItem.Image")));
this.loadToolStripMenuItem.Name = "loadToolStripMenuItem";
this.loadToolStripMenuItem.Size = new System.Drawing.Size(149, 36);
this.loadToolStripMenuItem.Text = "Load";
this.loadToolStripMenuItem.Click += new System.EventHandler(this.loadToolStripMenuItem_Click);
//
// exportListToolStripMenuItem
//
this.exportListToolStripMenuItem.Name = "exportListToolStripMenuItem";
this.exportListToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.exportListToolStripMenuItem.Text = "Export List";
this.exportListToolStripMenuItem.Click += new System.EventHandler(this.exportListToolStripMenuItem_Click);
//
// toolStripMenuItem2
//
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
this.toolStripMenuItem2.Size = new System.Drawing.Size(222, 6);
//
// refreshToolStripMenuItem
//
this.refreshToolStripMenuItem.Name = "refreshToolStripMenuItem";
this.refreshToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.refreshToolStripMenuItem.Text = "Refresh";
this.refreshToolStripMenuItem.Click += new System.EventHandler(this.refreshToolStripMenuItem_Click);
//
// toolStripMenuItem1
//
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
this.toolStripMenuItem1.Size = new System.Drawing.Size(222, 6);
//
// partListToolStripMenuItem
//
this.partListToolStripMenuItem.Name = "partListToolStripMenuItem";
this.partListToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.partListToolStripMenuItem.Text = "PartList";
this.partListToolStripMenuItem.Click += new System.EventHandler(this.partListToolStripMenuItem_Click);
//
// toolStripMenuItem3
//
this.toolStripMenuItem3.Name = "toolStripMenuItem3";
this.toolStripMenuItem3.Size = new System.Drawing.Size(222, 6);
//
// 복사ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "복사ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.ToolStripMenuItem.Text = "복사";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 편집ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "편집ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.ToolStripMenuItem.Text = "편집";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 삭제ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "삭제ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(225, 36);
this.ToolStripMenuItem.Text = "삭제";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// fpSpread1
//
this.fpSpread1.AccessibleDescription = "";
this.fpSpread1.AutoFitColumnOptions = FarPoint.Win.Spread.PreferredSizeColumnOptions.Off;
this.fpSpread1.ContextMenuStrip = this.cm;
this.fpSpread1.Dock = System.Windows.Forms.DockStyle.Fill;
this.fpSpread1.Font = new System.Drawing.Font("맑은 고딕", 9F);
this.fpSpread1.Location = new System.Drawing.Point(0, 37);
this.fpSpread1.Name = "fpSpread1";
this.fpSpread1.Sheets.AddRange(new FarPoint.Win.Spread.SheetView[] {
this.fpSpread1_Sheet1});
this.fpSpread1.Size = new System.Drawing.Size(1292, 549);
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 = 17;
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 = "방식";
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 = "WW";
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.Cells.Get(0, 12).Value = "*";
this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 13).Value = "시간";
this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 14).Value = "초과";
this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 15).Value = "비고";
this.fpSpread1_Sheet1.ColumnHeader.Cells.Get(0, 16).Value = "#";
this.fpSpread1_Sheet1.ColumnHeader.Rows.Get(0).Height = 28F;
this.fpSpread1_Sheet1.Columns.Get(0).CellType = checkBoxCellType2;
this.fpSpread1_Sheet1.Columns.Get(0).DataField = "enable";
this.fpSpread1_Sheet1.Columns.Get(0).Label = "사용";
this.fpSpread1_Sheet1.Columns.Get(1).CellType = textCellType14;
this.fpSpread1_Sheet1.Columns.Get(1).DataField = "autoinput";
this.fpSpread1_Sheet1.Columns.Get(1).Label = "방식";
this.fpSpread1_Sheet1.Columns.Get(2).CellType = textCellType15;
this.fpSpread1_Sheet1.Columns.Get(2).DataField = "pdate";
this.fpSpread1_Sheet1.Columns.Get(2).Label = "시작일";
this.fpSpread1_Sheet1.Columns.Get(2).Width = 58F;
this.fpSpread1_Sheet1.Columns.Get(3).CellType = textCellType16;
this.fpSpread1_Sheet1.Columns.Get(3).DataField = "edate";
this.fpSpread1_Sheet1.Columns.Get(3).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(3).Label = "종료일";
this.fpSpread1_Sheet1.Columns.Get(3).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(4).BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.fpSpread1_Sheet1.Columns.Get(4).CellType = textCellType17;
this.fpSpread1_Sheet1.Columns.Get(4).DataField = "ww";
this.fpSpread1_Sheet1.Columns.Get(4).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(4).Label = "WW";
this.fpSpread1_Sheet1.Columns.Get(4).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(5).CellType = textCellType18;
this.fpSpread1_Sheet1.Columns.Get(5).DataField = "username";
this.fpSpread1_Sheet1.Columns.Get(5).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(5).Label = "담당";
this.fpSpread1_Sheet1.Columns.Get(5).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(6).AllowAutoFilter = true;
this.fpSpread1_Sheet1.Columns.Get(6).CellType = textCellType19;
this.fpSpread1_Sheet1.Columns.Get(6).DataField = "requestpart";
this.fpSpread1_Sheet1.Columns.Get(6).Label = "요청부서";
this.fpSpread1_Sheet1.Columns.Get(6).Width = 78F;
this.fpSpread1_Sheet1.Columns.Get(7).AllowAutoFilter = true;
this.fpSpread1_Sheet1.Columns.Get(7).CellType = textCellType20;
this.fpSpread1_Sheet1.Columns.Get(7).DataField = "package";
this.fpSpread1_Sheet1.Columns.Get(7).Label = "패키지";
this.fpSpread1_Sheet1.Columns.Get(7).Width = 86F;
this.fpSpread1_Sheet1.Columns.Get(8).CellType = textCellType21;
this.fpSpread1_Sheet1.Columns.Get(8).DataField = "status";
this.fpSpread1_Sheet1.Columns.Get(8).Label = "상태";
this.fpSpread1_Sheet1.Columns.Get(9).AllowAutoFilter = true;
this.fpSpread1_Sheet1.Columns.Get(9).CellType = textCellType22;
this.fpSpread1_Sheet1.Columns.Get(9).DataField = "type";
this.fpSpread1_Sheet1.Columns.Get(9).Label = "업무형태";
this.fpSpread1_Sheet1.Columns.Get(9).Width = 84F;
this.fpSpread1_Sheet1.Columns.Get(10).AllowAutoFilter = true;
this.fpSpread1_Sheet1.Columns.Get(10).CellType = textCellType23;
this.fpSpread1_Sheet1.Columns.Get(10).DataField = "process";
this.fpSpread1_Sheet1.Columns.Get(10).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left;
this.fpSpread1_Sheet1.Columns.Get(10).Label = "업무분류";
this.fpSpread1_Sheet1.Columns.Get(10).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(10).Width = 80F;
this.fpSpread1_Sheet1.Columns.Get(11).AllowAutoFilter = true;
this.fpSpread1_Sheet1.Columns.Get(11).CellType = textCellType24;
this.fpSpread1_Sheet1.Columns.Get(11).DataField = "projectName";
this.fpSpread1_Sheet1.Columns.Get(11).Label = "프로젝트(아이템)";
this.fpSpread1_Sheet1.Columns.Get(11).Width = 158F;
this.fpSpread1_Sheet1.Columns.Get(12).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(12).CellType = numberCellType4;
this.fpSpread1_Sheet1.Columns.Get(12).DataField = "pidx";
this.fpSpread1_Sheet1.Columns.Get(12).Label = "*";
this.fpSpread1_Sheet1.Columns.Get(12).Tag = "pidx";
this.fpSpread1_Sheet1.Columns.Get(12).Width = 39F;
numberCellType5.MaximumValue = 999999999999999D;
numberCellType5.MinimumValue = -999999999999999D;
this.fpSpread1_Sheet1.Columns.Get(13).CellType = numberCellType5;
this.fpSpread1_Sheet1.Columns.Get(13).DataField = "hrs";
this.fpSpread1_Sheet1.Columns.Get(13).Label = "시간";
this.fpSpread1_Sheet1.Columns.Get(13).Width = 52F;
numberCellType6.MaximumValue = 999999999999999D;
numberCellType6.MinimumValue = -999999999999999D;
this.fpSpread1_Sheet1.Columns.Get(14).CellType = numberCellType6;
this.fpSpread1_Sheet1.Columns.Get(14).DataField = "ot";
this.fpSpread1_Sheet1.Columns.Get(14).ForeColor = System.Drawing.Color.Red;
this.fpSpread1_Sheet1.Columns.Get(14).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(14).Label = "초과";
this.fpSpread1_Sheet1.Columns.Get(14).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(15).CellType = textCellType25;
this.fpSpread1_Sheet1.Columns.Get(15).DataField = "description";
this.fpSpread1_Sheet1.Columns.Get(15).HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Left;
this.fpSpread1_Sheet1.Columns.Get(15).Label = "비고";
this.fpSpread1_Sheet1.Columns.Get(15).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
this.fpSpread1_Sheet1.Columns.Get(15).Width = 113F;
this.fpSpread1_Sheet1.Columns.Get(16).CellType = textCellType26;
this.fpSpread1_Sheet1.Columns.Get(16).DataField = "tag";
this.fpSpread1_Sheet1.Columns.Get(16).Label = "#";
this.fpSpread1_Sheet1.Columns.Get(16).VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
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);
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripLabel1,
this.cmbProcess,
this.btSearch,
this.toolStripButton2});
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(1292, 37);
this.toolStrip1.TabIndex = 4;
this.toolStrip1.Text = "toolStrip1";
//
// toolStripLabel1
//
this.toolStripLabel1.Name = "toolStripLabel1";
this.toolStripLabel1.Size = new System.Drawing.Size(31, 34);
this.toolStripLabel1.Text = "공정";
//
// cmbProcess
//
this.cmbProcess.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbProcess.Name = "cmbProcess";
this.cmbProcess.Size = new System.Drawing.Size(150, 37);
this.cmbProcess.SelectedIndexChanged += new System.EventHandler(this.cmbProcess_SelectedIndexChanged);
this.cmbProcess.Click += new System.EventHandler(this.cmbProcess_Click);
//
// btSearch
//
this.btSearch.Image = ((System.Drawing.Image)(resources.GetObject("btSearch.Image")));
this.btSearch.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btSearch.Name = "btSearch";
this.btSearch.Size = new System.Drawing.Size(80, 34);
this.btSearch.Text = "조회(&R)";
this.btSearch.Click += new System.EventHandler(this.btSearch_Click);
//
// toolStripButton2
//
this.toolStripButton2.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.toolStripButton2.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton2.Image")));
this.toolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton2.Name = "toolStripButton2";
this.toolStripButton2.Size = new System.Drawing.Size(65, 34);
this.toolStripButton2.Text = "닫기";
this.toolStripButton2.Click += new System.EventHandler(this.toolStripButton2_Click);
//
// ta
//
this.ta.ClearBeforeFill = true;
//
// btDebug
//
this.btDebug.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.btDebug.Image = ((System.Drawing.Image)(resources.GetObject("btDebug.Image")));
this.btDebug.ImageTransparentColor = System.Drawing.Color.Magenta;
this.btDebug.Name = "btDebug";
this.btDebug.Size = new System.Drawing.Size(147, 22);
this.btDebug.Text = "로그인데이터자동생성";
this.btDebug.Click += new System.EventHandler(this.btDebug_Click);
//
// fJobReportAI
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1292, 611);
this.Controls.Add(this.fpSpread1);
this.Controls.Add(this.toolStrip1);
this.Controls.Add(this.bn);
this.Name = "fJobReportAI";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "업무일지 - 자동입력 양식";
this.Load += new System.EventHandler(this.@__Load);
((System.ComponentModel.ISupportInitialize)(this.bn)).EndInit();
this.bn.ResumeLayout(false);
this.bn.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit();
((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();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private dsPRJ dsMSSQL;
private System.Windows.Forms.BindingSource bs;
private System.Windows.Forms.BindingNavigator bn;
private System.Windows.Forms.ToolStripButton btAdd;
private System.Windows.Forms.ToolStripLabel bindingNavigatorCountItem;
private System.Windows.Forms.ToolStripButton btDel;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveFirstItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorMovePreviousItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator;
private System.Windows.Forms.ToolStripTextBox bindingNavigatorPositionItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator1;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveNextItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveLastItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator2;
private System.Windows.Forms.ToolStripButton btSave;
private System.Windows.Forms.ContextMenuStrip cm;
private System.Windows.Forms.ToolStripMenuItem refreshToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1;
private System.Windows.Forms.ToolStripMenuItem partListToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
private FarPoint.Win.Spread.FpSpread fpSpread1;
private System.Windows.Forms.ToolStripMenuItem columnSizeToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem autoToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem resetToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem saveToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem loadToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem2;
private System.Windows.Forms.ToolStrip toolStrip1;
private System.Windows.Forms.ToolStripButton btCopy;
private System.Windows.Forms.ToolStripButton btEdit;
private System.Windows.Forms.ToolStripLabel toolStripLabel2;
private System.Windows.Forms.ToolStripTextBox tbFind;
private System.Windows.Forms.ToolStripButton btFind;
private System.Windows.Forms.ToolStripMenuItem exportListToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem3;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripButton toolStripButton2;
private System.Windows.Forms.ToolStripLabel toolStripLabel1;
private System.Windows.Forms.ToolStripComboBox cmbProcess;
private dsPRJTableAdapters.EETGW_JobReport_AutoInputTableAdapter ta;
private System.Windows.Forms.ToolStripButton btSearch;
private FarPoint.Win.Spread.SheetView fpSpread1_Sheet1;
private System.Windows.Forms.ToolStripButton btDebug;
}
}

View File

@@ -0,0 +1,441 @@
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 fJobReportAI : FCOMMON.fBase
{
string fn_fpcolsize = "";
public fJobReportAI()
{
InitializeComponent();
fn_fpcolsize = util.MakeFilePath(util.CurrentPath, "formSetting", "fp_" + this.Name + ".ini");
this.dsMSSQL.JobReport.TableNewRow += Projects_TableNewRow;
this.FormClosed += __Closed;
}
void __Closed(object sender, FormClosedEventArgs e)
{
}
Boolean binit = false;
private void __Load(object sender, EventArgs e)
{
//공정목록
var taProc = new dsReportTableAdapters.ProcessListTableAdapter();
var dtProcList = taProc.GetData(FCOMMON.info.Login.gcode);
cmbProcess.Items.Clear();
cmbProcess.Items.Add("--전체--");
foreach (dsReport.ProcessListRow dr in dtProcList)
{
cmbProcess.Items.Add(dr.processs);
}
cmbProcess.Text = FCOMMON.info.Login.process;
if (cmbProcess.SelectedIndex < 0) cmbProcess.SelectedIndex = 0; //공정이 없는 사람은 전체보기로 함
btSave.Visible = true;
btDebug.Visible = FCOMMON.info.Login.no == "dev";
refreshData();
binit = true;
}
private void cmbProcess_SelectedIndexChanged(object sender, EventArgs e)
{
if (binit == false) return;
}
private void cmbProcess_Click(object sender, EventArgs e)
{
}
void refreshData(bool tagonly = false)
{
this.ta.Fill(this.dsMSSQL.EETGW_JobReport_AutoInput, FCOMMON.info.Login.gcode);
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.WhiteSmoke;
break;
default:
this.fpSpread1.ActiveSheet.Rows[i].BackColor = SystemColors.Window;
break;
}
}
this.fpSpread1.ResumeLayout();
}
void funcSave()
{
this.Validate();
this.bs.EndEdit();
try
{
this.ta.Update(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 bindingNavigatorAddNewItem_Click(object sender, EventArgs e)
{
var newdr = this.dsMSSQL.EETGW_JobReport_AutoInput.NewEETGW_JobReport_AutoInputRow();
newdr.pdate = DateTime.Now.ToShortDateString();
newdr.uid = FCOMMON.info.Login.no;
newdr.gcode = FCOMMON.info.Login.gcode;
newdr.wdate = DateTime.Now;
newdr.wuid = FCOMMON.info.Login.no;
var f = new JobReport_.fJobReport_AddAI(newdr);
if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
this.dsMSSQL.EETGW_JobReport_AutoInput.AddEETGW_JobReport_AutoInputRow(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", "tag" };
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.EETGW_JobReport_AutoInputRow;
if (dr.uid != FCOMMON.info.Login.no && FCOMMON.info.Login.level < 5)
{
FCOMMON.Util.MsgE("타인의 자료는 추가/변경/삭제 할 수 없습니다.");
return;
}
var f = new JobReport_.fJobReport_AddAI(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.EETGW_JobReport_AutoInputRow;
//현재 데이터를 입력하여 신규 추가를 한다.
var newdr = this.dsMSSQL.EETGW_JobReport_AutoInput.NewEETGW_JobReport_AutoInputRow();
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();
var f = new JobReport_.fJobReport_AddAI(newdr);
if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
this.dsMSSQL.EETGW_JobReport_AutoInput.AddEETGW_JobReport_AutoInputRow(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.EETGW_JobReport_AutoInputRow;
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 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 toolStripButton2_Click(object sender, EventArgs e)
{
this.Close();
}
private void btDebug_Click(object sender, EventArgs e)
{
var dlg = util.MsgQ("진짜 실행?");
if (dlg != DialogResult.Yes) return;
var cnt = 0;
var db = new EEEntities();
//근무일자 확인
var holilist = db.HolidayLIst.ToList();
foreach (dsPRJ.EETGW_JobReport_AutoInputRow dr in this.dsMSSQL.EETGW_JobReport_AutoInput)
{
if (dr.RowState == DataRowState.Deleted || dr.RowState == DataRowState.Detached) continue;
if (dr.autoinput != "L") continue;
//시작일자부텅 오늘까지 데이터를 확인한다.
var sd = DateTime.Parse(dr.pdate);
while(true)
{
if (sd > DateTime.Now) break;
//이날짜가 일반 날짜라면 데이터를 기록한다.
var dayinfo = holilist.Where(t => t.pdate == sd.ToShortDateString()).FirstOrDefault();
if (dayinfo.free == true)
{
sd = sd.AddDays(1);
continue; //휴일은 처리하지 않는다
}
//그냥 생성된자료가 없어야한다
var vPdate = sd.ToShortDateString();
if (db.JobReport.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate == vPdate && t.uid == dr.uid).Any())
{
sd = sd.AddDays(1);
continue;
}
//이데이터를 그대로 생성해준다.
var newdr = new JobReport();
newdr.gcode = FCOMMON.info.Login.gcode;
newdr.wuid = FCOMMON.info.Login.no;
newdr.wdate = DateTime.Now;
newdr.pdate = sd.ToShortDateString();
newdr.import = false;
newdr.hrs = dr.hrs;
newdr.ot = dr.ot;
newdr.process = dr.process;
newdr.projectName = dr.projectName;
newdr.pidx = dr.pidx;
newdr.package = dr.package;
newdr.autoinput = true;
newdr.description = dr.description;
newdr.description2 = dr.description2;
newdr.remark = dr.remark;
newdr.requestpart = dr.requestpart;
newdr.status = dr.status;
newdr.tag = dr.tag;
newdr.uid = dr.uid;
db.JobReport.Add(newdr);
cnt += 1;
sd = sd.AddDays(1);
}
}
if (cnt > 0)
{
db.SaveChanges();
FCOMMON.Util.MsgI($"{cnt} 건의 업무일지가 자동 생성 되었습니다");
}
}
}
}

View File

@@ -0,0 +1,306 @@
<?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>
<metadata name="bn.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>186, 17</value>
</metadata>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>122, 17</value>
</metadata>
<metadata name="dsMSSQL.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="bindingNavigatorMoveFirstItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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=
</value>
</data>
<data name="bindingNavigatorMovePreviousItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="bindingNavigatorMoveNextItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78
n73v1//OrX//u5VeJt2QyK5H/6ds+/W/ZOnf/wnT//63yT1LmiGBzQ//t659D9ZsXPLlv3T0tf/GkcuI
N8Sj6v7/krnv4JoVXXpIc4F96d3/gS3PyNMMAhZ5d/7bFFwhTzMIGGbdJl8zCOik3SBf81AEDAwAoH5f
oAc0QjgAAAAASUVORK5CYII=
</value>
</data>
<data name="bindingNavigatorMoveLastItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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==
</value>
</data>
<data name="btAdd.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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==
</value>
</data>
<data name="btEdit.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEvSURBVDhPpZI/S0JRGIed+i6Nbk0t0iCuSkuDi1MfIKfm
+gAOQktTQkMggYtRkwgidKmgyQwMCgqz0CivvvK8cK7neG4KdeHhHs45v+c9/xLyz08Ft713OQ+6SqXV
kfLlnXJw1lSK5VrERqGkMB4JCCLpvQ7lZfDlQJ+B4EnwI9nTkbYdAZMbjxOPq4eJPH1MvXC2sD8XsOzP
0bcX/C3MXEfAfmzBsnCnP10uWBWu3IS+gJOm0w5fHCZiw0aQzu3GC0xYgm2R+poTRnh8HeqNOALu920w
9MK0F8NGkMrs+ALewqrwUXss3ed+vKB6H+rh2OT3SjpO0IBgcyvnCjgDBGCq8mcMiQ3FHAGdLB/J4vMF
KhoI83LXk6m5gCpmufbyOWlgv0BVIMx4JPj7JzIDGHRUPz2nxiQAAAAASUVORK5CYII=
</value>
</data>
<data name="btDel.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAW9JREFUOE+1kE0ow2Ecx3dV3krt4oJaOSCTvIRkMqSxyITIzCQHDouEdnFwIOVC
DrhIDiQl5UTiNG/z2ppafy1S2gX/uDwfY6i1v7Hie3nqeb7fz+/7/FR/Ilwn0G0Exw4fV5GJlXlEZxXC
rIet9bAQvB5Ymgn2sLYAvSZEux7RUQFzE4qQt4bCXAYjPaHvnDoCkLpsRGMB2JqCTGLIijDlwqQ9bEMV
i9OIytR3EMNWcJ/BWH8A6j8/bOGFxwXNxYEvGbMQ9XnQ1/K78KfY3/VXzkMY0qFGG2H4RoLGQshJQNbG
86CNhdrsX9a/uQZTPhQl4rMY4OLofbl3aX7I8uwPC7y/g1YdjyVJuEvT8e1tfwUYteHUxCCfHChDeHmG
QQvokjlOU+PbWA0x3pZnILVVI3uvQyHsbiLnqnGmRCF1NYD8pDhpRxOH7HQoAKZGkFKjceszQbpSrumX
bO+G80MFwKUTxgfgcO/b8D9IpXoFiiMDHIQm0skAAAAASUVORK5CYII=
</value>
</data>
<data name="btFind.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE3SURBVDhPnZIxS8NQFEb7W/wLjh0Fl9a1SxBHBekkWFd1
qYg4Ci5dndSCg2AHl4LQSaRSKDqoFUE7VAjUmvTKueWmL2mw2gunL7zmO+/mJhmZoTJusdF868vpXUfO
b5/lpPEox9f3SvnsRtk8uojxHQ7HEgSEkXS6vrz3xqtdu+xdfUiheEBsJOGCk/mz/hROUHsIIrp+qIKY
hB/a9r+CVAG4Auj5g7iA5/1NACaptgIVLHkb0wWVw13ZL60p2+uerqkCJs1mMgwUU6d1k/xJwI10RZj1
9TPUN7Wam9dgTMC75QR7TjCBkRQs5Jd1jQS8c1ewtZLTPcQW/peADpC44cudgnjZOQ1OCGjTwkwaGBon
GoSrpcVIQqmAj6LZftFBup9vWiUlUQdIDCbsQrsGZRJKBbOXyA++SlEsu6QjvQAAAABJRU5ErkJggg==
</value>
</data>
<data name="btDebug.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
</value>
</data>
<metadata name="dsMSSQL.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="cm.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>252, 17</value>
</metadata>
<data name="autoToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
R0lGODlhEAAQAIQfAJXG2JXa+ZLO5ChrlkCy4TZ1kiVvpCN0trvo9SN5xTd4lrfh7iR9zo3S+EGz7JDJ
4TaCromrvC9ymyV+0Dd3mTl1koe72YvN7LTj+9ne6N3g6v7+/0Cw2Stoh////////yH/C05FVFNDQVBF
Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAInwA/CBzooaAHgQUHKvRQoUABCgUlHFT4IYMCBAsQIIBg
wcBEgh0WCBDAgcAFDAc+fvDQIUKHDgMeEHDQIIFKlgoMGgjQoAGDmwUOehhg4EACBhM+GlzKVOkEBgkO
GBggNOhCBhgCBPBYUEGHmwkCOCDwYMCAll8XHghwgQCHkQDSLjRgAcKDBwAAKNCwgaIHiR4oOKygkuDE
pRQTK6YYEAA7
</value>
</data>
<data name="resetToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
R0lGODlhEAAQAIQfALnik2aXQv7+/dPut73llbfala3LmW6gSWqdQ2eYRGqaSLfck568iYrUQN7yzF6R
PLTXlYjUP8XwmYfQQLbYl4jRQGiaQsPumNbyu7nglNPzsLXYlf7+/lCHK////////yH/C05FVFNDQVBF
Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAIlgA/CBzooaAHgQUHEvSgIEAABQUfHFTIwQECDAMwYDhg
oENCgRw8dBgAAECFBgsweJxYsAODDjApTIhAwCMHkCItGOxwgUCGlQQTeAgJsyhQg0iTGvzQ0qhND0IX
dtBwQcJKDxZsIhQpIcIECkVffmwpYUGDCiUheBQg1cCBAgU2QFDg4KZCDxIZOoQ48S7LpQoDCx4cEAA7
</value>
</data>
<data name="saveToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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=
</value>
</data>
<data name="loadToolStripMenuItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
R0lGODlhEAAQAIQfAJfL/OTs9HWVsW6aUqnT+6bnZldwkYiux7TZ/O3z+UlVa/P2+ZfTW36wWJDLV4m7
69nn78bi/qjL3qDP+VJhe4rAVa7S40NLXJ3bYJrA1ikxQz5FVdDU22OPRf///////yH/C05FVFNDQVBF
Mi4wAwEBAAAh+QQBAAAfACwAAAAAEAAQAAAIwQA9CBxIcOCHgx4gWLAgIUOGAwcESBTgAaEFCAEGaBwQ
IGOABwYqerCQsYBJBho7JHgAUqCEDjAxYGBQgYHKBAsoCMzQIUIEmA6CdkCAIOfOBT5/MnBQYSgBozCj
SoVJ4KkCDx1MFhhKFEFVAhMCXM1aAANMoh2qTgh7AWvZmQ6igp0AIEDbDg0aLA06YC4AABA2eBjgYcHG
vmv/Akgg2IMBDgsSdJwcAEICDhoECjDAmQIFBQouXNiwQYPOgqgLBgQAOw==
</value>
</data>
<metadata name="fpSpread1_Sheet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>488, 17</value>
</metadata>
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>320, 17</value>
</metadata>
<data name="btSearch.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE4SURBVDhPtZPPasJAEMbzPn0FwWA92JtP4NGKB1/DP7ei
QSsovkChh7ZBrCfpyR4sikopUgq9StFzM/UbZ5asSS4FfzAkO7vft5udiZMEnSBpk5dhFJmncjdHxXaG
A+9K4SbFT1luEwQBbXavVO5d0nI3ovnW5yeiMriiu+kt5asXbABEdgRigAUQDr+aHLU3lxoLl/yPJhvF
GsiYJ/vPdX5qPK3bVJ25VFukafztGQNsKHJ791I3w+8KcpNth8XDz5YxACI/gsR1J8sTYcO4UIzwv1gG
cTshgJ5IT8hChTMHsHi+v+fvffmxywVwN2FDkdsGEOK2ceu4feQ0tDqKyKMGqDfqjvprLzyswuX7Tf4E
dBo6zn/3OB7XHovRyuhQ6+hhYKA9DpL+A1keRebNAhkaJH0OHOcP031C4EjYr6wAAAAASUVORK5CYII=
</value>
</data>
<data name="toolStripButton2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADlSURBVEhL7dQxCsIwFMbxnMrZWatzUXRUCo5ewSs4ewZR
DyDeQfEETsUbRL7YYNSXNC/UOiQP/kvzyE9KUcQ7y/VJtlHFvQYPjzf50xKsJsFmq81WHq538swMO9il
zhALxkWd7kAOJwsnjjPsYNeGs2B14fR5YTYq5O5c1u7sL987iAUjF+6LIjaMKJyDoiAYmVAvn8lsXHij
KBhGwDWof4APihqHqQ+OKhg2X3U/n7+9ah88CKY+pM9ndTgbplDbmQtnwS7UtmPDWfDf/jIRLnKhOuzY
UMSGmyrBauKE26jiohshHicE2B3dbRrmAAAAAElFTkSuQmCC
</value>
</data>
<metadata name="ta.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>426, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,552 @@
namespace FPJ0000.JobReport_
{
partial class fJobReportImport
{
/// <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.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fJobReportImport));
this.textBox1 = new System.Windows.Forms.TextBox();
this.linkLabel1 = new System.Windows.Forms.LinkLabel();
this.button1 = new System.Windows.Forms.Button();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
this.button3 = new System.Windows.Forms.Button();
this.panel1 = new System.Windows.Forms.Panel();
this.label7 = new System.Windows.Forms.Label();
this.checkBox1 = new System.Windows.Forms.CheckBox();
this.numericUpDown2 = new System.Windows.Forms.NumericUpDown();
this.label6 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.nudCE = new System.Windows.Forms.NumericUpDown();
this.nudCS = new System.Windows.Forms.NumericUpDown();
this.label5 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.nudE = new System.Windows.Forms.NumericUpDown();
this.nudS = new System.Windows.Forms.NumericUpDown();
this.label2 = new System.Windows.Forms.Label();
this.numericUpDown1 = new System.Windows.Forms.NumericUpDown();
this.label1 = new System.Windows.Forms.Label();
this.bn = new System.Windows.Forms.BindingNavigator(this.components);
this.bindingNavigatorAddNewItem = new System.Windows.Forms.ToolStripButton();
this.bs = new System.Windows.Forms.BindingSource(this.components);
this.bindingNavigatorCountItem = new System.Windows.Forms.ToolStripLabel();
this.bindingNavigatorDeleteItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorMoveFirstItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorMovePreviousItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorSeparator = new System.Windows.Forms.ToolStripSeparator();
this.bindingNavigatorPositionItem = new System.Windows.Forms.ToolStripTextBox();
this.bindingNavigatorSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.bindingNavigatorMoveNextItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorMoveLastItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.progressBar1 = new System.Windows.Forms.ToolStripProgressBar();
this.sd = new System.Windows.Forms.DateTimePicker();
this.ed = new System.Windows.Forms.DateTimePicker();
this.cmbUser = new System.Windows.Forms.ComboBox();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nudCE)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nudCS)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nudE)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nudS)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bn)).BeginInit();
this.bn.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit();
this.SuspendLayout();
//
// textBox1
//
this.textBox1.Location = new System.Drawing.Point(42, 9);
this.textBox1.Name = "textBox1";
this.textBox1.Size = new System.Drawing.Size(170, 21);
this.textBox1.TabIndex = 1;
//
// linkLabel1
//
this.linkLabel1.AutoSize = true;
this.linkLabel1.Location = new System.Drawing.Point(12, 13);
this.linkLabel1.Name = "linkLabel1";
this.linkLabel1.Size = new System.Drawing.Size(25, 12);
this.linkLabel1.TabIndex = 0;
this.linkLabel1.TabStop = true;
this.linkLabel1.Text = "File";
this.linkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked);
//
// button1
//
this.button1.Location = new System.Drawing.Point(525, 8);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(102, 21);
this.button1.TabIndex = 4;
this.button1.Text = "1.View";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// dataGridView1
//
this.dataGridView1.AllowUserToAddRows = false;
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView1.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridView1.Location = new System.Drawing.Point(0, 120);
this.dataGridView1.Name = "dataGridView1";
this.dataGridView1.RowTemplate.Height = 23;
this.dataGridView1.Size = new System.Drawing.Size(906, 512);
this.dataGridView1.TabIndex = 1;
//
// button3
//
this.button3.Location = new System.Drawing.Point(525, 35);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(102, 21);
this.button3.TabIndex = 6;
this.button3.Text = "2.Save";
this.button3.UseVisualStyleBackColor = true;
this.button3.Click += new System.EventHandler(this.button3_Click);
//
// panel1
//
this.panel1.Controls.Add(this.cmbUser);
this.panel1.Controls.Add(this.label7);
this.panel1.Controls.Add(this.checkBox1);
this.panel1.Controls.Add(this.numericUpDown2);
this.panel1.Controls.Add(this.label6);
this.panel1.Controls.Add(this.ed);
this.panel1.Controls.Add(this.sd);
this.panel1.Controls.Add(this.label4);
this.panel1.Controls.Add(this.nudCE);
this.panel1.Controls.Add(this.nudCS);
this.panel1.Controls.Add(this.label5);
this.panel1.Controls.Add(this.label3);
this.panel1.Controls.Add(this.nudE);
this.panel1.Controls.Add(this.nudS);
this.panel1.Controls.Add(this.label2);
this.panel1.Controls.Add(this.numericUpDown1);
this.panel1.Controls.Add(this.label1);
this.panel1.Controls.Add(this.button3);
this.panel1.Controls.Add(this.textBox1);
this.panel1.Controls.Add(this.linkLabel1);
this.panel1.Controls.Add(this.button1);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(906, 120);
this.panel1.TabIndex = 0;
this.panel1.Paint += new System.Windows.Forms.PaintEventHandler(this.panel1_Paint);
//
// label7
//
this.label7.AutoSize = true;
this.label7.Location = new System.Drawing.Point(362, 95);
this.label7.Name = "label7";
this.label7.Size = new System.Drawing.Size(29, 12);
this.label7.TabIndex = 21;
this.label7.Text = "사번";
//
// checkBox1
//
this.checkBox1.AutoSize = true;
this.checkBox1.Location = new System.Drawing.Point(474, 66);
this.checkBox1.Name = "checkBox1";
this.checkBox1.Size = new System.Drawing.Size(127, 16);
this.checkBox1.TabIndex = 19;
this.checkBox1.Text = "Auto Delete Import";
this.checkBox1.UseVisualStyleBackColor = true;
//
// numericUpDown2
//
this.numericUpDown2.Location = new System.Drawing.Point(406, 63);
this.numericUpDown2.Maximum = new decimal(new int[] {
65535,
0,
0,
0});
this.numericUpDown2.Name = "numericUpDown2";
this.numericUpDown2.Size = new System.Drawing.Size(45, 21);
this.numericUpDown2.TabIndex = 18;
this.numericUpDown2.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.numericUpDown2.Value = new decimal(new int[] {
3,
0,
0,
0});
//
// label6
//
this.label6.AutoSize = true;
this.label6.Location = new System.Drawing.Point(312, 67);
this.label6.Name = "label6";
this.label6.Size = new System.Drawing.Size(87, 12);
this.label6.TabIndex = 17;
this.label6.Text = "Column Name";
//
// label4
//
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(455, 13);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(14, 12);
this.label4.TabIndex = 14;
this.label4.Text = "~";
//
// nudCE
//
this.nudCE.Location = new System.Drawing.Point(474, 9);
this.nudCE.Maximum = new decimal(new int[] {
65535,
0,
0,
0});
this.nudCE.Name = "nudCE";
this.nudCE.Size = new System.Drawing.Size(45, 21);
this.nudCE.TabIndex = 13;
this.nudCE.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.nudCE.Value = new decimal(new int[] {
14,
0,
0,
0});
//
// nudCS
//
this.nudCS.Location = new System.Drawing.Point(406, 9);
this.nudCS.Maximum = new decimal(new int[] {
65535,
0,
0,
0});
this.nudCS.Name = "nudCS";
this.nudCS.Size = new System.Drawing.Size(45, 21);
this.nudCS.TabIndex = 12;
this.nudCS.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.nudCS.Value = new decimal(new int[] {
2,
0,
0,
0});
//
// label5
//
this.label5.AutoSize = true;
this.label5.Location = new System.Drawing.Point(335, 13);
this.label5.Name = "label5";
this.label5.Size = new System.Drawing.Size(64, 12);
this.label5.TabIndex = 11;
this.label5.Text = "Col Range";
//
// label3
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(455, 40);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(14, 12);
this.label3.TabIndex = 10;
this.label3.Text = "~";
//
// nudE
//
this.nudE.Location = new System.Drawing.Point(474, 36);
this.nudE.Maximum = new decimal(new int[] {
65535,
0,
0,
0});
this.nudE.Name = "nudE";
this.nudE.Size = new System.Drawing.Size(45, 21);
this.nudE.TabIndex = 9;
this.nudE.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.nudE.Value = new decimal(new int[] {
300,
0,
0,
0});
//
// nudS
//
this.nudS.Location = new System.Drawing.Point(406, 36);
this.nudS.Maximum = new decimal(new int[] {
65535,
0,
0,
0});
this.nudS.Name = "nudS";
this.nudS.Size = new System.Drawing.Size(45, 21);
this.nudS.TabIndex = 8;
this.nudS.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.nudS.Value = new decimal(new int[] {
5,
0,
0,
0});
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(329, 40);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(70, 12);
this.label2.TabIndex = 7;
this.label2.Text = "Row Range";
//
// numericUpDown1
//
this.numericUpDown1.Location = new System.Drawing.Point(261, 9);
this.numericUpDown1.Maximum = new decimal(new int[] {
10,
0,
0,
0});
this.numericUpDown1.Name = "numericUpDown1";
this.numericUpDown1.Size = new System.Drawing.Size(45, 21);
this.numericUpDown1.TabIndex = 3;
this.numericUpDown1.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(218, 13);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(37, 12);
this.label1.TabIndex = 2;
this.label1.Text = "Sheet";
//
// bn
//
this.bn.AddNewItem = this.bindingNavigatorAddNewItem;
this.bn.BindingSource = this.bs;
this.bn.CountItem = this.bindingNavigatorCountItem;
this.bn.DeleteItem = this.bindingNavigatorDeleteItem;
this.bn.Dock = System.Windows.Forms.DockStyle.Bottom;
this.bn.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.bindingNavigatorMoveFirstItem,
this.bindingNavigatorMovePreviousItem,
this.bindingNavigatorSeparator,
this.bindingNavigatorPositionItem,
this.bindingNavigatorCountItem,
this.bindingNavigatorSeparator1,
this.bindingNavigatorMoveNextItem,
this.bindingNavigatorMoveLastItem,
this.bindingNavigatorSeparator2,
this.bindingNavigatorAddNewItem,
this.bindingNavigatorDeleteItem,
this.progressBar1});
this.bn.Location = new System.Drawing.Point(0, 632);
this.bn.MoveFirstItem = this.bindingNavigatorMoveFirstItem;
this.bn.MoveLastItem = this.bindingNavigatorMoveLastItem;
this.bn.MoveNextItem = this.bindingNavigatorMoveNextItem;
this.bn.MovePreviousItem = this.bindingNavigatorMovePreviousItem;
this.bn.Name = "bn";
this.bn.PositionItem = this.bindingNavigatorPositionItem;
this.bn.Size = new System.Drawing.Size(906, 25);
this.bn.TabIndex = 2;
this.bn.Text = "bindingNavigator1";
//
// bindingNavigatorAddNewItem
//
this.bindingNavigatorAddNewItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorAddNewItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorAddNewItem.Image")));
this.bindingNavigatorAddNewItem.Name = "bindingNavigatorAddNewItem";
this.bindingNavigatorAddNewItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorAddNewItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorAddNewItem.Text = "새로 추가";
//
// bindingNavigatorCountItem
//
this.bindingNavigatorCountItem.Name = "bindingNavigatorCountItem";
this.bindingNavigatorCountItem.Size = new System.Drawing.Size(27, 22);
this.bindingNavigatorCountItem.Text = "/{0}";
this.bindingNavigatorCountItem.ToolTipText = "전체 항목 수";
//
// bindingNavigatorDeleteItem
//
this.bindingNavigatorDeleteItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorDeleteItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorDeleteItem.Image")));
this.bindingNavigatorDeleteItem.Name = "bindingNavigatorDeleteItem";
this.bindingNavigatorDeleteItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorDeleteItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorDeleteItem.Text = "삭제";
//
// bindingNavigatorMoveFirstItem
//
this.bindingNavigatorMoveFirstItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveFirstItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveFirstItem.Image")));
this.bindingNavigatorMoveFirstItem.Name = "bindingNavigatorMoveFirstItem";
this.bindingNavigatorMoveFirstItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveFirstItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveFirstItem.Text = "처음으로 이동";
//
// bindingNavigatorMovePreviousItem
//
this.bindingNavigatorMovePreviousItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMovePreviousItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMovePreviousItem.Image")));
this.bindingNavigatorMovePreviousItem.Name = "bindingNavigatorMovePreviousItem";
this.bindingNavigatorMovePreviousItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMovePreviousItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMovePreviousItem.Text = "이전으로 이동";
//
// bindingNavigatorSeparator
//
this.bindingNavigatorSeparator.Name = "bindingNavigatorSeparator";
this.bindingNavigatorSeparator.Size = new System.Drawing.Size(6, 25);
//
// bindingNavigatorPositionItem
//
this.bindingNavigatorPositionItem.AccessibleName = "위치";
this.bindingNavigatorPositionItem.AutoSize = false;
this.bindingNavigatorPositionItem.Name = "bindingNavigatorPositionItem";
this.bindingNavigatorPositionItem.Size = new System.Drawing.Size(50, 23);
this.bindingNavigatorPositionItem.Text = "0";
this.bindingNavigatorPositionItem.ToolTipText = "현재 위치";
//
// bindingNavigatorSeparator1
//
this.bindingNavigatorSeparator1.Name = "bindingNavigatorSeparator1";
this.bindingNavigatorSeparator1.Size = new System.Drawing.Size(6, 25);
//
// bindingNavigatorMoveNextItem
//
this.bindingNavigatorMoveNextItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveNextItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveNextItem.Image")));
this.bindingNavigatorMoveNextItem.Name = "bindingNavigatorMoveNextItem";
this.bindingNavigatorMoveNextItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveNextItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveNextItem.Text = "다음으로 이동";
//
// bindingNavigatorMoveLastItem
//
this.bindingNavigatorMoveLastItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveLastItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveLastItem.Image")));
this.bindingNavigatorMoveLastItem.Name = "bindingNavigatorMoveLastItem";
this.bindingNavigatorMoveLastItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveLastItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveLastItem.Text = "마지막으로 이동";
//
// bindingNavigatorSeparator2
//
this.bindingNavigatorSeparator2.Name = "bindingNavigatorSeparator2";
this.bindingNavigatorSeparator2.Size = new System.Drawing.Size(6, 25);
//
// progressBar1
//
this.progressBar1.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.progressBar1.Name = "progressBar1";
this.progressBar1.Size = new System.Drawing.Size(200, 22);
//
// sd
//
this.sd.Location = new System.Drawing.Point(42, 40);
this.sd.Name = "sd";
this.sd.Size = new System.Drawing.Size(170, 21);
this.sd.TabIndex = 15;
//
// ed
//
this.ed.Location = new System.Drawing.Point(42, 67);
this.ed.Name = "ed";
this.ed.Size = new System.Drawing.Size(170, 21);
this.ed.TabIndex = 16;
//
// cmbUser
//
this.cmbUser.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbUser.FormattingEnabled = true;
this.cmbUser.Location = new System.Drawing.Point(397, 90);
this.cmbUser.Name = "cmbUser";
this.cmbUser.Size = new System.Drawing.Size(171, 20);
this.cmbUser.TabIndex = 22;
//
// fJobReportImport
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(906, 657);
this.Controls.Add(this.dataGridView1);
this.Controls.Add(this.bn);
this.Controls.Add(this.panel1);
this.Name = "fJobReportImport";
this.Text = "업무일지 가져오기";
this.Load += new System.EventHandler(this.@__Load);
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown2)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.nudCE)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.nudCS)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.nudE)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.nudS)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bn)).EndInit();
this.bn.ResumeLayout(false);
this.bn.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.LinkLabel linkLabel1;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.DataGridView dataGridView1;
private System.Windows.Forms.Button button3;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.BindingNavigator bn;
private System.Windows.Forms.ToolStripButton bindingNavigatorAddNewItem;
private System.Windows.Forms.ToolStripLabel bindingNavigatorCountItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorDeleteItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveFirstItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorMovePreviousItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator;
private System.Windows.Forms.ToolStripTextBox bindingNavigatorPositionItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator1;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveNextItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveLastItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator2;
private System.Windows.Forms.ToolStripProgressBar progressBar1;
private System.Windows.Forms.BindingSource bs;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.NumericUpDown numericUpDown1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.NumericUpDown nudE;
private System.Windows.Forms.NumericUpDown nudS;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.NumericUpDown nudCE;
private System.Windows.Forms.NumericUpDown nudCS;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.NumericUpDown numericUpDown2;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.CheckBox checkBox1;
private System.Windows.Forms.Label label7;
private System.Windows.Forms.DateTimePicker ed;
private System.Windows.Forms.DateTimePicker sd;
private System.Windows.Forms.ComboBox cmbUser;
}
}

View File

@@ -0,0 +1,323 @@
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 fJobReportImport : Form
{
DataTable dt = new dsPRJ.JobReportDataTable();
DataTable dtExcel = new DataTable();
public fJobReportImport()
{
InitializeComponent();
this.FormClosed += __Closed;
}
private void __Load(object sender, EventArgs e)
{
this.sd.Value = DateTime.Parse( DateTime.Now.Year.ToString("0000") + "-01-01");
this.ed.Value = DateTime.Now;
//담당자목록
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;
}
void __Closed(object sender, FormClosedEventArgs e)
{
}
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
OpenFileDialog od = new OpenFileDialog();
od.Filter = "excel|*.xlsx|all files|*.*";
// od.InitialDirectory = FCOMMON.Util.CurrentPath + "model";
od.FilterIndex = 1;
od.RestoreDirectory = true;
if (od.ShowDialog() != System.Windows.Forms.DialogResult.OK) return;
textBox1.Text = od.FileName;
}
private void button1_Click(object sender, EventArgs e)
{
int ColumnNameNo = (int)numericUpDown2.Value;
if(textBox1.Text.Trim() == "")
{
FCOMMON.Util.MsgE("파일을 선택하세요");
textBox1.Focus();
return;
}
if(!System.IO.File.Exists(textBox1.Text))
{
FCOMMON.Util.MsgE("입력하신 파일이 존재하지 않습니다.");
textBox1.Focus();
textBox1.SelectAll();
return;
}
dtExcel.Columns.Clear();
dtExcel.Rows.Clear();
dtExcel.AcceptChanges();
libxl.Book book;// = new libxl.BinBook();
book = new libxl.XmlBook();
book.setKey(FCOMMON.info.libxlCompany, FCOMMON.info.libxlKey);
try
{
book.load(textBox1.Text);
}catch (Exception ex)
{
FCOMMON.Util.MsgE(ex.Message);
return;
}
int sheetNum = (int)numericUpDown1.Value;
if (sheetNum >= book.sheetCount())
{
FCOMMON.Util.MsgE("입력한 시트 번호는 존재하지 않습니다.");
book = null;
return;
}
var sheet = book.getSheet(sheetNum);
var MaxRow = sheet.lastRow();
var MinRow = sheet.firstRow();
MaxRow = (int)Math.Min(MaxRow, nudE.Value-1);
MinRow = (int)Math.Max(MinRow, nudS.Value-1);
if(MinRow <= (ColumnNameNo-1))
{
FCOMMON.Util.MsgI("시작줄을 제목줄 보다 커야 합니다. 자동으로 +1 증가합니다.");
MinRow = ColumnNameNo ;
}
var MaxCol = sheet.lastCol();
var MinCol = sheet.firstCol();
MaxCol = (int)Math.Min(MaxCol, nudCE.Value - 1);
MinCol = (int)Math.Max(MinCol, nudCS.Value - 1);
//제목줄을 처리한다. 181029
List<string> cols = new List<string>();
string sDate = sd.Value.ToShortDateString();
string eDate = ed.Value.ToShortDateString();
for (int c = MinCol; c <= MaxCol; c++)
{
var strVallue = sheet.readStr(ColumnNameNo-1, c);
if (strVallue.Trim()=="" )
{
if (c == MinCol)
{
//첫줄 첫행이 빈값이면 처리하지 않는다.
FCOMMON.Util.MsgE("열 제목에 빈값이 있어 처리되지 못합니다.");
return;
}
else
{
//빈값이 나왓으므로 열 최대값을 변경해준다.
if(c < MaxCol)
{
FCOMMON.Util.MsgI("빈값으로 인해 최대 열 번호를 " + c.ToString() + "로 변경합니다");
MaxCol = c;
break;
}
}
}
cols.Add(strVallue);
this.dtExcel.Columns.Add(strVallue);
}
try{
for (int r = MinRow; r <= MaxRow; r++)
{
DataRow dr = dtExcel.NewRow();
Boolean nullColumn = false;
for (int c = MinCol; c <= MaxCol; c++)
{
if (sheet.isDate(r, c))
{
var datevalue = sheet.readNum(r, c);
int y, m, d;
y = m = d = 0;
book.dateUnpack(datevalue, ref y, ref m, ref d);
if (y == 1900) y = DateTime.Now.Year;
if (y >= 2000)
dr[cols[c - MinCol]] = string.Format("{0:0000}-{1:00}-{2:00}", y, m, d);
else
dr[cols[c - MinCol]] = string.Empty;
//일자가 만약 넘어서면 패스한다.
if(cols[c]=="일자" )
{
string value = dr[cols[c - MinCol]].ToString();
if(value == "")
{
nullColumn = true; //날짜가 없다면 패스
break;
} else if(value.CompareTo(sDate) < 0)
{
nullColumn = true; //과거데이터라서 패스
break;
} else if(value.CompareTo(eDate) > 0)
{
nullColumn = true; //미래데이터 패스
break;
}
}
}
else
{
var dateStrin = sheet.readStr(r, c);
var strVallue = sheet.readStr(r, c);
if (strVallue.Trim() == "" && c == MinCol)
{
//첫줄 첫행이 빈값이면 처리하지 않는다.
nullColumn = true;
break;
}
if (cols[c - MinCol].Trim() != "")
dr[cols[c - MinCol]] = strVallue;
}
}
if (nullColumn) continue; //줄처리를 못한 경우 넘어감
if (dr != null)
{
dtExcel.Rows.Add(dr);
}
}
dtExcel.AcceptChanges();
}
catch(Exception ex)
{
FCOMMON.Util.MsgE("불러오는 중 오류 발생\n" + ex.Message);
}
//
book = null;
this.bs.DataSource = dtExcel;
this.dataGridView1.DataSource = dtExcel;
this.bn.BindingSource = this.bs;
if(this.bs.Count < 1)
{
FCOMMON.Util.MsgE("입력된 자료가 없습니다.\n\n지정된 엑셀의 1번째 칸에 값이 없다면 입력되지 않습니다.");
}
}
private void button3_Click(object sender, EventArgs e)
{
if(dtExcel == null || dtExcel.Rows.Count < 1)
{
FCOMMON.Util.MsgE("등록 가능한 자료가 없습니다.");
return;
}
if(cmbUser.SelectedValue == null || cmbUser.Text.Trim()=="")
{
FCOMMON.Util.MsgE("사번이 입력되지 않았습니다.");
return;
}
System.Text.StringBuilder sb = new StringBuilder();
sb.AppendLine("다음 자료를 추가하시겠습니까?");
sb.AppendLine();
sb.AppendLine("'저장 완료' 메세지가 나올때 까지 기다려 주세요.");
sb.AppendLine();
sb.AppendLine("실행 하려면 '예' 를 누르세요");
var dlg = FCOMMON.Util.MsgQ(sb.ToString());
if (dlg != System.Windows.Forms.DialogResult.Yes) return;
dt.Clear();
dt.AcceptChanges();
this.progressBar1.Value = 0;
this.progressBar1.Maximum = dtExcel.Rows.Count;
//12,13
foreach (DataRow dr in dtExcel.Rows)
{
this.progressBar1.Value += 1;
//데이터추가
var newdr = dt.NewRow();
if (dr[1] == DBNull.Value || dr[1].ToString()=="") continue; //nullerror
var strdate = dr[1].ToString().Replace('/','-');
var datebuf = strdate.Split('-');
if (datebuf.Length == 2)
{
strdate = DateTime.Now.Year.ToString("0000") + "-" +
datebuf[0].PadLeft(2, '0') + "-" +
datebuf[1].PadLeft(2, '0');
}
newdr["pdate"] = strdate;
newdr["uid"] = cmbUser.SelectedValue.ToString(); // tbNo.Text.Trim();
newdr["requestpart"] = dr[2].ToString().Trim();
newdr["package"] = dr[3].ToString().Trim();
newdr["status"] = dr[4].ToString().Trim();
newdr["type"] = dr[5].ToString();
newdr["process"] = dr[6].ToString();
newdr["projectName"] = dr[7].ToString();
newdr["description"] = dr[8].ToString();
//프로젝트이름을 검색해서 PIDX를 결정해준다.
newdr["pidx"] = -1;// dr[3].ToString();
string hrsstr = "";
if (dr[9] != DBNull.Value) hrsstr = dr[9].ToString().Trim();
if (hrsstr.Trim() == "") hrsstr = "0";
newdr["hrs"] = double.Parse(hrsstr);
string otstr = "";
if (dr[10] != DBNull.Value) otstr = dr[10].ToString().Trim();
if (otstr.Trim() == "") otstr = "0";
newdr["ot"] = double.Parse(otstr);
newdr["remark"] = "";
newdr["import"] = true;
newdr["wuid"] = FCOMMON.info.Login.no;
newdr["wdate"] = DateTime.Now;
dt.Rows.Add(newdr);
}
var taE = new dsPRJTableAdapters.JobReportTableAdapter();
if (checkBox1.Checked) taE.DeleteImport(sd.Value.ToShortDateString(), ed.Value.ToShortDateString(), FCOMMON.info.Login.no, FCOMMON.info.Login.gcode);
taE.Update((dsPRJ.JobReportDataTable)dt);
dt.AcceptChanges();
FCOMMON.Util.MsgI("Save OK");
}
private void panel1_Paint(object sender, PaintEventArgs e)
{
}
}
}

View File

@@ -0,0 +1,191 @@
<?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>
<metadata name="bn.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="bindingNavigatorAddNewItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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==
</value>
</data>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>83, 17</value>
</metadata>
<data name="bindingNavigatorDeleteItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAW9JREFUOE+1kE0ow2Ecx3dV3krt4oJaOSCTvIRkMqSxyITIzCQHDouEdnFwIOVC
DrhIDiQl5UTiNG/z2ppafy1S2gX/uDwfY6i1v7Hie3nqeb7fz+/7/FR/Ilwn0G0Exw4fV5GJlXlEZxXC
rIet9bAQvB5Ymgn2sLYAvSZEux7RUQFzE4qQt4bCXAYjPaHvnDoCkLpsRGMB2JqCTGLIijDlwqQ9bEMV
i9OIytR3EMNWcJ/BWH8A6j8/bOGFxwXNxYEvGbMQ9XnQ1/K78KfY3/VXzkMY0qFGG2H4RoLGQshJQNbG
86CNhdrsX9a/uQZTPhQl4rMY4OLofbl3aX7I8uwPC7y/g1YdjyVJuEvT8e1tfwUYteHUxCCfHChDeHmG
QQvokjlOU+PbWA0x3pZnILVVI3uvQyHsbiLnqnGmRCF1NYD8pDhpRxOH7HQoAKZGkFKjceszQbpSrumX
bO+G80MFwKUTxgfgcO/b8D9IpXoFiiMDHIQm0skAAAAASUVORK5CYII=
</value>
</data>
<data name="bindingNavigatorMoveFirstItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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=
</value>
</data>
<data name="bindingNavigatorMovePreviousItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="bindingNavigatorMoveNextItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78
n73v1//OrX//u5VeJt2QyK5H/6ds+/W/ZOnf/wnT//63yT1LmiGBzQ//t659D9ZsXPLlv3T0tf/GkcuI
N8Sj6v7/krnv4JoVXXpIc4F96d3/gS3PyNMMAhZ5d/7bFFwhTzMIGGbdJl8zCOik3SBf81AEDAwAoH5f
oAc0QjgAAAAASUVORK5CYII=
</value>
</data>
<data name="bindingNavigatorMoveLastItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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==
</value>
</data>
</root>

View File

@@ -0,0 +1,506 @@
namespace FPJ0000.JobReport_
{
partial class fJobReport_Add
{
/// <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.components = new System.ComponentModel.Container();
System.Windows.Forms.Label hrsLabel;
System.Windows.Forms.Label typeLabel;
System.Windows.Forms.Label label1;
System.Windows.Forms.Label projectLabel;
System.Windows.Forms.Label label4;
System.Windows.Forms.Label stateLabel;
System.Windows.Forms.Label label5;
System.Windows.Forms.Label label3;
System.Windows.Forms.Label label6;
System.Windows.Forms.Label label2;
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.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();
this.richTextBoxEx1 = new RichTextBoxEx.RichTextBoxEx();
this.panel1 = new System.Windows.Forms.Panel();
this.tbTag = new System.Windows.Forms.TextBox();
hrsLabel = new System.Windows.Forms.Label();
typeLabel = new System.Windows.Forms.Label();
label1 = 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();
label3 = new System.Windows.Forms.Label();
label6 = new System.Windows.Forms.Label();
label2 = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dsPRJ)).BeginInit();
this.statusStrip1.SuspendLayout();
this.panel1.SuspendLayout();
this.SuspendLayout();
//
// hrsLabel
//
hrsLabel.AutoSize = true;
hrsLabel.Location = new System.Drawing.Point(15, 98);
hrsLabel.Name = "hrsLabel";
hrsLabel.Size = new System.Drawing.Size(53, 12);
hrsLabel.TabIndex = 16;
hrsLabel.Text = "근무시간";
//
// typeLabel
//
typeLabel.AutoSize = true;
typeLabel.Location = new System.Drawing.Point(374, 65);
typeLabel.Name = "typeLabel";
typeLabel.Size = new System.Drawing.Size(53, 12);
typeLabel.TabIndex = 13;
typeLabel.Text = "업무형태";
//
// label1
//
label1.AutoSize = true;
label1.Location = new System.Drawing.Point(15, 65);
label1.Name = "label1";
label1.Size = new System.Drawing.Size(53, 12);
label1.TabIndex = 10;
label1.Text = "요청부서";
//
// projectLabel
//
projectLabel.AutoSize = true;
projectLabel.Location = new System.Drawing.Point(15, 39);
projectLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
projectLabel.Name = "projectLabel";
projectLabel.Size = new System.Drawing.Size(53, 12);
projectLabel.TabIndex = 7;
projectLabel.Text = "프로젝트";
//
// label4
//
label4.AutoSize = true;
label4.Location = new System.Drawing.Point(531, 12);
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(320, 12);
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(27, 12);
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 = "등록일";
//
// label3
//
label3.AutoSize = true;
label3.Location = new System.Drawing.Point(188, 65);
label3.Name = "label3";
label3.Size = new System.Drawing.Size(41, 12);
label3.TabIndex = 10;
label3.Text = "패키지";
//
// label6
//
label6.AutoSize = true;
label6.Location = new System.Drawing.Point(582, 65);
label6.Name = "label6";
label6.Size = new System.Drawing.Size(53, 12);
label6.TabIndex = 13;
label6.Text = "업무분류";
//
// label2
//
label2.AutoSize = true;
label2.Location = new System.Drawing.Point(155, 98);
label2.Name = "label2";
label2.Size = new System.Drawing.Size(53, 12);
label2.TabIndex = 16;
label2.Text = "초과시간";
//
// lbSummary
//
this.lbSummary.AutoSize = true;
this.lbSummary.ForeColor = System.Drawing.Color.SlateGray;
this.lbSummary.Location = new System.Drawing.Point(298, 92);
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(72, 88);
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, 659);
this.statusStrip1.Name = "statusStrip1";
this.statusStrip1.Size = new System.Drawing.Size(969, 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(431, 61);
this.cmbType.Name = "cmbType";
this.cmbType.Size = new System.Drawing.Size(142, 20);
this.cmbType.TabIndex = 14;
this.cmbType.SelectedIndexChanged += new System.EventHandler(this.cmbType_SelectedIndexChanged);
//
// btSave
//
this.btSave.BackColor = System.Drawing.Color.SkyBlue;
this.btSave.Location = new System.Drawing.Point(829, 6);
this.btSave.Name = "btSave";
this.btSave.Size = new System.Drawing.Size(133, 115);
this.btSave.TabIndex = 20;
this.btSave.Text = "확인";
this.btSave.UseVisualStyleBackColor = false;
this.btSave.Click += new System.EventHandler(this.button1_Click);
//
// dtPdate
//
this.dtPdate.Location = new System.Drawing.Point(73, 8);
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(588, 8);
this.cmbUser.Margin = new System.Windows.Forms.Padding(4);
this.cmbUser.Name = "cmbUser";
this.cmbUser.Size = new System.Drawing.Size(234, 20);
this.cmbUser.TabIndex = 6;
this.cmbUser.SelectedIndexChanged += new System.EventHandler(this.cmbUser_SelectedIndexChanged);
//
// tbProjectIndex
//
this.tbProjectIndex.Location = new System.Drawing.Point(758, 35);
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(213, 88);
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(253, 8);
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(641, 61);
this.cmbProcess.Name = "cmbProcess";
this.cmbProcess.Size = new System.Drawing.Size(181, 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(353, 8);
this.cmbState.Margin = new System.Windows.Forms.Padding(4);
this.cmbState.Name = "cmbState";
this.cmbState.Size = new System.Drawing.Size(160, 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(235, 61);
this.cmbPackage.Name = "cmbPackage";
this.cmbPackage.Size = new System.Drawing.Size(131, 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(73, 61);
this.cmbRequest.Name = "cmbRequest";
this.cmbRequest.Size = new System.Drawing.Size(108, 20);
this.cmbRequest.TabIndex = 11;
//
// ta
//
this.ta.ClearBeforeFill = true;
//
// tam
//
this.tam.BackupDataSetBeforeUpdate = false;
this.tam.EETGW_JobReport_EBoardTableAdapter = null;
this.tam.EETGW_NoteTableAdapter = null;
this.tam.EETGW_ProjecthistoryDTableAdapter = null;
this.tam.EETGW_ProjectToDoTableAdapter = null;
this.tam.EETGW_SaveCostTableAdapter = null;
this.tam.JobReportTableAdapter = this.ta;
this.tam.ProjectPartStatusTableAdapter = null;
this.tam.ProjectsHistoryTableAdapter = null;
this.tam.ProjectsIOMapTableAdapter = null;
this.tam.ProjectsMailListTableAdapter = null;
this.tam.ProjectsPartTableAdapter = null;
this.tam.ProjectsTableAdapter = null;
this.tam.SPMasterTableAdapter = null;
this.tam.UpdateOrder = FPJ0000.dsPRJTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete;
//
// chkAutoAdd
//
this.chkAutoAdd.AutoSize = true;
this.chkAutoAdd.Location = new System.Drawing.Point(646, 94);
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(72, 35);
this.tbProject.Name = "tbProject";
this.tbProject.Size = new System.Drawing.Size(679, 20);
this.tbProject.TabIndex = 55;
//
// richTextBoxEx1
//
this.richTextBoxEx1.AllowBullets = true;
this.richTextBoxEx1.AllowDefaultInsertText = true;
this.richTextBoxEx1.AllowDefaultSmartText = true;
this.richTextBoxEx1.AllowHyphenation = true;
this.richTextBoxEx1.AllowPictures = true;
this.richTextBoxEx1.AllowSpellCheck = true;
this.richTextBoxEx1.AutoValidate = System.Windows.Forms.AutoValidate.EnablePreventFocusChange;
this.richTextBoxEx1.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBoxEx1.FilePath = "";
this.richTextBoxEx1.Location = new System.Drawing.Point(0, 129);
this.richTextBoxEx1.Name = "richTextBoxEx1";
this.richTextBoxEx1.Rtf = "{\\rtf1\\ansi\\ansicpg1252\\deff0\\nouicompat{\\fonttbl{\\f0\\fnil\\fcharset0 Arial;}}\r\n{\\" +
"*\\generator Riched20 10.0.18362}\\viewkind4\\uc1 \r\n\\pard\\fs20\\lang1042 richTextBox" +
"Ex1\\par\r\n}\r\n";
this.richTextBoxEx1.SetColorWithFont = true;
this.richTextBoxEx1.ShowToolStrip = true;
this.richTextBoxEx1.Size = new System.Drawing.Size(969, 509);
this.richTextBoxEx1.TabIndex = 58;
//
// panel1
//
this.panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(200)))), ((int)(((byte)(200)))), ((int)(((byte)(200)))));
this.panel1.Controls.Add(this.dtPdate);
this.panel1.Controls.Add(this.tbHrs);
this.panel1.Controls.Add(this.tbProject);
this.panel1.Controls.Add(label2);
this.panel1.Controls.Add(hrsLabel);
this.panel1.Controls.Add(this.chkAutoAdd);
this.panel1.Controls.Add(this.cmbType);
this.panel1.Controls.Add(label5);
this.panel1.Controls.Add(typeLabel);
this.panel1.Controls.Add(this.lbSummary);
this.panel1.Controls.Add(label6);
this.panel1.Controls.Add(this.cmbPackage);
this.panel1.Controls.Add(this.btSave);
this.panel1.Controls.Add(this.cmbRequest);
this.panel1.Controls.Add(label1);
this.panel1.Controls.Add(this.cmbState);
this.panel1.Controls.Add(label3);
this.panel1.Controls.Add(stateLabel);
this.panel1.Controls.Add(this.cmbUser);
this.panel1.Controls.Add(this.cmbProcess);
this.panel1.Controls.Add(this.tbProjectIndex);
this.panel1.Controls.Add(this.tbWW);
this.panel1.Controls.Add(projectLabel);
this.panel1.Controls.Add(label4);
this.panel1.Controls.Add(this.tbOt);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(969, 129);
this.panel1.TabIndex = 59;
//
// tbTag
//
this.tbTag.Dock = System.Windows.Forms.DockStyle.Bottom;
this.tbTag.Location = new System.Drawing.Point(0, 638);
this.tbTag.Name = "tbTag";
this.tbTag.Size = new System.Drawing.Size(969, 21);
this.tbTag.TabIndex = 60;
this.tbTag.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// fJobReport_Add
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(969, 681);
this.Controls.Add(this.richTextBoxEx1);
this.Controls.Add(this.tbTag);
this.Controls.Add(this.panel1);
this.Controls.Add(this.statusStrip1);
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "fJobReport_Add";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
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.panel1.ResumeLayout(false);
this.panel1.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.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;
private RichTextBoxEx.RichTextBoxEx richTextBoxEx1;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.TextBox tbTag;
}
}

View File

@@ -0,0 +1,478 @@
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.panel1.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;
tbTag.Text = dr.tag;
//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;
if (string.IsNullOrEmpty(dr.description2))
{
this.richTextBoxEx1.Text = dr.description;
}
else
{
try
{
this.richTextBoxEx1.Rtf = dr.description2;
}
catch (Exception ex)
{
this.richTextBoxEx1.Text = dr.description;
}
}
this.Show();
Application.DoEvents();
if (this.richTextBoxEx1.Text.Trim() != "")
{
this.richTextBoxEx1.Focus();
}
else
{
tbProject.Focus();
tbProject.SelectAll();
}
tbProject.Tag = tbProject.Text;
// if (string.IsNullOrEmpty(richTextBox1.Text)) richTextBox1.Text = dr.description;
//editor
// ed = new editform.editor();
//ed.AllowDiscAccess = true;
//ed.WindowTitle = "Quick Edit";
//ed.StartingFont = new Font("Courier New", 12.0f, FontStyle.Regular);
//ed.DisplayEditForm(this.panel1);
//ed.AllowRtf = true;
bInit = true;
}
// editform.editor ed;
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.tbProject.Tag = 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 != "휴가" && string.IsNullOrEmpty( this.richTextBoxEx1.Text )==true)
{
FCOMMON.Util.MsgE("진행 내용이 없습니다.");
this.richTextBoxEx1.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(), this.richTextBoxEx1.Text, this.richTextBoxEx1.Rtf);
}
}
double hrs2 = 0.0;
if(double.TryParse(tbHrs.Text,out hrs2) ==false)
{
FCOMMON.Util.MsgE("근무시간을 숫자로 입력하세요");
tbHrs.Focus();
tbHrs.SelectAll();
return;
}
//if(hrs2 > 8)
//{
// FCOMMON.Util.MsgE("1일 최대근무시간은 8시간을 초과할 수 없습니다\n초과시간을 사용하세요");
// tbHrs.SelectAll();
// tbHrs.Focus();
// return;
//}
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;
this.dr.tag = tbTag.Text.Trim();
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 = richTextBox1.Text.Trim();
//MessageBox.Show(richTextBox1.Text);
this.dr.description = richTextBoxEx1.Text;
this.dr.description2 = richTextBoxEx1.Rtf; // ef.DocumentText;// richTextBox1.Rtf;
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(); ;
}
}
}

View File

@@ -0,0 +1,171 @@
<?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>
<metadata name="hrsLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="typeLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label1.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="projectLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label4.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="stateLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label5.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label3.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label6.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label2.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>100, 17</value>
</metadata>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>100, 17</value>
</metadata>
<metadata name="dsPRJ.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="dsPRJ.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>299, 17</value>
</metadata>
<metadata name="ta.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>164, 17</value>
</metadata>
<metadata name="tam.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>226, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,564 @@
namespace FPJ0000.JobReport_
{
partial class fJobReport_AddAI
{
/// <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.components = new System.ComponentModel.Container();
System.Windows.Forms.Label hrsLabel;
System.Windows.Forms.Label typeLabel;
System.Windows.Forms.Label label1;
System.Windows.Forms.Label projectLabel;
System.Windows.Forms.Label label4;
System.Windows.Forms.Label stateLabel;
System.Windows.Forms.Label label5;
System.Windows.Forms.Label label3;
System.Windows.Forms.Label label6;
System.Windows.Forms.Label label2;
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.dts = 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.tbProject = new System.Windows.Forms.ComboBox();
this.richTextBoxEx1 = new RichTextBoxEx.RichTextBoxEx();
this.panel1 = new System.Windows.Forms.Panel();
this.dte = new System.Windows.Forms.DateTimePicker();
this.tbWeekE = new System.Windows.Forms.TextBox();
this.chkEnable = new System.Windows.Forms.CheckBox();
this.radAuto = new System.Windows.Forms.RadioButton();
this.radLogin = new System.Windows.Forms.RadioButton();
this.tbTag = new System.Windows.Forms.TextBox();
this.checkBox1 = new System.Windows.Forms.CheckBox();
hrsLabel = new System.Windows.Forms.Label();
typeLabel = new System.Windows.Forms.Label();
label1 = 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();
label3 = new System.Windows.Forms.Label();
label6 = new System.Windows.Forms.Label();
label2 = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dsPRJ)).BeginInit();
this.statusStrip1.SuspendLayout();
this.panel1.SuspendLayout();
this.SuspendLayout();
//
// hrsLabel
//
hrsLabel.AutoSize = true;
hrsLabel.Location = new System.Drawing.Point(16, 155);
hrsLabel.Name = "hrsLabel";
hrsLabel.Size = new System.Drawing.Size(53, 12);
hrsLabel.TabIndex = 16;
hrsLabel.Text = "근무시간";
//
// typeLabel
//
typeLabel.AutoSize = true;
typeLabel.Location = new System.Drawing.Point(16, 120);
typeLabel.Name = "typeLabel";
typeLabel.Size = new System.Drawing.Size(53, 12);
typeLabel.TabIndex = 13;
typeLabel.Text = "업무형태";
//
// label1
//
label1.AutoSize = true;
label1.Location = new System.Drawing.Point(15, 94);
label1.Name = "label1";
label1.Size = new System.Drawing.Size(53, 12);
label1.TabIndex = 10;
label1.Text = "요청부서";
//
// projectLabel
//
projectLabel.AutoSize = true;
projectLabel.Location = new System.Drawing.Point(15, 68);
projectLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
projectLabel.Name = "projectLabel";
projectLabel.Size = new System.Drawing.Size(53, 12);
projectLabel.TabIndex = 7;
projectLabel.Text = "프로젝트";
//
// label4
//
label4.AutoSize = true;
label4.Location = new System.Drawing.Point(321, 41);
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(333, 12);
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(27, 12);
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 = "시작일";
//
// label3
//
label3.AutoSize = true;
label3.Location = new System.Drawing.Point(331, 94);
label3.Name = "label3";
label3.Size = new System.Drawing.Size(41, 12);
label3.TabIndex = 10;
label3.Text = "패키지";
//
// label6
//
label6.AutoSize = true;
label6.Location = new System.Drawing.Point(319, 124);
label6.Name = "label6";
label6.Size = new System.Drawing.Size(53, 12);
label6.TabIndex = 13;
label6.Text = "업무분류";
//
// label2
//
label2.AutoSize = true;
label2.Location = new System.Drawing.Point(177, 155);
label2.Name = "label2";
label2.Size = new System.Drawing.Size(53, 12);
label2.TabIndex = 16;
label2.Text = "초과시간";
//
// 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(73, 145);
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, 659);
this.statusStrip1.Name = "statusStrip1";
this.statusStrip1.Size = new System.Drawing.Size(850, 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(73, 116);
this.cmbType.Name = "cmbType";
this.cmbType.Size = new System.Drawing.Size(240, 20);
this.cmbType.TabIndex = 14;
this.cmbType.SelectedIndexChanged += new System.EventHandler(this.cmbType_SelectedIndexChanged);
//
// btSave
//
this.btSave.BackColor = System.Drawing.Color.SkyBlue;
this.btSave.Location = new System.Drawing.Point(706, 8);
this.btSave.Name = "btSave";
this.btSave.Size = new System.Drawing.Size(133, 132);
this.btSave.TabIndex = 20;
this.btSave.Text = "확인";
this.btSave.UseVisualStyleBackColor = false;
this.btSave.Click += new System.EventHandler(this.button1_Click);
//
// dts
//
this.dts.Location = new System.Drawing.Point(73, 8);
this.dts.Margin = new System.Windows.Forms.Padding(4);
this.dts.Name = "dts";
this.dts.Size = new System.Drawing.Size(178, 21);
this.dts.TabIndex = 1;
this.dts.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(378, 37);
this.cmbUser.Margin = new System.Windows.Forms.Padding(4);
this.cmbUser.Name = "cmbUser";
this.cmbUser.Size = new System.Drawing.Size(321, 20);
this.cmbUser.TabIndex = 6;
this.cmbUser.SelectedIndexChanged += new System.EventHandler(this.cmbUser_SelectedIndexChanged);
//
// tbProjectIndex
//
this.tbProjectIndex.Location = new System.Drawing.Point(635, 64);
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(236, 145);
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;
this.tbOt.TextChanged += new System.EventHandler(this.tbOt_TextChanged);
//
// tbWW
//
this.tbWW.Location = new System.Drawing.Point(253, 8);
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(378, 120);
this.cmbProcess.Name = "cmbProcess";
this.cmbProcess.Size = new System.Drawing.Size(321, 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(378, 8);
this.cmbState.Margin = new System.Windows.Forms.Padding(4);
this.cmbState.Name = "cmbState";
this.cmbState.Size = new System.Drawing.Size(321, 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(378, 90);
this.cmbPackage.Name = "cmbPackage";
this.cmbPackage.Size = new System.Drawing.Size(321, 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(73, 90);
this.cmbRequest.Name = "cmbRequest";
this.cmbRequest.Size = new System.Drawing.Size(240, 20);
this.cmbRequest.TabIndex = 11;
//
// ta
//
this.ta.ClearBeforeFill = true;
//
// tam
//
this.tam.BackupDataSetBeforeUpdate = false;
this.tam.EETGW_JobReport_AutoInputTableAdapter = null;
this.tam.EETGW_JobReport_EBoardTableAdapter = null;
this.tam.EETGW_NoteTableAdapter = null;
this.tam.EETGW_ProjecthistoryDTableAdapter = null;
this.tam.EETGW_ProjectToDoTableAdapter = null;
this.tam.EETGW_SaveCostTableAdapter = null;
this.tam.JobReportTableAdapter = this.ta;
this.tam.ProjectPartStatusTableAdapter = null;
this.tam.ProjectsHistoryTableAdapter = null;
this.tam.ProjectsIOMapTableAdapter = null;
this.tam.ProjectsMailListTableAdapter = null;
this.tam.ProjectsPartTableAdapter = null;
this.tam.ProjectsTableAdapter = null;
this.tam.SPMasterTableAdapter = null;
this.tam.UpdateOrder = FPJ0000.dsPRJTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete;
//
// 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(72, 64);
this.tbProject.Name = "tbProject";
this.tbProject.Size = new System.Drawing.Size(556, 20);
this.tbProject.TabIndex = 55;
//
// richTextBoxEx1
//
this.richTextBoxEx1.AllowBullets = true;
this.richTextBoxEx1.AllowDefaultInsertText = true;
this.richTextBoxEx1.AllowDefaultSmartText = true;
this.richTextBoxEx1.AllowHyphenation = true;
this.richTextBoxEx1.AllowPictures = true;
this.richTextBoxEx1.AllowSpellCheck = true;
this.richTextBoxEx1.AutoValidate = System.Windows.Forms.AutoValidate.EnablePreventFocusChange;
this.richTextBoxEx1.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBoxEx1.FilePath = "";
this.richTextBoxEx1.Location = new System.Drawing.Point(0, 186);
this.richTextBoxEx1.Name = "richTextBoxEx1";
this.richTextBoxEx1.Rtf = "{\\rtf1\\ansi\\ansicpg1252\\deff0\\nouicompat{\\fonttbl{\\f0\\fnil\\fcharset0 Arial;}}\r\n{\\" +
"*\\generator Riched20 10.0.18362}\\viewkind4\\uc1 \r\n\\pard\\fs20\\lang1042 richTextBox" +
"Ex1\\par\r\n}\r\n";
this.richTextBoxEx1.SetColorWithFont = true;
this.richTextBoxEx1.ShowToolStrip = true;
this.richTextBoxEx1.Size = new System.Drawing.Size(850, 452);
this.richTextBoxEx1.TabIndex = 58;
//
// panel1
//
this.panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(224)))), ((int)(((byte)(192)))));
this.panel1.Controls.Add(this.checkBox1);
this.panel1.Controls.Add(this.dte);
this.panel1.Controls.Add(this.tbWeekE);
this.panel1.Controls.Add(this.chkEnable);
this.panel1.Controls.Add(this.radAuto);
this.panel1.Controls.Add(this.radLogin);
this.panel1.Controls.Add(this.dts);
this.panel1.Controls.Add(this.tbHrs);
this.panel1.Controls.Add(this.tbProject);
this.panel1.Controls.Add(label2);
this.panel1.Controls.Add(hrsLabel);
this.panel1.Controls.Add(this.cmbType);
this.panel1.Controls.Add(label5);
this.panel1.Controls.Add(typeLabel);
this.panel1.Controls.Add(label6);
this.panel1.Controls.Add(this.cmbPackage);
this.panel1.Controls.Add(this.btSave);
this.panel1.Controls.Add(this.cmbRequest);
this.panel1.Controls.Add(label1);
this.panel1.Controls.Add(this.cmbState);
this.panel1.Controls.Add(label3);
this.panel1.Controls.Add(stateLabel);
this.panel1.Controls.Add(this.cmbUser);
this.panel1.Controls.Add(this.cmbProcess);
this.panel1.Controls.Add(this.tbProjectIndex);
this.panel1.Controls.Add(this.tbWW);
this.panel1.Controls.Add(projectLabel);
this.panel1.Controls.Add(label4);
this.panel1.Controls.Add(this.tbOt);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(850, 186);
this.panel1.TabIndex = 59;
this.panel1.Paint += new System.Windows.Forms.PaintEventHandler(this.panel1_Paint);
//
// dte
//
this.dte.Location = new System.Drawing.Point(72, 37);
this.dte.Margin = new System.Windows.Forms.Padding(4);
this.dte.Name = "dte";
this.dte.Size = new System.Drawing.Size(178, 21);
this.dte.TabIndex = 59;
this.dte.ValueChanged += new System.EventHandler(this.dte_ValueChanged);
//
// tbWeekE
//
this.tbWeekE.Location = new System.Drawing.Point(252, 37);
this.tbWeekE.Margin = new System.Windows.Forms.Padding(4);
this.tbWeekE.Name = "tbWeekE";
this.tbWeekE.ReadOnly = true;
this.tbWeekE.Size = new System.Drawing.Size(63, 21);
this.tbWeekE.TabIndex = 60;
this.tbWeekE.TabStop = false;
this.tbWeekE.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// chkEnable
//
this.chkEnable.AutoSize = true;
this.chkEnable.Location = new System.Drawing.Point(444, 153);
this.chkEnable.Name = "chkEnable";
this.chkEnable.Size = new System.Drawing.Size(48, 16);
this.chkEnable.TabIndex = 57;
this.chkEnable.Text = "사용";
this.chkEnable.UseVisualStyleBackColor = true;
//
// radAuto
//
this.radAuto.AutoSize = true;
this.radAuto.Location = new System.Drawing.Point(624, 153);
this.radAuto.Name = "radAuto";
this.radAuto.Size = new System.Drawing.Size(75, 16);
this.radAuto.TabIndex = 56;
this.radAuto.TabStop = true;
this.radAuto.Text = "자동 생성";
this.radAuto.UseVisualStyleBackColor = true;
//
// radLogin
//
this.radLogin.AutoSize = true;
this.radLogin.Checked = true;
this.radLogin.Location = new System.Drawing.Point(507, 153);
this.radLogin.Name = "radLogin";
this.radLogin.Size = new System.Drawing.Size(99, 16);
this.radLogin.TabIndex = 56;
this.radLogin.TabStop = true;
this.radLogin.Text = "로그인시 생성";
this.radLogin.UseVisualStyleBackColor = true;
//
// tbTag
//
this.tbTag.Dock = System.Windows.Forms.DockStyle.Bottom;
this.tbTag.Location = new System.Drawing.Point(0, 638);
this.tbTag.Name = "tbTag";
this.tbTag.Size = new System.Drawing.Size(850, 21);
this.tbTag.TabIndex = 60;
this.tbTag.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// checkBox1
//
this.checkBox1.AutoSize = true;
this.checkBox1.Location = new System.Drawing.Point(8, 39);
this.checkBox1.Name = "checkBox1";
this.checkBox1.Size = new System.Drawing.Size(60, 16);
this.checkBox1.TabIndex = 61;
this.checkBox1.Text = "종료일";
this.checkBox1.UseVisualStyleBackColor = true;
this.checkBox1.CheckedChanged += new System.EventHandler(this.checkBox1_CheckedChanged);
//
// fJobReport_AddAI
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(850, 681);
this.Controls.Add(this.richTextBoxEx1);
this.Controls.Add(this.tbTag);
this.Controls.Add(this.panel1);
this.Controls.Add(this.statusStrip1);
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "fJobReport_AddAI";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
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.panel1.ResumeLayout(false);
this.panel1.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.DateTimePicker dts;
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.ComboBox tbProject;
private RichTextBoxEx.RichTextBoxEx richTextBoxEx1;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.TextBox tbTag;
private System.Windows.Forms.RadioButton radLogin;
private System.Windows.Forms.RadioButton radAuto;
private System.Windows.Forms.CheckBox chkEnable;
private System.Windows.Forms.DateTimePicker dte;
private System.Windows.Forms.TextBox tbWeekE;
private System.Windows.Forms.CheckBox checkBox1;
}
}

View File

@@ -0,0 +1,452 @@
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_AddAI : Form
{
dsPRJ.EETGW_JobReport_AutoInputRow dr;
Boolean copyMOde = false;
Boolean bInit = false;
public fJobReport_AddAI(dsPRJ.EETGW_JobReport_AutoInputRow 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.panel1.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;
if (dr.autoinput == "L") radLogin.Checked = true;
else radAuto.Checked = true;
//사용여부
chkEnable.Checked = dr.enable;
//담당자목록
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;
// tbWW.Text = dr.ww;
dts.Value = DateTime.Parse(dr.pdate); //일자선택
this.checkBox1.Checked = !dr.edate.isEmpty();
if(this.checkBox1.Checked) dte.Value = DateTime.Parse(dr.edate);
cmbUser.SelectedValue = dr.uid;
tbProject.Text = dr.projectName;
cmbRequest.SelectedValue = dr.requestpart;
cmbPackage.SelectedValue = dr.package;
cmbType.SelectedValue = dr.type;
cmbProcess.SelectedValue = dr.process;
tbTag.Text = dr.tag;
//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 (string.IsNullOrEmpty(dr.description2))
{
this.richTextBoxEx1.Text = dr.description;
}
else
{
try
{
this.richTextBoxEx1.Rtf = dr.description2;
}
catch (Exception ex)
{
this.richTextBoxEx1.Text = dr.description;
}
}
this.Show();
Application.DoEvents();
if (this.richTextBoxEx1.Text.Trim() != "")
{
this.richTextBoxEx1.Focus();
}
else
{
tbProject.Focus();
tbProject.SelectAll();
}
tbProject.Tag = tbProject.Text;
// if (string.IsNullOrEmpty(richTextBox1.Text)) richTextBox1.Text = dr.description;
//editor
// ed = new editform.editor();
//ed.AllowDiscAccess = true;
//ed.WindowTitle = "Quick Edit";
//ed.StartingFont = new Font("Courier New", 12.0f, FontStyle.Regular);
//ed.DisplayEditForm(this.panel1);
//ed.AllowRtf = true;
bInit = true;
}
// editform.editor ed;
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.tbProject.Tag = 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.dts.Value.ToShortDateString());
if (f.ShowDialog() != System.Windows.Forms.DialogResult.OK) return;
dts.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 != "휴가" && string.IsNullOrEmpty(this.richTextBoxEx1.Text) == true)
{
FCOMMON.Util.MsgE("진행 내용이 없습니다.");
this.richTextBoxEx1.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";
}
double hrs2 = 0.0;
if (double.TryParse(tbHrs.Text, out hrs2) == false)
{
FCOMMON.Util.MsgE("근무시간을 숫자로 입력하세요");
tbHrs.Focus();
tbHrs.SelectAll();
return;
}
//if(hrs2 > 8)
//{
// FCOMMON.Util.MsgE("1일 최대근무시간은 8시간을 초과할 수 없습니다\n초과시간을 사용하세요");
// tbHrs.SelectAll();
// tbHrs.Focus();
// return;
//}
if (radAuto.Checked) dr.autoinput = "A"; //항상자동
else dr.autoinput = "L"; //로그인자동
dr.enable = chkEnable.Checked;
this.dr.uid = this.cmbUser.SelectedValue.ToString();
this.dr.pdate = dts.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;
this.dr.tag = tbTag.Text.Trim();
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 = richTextBox1.Text.Trim();
//MessageBox.Show(richTextBox1.Text);
this.dr.description = richTextBoxEx1.Text;
this.dr.description2 = richTextBoxEx1.Rtf; // ef.DocumentText;// richTextBox1.Rtf;
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(dts.Value, myCWR, myFirstDOW);
tbWW.Text = "ww" + dat.ToString();
//공휴일이면 시간을 초기화한다.
if (tbHrs.Text == "") tbHrs.Text = "0";
if (tbOt.Text == "") tbOt.Text = "0";
float hrs = float.Parse(tbHrs.Text);
}
private void cmbUser_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void tbOt_TextChanged(object sender, EventArgs e)
{
}
private void panel1_Paint(object sender, PaintEventArgs e)
{
}
private void dte_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(dte.Value, myCWR, myFirstDOW);
this.tbWeekE.Text = "ww" + dat.ToString();
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
this.dte.Enabled = this.checkBox1.Checked;
}
}
}

View File

@@ -0,0 +1,171 @@
<?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>
<metadata name="hrsLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="typeLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label1.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="projectLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label4.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="stateLabel.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label5.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label3.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label6.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="label2.GenerateMember" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</metadata>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>100, 17</value>
</metadata>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>100, 17</value>
</metadata>
<metadata name="dsPRJ.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="dsPRJ.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>299, 17</value>
</metadata>
<metadata name="ta.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>164, 17</value>
</metadata>
<metadata name="tam.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>226, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,621 @@
namespace FPJ0000.JobReport_
{
partial class fLovProject
{
/// <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.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fLovProject));
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
this.bn = new System.Windows.Forms.BindingNavigator(this.components);
this.bsPrj = new System.Windows.Forms.BindingSource(this.components);
this.dsMSSQL = new FPJ0000.dsPRJ();
this.bindingNavigatorCountItem = new System.Windows.Forms.ToolStripLabel();
this.bindingNavigatorMoveFirstItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorMovePreviousItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorSeparator = new System.Windows.Forms.ToolStripSeparator();
this.bindingNavigatorPositionItem = new System.Windows.Forms.ToolStripTextBox();
this.bindingNavigatorSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.bindingNavigatorMoveNextItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorMoveLastItem = new System.Windows.Forms.ToolStripButton();
this.bindingNavigatorSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.btOKPrj = new System.Windows.Forms.ToolStripButton();
this.dvPrj = new System.Windows.Forms.DataGridView();
this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.reqstaff = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.status = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.taPrj = new FPJ0000.dsPRJTableAdapters.ProjectsTableAdapter();
this.tam = new FPJ0000.dsPRJTableAdapters.TableAdapterManager();
this.dvItem = new System.Windows.Forms.DataGridView();
this.bsJob = new System.Windows.Forms.BindingSource(this.components);
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.panel1 = new System.Windows.Forms.Panel();
this.label1 = new System.Windows.Forms.Label();
this.panel2 = new System.Windows.Forms.Panel();
this.bindingNavigator1 = new System.Windows.Forms.BindingNavigator(this.components);
this.toolStripLabel1 = new System.Windows.Forms.ToolStripLabel();
this.toolStripButton1 = new System.Windows.Forms.ToolStripButton();
this.toolStripButton2 = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.toolStripTextBox1 = new System.Windows.Forms.ToolStripTextBox();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.toolStripButton3 = new System.Windows.Forms.ToolStripButton();
this.toolStripButton4 = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
this.btOKJob = new System.Windows.Forms.ToolStripButton();
this.label2 = new System.Windows.Forms.Label();
this.dsQuery = new FPJ0000.dsQuery();
this.taJob = new FPJ0000.dsQueryTableAdapters.JobReportItemListTableAdapter();
this.pdateDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.projectNameDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.pidxDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
((System.ComponentModel.ISupportInitialize)(this.bn)).BeginInit();
this.bn.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.bsPrj)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dsMSSQL)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dvPrj)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dvItem)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bsJob)).BeginInit();
this.tableLayoutPanel1.SuspendLayout();
this.panel1.SuspendLayout();
this.panel2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.bindingNavigator1)).BeginInit();
this.bindingNavigator1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dsQuery)).BeginInit();
this.SuspendLayout();
//
// bn
//
this.bn.AddNewItem = null;
this.bn.BindingSource = this.bsPrj;
this.bn.CountItem = this.bindingNavigatorCountItem;
this.bn.DeleteItem = null;
this.bn.Dock = System.Windows.Forms.DockStyle.Bottom;
this.bn.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.bindingNavigatorMoveFirstItem,
this.bindingNavigatorMovePreviousItem,
this.bindingNavigatorSeparator,
this.bindingNavigatorPositionItem,
this.bindingNavigatorCountItem,
this.bindingNavigatorSeparator1,
this.bindingNavigatorMoveNextItem,
this.bindingNavigatorMoveLastItem,
this.bindingNavigatorSeparator2,
this.btOKPrj});
this.bn.Location = new System.Drawing.Point(0, 257);
this.bn.MoveFirstItem = this.bindingNavigatorMoveFirstItem;
this.bn.MoveLastItem = this.bindingNavigatorMoveLastItem;
this.bn.MoveNextItem = this.bindingNavigatorMoveNextItem;
this.bn.MovePreviousItem = this.bindingNavigatorMovePreviousItem;
this.bn.Name = "bn";
this.bn.PositionItem = this.bindingNavigatorPositionItem;
this.bn.Size = new System.Drawing.Size(746, 25);
this.bn.TabIndex = 0;
this.bn.Text = "bindingNavigator1";
//
// bsPrj
//
this.bsPrj.DataMember = "Projects";
this.bsPrj.DataSource = this.dsMSSQL;
this.bsPrj.Sort = "status desc";
this.bsPrj.CurrentChanged += new System.EventHandler(this.bs_CurrentChanged);
//
// dsMSSQL
//
this.dsMSSQL.DataSetName = "dsMSSQL";
this.dsMSSQL.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
//
// bindingNavigatorCountItem
//
this.bindingNavigatorCountItem.Name = "bindingNavigatorCountItem";
this.bindingNavigatorCountItem.Size = new System.Drawing.Size(27, 22);
this.bindingNavigatorCountItem.Text = "/{0}";
this.bindingNavigatorCountItem.ToolTipText = "전체 항목 수";
//
// bindingNavigatorMoveFirstItem
//
this.bindingNavigatorMoveFirstItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveFirstItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveFirstItem.Image")));
this.bindingNavigatorMoveFirstItem.Name = "bindingNavigatorMoveFirstItem";
this.bindingNavigatorMoveFirstItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveFirstItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveFirstItem.Text = "처음으로 이동";
//
// bindingNavigatorMovePreviousItem
//
this.bindingNavigatorMovePreviousItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMovePreviousItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMovePreviousItem.Image")));
this.bindingNavigatorMovePreviousItem.Name = "bindingNavigatorMovePreviousItem";
this.bindingNavigatorMovePreviousItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMovePreviousItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMovePreviousItem.Text = "이전으로 이동";
//
// bindingNavigatorSeparator
//
this.bindingNavigatorSeparator.Name = "bindingNavigatorSeparator";
this.bindingNavigatorSeparator.Size = new System.Drawing.Size(6, 25);
//
// bindingNavigatorPositionItem
//
this.bindingNavigatorPositionItem.AccessibleName = "위치";
this.bindingNavigatorPositionItem.AutoSize = false;
this.bindingNavigatorPositionItem.Name = "bindingNavigatorPositionItem";
this.bindingNavigatorPositionItem.Size = new System.Drawing.Size(50, 23);
this.bindingNavigatorPositionItem.Text = "0";
this.bindingNavigatorPositionItem.ToolTipText = "현재 위치";
//
// bindingNavigatorSeparator1
//
this.bindingNavigatorSeparator1.Name = "bindingNavigatorSeparator1";
this.bindingNavigatorSeparator1.Size = new System.Drawing.Size(6, 25);
//
// bindingNavigatorMoveNextItem
//
this.bindingNavigatorMoveNextItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveNextItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveNextItem.Image")));
this.bindingNavigatorMoveNextItem.Name = "bindingNavigatorMoveNextItem";
this.bindingNavigatorMoveNextItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveNextItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveNextItem.Text = "다음으로 이동";
//
// bindingNavigatorMoveLastItem
//
this.bindingNavigatorMoveLastItem.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.bindingNavigatorMoveLastItem.Image = ((System.Drawing.Image)(resources.GetObject("bindingNavigatorMoveLastItem.Image")));
this.bindingNavigatorMoveLastItem.Name = "bindingNavigatorMoveLastItem";
this.bindingNavigatorMoveLastItem.RightToLeftAutoMirrorImage = true;
this.bindingNavigatorMoveLastItem.Size = new System.Drawing.Size(23, 22);
this.bindingNavigatorMoveLastItem.Text = "마지막으로 이동";
//
// bindingNavigatorSeparator2
//
this.bindingNavigatorSeparator2.Name = "bindingNavigatorSeparator2";
this.bindingNavigatorSeparator2.Size = new System.Drawing.Size(6, 25);
//
// btOKPrj
//
this.btOKPrj.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.btOKPrj.Image = ((System.Drawing.Image)(resources.GetObject("btOKPrj.Image")));
this.btOKPrj.Name = "btOKPrj";
this.btOKPrj.Size = new System.Drawing.Size(76, 22);
this.btOKPrj.Text = "Select(&O)";
this.btOKPrj.Click += new System.EventHandler(this.selectProject_Click);
//
// dvPrj
//
this.dvPrj.AllowUserToAddRows = false;
this.dvPrj.AllowUserToDeleteRows = false;
this.dvPrj.AutoGenerateColumns = false;
this.dvPrj.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells;
this.dvPrj.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.AllCells;
this.dvPrj.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dvPrj.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.dataGridViewTextBoxColumn1,
this.dataGridViewTextBoxColumn2,
this.reqstaff,
this.status});
this.dvPrj.DataSource = this.bsPrj;
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window;
dataGridViewCellStyle2.Font = new System.Drawing.Font("맑은 고딕", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.ControlText;
dataGridViewCellStyle2.Padding = new System.Windows.Forms.Padding(1, 3, 1, 3);
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dvPrj.DefaultCellStyle = dataGridViewCellStyle2;
this.dvPrj.Dock = System.Windows.Forms.DockStyle.Fill;
this.dvPrj.Location = new System.Drawing.Point(0, 25);
this.dvPrj.Name = "dvPrj";
this.dvPrj.ReadOnly = true;
this.dvPrj.RowHeadersVisible = false;
this.dvPrj.RowTemplate.Height = 23;
this.dvPrj.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dvPrj.Size = new System.Drawing.Size(746, 232);
this.dvPrj.TabIndex = 1;
this.dvPrj.DoubleClick += new System.EventHandler(this.dv_DoubleClick);
this.dvPrj.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dv_KeyDown);
//
// dataGridViewTextBoxColumn1
//
this.dataGridViewTextBoxColumn1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
this.dataGridViewTextBoxColumn1.DataPropertyName = "idx";
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.dataGridViewTextBoxColumn1.DefaultCellStyle = dataGridViewCellStyle1;
this.dataGridViewTextBoxColumn1.HeaderText = "번호";
this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
this.dataGridViewTextBoxColumn1.ReadOnly = true;
this.dataGridViewTextBoxColumn1.Width = 61;
//
// dataGridViewTextBoxColumn2
//
this.dataGridViewTextBoxColumn2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.dataGridViewTextBoxColumn2.DataPropertyName = "name";
this.dataGridViewTextBoxColumn2.HeaderText = "프로젝트 명";
this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
this.dataGridViewTextBoxColumn2.ReadOnly = true;
//
// reqstaff
//
this.reqstaff.DataPropertyName = "reqstaff";
this.reqstaff.HeaderText = "담당";
this.reqstaff.Name = "reqstaff";
this.reqstaff.ReadOnly = true;
this.reqstaff.Width = 61;
//
// status
//
this.status.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.AllCells;
this.status.DataPropertyName = "status";
this.status.HeaderText = "상태";
this.status.Name = "status";
this.status.ReadOnly = true;
this.status.Width = 61;
//
// taPrj
//
this.taPrj.ClearBeforeFill = true;
//
// tam
//
this.tam.BackupDataSetBeforeUpdate = false;
this.tam.JobReportTableAdapter = null;
this.tam.ProjectsHistoryTableAdapter = null;
this.tam.ProjectsIOMapTableAdapter = null;
this.tam.ProjectsMailListTableAdapter = null;
this.tam.ProjectsPartTableAdapter = null;
this.tam.ProjectsTableAdapter = this.taPrj;
this.tam.UpdateOrder = FPJ0000.dsPRJTableAdapters.TableAdapterManager.UpdateOrderOption.InsertUpdateDelete;
//
// dvItem
//
this.dvItem.AllowUserToAddRows = false;
this.dvItem.AllowUserToDeleteRows = false;
this.dvItem.AutoGenerateColumns = false;
this.dvItem.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells;
this.dvItem.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.AllCells;
this.dvItem.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dvItem.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.pdateDataGridViewTextBoxColumn,
this.projectNameDataGridViewTextBoxColumn,
this.pidxDataGridViewTextBoxColumn});
this.dvItem.DataSource = this.bsJob;
dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Window;
dataGridViewCellStyle5.Font = new System.Drawing.Font("맑은 고딕", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.ControlText;
dataGridViewCellStyle5.Padding = new System.Windows.Forms.Padding(1, 3, 1, 3);
dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dvItem.DefaultCellStyle = dataGridViewCellStyle5;
this.dvItem.Dock = System.Windows.Forms.DockStyle.Fill;
this.dvItem.Location = new System.Drawing.Point(0, 25);
this.dvItem.Name = "dvItem";
this.dvItem.ReadOnly = true;
this.dvItem.RowHeadersVisible = false;
this.dvItem.RowTemplate.Height = 23;
this.dvItem.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dvItem.Size = new System.Drawing.Size(746, 232);
this.dvItem.TabIndex = 1;
this.dvItem.DoubleClick += new System.EventHandler(this.dvItem_DoubleClick);
this.dvItem.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dvItem_KeyDown);
//
// bsJob
//
this.bsJob.DataMember = "JobReportItemList";
this.bsJob.DataSource = this.dsQuery;
this.bsJob.Sort = "";
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.ColumnCount = 1;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.Controls.Add(this.panel1, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.panel2, 0, 1);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 2;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(752, 576);
this.tableLayoutPanel1.TabIndex = 4;
//
// panel1
//
this.panel1.Controls.Add(this.dvPrj);
this.panel1.Controls.Add(this.bn);
this.panel1.Controls.Add(this.label1);
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(3, 3);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(746, 282);
this.panel1.TabIndex = 0;
//
// label1
//
this.label1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.label1.Dock = System.Windows.Forms.DockStyle.Top;
this.label1.ForeColor = System.Drawing.Color.White;
this.label1.Location = new System.Drawing.Point(0, 0);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(746, 25);
this.label1.TabIndex = 0;
this.label1.Text = "프로젝트 검색 결과";
this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// panel2
//
this.panel2.Controls.Add(this.dvItem);
this.panel2.Controls.Add(this.bindingNavigator1);
this.panel2.Controls.Add(this.label2);
this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel2.Location = new System.Drawing.Point(3, 291);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(746, 282);
this.panel2.TabIndex = 0;
//
// bindingNavigator1
//
this.bindingNavigator1.AddNewItem = null;
this.bindingNavigator1.BindingSource = this.bsJob;
this.bindingNavigator1.CountItem = this.toolStripLabel1;
this.bindingNavigator1.DeleteItem = null;
this.bindingNavigator1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.bindingNavigator1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripButton1,
this.toolStripButton2,
this.toolStripSeparator1,
this.toolStripTextBox1,
this.toolStripLabel1,
this.toolStripSeparator2,
this.toolStripButton3,
this.toolStripButton4,
this.toolStripSeparator3,
this.btOKJob});
this.bindingNavigator1.Location = new System.Drawing.Point(0, 257);
this.bindingNavigator1.MoveFirstItem = this.toolStripButton1;
this.bindingNavigator1.MoveLastItem = this.toolStripButton4;
this.bindingNavigator1.MoveNextItem = this.toolStripButton3;
this.bindingNavigator1.MovePreviousItem = this.toolStripButton2;
this.bindingNavigator1.Name = "bindingNavigator1";
this.bindingNavigator1.PositionItem = this.toolStripTextBox1;
this.bindingNavigator1.Size = new System.Drawing.Size(746, 25);
this.bindingNavigator1.TabIndex = 0;
this.bindingNavigator1.Text = "bindingNavigator1";
//
// toolStripLabel1
//
this.toolStripLabel1.Name = "toolStripLabel1";
this.toolStripLabel1.Size = new System.Drawing.Size(27, 22);
this.toolStripLabel1.Text = "/{0}";
this.toolStripLabel1.ToolTipText = "전체 항목 수";
//
// toolStripButton1
//
this.toolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.toolStripButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton1.Image")));
this.toolStripButton1.Name = "toolStripButton1";
this.toolStripButton1.RightToLeftAutoMirrorImage = true;
this.toolStripButton1.Size = new System.Drawing.Size(23, 22);
this.toolStripButton1.Text = "처음으로 이동";
//
// toolStripButton2
//
this.toolStripButton2.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.toolStripButton2.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton2.Image")));
this.toolStripButton2.Name = "toolStripButton2";
this.toolStripButton2.RightToLeftAutoMirrorImage = true;
this.toolStripButton2.Size = new System.Drawing.Size(23, 22);
this.toolStripButton2.Text = "이전으로 이동";
//
// toolStripSeparator1
//
this.toolStripSeparator1.Name = "toolStripSeparator1";
this.toolStripSeparator1.Size = new System.Drawing.Size(6, 25);
//
// toolStripTextBox1
//
this.toolStripTextBox1.AccessibleName = "위치";
this.toolStripTextBox1.AutoSize = false;
this.toolStripTextBox1.Name = "toolStripTextBox1";
this.toolStripTextBox1.Size = new System.Drawing.Size(50, 23);
this.toolStripTextBox1.Text = "0";
this.toolStripTextBox1.ToolTipText = "현재 위치";
//
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
this.toolStripSeparator2.Size = new System.Drawing.Size(6, 25);
//
// toolStripButton3
//
this.toolStripButton3.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.toolStripButton3.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton3.Image")));
this.toolStripButton3.Name = "toolStripButton3";
this.toolStripButton3.RightToLeftAutoMirrorImage = true;
this.toolStripButton3.Size = new System.Drawing.Size(23, 22);
this.toolStripButton3.Text = "다음으로 이동";
//
// toolStripButton4
//
this.toolStripButton4.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.toolStripButton4.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton4.Image")));
this.toolStripButton4.Name = "toolStripButton4";
this.toolStripButton4.RightToLeftAutoMirrorImage = true;
this.toolStripButton4.Size = new System.Drawing.Size(23, 22);
this.toolStripButton4.Text = "마지막으로 이동";
//
// toolStripSeparator3
//
this.toolStripSeparator3.Name = "toolStripSeparator3";
this.toolStripSeparator3.Size = new System.Drawing.Size(6, 25);
//
// btOKJob
//
this.btOKJob.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.btOKJob.Image = ((System.Drawing.Image)(resources.GetObject("btOKJob.Image")));
this.btOKJob.Name = "btOKJob";
this.btOKJob.Size = new System.Drawing.Size(76, 22);
this.btOKJob.Text = "Select(&O)";
this.btOKJob.Click += new System.EventHandler(this.SelectItem_Click);
//
// label2
//
this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.label2.Dock = System.Windows.Forms.DockStyle.Top;
this.label2.ForeColor = System.Drawing.Color.White;
this.label2.Location = new System.Drawing.Point(0, 0);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(746, 25);
this.label2.TabIndex = 0;
this.label2.Text = "업무일지 아이템 검색 결과";
this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// dsQuery
//
this.dsQuery.DataSetName = "dsQuery";
this.dsQuery.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
//
// taJob
//
this.taJob.ClearBeforeFill = true;
//
// pdateDataGridViewTextBoxColumn
//
this.pdateDataGridViewTextBoxColumn.DataPropertyName = "pdate";
dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
this.pdateDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle3;
this.pdateDataGridViewTextBoxColumn.HeaderText = "최근 등록일";
this.pdateDataGridViewTextBoxColumn.Name = "pdateDataGridViewTextBoxColumn";
this.pdateDataGridViewTextBoxColumn.ReadOnly = true;
this.pdateDataGridViewTextBoxColumn.Width = 105;
//
// projectNameDataGridViewTextBoxColumn
//
this.projectNameDataGridViewTextBoxColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
this.projectNameDataGridViewTextBoxColumn.DataPropertyName = "projectName";
this.projectNameDataGridViewTextBoxColumn.HeaderText = "아이템 명";
this.projectNameDataGridViewTextBoxColumn.Name = "projectNameDataGridViewTextBoxColumn";
this.projectNameDataGridViewTextBoxColumn.ReadOnly = true;
//
// pidxDataGridViewTextBoxColumn
//
this.pidxDataGridViewTextBoxColumn.DataPropertyName = "pidx";
dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
this.pidxDataGridViewTextBoxColumn.DefaultCellStyle = dataGridViewCellStyle4;
this.pidxDataGridViewTextBoxColumn.HeaderText = "PIDX";
this.pidxDataGridViewTextBoxColumn.Name = "pidxDataGridViewTextBoxColumn";
this.pidxDataGridViewTextBoxColumn.ReadOnly = true;
this.pidxDataGridViewTextBoxColumn.Width = 63;
//
// fLovProject
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.ClientSize = new System.Drawing.Size(752, 576);
this.Controls.Add(this.tableLayoutPanel1);
this.Font = new System.Drawing.Font("맑은 고딕", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.Name = "fLovProject";
this.Text = "업무일지 프로젝트 / 아이템 선택";
this.Load += new System.EventHandler(this.fLovItem_Load);
((System.ComponentModel.ISupportInitialize)(this.bn)).EndInit();
this.bn.ResumeLayout(false);
this.bn.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.bsPrj)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dsMSSQL)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dvPrj)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dvItem)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bsJob)).EndInit();
this.tableLayoutPanel1.ResumeLayout(false);
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
this.panel2.ResumeLayout(false);
this.panel2.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.bindingNavigator1)).EndInit();
this.bindingNavigator1.ResumeLayout(false);
this.bindingNavigator1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dsQuery)).EndInit();
this.ResumeLayout(false);
}
#endregion
private dsPRJ dsMSSQL;
private System.Windows.Forms.BindingSource bsPrj;
private System.Windows.Forms.BindingNavigator bn;
private System.Windows.Forms.ToolStripLabel bindingNavigatorCountItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveFirstItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorMovePreviousItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator;
private System.Windows.Forms.ToolStripTextBox bindingNavigatorPositionItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator1;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveNextItem;
private System.Windows.Forms.ToolStripButton bindingNavigatorMoveLastItem;
private System.Windows.Forms.ToolStripSeparator bindingNavigatorSeparator2;
private System.Windows.Forms.ToolStripButton btOKPrj;
private System.Windows.Forms.DataGridView dvPrj;
private dsPRJTableAdapters.ProjectsTableAdapter taPrj;
private dsPRJTableAdapters.TableAdapterManager tam;
private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
private System.Windows.Forms.DataGridViewTextBoxColumn reqstaff;
private System.Windows.Forms.DataGridViewTextBoxColumn status;
private System.Windows.Forms.DataGridView dvItem;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.BindingSource bsJob;
private System.Windows.Forms.BindingNavigator bindingNavigator1;
private System.Windows.Forms.ToolStripLabel toolStripLabel1;
private System.Windows.Forms.ToolStripButton toolStripButton1;
private System.Windows.Forms.ToolStripButton toolStripButton2;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
private System.Windows.Forms.ToolStripTextBox toolStripTextBox1;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;
private System.Windows.Forms.ToolStripButton toolStripButton3;
private System.Windows.Forms.ToolStripButton toolStripButton4;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator3;
private System.Windows.Forms.ToolStripButton btOKJob;
private dsQuery dsQuery;
private dsQueryTableAdapters.JobReportItemListTableAdapter taJob;
private System.Windows.Forms.DataGridViewTextBoxColumn pdateDataGridViewTextBoxColumn;
private System.Windows.Forms.DataGridViewTextBoxColumn projectNameDataGridViewTextBoxColumn;
private System.Windows.Forms.DataGridViewTextBoxColumn pidxDataGridViewTextBoxColumn;
}
}

View File

@@ -0,0 +1,118 @@
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 fLovProject : Form
{
public string Title { get; set; }
public int Index { get; set; }
string keyword = string.Empty;
public fLovProject(string search_)
{
InitializeComponent();
Title = string.Empty;
Index = -1;
this.keyword = search_;
this.KeyPreview = true;
this.KeyDown += (s1, e1) => {
if (e1.KeyCode == Keys.Escape) this.Close();
};
}
private void fLovItem_Load(object sender, EventArgs e)
{
//search data
// var dt = this.ta.GetSearch(this.keyword);
this.taPrj.FillSearch(this.dsMSSQL.Projects,this.keyword,FCOMMON.info.Login.gcode);
this.taJob.FillSearch(this.dsQuery.JobReportItemList, this.keyword, FCOMMON.info.Login.gcode);
this.Show();
Application.DoEvents();
if (this.dsMSSQL.Projects.Rows.Count > 0) dvPrj.Focus();
else if (this.dsQuery.JobReportItemList.Rows.Count > 0) dvItem.Focus();
else dvPrj.Focus();
}
private void bs_CurrentChanged(object sender, EventArgs e)
{
}
private void dv_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
btOKPrj.PerformClick();
}
}
private void dvItem_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
this.btOKJob.PerformClick();
}
}
private void SelectItem_Click(object sender, EventArgs e)
{
var drv = this.bsJob.Current as DataRowView;
if (drv == null)
{
Title = string.Empty;
Index = -1;
return;
}
else
{
var dr = drv.Row as dsQuery.JobReportItemListRow;//.JobReportRow;
Index = dr.pidx;
Title = dr.projectName;
}
if (Title.Trim() == "") DialogResult = System.Windows.Forms.DialogResult.Cancel;
else DialogResult = System.Windows.Forms.DialogResult.OK;
}
private void selectProject_Click(object sender, EventArgs e)
{
var drv = bsPrj.Current as DataRowView;
if (drv == null)
{
Title = string.Empty;
Index = -1;
return;
}
else
{
var dr = drv.Row as dsPRJ.ProjectsRow;
Index = dr.idx;
Title = dr.name;
}
if (Title.Trim() == "" || Index == -1) DialogResult = System.Windows.Forms.DialogResult.Cancel;
else DialogResult = System.Windows.Forms.DialogResult.OK;
}
private void dv_DoubleClick(object sender, EventArgs e)
{
btOKPrj.PerformClick();
}
private void dvItem_DoubleClick(object sender, EventArgs e)
{
btOKJob.PerformClick();
}
}
}

View File

@@ -0,0 +1,251 @@
<?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>
<metadata name="bn.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>201, 17</value>
</metadata>
<metadata name="bsPrj.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="dsMSSQL.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>96, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="bindingNavigatorMoveFirstItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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=
</value>
</data>
<data name="bindingNavigatorMovePreviousItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="bindingNavigatorMoveNextItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78
n73v1//OrX//u5VeJt2QyK5H/6ds+/W/ZOnf/wnT//63yT1LmiGBzQ//t659D9ZsXPLlv3T0tf/GkcuI
N8Sj6v7/krnv4JoVXXpIc4F96d3/gS3PyNMMAhZ5d/7bFFwhTzMIGGbdJl8zCOik3SBf81AEDAwAoH5f
oAc0QjgAAAAASUVORK5CYII=
</value>
</data>
<data name="bindingNavigatorMoveLastItem.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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==
</value>
</data>
<data name="btOKPrj.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAExJREFUOE9joAr49u3bf1IxVCsEgAWC58Dxh/cf4RhZDETHTNiHaQgpBoAwzBCo
dtINAGGiDUDGyGpoawAxeNSAQWkAORiqnRLAwAAA9EMMU8Daa3MAAAAASUVORK5CYII=
</value>
</data>
<metadata name="reqstaff.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="status.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="taPrj.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>267, 17</value>
</metadata>
<metadata name="tam.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>344, 17</value>
</metadata>
<metadata name="bsJob.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>417, 17</value>
</metadata>
<metadata name="dsQuery.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>657, 17</value>
</metadata>
<metadata name="bindingNavigator1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>501, 17</value>
</metadata>
<data name="toolStripButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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=
</value>
</data>
<data name="toolStripButton2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
</value>
</data>
<data name="toolStripButton3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAKNJREFUOE9jGHygcNbz/1AmeSB35rP/Cd33yDckY8rT//P2//6f0HWHPEMSep78
n73v1//OrX//u5VeJt2QyK5H/6ds+/W/ZOnf/wnT//63yT1LmiGBzQ//t659D9ZsXPLlv3T0tf/GkcuI
N8Sj6v7/krnv4JoVXXpIc4F96d3/gS3PyNMMAhZ5d/7bFFwhTzMIGGbdJl8zCOik3SBf81AEDAwAoH5f
oAc0QjgAAAAASUVORK5CYII=
</value>
</data>
<data name="toolStripButton4.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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==
</value>
</data>
<data name="btOKJob.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
wwAADsMBx2+oZAAAAExJREFUOE9joAr49u3bf1IxVCsEgAWC58Dxh/cf4RhZDETHTNiHaQgpBoAwzBCo
dtINAGGiDUDGyGpoawAxeNSAQWkAORiqnRLAwAAA9EMMU8Daa3MAAAAASUVORK5CYII=
</value>
</data>
<metadata name="taJob.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>755, 17</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>82</value>
</metadata>
</root>

View File

@@ -0,0 +1,130 @@

namespace FPJ0000.JobReport_
{
partial class fSelectProcess
{
/// <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.cmbProcess = new System.Windows.Forms.CheckedListBox();
this.button1 = new System.Windows.Forms.Button();
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
this.toolStripButton1 = new System.Windows.Forms.ToolStripButton();
this.toolStripButton2 = new System.Windows.Forms.ToolStripButton();
this.toolStripButton3 = new System.Windows.Forms.ToolStripButton();
this.toolStrip1.SuspendLayout();
this.SuspendLayout();
//
// cmbProcess
//
this.cmbProcess.Dock = System.Windows.Forms.DockStyle.Fill;
this.cmbProcess.Font = new System.Drawing.Font("맑은 고딕", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.cmbProcess.FormattingEnabled = true;
this.cmbProcess.Location = new System.Drawing.Point(0, 25);
this.cmbProcess.Name = "cmbProcess";
this.cmbProcess.Size = new System.Drawing.Size(289, 328);
this.cmbProcess.TabIndex = 0;
//
// button1
//
this.button1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.button1.Location = new System.Drawing.Point(0, 353);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(289, 39);
this.button1.TabIndex = 2;
this.button1.Text = "확인";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// toolStrip1
//
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripButton1,
this.toolStripButton2,
this.toolStripButton3});
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(289, 25);
this.toolStrip1.TabIndex = 1;
this.toolStrip1.Text = "toolStrip1";
//
// toolStripButton1
//
this.toolStripButton1.Image = global::FPJ0000.Properties.Resources.accept;
this.toolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton1.Name = "toolStripButton1";
this.toolStripButton1.Size = new System.Drawing.Size(75, 22);
this.toolStripButton1.Text = "전체선택";
this.toolStripButton1.Click += new System.EventHandler(this.toolStripButton1_Click);
//
// toolStripButton2
//
this.toolStripButton2.Image = global::FPJ0000.Properties.Resources.accept;
this.toolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton2.Name = "toolStripButton2";
this.toolStripButton2.Size = new System.Drawing.Size(75, 22);
this.toolStripButton2.Text = "선택해제";
this.toolStripButton2.Click += new System.EventHandler(this.toolStripButton2_Click);
//
// toolStripButton3
//
this.toolStripButton3.Image = global::FPJ0000.Properties.Resources.accept;
this.toolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton3.Name = "toolStripButton3";
this.toolStripButton3.Size = new System.Drawing.Size(75, 22);
this.toolStripButton3.Text = "선택반전";
this.toolStripButton3.Click += new System.EventHandler(this.toolStripButton3_Click);
//
// fSelectProcess
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(289, 392);
this.Controls.Add(this.cmbProcess);
this.Controls.Add(this.toolStrip1);
this.Controls.Add(this.button1);
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "fSelectProcess";
this.Text = "공정 선택";
this.Load += new System.EventHandler(this.fSelectProcess_Load);
this.toolStrip1.ResumeLayout(false);
this.toolStrip1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.CheckedListBox cmbProcess;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.ToolStrip toolStrip1;
private System.Windows.Forms.ToolStripButton toolStripButton1;
private System.Windows.Forms.ToolStripButton toolStripButton2;
private System.Windows.Forms.ToolStripButton toolStripButton3;
}
}

View File

@@ -0,0 +1,86 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace FPJ0000.JobReport_
{
public partial class fSelectProcess : Form
{
public List<string> values = new List<string>();
public fSelectProcess(string[] list)
{
InitializeComponent();
values.AddRange(list);
}
private void fSelectProcess_Load(object sender, EventArgs e)
{
//공정목록
var taProc = new dsReportTableAdapters.ProcessListTableAdapter();
var dtProcList = taProc.GetData(FCOMMON.info.Login.gcode);
cmbProcess.Items.Clear();
//cmbProcess.Items.Add("--전체--");
foreach (dsReport.ProcessListRow dr in dtProcList)
{
cmbProcess.Items.Add(dr.processs);
if (values.Contains(dr.processs))
{
this.cmbProcess.SetItemChecked(cmbProcess.Items.Count - 1, true);
}
}
//cmbProcess.Text = FCOMMON.info.Login.process;
//if (cmbProcess.SelectedIndex < 0) cmbProcess.SelectedIndex = 0; //공정이 없는 사람은 전체보기로 함
}
private void button1_Click(object sender, EventArgs e)
{
values.Clear();
for (int i = 0; i <= (cmbProcess.Items.Count - 1); i++)
{
if (cmbProcess.GetItemChecked(i))
{
values.Add(cmbProcess.Items[i].ToString());
}
}
if(values.Count < 1)
{
FCOMMON.Util.MsgE("공정선택이 필요 합니다");
return;
}
DialogResult = DialogResult.OK;
}
private void toolStripButton1_Click(object sender, EventArgs e)
{
for (int i = 0; i <= (cmbProcess.Items.Count - 1); i++)
{
cmbProcess.SetItemChecked(i, true);
}
}
private void toolStripButton2_Click(object sender, EventArgs e)
{
for (int i = 0; i <= (cmbProcess.Items.Count - 1); i++)
{
cmbProcess.SetItemChecked(i, false);
}
}
private void toolStripButton3_Click(object sender, EventArgs e)
{
for (int i = 0; i <= (cmbProcess.Items.Count - 1); i++)
{
var cur = cmbProcess.GetItemChecked(i);
cmbProcess.SetItemChecked(i, !cur);
}
}
}
}

View File

@@ -0,0 +1,123 @@
<?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>
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,89 @@
namespace FPJ0000.JobReport_
{
partial class rJobChart
{
/// <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.components = new System.ComponentModel.Container();
Microsoft.Reporting.WinForms.ReportDataSource reportDataSource1 = new Microsoft.Reporting.WinForms.ReportDataSource();
this.reportViewer1 = new Microsoft.Reporting.WinForms.ReportViewer();
this.dsPRJ = new FPJ0000.dsPRJ();
this.bs = new System.Windows.Forms.BindingSource(this.components);
this.ta = new FPJ0000.dsPRJTableAdapters.JobReportTableAdapter();
((System.ComponentModel.ISupportInitialize)(this.dsPRJ)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit();
this.SuspendLayout();
//
// reportViewer1
//
this.reportViewer1.Dock = System.Windows.Forms.DockStyle.Fill;
reportDataSource1.Name = "DataSet1";
reportDataSource1.Value = this.bs;
this.reportViewer1.LocalReport.DataSources.Add(reportDataSource1);
this.reportViewer1.LocalReport.ReportEmbeddedResource = "FPJ0000.JobReport.rJobChart.rdlc";
this.reportViewer1.Location = new System.Drawing.Point(0, 0);
this.reportViewer1.Name = "reportViewer1";
this.reportViewer1.Size = new System.Drawing.Size(721, 586);
this.reportViewer1.TabIndex = 0;
//
// dsPRJ
//
this.dsPRJ.DataSetName = "dsPRJ";
this.dsPRJ.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
//
// bs
//
this.bs.DataMember = "JobReport";
this.bs.DataSource = this.dsPRJ;
//
// ta
//
this.ta.ClearBeforeFill = true;
//
// rJobChart
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(721, 586);
this.Controls.Add(this.reportViewer1);
this.Name = "rJobChart";
this.Text = "작업 분포";
this.Load += new System.EventHandler(this.rJobReport_Load);
((System.ComponentModel.ISupportInitialize)(this.dsPRJ)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit();
this.ResumeLayout(false);
}
#endregion
private Microsoft.Reporting.WinForms.ReportViewer reportViewer1;
private System.Windows.Forms.BindingSource bs;
private dsPRJ dsPRJ;
private dsPRJTableAdapters.JobReportTableAdapter ta;
}
}

View File

@@ -0,0 +1,33 @@
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 rJobChart : Form
{
public rJobChart(string uid,string sdate, string edate)
{
InitializeComponent();
this.WindowState = FormWindowState.Maximized;
//var ps = new Microsoft.Reporting.WinForms.ReportParameterCollection();
//this.reportViewer1.LocalReport.SetParameters(ps);
this.ta.Fill(this.dsPRJ.JobReport,sdate,edate,uid, FCOMMON.info.Login.gcode);
}
private void rJobReport_Load(object sender, EventArgs e)
{
this.Show();
Application.DoEvents();
this.reportViewer1.SetDisplayMode( Microsoft.Reporting.WinForms.DisplayMode.PrintLayout);
this.reportViewer1.ZoomMode = Microsoft.Reporting.WinForms.ZoomMode.PageWidth;
this.reportViewer1.RefreshReport();
}
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,129 @@
<?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>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>100, 17</value>
</metadata>
<metadata name="dsPRJ.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="ta.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>288, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,168 @@
namespace FPJ0000.JobReport_
{
partial class rJobReport
{
/// <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.components = new System.ComponentModel.Container();
this.bs = new System.Windows.Forms.BindingSource(this.components);
this.dsReport = new FPJ0000.dsReport();
this.ta = new FPJ0000.dsReportTableAdapters.jobReportTableAdapter();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
this.panel1 = new System.Windows.Forms.Panel();
this.tbProcess = new System.Windows.Forms.ComboBox();
this.label1 = new System.Windows.Forms.Label();
this.linkLabel1 = new System.Windows.Forms.LinkLabel();
this.btRefresh = new System.Windows.Forms.Button();
this.tbMon = new System.Windows.Forms.TextBox();
((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dsReport)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
this.panel1.SuspendLayout();
this.SuspendLayout();
//
// bs
//
this.bs.DataMember = "jobreport";
this.bs.DataSource = this.dsReport;
//
// dsReport
//
this.dsReport.DataSetName = "dsReport";
this.dsReport.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
//
// ta
//
this.ta.ClearBeforeFill = true;
//
// dataGridView1
//
this.dataGridView1.AllowUserToAddRows = false;
this.dataGridView1.AllowUserToDeleteRows = false;
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView1.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridView1.Location = new System.Drawing.Point(0, 42);
this.dataGridView1.Name = "dataGridView1";
this.dataGridView1.ReadOnly = true;
this.dataGridView1.RowTemplate.Height = 23;
this.dataGridView1.Size = new System.Drawing.Size(721, 544);
this.dataGridView1.TabIndex = 2;
//
// panel1
//
this.panel1.Controls.Add(this.tbProcess);
this.panel1.Controls.Add(this.label1);
this.panel1.Controls.Add(this.linkLabel1);
this.panel1.Controls.Add(this.btRefresh);
this.panel1.Controls.Add(this.tbMon);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Padding = new System.Windows.Forms.Padding(5);
this.panel1.Size = new System.Drawing.Size(721, 42);
this.panel1.TabIndex = 3;
//
// tbProcess
//
this.tbProcess.FormattingEnabled = true;
this.tbProcess.Location = new System.Drawing.Point(222, 10);
this.tbProcess.Name = "tbProcess";
this.tbProcess.Size = new System.Drawing.Size(158, 20);
this.tbProcess.TabIndex = 7;
this.tbProcess.SelectedIndexChanged += new System.EventHandler(this.tbProcess_SelectedIndexChanged);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(187, 15);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(29, 12);
this.label1.TabIndex = 6;
this.label1.Text = "공정";
//
// linkLabel1
//
this.linkLabel1.AutoSize = true;
this.linkLabel1.Location = new System.Drawing.Point(13, 15);
this.linkLabel1.Name = "linkLabel1";
this.linkLabel1.Size = new System.Drawing.Size(45, 12);
this.linkLabel1.TabIndex = 0;
this.linkLabel1.TabStop = true;
this.linkLabel1.Text = "조회 년";
//
// btRefresh
//
this.btRefresh.Dock = System.Windows.Forms.DockStyle.Right;
this.btRefresh.Location = new System.Drawing.Point(641, 5);
this.btRefresh.Name = "btRefresh";
this.btRefresh.Size = new System.Drawing.Size(75, 32);
this.btRefresh.TabIndex = 2;
this.btRefresh.Text = "새로고침";
this.btRefresh.UseVisualStyleBackColor = true;
this.btRefresh.Click += new System.EventHandler(this.btRefresh_Click);
//
// tbMon
//
this.tbMon.Location = new System.Drawing.Point(66, 10);
this.tbMon.Name = "tbMon";
this.tbMon.Size = new System.Drawing.Size(115, 21);
this.tbMon.TabIndex = 1;
this.tbMon.Text = "2020";
this.tbMon.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// rJobReport
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(721, 586);
this.Controls.Add(this.dataGridView1);
this.Controls.Add(this.panel1);
this.Name = "rJobReport";
this.Text = "월/개인별 근무시간 내역 집계";
this.Load += new System.EventHandler(this.rJobReport_Load);
((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dsReport)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.BindingSource bs;
private dsReport dsReport;
private dsReportTableAdapters.jobReportTableAdapter ta;
private System.Windows.Forms.DataGridView dataGridView1;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.LinkLabel linkLabel1;
private System.Windows.Forms.Button btRefresh;
private System.Windows.Forms.TextBox tbMon;
private System.Windows.Forms.ComboBox tbProcess;
private System.Windows.Forms.Label label1;
}
}

View File

@@ -0,0 +1,127 @@
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 rJobReport : Form
{
public rJobReport()
{
InitializeComponent();
this.WindowState = FormWindowState.Maximized;
}
private void rJobReport_Load(object sender, EventArgs e)
{
this.tbProcess.Items.Clear();
tbProcess.Items.Add("전체");
var taProcess = new dsReportTableAdapters.ProcessListTableAdapter();
var dtProcessList = taProcess.GetData(FCOMMON.info.Login.gcode);
foreach (dsReport.ProcessListRow dr in dtProcessList.Rows)
tbProcess.Items.Add(dr.processs);
this.tbProcess.Text = FCOMMON.info.Login.process;
if (tbProcess.SelectedIndex < 0) tbProcess.SelectedIndex = 0;
this.tbMon.Text = DateTime.Now.Year.ToString();
refrehData();
}
void refrehData()
{
string prcname = tbProcess.SelectedIndex < 1 ? "%" : tbProcess.Text.Trim();
this.ta.Fill(this.dsReport.jobReport, tbMon.Text, FCOMMON.info.Login.gcode, prcname);
//this.reportViewer1.SetDisplayMode(Microsoft.Reporting.WinForms.DisplayMode.PrintLayout);
//this.reportViewer1.ZoomMode = Microsoft.Reporting.WinForms.ZoomMode.PageWidth;
//그리드뷰 생성
this.dataGridView1.AllowUserToAddRows = false;
this.dataGridView1.AllowUserToDeleteRows = false;
this.dataGridView1.Rows.Clear();
this.dataGridView1.Columns.Clear();
this.dataGridView1.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
this.dataGridView1.ColumnHeadersHeight = 35;
this.dataGridView1.Columns.Add("이름", "이름");
//이름/년도데이터추가
var ymlist = dsReport.jobReport.OrderBy(t => t.yymm).GroupBy(t => t.yymm);
foreach (var ym in ymlist)
{
var drYm = ym.FirstOrDefault();
var basehr = int.Parse(drYm.yymm.Substring(drYm.yymm.IndexOf('(')).Replace("(", "").Replace(")", ""));
this.dataGridView1.Columns.Add(drYm.yymm, drYm.yymm.Substring(0, 7) + "\r\n(" + basehr.ToString() + ")");
}
//이름으로 정렬해서 데이터를 가져온다
var namelist = this.dsReport.jobReport.OrderBy(t => t.uname).GroupBy(t => t.uname);
foreach (var uname in namelist)
{
var drName = uname.FirstOrDefault();
List<string> rowdata = new List<string>();
rowdata.Add(drName.uname + "(" + drName.uid + ")");
List<Boolean> high = new List<bool>();
List<Boolean> low = new List<bool>();
for (int i = 1; i < this.dataGridView1.ColumnCount; i++)
{
var coltitle = dataGridView1.Columns[i].HeaderText;
var basehr = int.Parse(coltitle.Split('\n')[1].Replace("(","").Replace(")",""));
var userDatas = dsReport.jobReport.Where(t => t.uid == drName.uid && t.yymm == dataGridView1.Columns[i].Name);
if (userDatas == null || userDatas.Count() == 0)
{
//이달에는 데이터가없다
rowdata.Add("--");
high.Add(false);
low.Add(false);
}
else
{
var sumhr = userDatas.Sum(t => t.hrs);
var sumot = userDatas.Sum(t => t.ot);
if (sumot == 0) rowdata.Add(string.Format("{0}", sumhr, sumot));
else rowdata.Add(string.Format("{0}+{1}", sumhr, sumot));
if (sumhr > basehr) high.Add(true);
else high.Add(false);
if (sumhr < basehr) low.Add(true);
else low.Add(false);
}
}
dataGridView1.Rows.Add(rowdata.ToArray());
//이번에 추가한 줄의 셀 컬러를 지정한다
var currentrow = dataGridView1.Rows.Count - 1;
for (int i = 1; i < this.dataGridView1.ColumnCount; i++)
{
if (high[i - 1]) dataGridView1.Rows[currentrow].Cells[i].Style.ForeColor = Color.Red;
else if (low[i - 1]) dataGridView1.Rows[currentrow].Cells[i].Style.ForeColor = Color.Blue;
else dataGridView1.Rows[currentrow].Cells[i].Style.ForeColor = Color.Black;
}
}
this.dataGridView1.AutoResizeColumns();
}
private void btRefresh_Click(object sender, EventArgs e)
{
refrehData();
}
private void tbProcess_SelectedIndexChanged(object sender, EventArgs e)
{
if (tbProcess.SelectedIndex >= 0) refrehData();
}
}
}

View File

@@ -0,0 +1,863 @@
<?xml version="1.0" encoding="utf-8"?>
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<Body>
<ReportItems>
<Tablix Name="Tablix1">
<TablixCorner>
<TablixCornerRows>
<TablixCornerRow>
<TablixCornerCell>
<CellContents>
<Textbox Name="Textbox7">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>사원명</Value>
<Style />
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox7</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<RowSpan>2</RowSpan>
</CellContents>
</TablixCornerCell>
</TablixCornerRow>
<TablixCornerRow>
<TablixCornerCell />
</TablixCornerRow>
</TablixCornerRows>
</TablixCorner>
<TablixBody>
<TablixColumns>
<TablixColumn>
<Width>1.09771cm</Width>
</TablixColumn>
<TablixColumn>
<Width>0.9125cm</Width>
</TablixColumn>
<TablixColumn>
<Width>1.30938cm</Width>
</TablixColumn>
<TablixColumn>
<Width>1.09771cm</Width>
</TablixColumn>
</TablixColumns>
<TablixRows>
<TablixRow>
<Height>0.6cm</Height>
<TablixCells>
<TablixCell>
<CellContents>
<Textbox Name="hrs">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!hrs.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
<Color>=iif(Fields!hrs.Value &gt; Fields!total.Value,
"Blue",
iif(Fields!hrs.Value &lt; Fields!total.Value,"Red","Black")
)</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>hrs</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<rd:Selected>true</rd:Selected>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="ot">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!ot.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
<Color>=iif(Sum(Fields!ot.Value, "DataSet1")=0,"White","Black")</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>ot</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<rd:Selected>true</rd:Selected>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox15">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!hrs.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox15</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<rd:Selected>true</rd:Selected>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox19">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!ot.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
<Color>=iif(Sum(Fields!ot.Value, "DataSet1")=0,"White","Black")</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox19</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<rd:Selected>true</rd:Selected>
</CellContents>
</TablixCell>
</TablixCells>
</TablixRow>
<TablixRow>
<Height>0.6cm</Height>
<TablixCells>
<TablixCell>
<CellContents>
<Textbox Name="Textbox11">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!hrs.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox11</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<rd:Selected>true</rd:Selected>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox12">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!ot.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
<Color>=iif(Sum(Fields!ot.Value, "DataSet1")=0,"White","Black")</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox12</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<rd:Selected>true</rd:Selected>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox16">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!hrs.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox16</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<rd:Selected>true</rd:Selected>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox20">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!ot.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
<Color>=iif(Sum(Fields!ot.Value, "DataSet1")=0,"White","Black")</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Right</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox20</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<rd:Selected>true</rd:Selected>
</CellContents>
</TablixCell>
</TablixCells>
</TablixRow>
</TablixRows>
</TablixBody>
<TablixColumnHierarchy>
<TablixMembers>
<TablixMember>
<Group Name="yymm">
<GroupExpressions>
<GroupExpression>=Fields!yymm.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!yymm.Value</Value>
</SortExpression>
</SortExpressions>
<TablixHeader>
<Size>0.6cm</Size>
<CellContents>
<Textbox Name="yymm">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!yymm.Value</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>yymm</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<TablixMembers>
<TablixMember>
<TablixHeader>
<Size>0.6cm</Size>
<CellContents>
<Textbox Name="Textbox3">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>시간</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox3</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<TablixMembers>
<TablixMember />
</TablixMembers>
</TablixMember>
<TablixMember>
<TablixHeader>
<Size>0.6cm</Size>
<CellContents>
<Textbox Name="Textbox5">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>초과</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox5</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
</TablixMember>
</TablixMembers>
</TablixMember>
<TablixMember>
<TablixHeader>
<Size>0.6cm</Size>
<CellContents>
<Textbox Name="Textbox13">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>합계</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox13</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<TablixMembers>
<TablixMember>
<TablixHeader>
<Size>0.6cm</Size>
<CellContents>
<Textbox Name="Textbox14">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>시간</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox14</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
</TablixMember>
<TablixMember>
<TablixHeader>
<Size>0.6cm</Size>
<CellContents>
<Textbox Name="Textbox18">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>초과</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox18</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
</TablixMember>
</TablixMembers>
</TablixMember>
</TablixMembers>
</TablixColumnHierarchy>
<TablixRowHierarchy>
<TablixMembers>
<TablixMember>
<Group Name="uname">
<GroupExpressions>
<GroupExpression>=Fields!uname.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!uname.Value</Value>
</SortExpression>
</SortExpressions>
<TablixHeader>
<Size>1.91792cm</Size>
<CellContents>
<Textbox Name="uname">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!uname.Value</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>uname</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<TablixMembers>
<TablixMember />
</TablixMembers>
</TablixMember>
<TablixMember>
<TablixHeader>
<Size>1.91792cm</Size>
<CellContents>
<Textbox Name="Textbox10">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>합계</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox10</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<KeepWithGroup>Before</KeepWithGroup>
</TablixMember>
</TablixMembers>
</TablixRowHierarchy>
<DataSetName>DataSet1</DataSetName>
<Height>2.4cm</Height>
<Width>6.33522cm</Width>
<Style>
<Border>
<Style>None</Style>
</Border>
</Style>
</Tablix>
</ReportItems>
<Height>0.94488in</Height>
<Style />
</Body>
<Width>2.49418in</Width>
<Page>
<PageHeight>21cm</PageHeight>
<PageWidth>29.7cm</PageWidth>
<LeftMargin>2cm</LeftMargin>
<RightMargin>2cm</RightMargin>
<TopMargin>2cm</TopMargin>
<BottomMargin>2cm</BottomMargin>
<ColumnSpacing>0.13cm</ColumnSpacing>
<Style />
</Page>
<AutoRefresh>0</AutoRefresh>
<DataSources>
<DataSource Name="dsReport">
<ConnectionProperties>
<DataProvider>System.Data.DataSet</DataProvider>
<ConnectString>/* Local Connection */</ConnectString>
</ConnectionProperties>
<rd:DataSourceID>def3b4b9-e33c-4ebc-92a9-a60ef301b762</rd:DataSourceID>
</DataSource>
</DataSources>
<DataSets>
<DataSet Name="DataSet1">
<Query>
<DataSourceName>dsReport</DataSourceName>
<CommandText>/* Local Query */</CommandText>
</Query>
<Fields>
<Field Name="yymm">
<DataField>yymm</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="total">
<DataField>total</DataField>
<rd:TypeName>System.Int32</rd:TypeName>
</Field>
<Field Name="uid">
<DataField>uid</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="uname">
<DataField>uname</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="hrs">
<DataField>hrs</DataField>
<rd:TypeName>System.Double</rd:TypeName>
</Field>
<Field Name="ot">
<DataField>ot</DataField>
<rd:TypeName>System.Double</rd:TypeName>
</Field>
</Fields>
<rd:DataSetInfo>
<rd:DataSetName>dsReport</rd:DataSetName>
<rd:SchemaPath>D:\Source\(014) GroupWare\EET_GroupWare_190428_1800\SubProject\FPJ0000\dsReport.xsd</rd:SchemaPath>
<rd:TableName>jobReport</rd:TableName>
<rd:TableAdapterFillMethod>Fill</rd:TableAdapterFillMethod>
<rd:TableAdapterGetDataMethod>GetData</rd:TableAdapterGetDataMethod>
<rd:TableAdapterName>jobReportTableAdapter</rd:TableAdapterName>
</rd:DataSetInfo>
</DataSet>
</DataSets>
<rd:ReportUnitType>Cm</rd:ReportUnitType>
<rd:ReportID>f122d35f-5d79-47e1-bb91-474800d268ee</rd:ReportID>
</Report>

View File

@@ -0,0 +1,129 @@
<?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>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>181, 17</value>
</metadata>
<metadata name="dsReport.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>79, 17</value>
</metadata>
<metadata name="ta.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,165 @@
namespace FPJ0000.JobReport_
{
partial class rJobReportDay
{
/// <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.components = new System.ComponentModel.Container();
this.bs = new System.Windows.Forms.BindingSource(this.components);
this.dsReport = new FPJ0000.dsReport();
this.panel1 = new System.Windows.Forms.Panel();
this.tbProcess = new System.Windows.Forms.ComboBox();
this.label1 = new System.Windows.Forms.Label();
this.linkLabel1 = new System.Windows.Forms.LinkLabel();
this.btRefresh = new System.Windows.Forms.Button();
this.tbMon = new System.Windows.Forms.TextBox();
this.ta = new FPJ0000.dsReportTableAdapters.JobReportDayTableAdapter();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dsReport)).BeginInit();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
this.SuspendLayout();
//
// bs
//
this.bs.DataMember = "JobReportDay";
this.bs.DataSource = this.dsReport;
//
// dsReport
//
this.dsReport.DataSetName = "dsReport";
this.dsReport.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
//
// panel1
//
this.panel1.Controls.Add(this.tbProcess);
this.panel1.Controls.Add(this.label1);
this.panel1.Controls.Add(this.linkLabel1);
this.panel1.Controls.Add(this.btRefresh);
this.panel1.Controls.Add(this.tbMon);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Padding = new System.Windows.Forms.Padding(5);
this.panel1.Size = new System.Drawing.Size(751, 42);
this.panel1.TabIndex = 0;
//
// tbProcess
//
this.tbProcess.FormattingEnabled = true;
this.tbProcess.Location = new System.Drawing.Point(233, 10);
this.tbProcess.Name = "tbProcess";
this.tbProcess.Size = new System.Drawing.Size(158, 20);
this.tbProcess.TabIndex = 5;
this.tbProcess.SelectedIndexChanged += new System.EventHandler(this.tbProcess_SelectedIndexChanged);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(198, 15);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(29, 12);
this.label1.TabIndex = 3;
this.label1.Text = "공정";
//
// linkLabel1
//
this.linkLabel1.AutoSize = true;
this.linkLabel1.Location = new System.Drawing.Point(13, 15);
this.linkLabel1.Name = "linkLabel1";
this.linkLabel1.Size = new System.Drawing.Size(45, 12);
this.linkLabel1.TabIndex = 0;
this.linkLabel1.TabStop = true;
this.linkLabel1.Text = "조회 월";
this.linkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked);
//
// btRefresh
//
this.btRefresh.Dock = System.Windows.Forms.DockStyle.Right;
this.btRefresh.Location = new System.Drawing.Point(671, 5);
this.btRefresh.Name = "btRefresh";
this.btRefresh.Size = new System.Drawing.Size(75, 32);
this.btRefresh.TabIndex = 2;
this.btRefresh.Text = "새로고침";
this.btRefresh.UseVisualStyleBackColor = true;
this.btRefresh.Click += new System.EventHandler(this.button1_Click);
//
// tbMon
//
this.tbMon.Location = new System.Drawing.Point(66, 10);
this.tbMon.Name = "tbMon";
this.tbMon.Size = new System.Drawing.Size(115, 21);
this.tbMon.TabIndex = 1;
this.tbMon.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// ta
//
this.ta.ClearBeforeFill = true;
//
// dataGridView1
//
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView1.Dock = System.Windows.Forms.DockStyle.Fill;
this.dataGridView1.Location = new System.Drawing.Point(0, 42);
this.dataGridView1.Name = "dataGridView1";
this.dataGridView1.RowTemplate.Height = 23;
this.dataGridView1.Size = new System.Drawing.Size(751, 546);
this.dataGridView1.TabIndex = 1;
//
// rJobReportDay
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(751, 588);
this.Controls.Add(this.dataGridView1);
this.Controls.Add(this.panel1);
this.Name = "rJobReportDay";
this.Text = "일/개인별 근무시간 집계(+OT 포함)";
this.Load += new System.EventHandler(this.rJobReport_Load);
((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dsReport)).EndInit();
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private dsReport dsReport;
private System.Windows.Forms.BindingSource bs;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Button btRefresh;
private System.Windows.Forms.TextBox tbMon;
private System.Windows.Forms.LinkLabel linkLabel1;
private dsReportTableAdapters.JobReportDayTableAdapter ta;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.ComboBox tbProcess;
private System.Windows.Forms.DataGridView dataGridView1;
}
}

View File

@@ -0,0 +1,163 @@
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 rJobReportDay : Form
{
Boolean binit = false;
public rJobReportDay()
{
InitializeComponent();
this.WindowState = FormWindowState.Maximized;
}
private void rJobReport_Load(object sender, EventArgs e)
{
this.tbProcess.Items.Clear();
tbProcess.Items.Add("전체");
var taProcess = new dsReportTableAdapters.ProcessListTableAdapter();
var dtProcessList = taProcess.GetData(FCOMMON.info.Login.gcode);
foreach (dsReport.ProcessListRow dr in dtProcessList.Rows)
tbProcess.Items.Add(dr.processs);
this.tbProcess.Text = FCOMMON.info.Login.process;
if (tbProcess.SelectedIndex < 0) tbProcess.SelectedIndex = 0;
this.tbMon.Text = DateTime.Now.ToString("yyyy-MM");
refrehData();
binit = true;
}
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
var f = new FCOMMON.fSelectMonth();
if (f.ShowDialog() != System.Windows.Forms.DialogResult.OK) return;
this.tbMon.Text = string.Format("{0:0000}-{1:00}", DateTime.Now.Year, f.selectmon);
refrehData();
}
void refrehData()
{
string prcname = tbProcess.SelectedIndex < 1 ? "%" : tbProcess.Text.Trim();
this.ta.Fill(this.dsReport.JobReportDay, tbMon.Text, FCOMMON.info.Login.gcode, prcname);
//this.reportViewer1.SetDisplayMode(Microsoft.Reporting.WinForms.DisplayMode.PrintLayout);
//this.reportViewer1.ZoomMode = Microsoft.Reporting.WinForms.ZoomMode.PageWidth;
//this.reportViewer1.RefreshReport();
//그리드뷰 생성
this.dataGridView1.Rows.Clear();
this.dataGridView1.Columns.Clear();
var Process = tbProcess.Text.Trim();
if (Process == "%" || tbProcess.SelectedIndex == 0) Process = "";
var wekklist = new string[] { "일","월","화","수","목","금","토" };
//날짜에 해당하는 열을 먼저 생성한다
dataGridView1.Columns.Add("dvcu_damdang", "사원명");
// dataGridView1.Columns.Add("dvcu_process", "공정");
var daylist = dsReport.JobReportDay.OrderBy(t=>t.pdate).GroupBy(t => t.pdate);
foreach (var dayitem in daylist)
{
var dtValue = DateTime.Parse(dayitem.Key);
if(dtValue.DayOfWeek == DayOfWeek.Saturday || dtValue.DayOfWeek == DayOfWeek.Sunday)
{
var week = wekklist[(int)dtValue.DayOfWeek];
this.dataGridView1.Columns.Add("dvcu_pdate", dayitem.Key.Substring(8, 2) + "(" + week.ToString() + ")");
}
else
{
this.dataGridView1.Columns.Add("dvcu_pdate", dayitem.Key.Substring(8, 2) );
}
this.dataGridView1.Columns[this.dataGridView1.Columns.Count -1].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
}
dataGridView1.Columns.Add("dvcu_sum", "합계");
this.dataGridView1.Columns[this.dataGridView1.Columns.Count - 1].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
foreach (var item in dsReport.JobReportDay.Where(t=>t.processs.Contains(Process)).OrderBy(t => t.uname + t.uid).GroupBy(t => t.uname))
{
//사용자별로 데이터를 가져온다.
var username = item.Key;
var userid = item.FirstOrDefault().uid;
List<string> rowdata = new List<string>();
rowdata.Add(username);
// rowdata.Add(item.FirstOrDefault().processs);
//이 사용자의 데이터를 날짜별로 정렬해서 가져온다.
var sum = 0.0;
var sumOT = 0.0;
for (int i = 1; i < this.dataGridView1.Columns.Count-1; i++)
{
var col = this.dataGridView1.Columns[i];
var dayStr = col.HeaderText.Substring(0, 2);
var daydata = dsReport.JobReportDay.Where(t => t.uid == userid && t.pdate.EndsWith(dayStr)).FirstOrDefault();
if (daydata != null)
{
sum += daydata.hrs;
sumOT += daydata.ot;
rowdata.Add((daydata.hrs.ToString() + "+" + daydata.ot.ToString()));
}
else rowdata.Add("--");
}
rowdata.Add(sum.ToString() + "+" + sumOT.ToString());
this.dataGridView1.Rows.Add(rowdata.ToArray());
}
foreach(DataGridViewRow dvrow in this.dataGridView1.Rows)
{
for(int i = 1;i < this.dataGridView1.ColumnCount-1;i++)
{
var cellvalue = "--";
if(dvrow.Cells[i].Value != null) cellvalue= dvrow.Cells[i].Value.ToString();
if (cellvalue == "--") dvrow.Cells[i].Style.ForeColor = Color.Gray;
else
{
var datasplbu = cellvalue.Split('+');
double hrs;
double ot;
if (double.TryParse(datasplbu[1], out ot) == false) ot = 0;
if(double.TryParse(datasplbu[0],out hrs))
{
if (hrs > 8.0) dvrow.Cells[i].Style.ForeColor = Color.Blue;
else if (hrs < 8.0) dvrow.Cells[i].Style.ForeColor = Color.Red;
else
{
if (ot == 0)
dvrow.Cells[i].Style.ForeColor = Color.Black;
else
dvrow.Cells[i].Style.ForeColor = Color.Magenta;
}
}
else
{
FCOMMON.Util.MsgE("숫자변경실패 " + cellvalue);
dvrow.Cells[i].Style.ForeColor = Color.Red;
}
}
}
}
this.dataGridView1.AutoResizeColumns();
}
private void button1_Click(object sender, EventArgs e)
{
refrehData();
}
private void tbProcess_SelectedIndexChanged(object sender, EventArgs e)
{
if (tbProcess.SelectedIndex >= 0) refrehData();
}
}
}

View File

@@ -0,0 +1,495 @@
<?xml version="1.0" encoding="utf-8"?>
<Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
<Body>
<ReportItems>
<Tablix Name="Tablix1">
<TablixCorner>
<TablixCornerRows>
<TablixCornerRow>
<TablixCornerCell>
<CellContents>
<Textbox Name="Textbox3">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>사원명</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox3</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCornerCell>
</TablixCornerRow>
</TablixCornerRows>
</TablixCorner>
<TablixBody>
<TablixColumns>
<TablixColumn>
<Width>0.85958cm</Width>
</TablixColumn>
<TablixColumn>
<Width>1.12417cm</Width>
</TablixColumn>
</TablixColumns>
<TablixRows>
<TablixRow>
<Height>0.6cm</Height>
<TablixCells>
<TablixCell>
<CellContents>
<Textbox Name="hrs">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!hrs.Value)+Sum(Fields!ot.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
<Color>=iif(Sum(Fields!hrs.Value)+Sum(Fields!ot.Value)&lt;8,"Red",iif(Sum(Fields!hrs.Value)+Sum(Fields!ot.Value)&gt;8,"Blue","Black"))</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>hrs</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<rd:Selected>true</rd:Selected>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox8">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!hrs.Value)+Sum(Fields!ot.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox8</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
</TablixCells>
</TablixRow>
<TablixRow>
<Height>0.6cm</Height>
<TablixCells>
<TablixCell>
<CellContents>
<Textbox Name="Textbox6">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!hrs.Value)+Sum(Fields!ot.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox6</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox9">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Sum(Fields!hrs.Value)+Sum(Fields!ot.Value)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontSize>9pt</FontSize>
<Format>N1</Format>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox9</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
</TablixCells>
</TablixRow>
</TablixRows>
</TablixBody>
<TablixColumnHierarchy>
<TablixMembers>
<TablixMember>
<Group Name="pdate">
<GroupExpressions>
<GroupExpression>=Fields!pdate.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!pdate.Value</Value>
</SortExpression>
</SortExpressions>
<TablixHeader>
<Size>0.6cm</Size>
<CellContents>
<Textbox Name="pdate">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=right(Fields!pdate.Value,2)</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>pdate</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<TablixMembers>
<TablixMember />
</TablixMembers>
</TablixMember>
<TablixMember>
<TablixHeader>
<Size>0.6cm</Size>
<CellContents>
<Textbox Name="Textbox7">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>합계</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox7</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<BackgroundColor>Silver</BackgroundColor>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
</TablixMember>
</TablixMembers>
</TablixColumnHierarchy>
<TablixRowHierarchy>
<TablixMembers>
<TablixMember>
<Group Name="uname">
<GroupExpressions>
<GroupExpression>=Fields!uname.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!uname.Value</Value>
</SortExpression>
</SortExpressions>
<TablixHeader>
<Size>1.49458cm</Size>
<CellContents>
<Textbox Name="uname">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!uname.Value</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>uname</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<TablixMembers>
<TablixMember />
</TablixMembers>
</TablixMember>
<TablixMember>
<TablixHeader>
<Size>1.49458cm</Size>
<CellContents>
<Textbox Name="Textbox5">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>합계</Value>
<Style>
<FontFamily>맑은 고딕</FontFamily>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox5</rd:DefaultName>
<Visibility>
<Hidden>true</Hidden>
</Visibility>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<VerticalAlign>Middle</VerticalAlign>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<KeepWithGroup>Before</KeepWithGroup>
</TablixMember>
</TablixMembers>
</TablixRowHierarchy>
<DataSetName>DataSet1</DataSetName>
<Height>1.8cm</Height>
<Width>3.47833cm</Width>
<Style>
<Border>
<Style>None</Style>
</Border>
</Style>
</Tablix>
</ReportItems>
<Height>0.70866in</Height>
<Style />
</Body>
<Width>1.36942in</Width>
<Page>
<PageHeight>21cm</PageHeight>
<PageWidth>29.7cm</PageWidth>
<LeftMargin>1cm</LeftMargin>
<RightMargin>1cm</RightMargin>
<TopMargin>1cm</TopMargin>
<BottomMargin>1cm</BottomMargin>
<ColumnSpacing>0.13cm</ColumnSpacing>
<Style />
</Page>
<AutoRefresh>0</AutoRefresh>
<DataSources>
<DataSource Name="dsReport">
<ConnectionProperties>
<DataProvider>System.Data.DataSet</DataProvider>
<ConnectString>/* Local Connection */</ConnectString>
</ConnectionProperties>
<rd:DataSourceID>64731dbe-32c4-4813-9e08-dbbc2fc760a6</rd:DataSourceID>
</DataSource>
</DataSources>
<DataSets>
<DataSet Name="DataSet1">
<Query>
<DataSourceName>dsReport</DataSourceName>
<CommandText>/* Local Query */</CommandText>
</Query>
<Fields>
<Field Name="uid">
<DataField>uid</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="uname">
<DataField>uname</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="pdate">
<DataField>pdate</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="hrs">
<DataField>hrs</DataField>
<rd:TypeName>System.Double</rd:TypeName>
</Field>
<Field Name="ot">
<DataField>ot</DataField>
<rd:TypeName>System.Double</rd:TypeName>
</Field>
</Fields>
<rd:DataSetInfo>
<rd:DataSetName>dsReport</rd:DataSetName>
<rd:SchemaPath>D:\Source\(014) GroupWare\EET_GroupWare_190428_1800\SubProject\FPJ0000\dsReport.xsd</rd:SchemaPath>
<rd:TableName>JobReportDay</rd:TableName>
<rd:TableAdapterFillMethod>Fill</rd:TableAdapterFillMethod>
<rd:TableAdapterGetDataMethod>GetData</rd:TableAdapterGetDataMethod>
<rd:TableAdapterName>JobReportDayTableAdapter</rd:TableAdapterName>
</rd:DataSetInfo>
</DataSet>
</DataSets>
<rd:ReportUnitType>Cm</rd:ReportUnitType>
<rd:ReportID>3d681985-8624-45b4-adb1-55832a2ada7d</rd:ReportID>
</Report>

View File

@@ -0,0 +1,132 @@
<?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>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>181, 17</value>
</metadata>
<metadata name="dsReport.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="dsReport.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="ta.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>245, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,246 @@
namespace FPJ0000.JobReport_
{
partial class rJobReportUser
{
/// <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.components = new System.ComponentModel.Container();
this.bs = new System.Windows.Forms.BindingSource(this.components);
this.dsReport = new FPJ0000.dsReport();
this.panel1 = new System.Windows.Forms.Panel();
this.btSave = new System.Windows.Forms.Button();
this.cmbUser = new System.Windows.Forms.ComboBox();
this.label4 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.dte = new System.Windows.Forms.DateTimePicker();
this.label2 = new System.Windows.Forms.Label();
this.dts = new System.Windows.Forms.DateTimePicker();
this.tbProcess = new System.Windows.Forms.ComboBox();
this.label1 = new System.Windows.Forms.Label();
this.btRefresh = new System.Windows.Forms.Button();
this.ta = new FPJ0000.dsReportTableAdapters.JobReportDayTableAdapter();
this.fpSpread1 = new FarPoint.Win.Spread.FpSpread();
this.fpSpread1_Sheet1 = new FarPoint.Win.Spread.SheetView();
this.progressBar2 = new System.Windows.Forms.ProgressBar();
((System.ComponentModel.ISupportInitialize)(this.bs)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.dsReport)).BeginInit();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.fpSpread1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).BeginInit();
this.SuspendLayout();
//
// bs
//
this.bs.DataMember = "JobReportDay";
this.bs.DataSource = this.dsReport;
//
// dsReport
//
this.dsReport.DataSetName = "dsReport";
this.dsReport.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
//
// panel1
//
this.panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(200)))), ((int)(((byte)(200)))), ((int)(((byte)(200)))));
this.panel1.Controls.Add(this.btSave);
this.panel1.Controls.Add(this.cmbUser);
this.panel1.Controls.Add(this.label4);
this.panel1.Controls.Add(this.label3);
this.panel1.Controls.Add(this.dte);
this.panel1.Controls.Add(this.label2);
this.panel1.Controls.Add(this.dts);
this.panel1.Controls.Add(this.tbProcess);
this.panel1.Controls.Add(this.label1);
this.panel1.Controls.Add(this.btRefresh);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Padding = new System.Windows.Forms.Padding(5);
this.panel1.Size = new System.Drawing.Size(1058, 58);
this.panel1.TabIndex = 0;
this.panel1.Paint += new System.Windows.Forms.PaintEventHandler(this.panel1_Paint);
//
// btSave
//
this.btSave.Dock = System.Windows.Forms.DockStyle.Right;
this.btSave.Location = new System.Drawing.Point(903, 5);
this.btSave.Name = "btSave";
this.btSave.Size = new System.Drawing.Size(75, 48);
this.btSave.TabIndex = 12;
this.btSave.Text = "파일저장";
this.btSave.UseVisualStyleBackColor = true;
this.btSave.Click += new System.EventHandler(this.btSave_Click);
//
// cmbUser
//
this.cmbUser.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbUser.FormattingEnabled = true;
this.cmbUser.Location = new System.Drawing.Point(289, 32);
this.cmbUser.Name = "cmbUser";
this.cmbUser.Size = new System.Drawing.Size(180, 20);
this.cmbUser.TabIndex = 11;
//
// label4
//
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(254, 36);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(29, 12);
this.label4.TabIndex = 10;
this.label4.Text = "사원";
//
// label3
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(261, 12);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(14, 12);
this.label3.TabIndex = 9;
this.label3.Text = "~";
//
// dte
//
this.dte.Location = new System.Drawing.Point(289, 8);
this.dte.Name = "dte";
this.dte.Size = new System.Drawing.Size(180, 21);
this.dte.TabIndex = 8;
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(10, 12);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(53, 12);
this.label2.TabIndex = 7;
this.label2.Text = "검색기간";
//
// dts
//
this.dts.Location = new System.Drawing.Point(68, 8);
this.dts.Name = "dts";
this.dts.Size = new System.Drawing.Size(180, 21);
this.dts.TabIndex = 6;
//
// tbProcess
//
this.tbProcess.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.tbProcess.FormattingEnabled = true;
this.tbProcess.Location = new System.Drawing.Point(68, 32);
this.tbProcess.Name = "tbProcess";
this.tbProcess.Size = new System.Drawing.Size(180, 20);
this.tbProcess.TabIndex = 5;
this.tbProcess.SelectedIndexChanged += new System.EventHandler(this.tbProcess_SelectedIndexChanged);
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(34, 36);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(29, 12);
this.label1.TabIndex = 3;
this.label1.Text = "공정";
//
// btRefresh
//
this.btRefresh.Dock = System.Windows.Forms.DockStyle.Right;
this.btRefresh.Location = new System.Drawing.Point(978, 5);
this.btRefresh.Name = "btRefresh";
this.btRefresh.Size = new System.Drawing.Size(75, 48);
this.btRefresh.TabIndex = 2;
this.btRefresh.Text = "새로고침";
this.btRefresh.UseVisualStyleBackColor = true;
this.btRefresh.Click += new System.EventHandler(this.button1_Click);
//
// ta
//
this.ta.ClearBeforeFill = true;
//
// fpSpread1
//
this.fpSpread1.AccessibleDescription = "";
this.fpSpread1.Dock = System.Windows.Forms.DockStyle.Fill;
this.fpSpread1.Location = new System.Drawing.Point(0, 58);
this.fpSpread1.Name = "fpSpread1";
this.fpSpread1.Sheets.AddRange(new FarPoint.Win.Spread.SheetView[] {
this.fpSpread1_Sheet1});
this.fpSpread1.Size = new System.Drawing.Size(1058, 488);
this.fpSpread1.TabIndex = 3;
//
// fpSpread1_Sheet1
//
this.fpSpread1_Sheet1.Reset();
this.fpSpread1_Sheet1.SheetName = "Sheet1";
//
// progressBar2
//
this.progressBar2.Dock = System.Windows.Forms.DockStyle.Bottom;
this.progressBar2.Location = new System.Drawing.Point(0, 546);
this.progressBar2.Name = "progressBar2";
this.progressBar2.Size = new System.Drawing.Size(1058, 23);
this.progressBar2.TabIndex = 5;
//
// rJobReportUser
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1058, 569);
this.Controls.Add(this.fpSpread1);
this.Controls.Add(this.progressBar2);
this.Controls.Add(this.panel1);
this.Name = "rJobReportUser";
this.Text = "적정인원 분석 보고서";
this.Load += new System.EventHandler(this.rJobReport_Load);
((System.ComponentModel.ISupportInitialize)(this.bs)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.dsReport)).EndInit();
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.fpSpread1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.fpSpread1_Sheet1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private dsReport dsReport;
private System.Windows.Forms.BindingSource bs;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Button btRefresh;
private dsReportTableAdapters.JobReportDayTableAdapter ta;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.ComboBox tbProcess;
private System.Windows.Forms.DateTimePicker dts;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.DateTimePicker dte;
private System.Windows.Forms.ComboBox cmbUser;
private System.Windows.Forms.Label label4;
private FarPoint.Win.Spread.FpSpread fpSpread1;
private FarPoint.Win.Spread.SheetView fpSpread1_Sheet1;
private System.Windows.Forms.Button btSave;
private System.Windows.Forms.ProgressBar progressBar2;
}
}

View File

@@ -0,0 +1,499 @@
using FarPoint.Win;
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 rJobReportUser : Form
{
Boolean binit = false;
public rJobReportUser()
{
InitializeComponent();
this.WindowState = FormWindowState.Maximized;
this.dts.Value = DateTime.Parse(DateTime.Now.AddMonths(-1).ToString("yyyy-MM-01"));
this.dte.Value = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddDays(-1);
}
private void rJobReport_Load(object sender, EventArgs e)
{
this.tbProcess.Items.Clear();
tbProcess.Items.Add("--전체--");
var taProcess = new dsReportTableAdapters.ProcessListTableAdapter();
var dtProcessList = taProcess.GetData(FCOMMON.info.Login.gcode);
foreach (dsReport.ProcessListRow dr in dtProcessList.Rows)
tbProcess.Items.Add(dr.processs);
//사용자의 공정명을 선택해준다
this.tbProcess.Text = FCOMMON.info.Login.process;
//프로세스가 선택되지 않았다면 전체를 선택해준다.
if (tbProcess.SelectedIndex < 0) tbProcess.SelectedIndex = 0;
//사용자 목록을 선택한다
UpdateUserList();
//엑셀파일불러오기
var file = FCOMMON.Util.CurrentPath + "ReportForUser.xlsx";
this.fpSpread1.OpenExcel(file);
if (this.fpSpread1.Sheets.Count > 1) this.fpSpread1.ActiveSheetIndex = 0;
//refrehData();
binit = true;
}
void UpdateUserList()
{
var db = new EEEntities();
cmbUser.Items.Clear();
cmbUser.Items.Add("--전체--");
//일반사용자 목록 가져온다
IQueryable<IGrouping<String, vJobReportForUser>> userlist;
if (tbProcess.SelectedIndex <= 0)
{
//공정구분없이 전체사용자를 가져온다
userlist = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode).OrderBy(t => t.name).GroupBy(t => t.name);
}
else
{
userlist = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.userProcess == tbProcess.Text).OrderBy(t => t.name).GroupBy(t => t.name);
}
//if (tbProcess.SelectedIndex != 0) userlist = userlist.Where(t => t.processs == tbProcess.Text); //해당 공정의 인원만 처리한다
foreach (var item in userlist)
{
var dr = item.First();
cmbUser.Items.Add(String.Format("[{0}] {1}", dr.id, dr.name));
}
if (tbProcess.SelectedIndex > 0)
cmbUser.Text = string.Format("[{0}] {1}", FCOMMON.info.Login.no, FCOMMON.info.Login.nameK);
if (cmbUser.SelectedIndex < 0) cmbUser.SelectedIndex = 0; //기본전체로 선택해준다.
}
void refrehData()
{
var db = new EEEntities();
//조회공정
this.fpSpread1.Sheets[0].Cells[3, 2].Value = tbProcess.Text;
//담당자
this.fpSpread1.Sheets[0].Cells[3, 3].Value = cmbUser.Text;
//시작일:F4
this.fpSpread1.Sheets[0].Cells[3, 5].Value = dts.Value;
//종료일:G4
this.fpSpread1.Sheets[0].Cells[3, 6].Value = dte.Value;
//근문일수,시간
var vSD = dts.Value.ToShortDateString();
var vED = dte.Value.ToShortDateString();
//휴가일수확인
var drDays = db.HolidayLIst.Where(t => t.free == false && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0);
//근무일수적용
if (drDays == null || drDays.Count() < 1) this.fpSpread1.Sheets[0].Cells[3, 7].Value = 0;
else this.fpSpread1.Sheets[0].Cells[3, 7].Value = drDays.Count();
//기준시간 1번시트에 추가 표시 (210215 - 정봉석)
this.fpSpread1.Sheets[1].Cells["F1"].Value = drDays.Count() * 8;
ComplexBorderSide left = new ComplexBorderSide(Color.Gray, 1);
ComplexBorderSide top = new ComplexBorderSide(Color.Gray, 1);
ComplexBorderSide right = new ComplexBorderSide(Color.Gray, 1);
ComplexBorderSide bottom = new ComplexBorderSide(Color.Gray, 1);
//사용자목록을 가져온다
List<vJobReportForUser> baseData;
if (cmbUser.SelectedIndex > 0)
{
//사용자번호
var UserNo = cmbUser.Text.Substring(1, cmbUser.Text.IndexOf(']') - 1);
baseData = db.vJobReportForUser
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.id == UserNo && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
}
else if (tbProcess.SelectedIndex > 0)
{
baseData = db.vJobReportForUser
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.userProcess == tbProcess.Text && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
}
else
{
baseData = db.vJobReportForUser
.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
.OrderBy(t => t.name)
.OrderBy(t => t.pdate)
.ToList();
}
//사용자로 그룹해서 수량을 세명 , 사용자 숫자가 된다.
this.fpSpread1.Sheets[0].Cells[3, 9].Value = baseData.GroupBy(t => t.id).Count(); //인원수
var col = 0;
var row = 0;
//해당 그룹의 기간데이터를 가져온다
//if (cmbUser.SelectedIndex > 0)
//{
// //사용자번호
// var UserNo = cmbUser.Text.Substring(1, cmbUser.Text.IndexOf(']') - 1);
// baseData = db.vJobReportForUser
// .Where(t => t.gcode == FCOMMON.info.Login.gcode && t.id == UserNo && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
// .OrderBy(t => t.name)
// .OrderBy(t => t.pdate)
// .ToList();
//}
//else if (tbProcess.SelectedIndex > 0)
//{
// baseData = db.vJobReportForUser
// .Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0 && t.userProcess == tbProcess.Text)
// .OrderBy(t => t.name)
// .OrderBy(t => t.pdate)
// .ToList();
//}
//else
//{
// baseData = db.vJobReportForUser
// .Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0)
// .OrderBy(t => t.name)
// .OrderBy(t => t.pdate)
// .ToList();
//}
col = 0;
row = 1;
fpSpread1.Sheets[1].RowCount = baseData.GroupBy(t => t.id).Count() + 1;
foreach (var item in baseData.GroupBy(t => t.id)) //사용자별로 그룹을 해서
{
var dr = item.FirstOrDefault();
this.fpSpread1.Sheets[1].Cells[row, 0].Value = dr.name;
this.fpSpread1.Sheets[1].Cells[row, 1].Value = dr.id;
this.fpSpread1.Sheets[1].Cells[row, 2].Value = item.Sum(t => t.hrs);
this.fpSpread1.Sheets[1].Cells[row, 3].Value = item.Sum(t => t.ot);
row += 1;
}
fpSpread1.Sheets[1].ColumnCount = 6;
fpSpread1.Sheets[1].RowCount = row + 1;
//Raw dat a표시
row = 1;
this.fpSpread1.Sheets[2].RowCount = baseData.Count + 1;
foreach (var item in baseData)
{
col = 0;
this.fpSpread1.Sheets[2].Cells[row, col++].Value = item.id;
this.fpSpread1.Sheets[2].Cells[row, col++].Value = item.name;
this.fpSpread1.Sheets[2].Cells[row, col++].Value = item.pdate;
this.fpSpread1.Sheets[2].Cells[row, col++].Value = item.userProcess;
this.fpSpread1.Sheets[2].Cells[row, col++].Value = item.process;
this.fpSpread1.Sheets[2].Cells[row, col++].Value = item.svalue;
this.fpSpread1.Sheets[2].Cells[row, col++].Value = item.hrs;
this.fpSpread1.Sheets[2].Cells[row, col++].Value = item.ot;
row += 1;
}
// var dtRaw = db.vJobReportForUser.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.pdate.CompareTo(vSD) >= 0 && t.pdate.CompareTo(vED) <= 0);
//인원분석보고용타입설1
col = 2;
var orTypeName = baseData.Where(t => t.svalue != "휴가").OrderBy(t => t.svalue).GroupBy(t => t.svalue);
this.fpSpread1.ActiveSheetIndex = 0;
foreach (var item in orTypeName)
{
var dr = item.FirstOrDefault();
this.fpSpread1.Sheets[0].Cells[6, col++].Value = dr.svalue;
//col += 1;
}
for (int i = col; i <= 6; i++)
this.fpSpread1.Sheets[0].Cells[6, i].Value = "*";
System.Globalization.CultureInfo cultureInfo = new System.Globalization.CultureInfo("ko-KR", false);
FarPoint.Win.Spread.CellType.NumberCellType numberCellType1 = new FarPoint.Win.Spread.CellType.NumberCellType();
numberCellType1.NegativeRed = true;
numberCellType1.NullDisplay = "--";
//프로세스목록을 먼저 기록한다
row = 7;
this.fpSpread1.Sheets[0].RowCount = 101;
//var orProcess = baseData.OrderBy(t => t.process).GroupBy(t => t.process);
//프로세스목록은 전체로 사용한다.
var prclist = db.Common.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.grp == "16").OrderBy(t => t.code).ToList();
this.progressBar2.Maximum = prclist.Count;
this.progressBar2.Value = 0;
foreach(var prcitem in prclist)
{
this.progressBar2.Value += 1;
var item = baseData.Where(t => t.process == prcitem.memo); //해당 프로세스에 해당하는 아이템을 가져온다
//}
//foreach (var item in orProcess)
//{
var processName = prcitem.memo; // item.FirstOrDefault().process;
this.fpSpread1.Sheets[0].Cells[row, 1].Value = processName;
//2번부터는 데이터를 넣어야 한다
double sumOt = 0.0;
double holytime = 0.0;
int coldata = 2;
for (int i = 2; i <= 6; i++)
{
if(item.Any()==false)
{
//자료가없다면 0으로 채운다
fpSpread1.Sheets[0].Cells[row, coldata].Value = null;
}
else
{
var colName = fpSpread1.Sheets[0].Cells[6, i].Value.ToString();
//이 이름에 해당하는 데이터의 시간을 가져온다
double ot = 0.0;
double hrs = 0.0;
if (colName != "*")
{
//double holytime = 0.0;
var timeList = item.Where(t => t.svalue == colName);
if (timeList != null)
{
hrs = (double)timeList.Sum(t => t.hrs);
ot = (double)timeList.Sum(t => t.ot);
sumOt += ot;
}
}
if (ot + hrs == 0.0) fpSpread1.Sheets[0].Cells[row, coldata].Value = null;
else fpSpread1.Sheets[0].Cells[row, coldata].Value = ot + hrs; //없음으로한다
}
coldata += 1;
}
fpSpread1.Sheets[0].Cells[row, 7].CellType = numberCellType1;
fpSpread1.Sheets[0].Cells[row, 7].ParseFormatString = "N1";
fpSpread1.Sheets[0].Cells[row, 8].CellType = numberCellType1;
fpSpread1.Sheets[0].Cells[row, 8].ParseFormatString = "N1";
fpSpread1.Sheets[0].Cells[row, 7].Formula = string.Format("SUM(C{0}:G{0})+K{0}", row + 1);
fpSpread1.Sheets[0].Cells[row, 8].Formula = string.Format("H{0}/$I$4", row + 1);
//H8 /$I$4
if (sumOt == 0.0) fpSpread1.Sheets[0].Cells[row, 9].Value = null; //OT합계
else fpSpread1.Sheets[0].Cells[row, 9].Value = sumOt; //OT합계
// process 의 휴가시간을 다시 계산한다.
var = baseData.Where(t => t.process == processName && t.svalue == "휴가");
if ( == null || .Count() < 1)
{
fpSpread1.Sheets[0].Cells[row, 10].Value = null;// 0.0; //휴가시간
}
else fpSpread1.Sheets[0].Cells[row, 10].Value = .Sum(t => t.hrs); //휴가시간
for (int i = 1; i <= 10; i++)
{
fpSpread1.Sheets[0].Cells[row, i].BackColor = Color.White;
fpSpread1.Sheets[0].Cells[row, i].Border = new ComplexBorder(left, top, right, bottom);
fpSpread1.Sheets[0].Cells[row, i].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
fpSpread1.Sheets[0].Cells[row, i].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
}
row += 1;
}
//합계데이터
fpSpread1.Sheets[0].Cells[row, 1].Value = "합계";
fpSpread1.Sheets[0].Cells[row, 1].BackColor = Color.LightGray;
fpSpread1.Sheets[0].Cells[row, 1].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
fpSpread1.Sheets[0].Cells[row, 1].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
fpSpread1.Sheets[0].Cells[row, 1].Border = new ComplexBorder(left, top, right, bottom);
for (int i = 2; i < 11; i++)
{
char basec = 'C';
char newc = (char)(basec + (i - 2));
fpSpread1.Sheets[0].Cells[row, i].Formula = "SUM(" + newc.ToString() + "8:" + newc.ToString() + row.ToString() + ")";
fpSpread1.Sheets[0].Cells[row, i].BackColor = Color.LightGray;
fpSpread1.Sheets[0].Cells[row, i].CellType = numberCellType1;
fpSpread1.Sheets[0].Cells[row, i].ParseFormatString = "N1";
fpSpread1.Sheets[0].Cells[row, i].CellType = numberCellType1;
fpSpread1.Sheets[0].Cells[row, i].ParseFormatString = "N1";
fpSpread1.Sheets[0].Cells[row, i].Border = new ComplexBorder(left, top, right, bottom);
fpSpread1.Sheets[0].Cells[row, i].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
fpSpread1.Sheets[0].Cells[row, i].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
}
this.fpSpread1.Sheets[0].RowCount = row + 1;
// this.ta.Fill(this.dsReport.JobReportDay, tbMon.Text, FCOMMON.info.Login.gcode);
// //this.reportViewer1.SetDisplayMode(Microsoft.Reporting.WinForms.DisplayMode.PrintLayout);
// //this.reportViewer1.ZoomMode = Microsoft.Reporting.WinForms.ZoomMode.PageWidth;
// //this.reportViewer1.RefreshReport();
// //그리드뷰 생성
// this.dataGridView1.Rows.Clear();
// this.dataGridView1.Columns.Clear();
// var Process = tbProcess.Text.Trim();
// if (Process == "%" || tbProcess.SelectedIndex == 0) Process = "";
// var wekklist = new string[] { "일","월","화","수","목","금","토" };
// //날짜에 해당하는 열을 먼저 생성한다
// dataGridView1.Columns.Add("dvcu_damdang", "사원명");
//// dataGridView1.Columns.Add("dvcu_process", "공정");
// var daylist = dsReport.JobReportDay.OrderBy(t=>t.pdate).GroupBy(t => t.pdate);
// foreach (var dayitem in daylist)
// {
// var dtValue = DateTime.Parse(dayitem.Key);
// if(dtValue.DayOfWeek == DayOfWeek.Saturday || dtValue.DayOfWeek == DayOfWeek.Sunday)
// {
// var week = wekklist[(int)dtValue.DayOfWeek];
// this.dataGridView1.Columns.Add("dvcu_pdate", dayitem.Key.Substring(8, 2) + "(" + week.ToString() + ")");
// }
// else
// {
// this.dataGridView1.Columns.Add("dvcu_pdate", dayitem.Key.Substring(8, 2) );
// }
// this.dataGridView1.Columns[this.dataGridView1.Columns.Count -1].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
// }
// dataGridView1.Columns.Add("dvcu_sum", "합계");
// this.dataGridView1.Columns[this.dataGridView1.Columns.Count - 1].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
// foreach (var item in dsReport.JobReportDay.Where(t=>t.processs.Contains(Process)).OrderBy(t => t.uname + t.uid).GroupBy(t => t.uname))
// {
// //사용자별로 데이터를 가져온다.
// var username = item.Key;
// var userid = item.FirstOrDefault().uid;
// List<string> rowdata = new List<string>();
// rowdata.Add(username);
// // rowdata.Add(item.FirstOrDefault().processs);
// //이 사용자의 데이터를 날짜별로 정렬해서 가져온다.
// var sum = 0.0;
// var sumOT = 0.0;
// for (int i = 1; i < this.dataGridView1.Columns.Count-1; i++)
// {
// var col = this.dataGridView1.Columns[i];
// var dayStr = col.HeaderText.Substring(0, 2);
// var daydata = dsReport.JobReportDay.Where(t => t.uid == userid && t.pdate.EndsWith(dayStr)).FirstOrDefault();
// if (daydata != null)
// {
// sum += daydata.hrs;
// sumOT += daydata.ot;
// rowdata.Add((daydata.hrs.ToString() + "+" + daydata.ot.ToString()));
// }
// else rowdata.Add("--");
// }
// rowdata.Add(sum.ToString() + "+" + sumOT.ToString());
// this.dataGridView1.Rows.Add(rowdata.ToArray());
// }
// foreach(DataGridViewRow dvrow in this.dataGridView1.Rows)
// {
// for(int i = 1;i < this.dataGridView1.ColumnCount-1;i++)
// {
// var cellvalue = "--";
// if(dvrow.Cells[i].Value != null) cellvalue= dvrow.Cells[i].Value.ToString();
// if (cellvalue == "--") dvrow.Cells[i].Style.ForeColor = Color.Gray;
// else
// {
// var datasplbu = cellvalue.Split('+');
// double hrs;
// double ot;
// if (double.TryParse(datasplbu[1], out ot) == false) ot = 0;
// if(double.TryParse(datasplbu[0],out hrs))
// {
// if (hrs > 8.0) dvrow.Cells[i].Style.ForeColor = Color.Blue;
// else if (hrs < 8.0) dvrow.Cells[i].Style.ForeColor = Color.Red;
// else
// {
// if (ot == 0)
// dvrow.Cells[i].Style.ForeColor = Color.Black;
// else
// dvrow.Cells[i].Style.ForeColor = Color.Magenta;
// }
// }
// else
// {
// FCOMMON.Util.MsgE("숫자변경실패 " + cellvalue);
// dvrow.Cells[i].Style.ForeColor = Color.Red;
// }
// }
// }
// }
// this.dataGridView1.AutoResizeColumns();
}
private void button1_Click(object sender, EventArgs e)
{
refrehData();
}
private void tbProcess_SelectedIndexChanged(object sender, EventArgs e)
{
if (binit == false) return;
UpdateUserList();
//if (tbProcess.SelectedIndex >= 0) refrehData();
}
private void panel1_Paint(object sender, PaintEventArgs e)
{
}
private void btSave_Click(object sender, EventArgs e)
{
var sd = new SaveFileDialog();
sd.Filter = "excel(*.xls)|*.xls";
sd.FilterIndex = 0;
sd.FileName = "적정인원관리.xls";
if (sd.ShowDialog() == DialogResult.OK)
{
fpSpread1.SaveExcel(sd.FileName);
FCOMMON.Util.MsgE("파일저장완료\n" + sd.FileName);
}
}
}
}

View File

@@ -0,0 +1,132 @@
<?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>
<metadata name="bs.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>119, 17</value>
</metadata>
<metadata name="dsReport.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="ta.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>183, 17</value>
</metadata>
<metadata name="fpSpread1_Sheet1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>245, 17</value>
</metadata>
</root>