qrmode 에서 wms rcv 태그 인식되게 함

This commit is contained in:
ChiKyun Kim
2025-08-06 10:05:24 +09:00
parent a7bc964b5c
commit c17296101a
89 changed files with 8051 additions and 6661 deletions

View File

@@ -49,8 +49,9 @@ namespace Project.Dialog.Debug
OPER_NAME = tboper.Text,
HOST_NAME = System.Net.Dns.GetHostEntry("").HostName,
};
var rlt = Amkor.RestfulService.Inbound_label_attach_reel_info(reelinfo, out string errmsg);
if (rlt == false) UTIL.MsgE(errmsg);
UTIL.MsgE("미지원");
//var rlt = Amkor.RestfulService.Inbound_label_attach_reel_info(reelinfo, out string errmsg);
//if (rlt == false) UTIL.MsgE(errmsg);
}

View File

@@ -1097,7 +1097,7 @@ namespace Project
private void toolStripButton6_Click(object sender, EventArgs e)
{
var f = new Dialog.fInput("모델명을 입력하세요",string.Empty);
var f = new AR.Dialog.fInput("모델명을 입력하세요",string.Empty);
if (f.ShowDialog() != DialogResult.OK) return;
//지정한 이름이있는지 확인한다.
@@ -1422,7 +1422,7 @@ namespace Project
return;
}
var f = new Dialog.fTouchKeyFull("모델명 변경", dr.Title);
var f = new AR.Dialog.fTouchKeyFull("모델명 변경", dr.Title);
if (f.ShowDialog() != DialogResult.OK) return;
var valstr = f.tbInput.Text.Trim();

View File

@@ -9,6 +9,7 @@ using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using static System.Windows.Forms.VisualStyles.VisualStyleElement;
namespace Project.Dialog
{
@@ -851,7 +852,7 @@ namespace Project.Dialog
if (tn == null) return;
var old = tn.Text.Trim();
var f = new Dialog.fInput("입력",tn.Text);
var f = new AR.Dialog.fInput("입력",tn.Text);
if (f.ShowDialog() != DialogResult.OK) return;
if (f.ValueString.isEmpty()) return;

View File

@@ -603,7 +603,7 @@ namespace Project
private void toolStripButton4_Click(object sender, EventArgs e)
{
var f = new Dialog.fTouchKeyFull("모델명을 입력하세요", DateTime.Now.ToString("yyyyMMddHHmmss"));
var f = new AR.Dialog.fTouchKeyFull("모델명을 입력하세요", DateTime.Now.ToString("yyyyMMddHHmmss"));
if (f.ShowDialog() == DialogResult.OK)
{
var newdr = this.ds1.OPModel.NewOPModelRow();

View File

@@ -8,6 +8,7 @@ using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Text.RegularExpressions;
using AR;
namespace Project.Dialog
{

View File

@@ -3,175 +3,160 @@ using System.Drawing;
using System.Windows.Forms;
using System.Linq;
using System.Collections.Generic;
using AR;
namespace Project.Dialog
{
public partial class fFinishJob : Form
{
public string Command = string.Empty;
public partial class fFinishJob : Form
{
public string Command = string.Empty;
public fFinishJob()
{
InitializeComponent();
this.KeyPreview = true;
this.KeyDown += (s1, e1) =>
{
if (e1.KeyCode == Keys.Escape)
{
Close();
}
};
if (System.Diagnostics.Debugger.IsAttached == true)
{
this.TopMost = false;
}
this.FormClosed += fFinishJob_FormClosed;
}
public fFinishJob()
{
InitializeComponent();
this.KeyPreview = true;
this.KeyDown += (s1, e1) =>
{
if (e1.KeyCode == Keys.Escape)
{
Close();
}
};
if (System.Diagnostics.Debugger.IsAttached == true)
{
this.TopMost = false;
}
this.FormClosed += fFinishJob_FormClosed;
}
void fFinishJob_FormClosed(object sender, FormClosedEventArgs e)
{
// Comm.WebService.Message -= WebService_Message;
}
void fFinishJob_FormClosed(object sender, FormClosedEventArgs e)
{
// Comm.WebService.Message -= WebService_Message;
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
}
private void __LoaD(object sender, EventArgs e)
{
this.Text = string.Format("금일 작업 목록 입니다({0})", DateTime.Now.ToShortDateString());
private void __LoaD(object sender, EventArgs e)
{
this.Text = string.Format("금일 작업 목록 입니다({0})", DateTime.Now.ToShortDateString());
if (AR.SETTING.Data.OnlineMode)
{
RefreshData();
}
if (AR.SETTING.Data.OnlineMode)
{
RefreshData();
}
//lbCntL.Text = cntl.ToString();
//lbCntR.Text = cntr.ToString();
//lbSumQty.Text = qty.ToString();
}
//lbCntL.Text = cntl.ToString();
//lbCntR.Text = cntr.ToString();
//lbSumQty.Text = qty.ToString();
}
void RefreshData()
{
void RefreshData()
{
var sd = DateTime.Parse(DateTime.Now.ToShortDateString() + " 00:00:00");
var ed = DateTime.Parse(DateTime.Now.ToShortDateString() + " 23:59:59");
int cntl = 0;
int cntr = 0;
float qty = 0;
if (PUB.Result.JobStartTime.Year != 1982) sd = PUB.Result.JobStartTime;
if (PUB.Result.JobEndTime.Year != 1982) ed = PUB.Result.JobEndTime;
using (var db = new EEEntities())
{
var sd = DateTime.Parse(DateTime.Now.ToShortDateString() + " 00:00:00");
var ed = DateTime.Parse(DateTime.Now.ToShortDateString() + " 23:59:59");
label2.Text = string.Format("현 작업 정보({0}~{1})", sd.ToString("HH:mm:ss"), ed.ToString("HH:mm:ss"));
if (PUB.Result.JobStartTime.Year != 1982) sd = PUB.Result.JobStartTime;
if (PUB.Result.JobEndTime.Year != 1982) ed = PUB.Result.JobEndTime;
//현작업
var ta = new DataSet1TableAdapters.Component_Reel_ResultTableAdapter();
var list = ta.GetByValidGuid(sd, ed, AR.SETTING.Data.McName, PUB.Result.guid);
//var list = db.Component_Reel_Result.Where(t => t.STIME >= sd && t.STIME <= ed && t.PRNVALID == true && t.PRNATTACH == true && t.MC == AR.SETTING.Data.McName);
UpdateList(list, dataGridView1, dataGridView2);
label2.Text = string.Format("현 작업 정보({0}~{1})", sd.ToString("HH:mm:ss"), ed.ToString("HH:mm:ss"));
//당일작업
sd = DateTime.Parse(sd.ToShortDateString() + " 00:00:00");
ed = DateTime.Parse(sd.ToShortDateString() + " 23:59:59");
label3.Text = $"당일({sd.ToShortDateString()}) 작업 정보";
var listday = ta.GetByValid(sd, ed, AR.SETTING.Data.McName);
UpdateList(listday, dataGridView3, dataGridView4);
}
//현작업
var ta = new DataSet1TableAdapters.Component_Reel_ResultTableAdapter();
var list = ta.GetByValidGuid(sd, ed, AR.SETTING.Data.McName,PUB.Result.guid);
//var list = db.Component_Reel_Result.Where(t => t.STIME >= sd && t.STIME <= ed && t.PRNVALID == true && t.PRNATTACH == true && t.MC == AR.SETTING.Data.McName);
UpdateList(list, dataGridView1, dataGridView2);
void UpdateList(DataSet1.Component_Reel_ResultDataTable list, DataGridView dvS, DataGridView dvB)
{
dvS.Rows.Clear();
dvB.Rows.Clear();
int sum_reel = 0;
int sum_cntl = 0;
int sum_cntr = 0;
double sum_kpc = 0;
if (list != null && list.Count() > 0)
{
//SID별
sum_reel = 0;
sum_cntl = 0;
sum_cntr = 0;
sum_kpc = 0;
var grplist = list.OrderBy(t => t.SID).GroupBy(t => t.SID);
foreach (var row in grplist)
{
var sid = row.Key;
var reel = row.Count();
var cntl = row.Where(t => t.LOC == "L")?.Count() ?? 0;
var cntr = row.Where(t => t.LOC == "R")?.Count() ?? 0;
double kpc = row.Sum(t => t.QTY);
if (kpc > 0) kpc = kpc / 1000.0;
var lim = -1;
dvS.Rows.Add(new object[] { sid, reel, cntl, cntr, kpc, lim });
sum_reel += reel;
sum_cntl += cntl;
sum_cntr += cntr;
sum_kpc += kpc;
}
dvS.Rows.Add(new object[] { "TOTAL", sum_reel, sum_cntl, sum_cntr, sum_kpc, null });
dvS.Rows[dvS.RowCount - 1].DefaultCellStyle.BackColor = Color.DimGray;
//당일작업
sd = DateTime.Parse(sd.ToShortDateString() + " 00:00:00");
ed = DateTime.Parse(sd.ToShortDateString() + " 23:59:59");
label3.Text = $"당일({sd.ToShortDateString()}) 작업 정보";
var listday = ta.GetByValid(sd, ed, AR.SETTING.Data.McName);
UpdateList(listday, dataGridView3, dataGridView4);
//if (list != null && list.Count() > 0)
//{
// cntl = list.Where(t => t.LOC == "L").GroupBy(t => t.RID0).Count();
// cntr = list.Where(t => t.LOC == "R").GroupBy(t => t.RID0).Count();
//}
//dbqty = list.Sum(t => t.QTY);
//if (dbqty != null) qty = ((int)dbqty);
}
}
//배치별
sum_reel = 0;
sum_cntl = 0;
sum_cntr = 0;
sum_kpc = 0;
void UpdateList(DataSet1.Component_Reel_ResultDataTable list, DataGridView dvS, DataGridView dvB)
{
dvS.Rows.Clear();
dvB.Rows.Clear();
var grpbatch = list.OrderBy(t => t.BATCH).GroupBy(t => t.BATCH);
foreach (var row in grpbatch)
{
var sid = row.Key;
if (sid.isEmpty()) sid = "(none)";
var reel = row.Count();
var cntl = row.Where(t => t.LOC == "L")?.Count() ?? 0;
var cntr = row.Where(t => t.LOC == "R")?.Count() ?? 0;
double kpc = row.Sum(t => t.QTY);
if (kpc > 0) kpc = kpc / 1000.0;
int sum_reel = 0;
int sum_cntl = 0;
int sum_cntr = 0;
double sum_kpc = 0;
var lim = -1;
dvB.Rows.Add(new object[] { sid, reel, cntl, cntr, kpc, lim });
if (list != null && list.Count() > 0)
{
//SID별
sum_reel = 0;
sum_cntl = 0;
sum_cntr = 0;
sum_kpc = 0;
sum_reel += reel;
sum_cntl += cntl;
sum_cntr += cntr;
sum_kpc += kpc;
}
dvB.Rows.Add(new object[] { "TOTAL", sum_reel, sum_cntl, sum_cntr, sum_kpc, null });
dvB.Rows[dvB.RowCount - 1].DefaultCellStyle.BackColor = Color.DimGray;
var grplist = list.OrderBy(t => t.SID).GroupBy(t => t.SID);
foreach (var row in grplist)
{
var sid = row.Key;
var reel = row.Count();
var cntl = row.Where(t => t.LOC == "L")?.Count() ?? 0;
var cntr = row.Where(t => t.LOC == "R")?.Count() ?? 0;
double kpc = row.Sum(t => t.QTY) ;
if (kpc > 0) kpc = kpc / 1000.0;
}
dvS.Invalidate();
dvB.Invalidate();
}
var lim = -1;
dvS.Rows.Add(new object[] { sid, reel, cntl, cntr, kpc, lim });
sum_reel += reel;
sum_cntl += cntl;
sum_cntr += cntr;
sum_kpc += kpc;
}
dvS.Rows.Add(new object[] { "TOTAL", sum_reel, sum_cntl, sum_cntr, sum_kpc, null });
dvS.Rows[dvS.RowCount - 1].DefaultCellStyle.BackColor = Color.DimGray;
//배치별
sum_reel = 0;
sum_cntl = 0;
sum_cntr = 0;
sum_kpc = 0;
var grpbatch = list.OrderBy(t => t.BATCH).GroupBy(t => t.BATCH);
foreach (var row in grpbatch)
{
var sid = row.Key;
if (sid.isEmpty()) sid = "(none)";
var reel = row.Count();
var cntl = row.Where(t => t.LOC == "L")?.Count() ?? 0;
var cntr = row.Where(t => t.LOC == "R")?.Count() ?? 0;
double kpc = row.Sum(t => t.QTY) ;
if (kpc > 0) kpc = kpc / 1000.0;
var lim = -1;
dvB.Rows.Add(new object[] { sid, reel, cntl, cntr, kpc, lim });
sum_reel += reel;
sum_cntl += cntl;
sum_cntr += cntr;
sum_kpc += kpc;
}
dvB.Rows.Add(new object[] { "TOTAL", sum_reel, sum_cntl, sum_cntr, sum_kpc, null });
dvB.Rows[dvB.RowCount - 1].DefaultCellStyle.BackColor = Color.DimGray;
}
dvS.Invalidate();
dvB.Invalidate();
}
private void label3_Click(object sender, EventArgs e)
{
if (AR.SETTING.Data.OnlineMode)
RefreshData();
}
}
private void label3_Click(object sender, EventArgs e)
{
if (AR.SETTING.Data.OnlineMode)
RefreshData();
}
}
}

View File

@@ -55,11 +55,6 @@
this.tbFind = new System.Windows.Forms.TextBox();
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
this.dv = new arCtl.arDatagridView();
this.bs = new System.Windows.Forms.BindingSource(this.components);
this.dataSet1 = new Project.DataSet1();
this.ta = new Project.DataSet1TableAdapters.Component_Reel_ResultTableAdapter();
this.panel2 = new System.Windows.Forms.Panel();
this.button1 = new System.Windows.Forms.Button();
this.sTIMEDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.ETIME = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.jTYPEDataGridViewTextBoxColumn = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -78,6 +73,11 @@
this.dataGridViewCheckBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.PRNVALID = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.bs = new System.Windows.Forms.BindingSource(this.components);
this.dataSet1 = new Project.DataSet1();
this.ta = new Project.DataSet1TableAdapters.Component_Reel_ResultTableAdapter();
this.panel2 = new System.Windows.Forms.Panel();
this.button1 = new System.Windows.Forms.Button();
this.panel1.SuspendLayout();
this.cm.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dv)).BeginInit();
@@ -301,45 +301,6 @@
this.dv.TabIndex = 2;
this.dv.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dv_CellDoubleClick);
//
// bs
//
this.bs.DataMember = "Component_Reel_Result";
this.bs.DataSource = this.dataSet1;
this.bs.Sort = "wdate desc";
//
// dataSet1
//
this.dataSet1.DataSetName = "DataSet1";
this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
//
// ta
//
this.ta.ClearBeforeFill = true;
//
// panel2
//
this.panel2.Controls.Add(this.tbFind);
this.panel2.Controls.Add(this.button1);
this.panel2.Dock = System.Windows.Forms.DockStyle.Bottom;
this.panel2.Location = new System.Drawing.Point(0, 543);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(954, 40);
this.panel2.TabIndex = 6;
//
// button1
//
this.button1.Dock = System.Windows.Forms.DockStyle.Right;
this.button1.Font = new System.Drawing.Font("맑은 고딕", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button1.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.button1.Location = new System.Drawing.Point(898, 0);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(56, 40);
this.button1.TabIndex = 11;
this.button1.Tag = "0";
this.button1.Text = "KEY";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// sTIMEDataGridViewTextBoxColumn
//
this.sTIMEDataGridViewTextBoxColumn.DataPropertyName = "STIME";
@@ -483,6 +444,45 @@
this.Column1.Name = "Column1";
this.Column1.ReadOnly = true;
//
// bs
//
this.bs.DataMember = "Component_Reel_Result";
this.bs.DataSource = this.dataSet1;
this.bs.Sort = "wdate desc";
//
// dataSet1
//
this.dataSet1.DataSetName = "DataSet1";
this.dataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
//
// ta
//
this.ta.ClearBeforeFill = true;
//
// panel2
//
this.panel2.Controls.Add(this.tbFind);
this.panel2.Controls.Add(this.button1);
this.panel2.Dock = System.Windows.Forms.DockStyle.Bottom;
this.panel2.Location = new System.Drawing.Point(0, 543);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(954, 40);
this.panel2.TabIndex = 6;
//
// button1
//
this.button1.Dock = System.Windows.Forms.DockStyle.Right;
this.button1.Font = new System.Drawing.Font("맑은 고딕", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button1.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.button1.Location = new System.Drawing.Point(898, 0);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(56, 40);
this.button1.TabIndex = 11;
this.button1.Tag = "0";
this.button1.Text = "KEY";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// fHistory
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;

View File

@@ -282,7 +282,7 @@ namespace Project.Dialog
private void button1_Click(object sender, EventArgs e)
{
var str = tbFind.Text.Trim();
var f = new Dialog.fTouchKeyFull("검색어 입력", str);
var f = new AR.Dialog.fTouchKeyFull("검색어 입력", str);
if (f.ShowDialog() != DialogResult.OK) return;
tbFind.Text = f.tbInput.Text.Trim();
FindData();

View File

@@ -54,6 +54,10 @@
this.label1 = new System.Windows.Forms.Label();
this.tbRID = new System.Windows.Forms.TextBox();
this.groupBox2 = new System.Windows.Forms.GroupBox();
this.linkLabel10 = new System.Windows.Forms.LinkLabel();
this.tbQtyMax = new System.Windows.Forms.TextBox();
this.lnkBatch = new System.Windows.Forms.LinkLabel();
this.tbBatch = new System.Windows.Forms.TextBox();
this.tbRID0 = new System.Windows.Forms.Label();
this.button4 = new System.Windows.Forms.Button();
this.btIDChk = new System.Windows.Forms.Button();
@@ -108,10 +112,6 @@
this.tmAutoConfirm = new System.Windows.Forms.Timer(this.components);
this.statusStrip1 = new System.Windows.Forms.StatusStrip();
this.toolStripStatusLabel1 = new System.Windows.Forms.ToolStripStatusLabel();
this.lnkBatch = new System.Windows.Forms.LinkLabel();
this.tbBatch = new System.Windows.Forms.TextBox();
this.linkLabel10 = new System.Windows.Forms.LinkLabel();
this.tbQtyMax = new System.Windows.Forms.TextBox();
this.groupBox1.SuspendLayout();
this.cmbarc.SuspendLayout();
this.panel7.SuspendLayout();
@@ -423,6 +423,50 @@
this.groupBox2.Text = "Barcode information";
this.groupBox2.Enter += new System.EventHandler(this.groupBox2_Enter);
//
// linkLabel10
//
this.linkLabel10.AutoSize = true;
this.linkLabel10.Font = new System.Drawing.Font("맑은 고딕", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.linkLabel10.Location = new System.Drawing.Point(328, 250);
this.linkLabel10.Name = "linkLabel10";
this.linkLabel10.Size = new System.Drawing.Size(66, 20);
this.linkLabel10.TabIndex = 36;
this.linkLabel10.TabStop = true;
this.linkLabel10.Text = "MaxQTY";
this.linkLabel10.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel10_LinkClicked);
//
// tbQtyMax
//
this.tbQtyMax.Font = new System.Drawing.Font("맑은 고딕", 13F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.tbQtyMax.Location = new System.Drawing.Point(399, 245);
this.tbQtyMax.Margin = new System.Windows.Forms.Padding(5, 8, 5, 8);
this.tbQtyMax.Name = "tbQtyMax";
this.tbQtyMax.Size = new System.Drawing.Size(142, 31);
this.tbQtyMax.TabIndex = 35;
this.tbQtyMax.Tag = "PARTNO";
//
// lnkBatch
//
this.lnkBatch.AutoSize = true;
this.lnkBatch.Font = new System.Drawing.Font("맑은 고딕", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.lnkBatch.Location = new System.Drawing.Point(40, 251);
this.lnkBatch.Name = "lnkBatch";
this.lnkBatch.Size = new System.Drawing.Size(57, 20);
this.lnkBatch.TabIndex = 34;
this.lnkBatch.TabStop = true;
this.lnkBatch.Text = "BATCH";
this.lnkBatch.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.lnkBatch_LinkClicked);
//
// tbBatch
//
this.tbBatch.Font = new System.Drawing.Font("맑은 고딕", 13F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.tbBatch.Location = new System.Drawing.Point(102, 246);
this.tbBatch.Margin = new System.Windows.Forms.Padding(5, 8, 5, 8);
this.tbBatch.Name = "tbBatch";
this.tbBatch.Size = new System.Drawing.Size(222, 31);
this.tbBatch.TabIndex = 33;
this.tbBatch.Tag = "PARTNO";
//
// tbRID0
//
this.tbRID0.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(50)))), ((int)(((byte)(50)))), ((int)(((byte)(50)))));
@@ -452,13 +496,15 @@
// btIDChk
//
this.btIDChk.Font = new System.Drawing.Font("맑은 고딕", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.btIDChk.ForeColor = System.Drawing.Color.Red;
this.btIDChk.Location = new System.Drawing.Point(484, 36);
this.btIDChk.Name = "btIDChk";
this.btIDChk.Size = new System.Drawing.Size(57, 50);
this.btIDChk.TabIndex = 30;
this.btIDChk.Text = "검사";
this.btIDChk.UseVisualStyleBackColor = true;
this.btIDChk.Click += new System.EventHandler(this.button8_Click);
this.btIDChk.Visible = false;
this.btIDChk.Click += new System.EventHandler(this.btIDCheck_Click);
//
// tbSidFind
//
@@ -630,13 +676,16 @@
//
// btChkQty
//
this.btChkQty.Enabled = false;
this.btChkQty.Font = new System.Drawing.Font("맑은 고딕", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.btChkQty.ForeColor = System.Drawing.Color.Red;
this.btChkQty.Location = new System.Drawing.Point(399, 122);
this.btChkQty.Name = "btChkQty";
this.btChkQty.Size = new System.Drawing.Size(142, 51);
this.btChkQty.TabIndex = 8;
this.btChkQty.Text = "서버 수량 체크";
this.btChkQty.UseVisualStyleBackColor = true;
this.btChkQty.Visible = false;
this.btChkQty.Click += new System.EventHandler(this.btReqQty_Click);
//
// button9
@@ -917,7 +966,7 @@
this.tabPage2.Location = new System.Drawing.Point(4, 39);
this.tabPage2.Name = "tabPage2";
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
this.tabPage2.Size = new System.Drawing.Size(768, 490);
this.tabPage2.Size = new System.Drawing.Size(768, 441);
this.tabPage2.TabIndex = 1;
this.tabPage2.Text = "Rear Image";
this.tabPage2.UseVisualStyleBackColor = true;
@@ -943,7 +992,7 @@
this.ivR.NoImageMessage = "";
this.ivR.Resolution = ((System.Drawing.PointF)(resources.GetObject("ivR.Resolution")));
this.ivR.ShowMouseTracking = false;
this.ivR.Size = new System.Drawing.Size(762, 484);
this.ivR.Size = new System.Drawing.Size(762, 435);
this.ivR.TabIndex = 23;
this.ivR.TabStop = false;
//
@@ -1109,50 +1158,6 @@
this.toolStripStatusLabel1.Size = new System.Drawing.Size(121, 17);
this.toolStripStatusLabel1.Text = "toolStripStatusLabel1";
//
// lnkBatch
//
this.lnkBatch.AutoSize = true;
this.lnkBatch.Font = new System.Drawing.Font("맑은 고딕", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.lnkBatch.Location = new System.Drawing.Point(40, 251);
this.lnkBatch.Name = "lnkBatch";
this.lnkBatch.Size = new System.Drawing.Size(57, 20);
this.lnkBatch.TabIndex = 34;
this.lnkBatch.TabStop = true;
this.lnkBatch.Text = "BATCH";
this.lnkBatch.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.lnkBatch_LinkClicked);
//
// tbBatch
//
this.tbBatch.Font = new System.Drawing.Font("맑은 고딕", 13F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.tbBatch.Location = new System.Drawing.Point(102, 246);
this.tbBatch.Margin = new System.Windows.Forms.Padding(5, 8, 5, 8);
this.tbBatch.Name = "tbBatch";
this.tbBatch.Size = new System.Drawing.Size(222, 31);
this.tbBatch.TabIndex = 33;
this.tbBatch.Tag = "PARTNO";
//
// linkLabel10
//
this.linkLabel10.AutoSize = true;
this.linkLabel10.Font = new System.Drawing.Font("맑은 고딕", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.linkLabel10.Location = new System.Drawing.Point(328, 250);
this.linkLabel10.Name = "linkLabel10";
this.linkLabel10.Size = new System.Drawing.Size(66, 20);
this.linkLabel10.TabIndex = 36;
this.linkLabel10.TabStop = true;
this.linkLabel10.Text = "MaxQTY";
this.linkLabel10.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel10_LinkClicked);
//
// tbQtyMax
//
this.tbQtyMax.Font = new System.Drawing.Font("맑은 고딕", 13F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.tbQtyMax.Location = new System.Drawing.Point(399, 245);
this.tbQtyMax.Margin = new System.Windows.Forms.Padding(5, 8, 5, 8);
this.tbQtyMax.Name = "tbQtyMax";
this.tbQtyMax.Size = new System.Drawing.Size(142, 31);
this.tbQtyMax.TabIndex = 35;
this.tbQtyMax.Tag = "PARTNO";
//
// fLoaderInfo
//
this.AutoScaleDimensions = new System.Drawing.SizeF(12F, 30F);

View File

@@ -2,12 +2,14 @@
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using AR;
using SATOPrinterAPI;
namespace Project.Dialog
{
@@ -585,33 +587,9 @@ namespace Project.Dialog
}
UpdateSID(auto);
makenewId();
}
void makenewId()
{
//ID가 잘못되었다.
if (VAR.BOOL[eVarBool.Opt_NewReelID] && CheckRID() == false)
{
//릴 아이디가 잘못되었다면 새로 갱신한다
var yy = DateTime.Now.ToString("yy");
var m = DateTime.Now.Month.ToString("X");
if (TbCustCode.Text.isEmpty())
{
PUB.log.AddAT("Customer 값이 없어 reelid를 새로 생성하지 못했습니다");
}
else
{
var newrid = AmkorReelID.MakeReelID(TbCustCode.Text, yy + m);
PUB.log.Add($"RID값을 자동 변경 했습니다 {tbRID.Text} -> {newrid}");
//if(tbRID.Text.isEmpty()==false) tbri
tbRID.Text = newrid;
}
}
}
/// <summary>
/// 데이터베이스의 정보를 UI에 반영한다
/// </summary>
@@ -699,181 +677,193 @@ namespace Project.Dialog
Boolean func_CheckDateQty()
{
Boolean bwarn = false;
using (var db2 = new EEEntities())
var sid = this.tbSID.Text.Trim();
if (sid.isEmpty()) return false; //sid가 없다.
//최근 6시간안에서 동일한 데이터를 찾아서 제안 해준다
var sd = DateTime.Now.AddHours(-1);
var sql = "select * from K4EE_Component_Reel_Result with (no lock)" +
" where jtype = @jtype and sid = @sid and isnull(QR,'') <> '' and stime >= @sd" +
" order by wdate desc";
var ps = new SqlParameter[] {
new SqlParameter("jtype", PUB.Result.JobType2),
new SqlParameter("sid", sid),
new SqlParameter("sd", sd),
};
DataSet1.Component_Reel_ResultRow preData = null;
var preDatas = DBHelper.Get(sql, ps);
if (preDatas.Rows.Count > 0) preData = preDatas.Rows[0] as DataSet1.Component_Reel_ResultRow;
//var preData = db2.Component_Reel_Result.AsNoTracking().Where(t =>
//t.JTYPE == PUB.Result.JobType2 &&
//t.SID == sid &&
//string.IsNullOrEmpty(t.QR) == false &&
//t.STIME >= sd).OrderByDescending(t => t.wdate).FirstOrDefault();
//기존자료가 없다면 취소
if (preData == null) return false;
var amkorid = new StdLabelPrint.CAmkorSTDBarcode(preData.QR);
if (preData.VNAME != tbVName.Text)
{
var sid = this.tbSID.Text.Trim();
if (sid.isEmpty()) return false; //sid가 없다.
//최근 6시간안에서 동일한 데이터를 찾아서 제안 해준다
var sd = DateTime.Now.AddHours(-1);
var preData = db2.Component_Reel_Result.AsNoTracking().Where(t =>
t.JTYPE == PUB.Result.JobType2 &&
t.SID == sid &&
string.IsNullOrEmpty(t.QR) == false &&
t.STIME >= sd).OrderByDescending(t => t.wdate).FirstOrDefault();
//기존자료가 없다면 취소
if (preData == null) return false;
var amkorid = new StdLabelPrint.CAmkorSTDBarcode(preData.QR);
if (preData.VNAME != tbVName.Text)
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},mfgdata={1}", sid, amkorid.MFGDate));
tbVName.Text = preData.VNAME;
bwarn = true;
//if (func_existbcddata(amkorid.MFGDate) == false)
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},mfgdata={1}", sid, amkorid.MFGDate));
tbVName.Text = preData.VNAME;
bwarn = true;
//if (func_existbcddata(amkorid.MFGDate) == false)
{
AddErrorMessage("V.Name 이전 기록으로 업데이트");
PUB.log.Add("'V.Name' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
if (amkorid.MFGDate.isEmpty() == false && tbMFG.Text.isEmpty())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},mfgdata={1}", sid, amkorid.MFGDate));
tbMFG.Text = amkorid.MFGDate;
bwarn = true;
if (func_existbcddata(amkorid.MFGDate) == false)
{
AddErrorMessage("MFG 이전 기록으로 업데이트");
PUB.log.Add("'MFG Date' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
if (amkorid.QTY > 0 && tbQTY.Text.isEmpty())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
PUB.log.Add($"수량업데이트 {tbQTY.Text}->{amkorid.QTY}");
tbQTY.Text = amkorid.QTY.ToString();
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},qty={1}", sid, amkorid.QTY));
bwarn = true;
if (func_existbcddata(amkorid.QTY.ToString()) == false)
{
AddErrorMessage("QTY 이전 기록으로 업데이트");
PUB.log.Add("'Qty' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
if (amkorid.PARTNO.isEmpty() == false && tbpartno.Text.isEmpty())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
tbpartno.Text = amkorid.PARTNO;
bwarn = true;
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},PARTNO={1}", sid, amkorid.PARTNO));
if (func_existbcddata(amkorid.PARTNO) == false)
{
AddErrorMessage("PartNo 이전 기록으로 업데이트");
PUB.log.Add("'Part No' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
//Customer
if (amkorid.RID.Length > 10 && amkorid.RID.Substring(2, 4) != TbCustCode.Text.Trim())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
TbCustCode.Text = amkorid.RID.Substring(2, 4);
bwarn = true;
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},VLOT={1}", sid, amkorid.VLOT));
if (func_existbcddata(TbCustCode.Text) == false)
{
AddErrorMessage("Customer Code 이전 기록으로 업데이트");
PUB.log.Add("'Customer Code' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
btCustomAutoInput.PerformClick();
}
if (amkorid.VLOT.isEmpty() == false && tbVLOT.Text.isEmpty())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
tbVLOT.Text = amkorid.VLOT;
bwarn = true;
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},VLOT={1}", sid, amkorid.VLOT));
if (func_existbcddata(amkorid.VLOT) == false)
{
AddErrorMessage("VLOT 이전 기록으로 업데이트");
PUB.log.Add("'Vender LOT' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
if (amkorid.VENDERNAME.isEmpty() == false && tbVName.Text.isEmpty())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
tbVName.Text = amkorid.VENDERNAME;
bwarn = true;
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},VENDERNAME={1}", sid, amkorid.VENDERNAME));
if (func_existbcddata(amkorid.VENDERNAME) == false)
{
AddErrorMessage("VNAME 이전 기록으로 업데이트");
PUB.log.Add("'Vender Name' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
AddErrorMessage("V.Name 이전 기록으로 업데이트");
PUB.log.Add("'V.Name' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
if (amkorid.MFGDate.isEmpty() == false && tbMFG.Text.isEmpty())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},mfgdata={1}", sid, amkorid.MFGDate));
tbMFG.Text = amkorid.MFGDate;
bwarn = true;
if (func_existbcddata(amkorid.MFGDate) == false)
{
AddErrorMessage("MFG 이전 기록으로 업데이트");
PUB.log.Add("'MFG Date' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
if (amkorid.QTY > 0 && tbQTY.Text.isEmpty())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
PUB.log.Add($"수량업데이트 {tbQTY.Text}->{amkorid.QTY}");
tbQTY.Text = amkorid.QTY.ToString();
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},qty={1}", sid, amkorid.QTY));
bwarn = true;
if (func_existbcddata(amkorid.QTY.ToString()) == false)
{
AddErrorMessage("QTY 이전 기록으로 업데이트");
PUB.log.Add("'Qty' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
if (amkorid.PARTNO.isEmpty() == false && tbpartno.Text.isEmpty())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
tbpartno.Text = amkorid.PARTNO;
bwarn = true;
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},PARTNO={1}", sid, amkorid.PARTNO));
if (func_existbcddata(amkorid.PARTNO) == false)
{
AddErrorMessage("PartNo 이전 기록으로 업데이트");
PUB.log.Add("'Part No' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
//Customer
if (amkorid.RID.Length > 10 && amkorid.RID.Substring(2, 4) != TbCustCode.Text.Trim())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
TbCustCode.Text = amkorid.RID.Substring(2, 4);
bwarn = true;
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},VLOT={1}", sid, amkorid.VLOT));
if (func_existbcddata(TbCustCode.Text) == false)
{
AddErrorMessage("Customer Code 이전 기록으로 업데이트");
PUB.log.Add("'Customer Code' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
btCustomAutoInput.PerformClick();
}
if (amkorid.VLOT.isEmpty() == false && tbVLOT.Text.isEmpty())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
tbVLOT.Text = amkorid.VLOT;
bwarn = true;
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},VLOT={1}", sid, amkorid.VLOT));
if (func_existbcddata(amkorid.VLOT) == false)
{
AddErrorMessage("VLOT 이전 기록으로 업데이트");
PUB.log.Add("'Vender LOT' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
if (amkorid.VENDERNAME.isEmpty() == false && tbVName.Text.isEmpty())
{
//해당 mfgdae 가 바코드목록에 잇다면 바로 적용
//업다면 적용하고 적용 메세지 표시한다
tbVName.Text = amkorid.VENDERNAME;
bwarn = true;
//Pub.log.Add(string.Format("이전결과에서 값 업데이트 sid:{0},VENDERNAME={1}", sid, amkorid.VENDERNAME));
if (func_existbcddata(amkorid.VENDERNAME) == false)
{
AddErrorMessage("VNAME 이전 기록으로 업데이트");
PUB.log.Add("'Vender Name' 값을 이전 기록을 통해서 입력했습니다\n" +
"이전 작업시간 : " + ((DateTime)(preData.wdate)).ToString("yyyy-MM-dd HH:mm:ss") + "\n" +
"SID : " + preData.SID + "\n" +
"MFG Date : " + amkorid.MFGDate + "\n" +
"Part No : " + amkorid.PARTNO + "\n" +
"Vender Lot : " + amkorid.VLOT + "\n" +
"Vender Name : " + amkorid.VENDERNAME + "\n" +
"QTY : " + amkorid.QTY.ToString(), true);
}
}
return bwarn;
}
@@ -902,7 +892,8 @@ namespace Project.Dialog
UTIL.MsgE("오프라인 모드라 사용할 수 없습니다");
return;
}
var cnt = (Amkor.RestfulService.get_stock_count(rid, out msg));
var cnt = 0;// (Amkor.RestfulService.get_stock_count(rid, out msg));
if (cnt > 0)
{
var oldCnt = int.Parse(tbQTY.Text.Replace(",", ""));
@@ -968,15 +959,15 @@ namespace Project.Dialog
bool NewReelId = false;
private void btNewID_Click(object sender, EventArgs e)
{
var id = TbCustCode.Text; // string.Empty;
if (id.Length != 4)
{
UTIL.MsgE($"올바른 고객번호를 입력하세요\n" +
$"고객번호는 4자리여야 합니다\n" +
$"값 : {id}\n" +
$"길이 : {id.Length}");
return;
}
//var id = TbCustCode.Text; // string.Empty;
//if (id.Length != 4)
//{
// UTIL.MsgE($"올바른 고객번호를 입력하세요\n" +
// $"고객번호는 4자리여야 합니다\n" +
// $"값 : {id}\n" +
// $"길이 : {id.Length}");
// return;
//}
//if (tbRID.Text.Length > 4) id = tbRID.Text.Substring(0, 4);
//already check
@@ -992,29 +983,29 @@ namespace Project.Dialog
//웹서비스로 생성한다.
if (MakeNewID)
{
var newid = Amkor.RestfulService.Allocation_Unique_ReelID_AmkorSTD(id, "4", "A", out string err);
if (newid.isEmpty())
var sid = tbSID.Text.Trim();
if (sid.isEmpty())
{
UTIL.MsgE(err, true);
}
else
{
//remain original reel id
if (this.tbRID0.Text.isEmpty() && tbRID.Text.isEmpty() == false)
this.tbRID0.Text = tbRID.Text.Trim();
this.tbRID.Text = newid;
NewReelId = true;
PUB.log.AddI($"New REELID:{newid}(LoaderInfo)");
UTIL.MsgE("No SID");
return;
}
//WMS은 DB에서 생성하낟.
var newid = PUB.MakeNewREELID(sid);
if (newid.success==false)
{
UTIL.MsgE($"No ReelID Data\n{newid.message}" , true);
return;
}
//remain original reel id
if (this.tbRID0.Text.isEmpty() && tbRID.Text.isEmpty() == false)
this.tbRID0.Text = tbRID.Text.Trim();
this.tbRID.Text = newid.newid;
NewReelId = true;
PUB.log.AddI($"New REELID:{newid.newid}(LoaderInfo)");
}
//var f = new Dialog.fNewReelID(id);
//if (f.ShowDialog() != DialogResult.OK) return;
//this.tbRID.Text = f.NewID;
}
private void tbDate_Click(object sender, EventArgs e)
@@ -1272,7 +1263,6 @@ namespace Project.Dialog
PUB.log.Add(string.Format("amkor SId찾기 code={0},part={1},sid={2}", custcode, partno, amksid));
tbSID.Text = amksid;
UpdateSID();
makenewId();
}
else
{
@@ -1287,7 +1277,7 @@ namespace Project.Dialog
}
private void button8_Click(object sender, EventArgs e)
private void btIDCheck_Click(object sender, EventArgs e)
{
//중복검사
var rid = tbRID.Text.Trim();
@@ -1301,23 +1291,25 @@ namespace Project.Dialog
UTIL.MsgE("오프라인 모드라 사용할 수 없습니다");
return;
}
var result = Amkor.RestfulService.get_existed_matl_by_id(rid);
if (result.Complete == false)
{
UTIL.MsgE(result.Message);
}
else
{
if (result.Result == true)
{
UTIL.MsgE($"해당 ID는 중복된 ID 입니다\n값:{rid}");
return;
}
else
{
UTIL.MsgI($"해당 ID는 중복되지 않았습니다\n{rid}");
}
}
UTIL.MsgE("WMS 기능 없음");
//var result = Amkor.RestfulService.get_existed_matl_by_id(rid);
//if (result.Complete == false)
//{
// UTIL.MsgE(result.Message);
//}
//else
//{
// if (result.Result == true)
// {
// UTIL.MsgE($"해당 ID는 중복된 ID 입니다\n값:{rid}");
// return;
// }
// else
// {
// UTIL.MsgI($"해당 ID는 중복되지 않았습니다\n{rid}");
// }
//}
}
private void button9_Click(object sender, EventArgs e)
@@ -1683,6 +1675,11 @@ namespace Project.Dialog
{
InsertTarget.Add(col.Key, col.Value);
}
foreach (var item in wheres)
{
if (InsertTarget.ContainsKey(item.Key) == false)
InsertTarget.Add(item.Key, item.Value);
}
}
if (UpdateTarget.Count > 0) //if update target
@@ -1741,17 +1738,13 @@ namespace Project.Dialog
var dlgMsg = $"다음 값을 서버에 저장 하시겠습니까?\n";
foreach (var item in InsertTarget)
dlgMsg += $"항목:{item.Key} => {item.Value}\n";
foreach (var item in wheres)
dlgMsg += $"항목:{item.Key} => {item.Value}\n";
var dlg = UTIL.MsgQ(dlgMsg);
if (dlg == DialogResult.Yes)
{
var ISQL = $"insert into Component_Reel_SID_Information ([MC],wdate," +
string.Join(",", wheres.Select(t => "[" + t.Key + "]")) + "," +
string.Join(",", InsertTarget.Select(t => "[" + t.Key + "]")) + ") values(" +
$"'{PUB.MCCode}',getdate()," +
string.Join(",", wheres.Select(t => "'" + t.Value.Replace("'", "''") + "'")) + "," +
string.Join(",", InsertTarget.Select(t => "'" + t.Value.Replace("'", "''") + "'")) + ")";
//ISQL += WSQL;
@@ -1826,6 +1819,11 @@ namespace Project.Dialog
{
InsertTarget.Add(col.Key, col.Value);
}
foreach (var item in wheres)
{
if (InsertTarget.ContainsKey(item.Key) == false)
InsertTarget.Add(item.Key, item.Value);
}
}
if (UpdateTarget.Count > 0) //if update target
@@ -1884,17 +1882,14 @@ namespace Project.Dialog
var dlgMsg = $"다음 변환값을 서버에 추가 하시겠습니까?\n";
foreach (var item in InsertTarget)
dlgMsg += $"항목:{item.Key} => {item.Value}\n";
foreach (var item in wheres)
dlgMsg += $"항목:{item.Key} => {item.Value}\n";
var dlg = UTIL.MsgQ(dlgMsg);
if (dlg == DialogResult.Yes)
{
var ISQL = $"insert into {tableName} ([MC]," +
string.Join(",", wheres.Select(t => "[" + t.Key + "]")) + "," +
string.Join(",", InsertTarget.Select(t => "[" + t.Key + "]")) + ") values(" +
$"'{PUB.MCCode}'," +
string.Join(",", wheres.Select(t => "'" + t.Value.Replace("'", "''") + "'")) + "," +
string.Join(",", InsertTarget.Select(t => "'" + t.Value.Replace("'", "''") + "'")) + ")";
//ISQL += WSQL;
@@ -1973,6 +1968,11 @@ namespace Project.Dialog
{
InsertTarget.Add(col.Key, col.Value);
}
foreach (var item in wheres)
{
if (InsertTarget.ContainsKey(item.Key) == false)
InsertTarget.Add(item.Key, item.Value);
}
}
if (UpdateTarget.Count > 0) //if update target
@@ -2031,17 +2031,14 @@ namespace Project.Dialog
var dlgMsg = $"다음 값을 서버(변환정보)에 저장 하시겠습니까?\n";
foreach (var item in InsertTarget)
dlgMsg += $"항목:{item.Key} => {item.Value}\n";
foreach (var item in wheres)
dlgMsg += $"항목:{item.Key} => {item.Value}\n";
var dlg = UTIL.MsgQ(dlgMsg);
if (dlg == DialogResult.Yes)
{
var ISQL = $"insert into Component_Reel_SID_Convert ([MC],wdate," +
string.Join(",", wheres.Select(t => "[" + t.Key + "]")) + "," +
string.Join(",", InsertTarget.Select(t => "[" + t.Key + "]")) + ") values(" +
$"null,getdate()," +
string.Join(",", wheres.Select(t => "'" + t.Value.Replace("'", "''") + "'")) + "," +
string.Join(",", InsertTarget.Select(t => "'" + t.Value.Replace("'", "''") + "'")) + ")";
//ISQL += WSQL;
@@ -2090,49 +2087,51 @@ namespace Project.Dialog
private void button1_Click_1(object sender, EventArgs e)
{
//데이터베이스 결과에서 자료를 추가한다.
var result = new DataSet1.Component_Reel_ResultDataTable();// new List<Component_Reel_Result>();
List<Component_Reel_Result> result = new List<Component_Reel_Result>();
var tabName = "K4EE_Component_Reel_Result with (no lock)";
using (var db = new EEEntities())
//1.sid sid를 먼저 검색한다. 이것이 확률이 제일 높음
if (this.tbSID.Text.isEmpty() == false)
{
//1.sid sid를 먼저 검색한다. 이것이 확률이 제일 높음
if (this.tbSID.Text.isEmpty() == false)
{
var list = db.Component_Reel_Result.AsNoTracking().
OrderByDescending(t => t.wdate).
Where(t => t.SID == tbSID.Text.Trim()).Take(5).ToList();
if (list != null && list.Count > 0) result.AddRange(list);
}
//2.파트번호
if (result.Count == 0 && this.tbpartno.Text.isEmpty() == false)
{
var list = db.Component_Reel_Result.AsNoTracking().
OrderByDescending(t => t.wdate).
Where(t => t.QR.Contains(";" + tbpartno.Text)).Take(5).ToList();
if (list != null && list.Count > 0) result.AddRange(list);
}
//3.벤더LOT
if (result.Count == 0 && this.tbVLOT.Text.isEmpty() == false)
{
var list = db.Component_Reel_Result.AsNoTracking().
OrderByDescending(t => t.wdate).
Where(t => t.QR.Contains(";" + tbVLOT.Text + ";")).Take(5).ToList();
if (list != null && list.Count > 0) result.AddRange(list);
}
var sql = $"select top 5 * from {tabName} where sid = @sid order by wdate desc";
var list = DBHelper.Get(sql, new SqlParameter("sid", $"{tbSID.Text}"));
//sql = sql.Replace("@sid", tbSID.Text.Trim());
if (list.Rows.Count > 0) result.Merge(list);
}
//2.파트번호
if (result.Count == 0 && this.tbpartno.Text.isEmpty() == false)
{
var sql = $"select top 5 * from {tabName} where QR like @search order by wdate desc";
var list = DBHelper.Get(sql, new SqlParameter("search", $"%;{tbpartno.Text}%"));
if (list.Rows.Count > 0) result.Merge(list);
}
//3.벤더LOT
if (result.Count == 0 && this.tbVLOT.Text.isEmpty() == false)
{
var sql = $"select top 5 * from {tabName} where QR like @search order by wdate desc";
var list = DBHelper.Get(sql, new SqlParameter("search", $"%;{tbVLOT.Text}%"));
if (list.Rows.Count > 0) result.Merge(list);
//var list = db.Component_Reel_Result.AsNoTracking().
// OrderByDescending(t => t.wdate).
// Where(t => t.QR.Contains(";" + tbVLOT.Text + ";")).Take(5).ToList();
///if (list != null && list.Count > 0) result.AddRange(list);
}
//4.벤더이름
if (result.Count == 0 && this.tbVName.Text.isEmpty() == false)
{
var list = db.Component_Reel_Result.AsNoTracking().
OrderByDescending(t => t.wdate).
Where(t => t.QR.Contains(";" + tbVName.Text + ";")).Take(5).ToList();
if (list != null && list.Count > 0) result.AddRange(list);
}
//4.벤더이름
if (result.Count == 0 && this.tbVName.Text.isEmpty() == false)
{
var sql = $"select top 5 * from {tabName} where QR like @search order by wdate desc";
var list = DBHelper.Get(sql, new SqlParameter("search", $"%;{tbVName.Text}%"));
if (list.Rows.Count > 0) result.Merge(list);
//var list = db.Component_Reel_Result.AsNoTracking().
// OrderByDescending(t => t.wdate).
// Where(t => t.QR.Contains(";" + tbVName.Text + ";")).Take(5).ToList();
//if (list != null && list.Count > 0) result.AddRange(list);
}
//customer code
if (result.Count < 1)
{
UTIL.MsgE("검색된 결과가 없습니다\n검색 아이템\n" +

View File

@@ -1,4 +1,5 @@
using System;
using AR;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;

View File

@@ -1,412 +0,0 @@
namespace Project.Dialog
{
partial class fNewReelID
{
/// <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.linkLabel3 = new System.Windows.Forms.LinkLabel();
this.linkLabel2 = new System.Windows.Forms.LinkLabel();
this.linkLabel1 = new System.Windows.Forms.LinkLabel();
this.tbDiv = new System.Windows.Forms.TextBox();
this.btOK = new System.Windows.Forms.Button();
this.tbRID = new System.Windows.Forms.TextBox();
this.tbCustCode = new System.Windows.Forms.TextBox();
this.tbYear = new System.Windows.Forms.TextBox();
this.linkLabel4 = new System.Windows.Forms.LinkLabel();
this.tbSeq = new System.Windows.Forms.TextBox();
this.tb1 = new System.Windows.Forms.TextBox();
this.tbtype = new System.Windows.Forms.TextBox();
this.linkLabel5 = new System.Windows.Forms.LinkLabel();
this.linkLabel6 = new System.Windows.Forms.LinkLabel();
this.linkLabel7 = new System.Windows.Forms.LinkLabel();
this.tbLoca = new System.Windows.Forms.TextBox();
this.linkLabel8 = new System.Windows.Forms.LinkLabel();
this.tbMon = new System.Windows.Forms.TextBox();
this.button8 = new System.Windows.Forms.Button();
this.lbLen = new System.Windows.Forms.Label();
this.button1 = new System.Windows.Forms.Button();
this.radNormal = new System.Windows.Forms.RadioButton();
this.radReturn = new System.Windows.Forms.RadioButton();
this.radDup = new System.Windows.Forms.RadioButton();
this.SuspendLayout();
//
// linkLabel3
//
this.linkLabel3.AutoSize = true;
this.linkLabel3.Location = new System.Drawing.Point(58, 196);
this.linkLabel3.Margin = new System.Windows.Forms.Padding(8, 0, 8, 0);
this.linkLabel3.Name = "linkLabel3";
this.linkLabel3.Size = new System.Drawing.Size(95, 32);
this.linkLabel3.TabIndex = 8;
this.linkLabel3.TabStop = true;
this.linkLabel3.Text = "분류(1)";
this.linkLabel3.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel3_LinkClicked);
//
// linkLabel2
//
this.linkLabel2.AutoSize = true;
this.linkLabel2.Location = new System.Drawing.Point(10, 104);
this.linkLabel2.Margin = new System.Windows.Forms.Padding(8, 0, 8, 0);
this.linkLabel2.Name = "linkLabel2";
this.linkLabel2.Size = new System.Drawing.Size(143, 32);
this.linkLabel2.TabIndex = 4;
this.linkLabel2.TabStop = true;
this.linkLabel2.Text = "고객번호(4)";
this.linkLabel2.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel2_LinkClicked);
//
// linkLabel1
//
this.linkLabel1.AutoSize = true;
this.linkLabel1.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold);
this.linkLabel1.Location = new System.Drawing.Point(58, 242);
this.linkLabel1.Margin = new System.Windows.Forms.Padding(8, 0, 8, 0);
this.linkLabel1.Name = "linkLabel1";
this.linkLabel1.Size = new System.Drawing.Size(95, 32);
this.linkLabel1.TabIndex = 10;
this.linkLabel1.TabStop = true;
this.linkLabel1.Text = "년도(2)";
this.linkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked);
//
// tbDiv
//
this.tbDiv.Location = new System.Drawing.Point(160, 193);
this.tbDiv.Margin = new System.Windows.Forms.Padding(8, 13, 8, 13);
this.tbDiv.Name = "tbDiv";
this.tbDiv.Size = new System.Drawing.Size(404, 39);
this.tbDiv.TabIndex = 9;
this.tbDiv.Text = "A/M/L";
this.tbDiv.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.tbDiv.TextChanged += new System.EventHandler(this.tbCustCode_TextChanged);
//
// btOK
//
this.btOK.Dock = System.Windows.Forms.DockStyle.Bottom;
this.btOK.Location = new System.Drawing.Point(0, 458);
this.btOK.Margin = new System.Windows.Forms.Padding(8, 13, 8, 13);
this.btOK.Name = "btOK";
this.btOK.Size = new System.Drawing.Size(573, 50);
this.btOK.TabIndex = 18;
this.btOK.Text = "확인";
this.btOK.UseVisualStyleBackColor = true;
this.btOK.Click += new System.EventHandler(this.btOK_Click);
//
// tbRID
//
this.tbRID.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.tbRID.Font = new System.Drawing.Font("맑은 고딕", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.tbRID.Location = new System.Drawing.Point(107, 417);
this.tbRID.Margin = new System.Windows.Forms.Padding(8, 13, 8, 13);
this.tbRID.Name = "tbRID";
this.tbRID.ReadOnly = true;
this.tbRID.Size = new System.Drawing.Size(364, 32);
this.tbRID.TabIndex = 17;
this.tbRID.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// tbCustCode
//
this.tbCustCode.BackColor = System.Drawing.SystemColors.Window;
this.tbCustCode.Location = new System.Drawing.Point(160, 101);
this.tbCustCode.Margin = new System.Windows.Forms.Padding(8, 13, 8, 13);
this.tbCustCode.Name = "tbCustCode";
this.tbCustCode.Size = new System.Drawing.Size(404, 39);
this.tbCustCode.TabIndex = 5;
this.tbCustCode.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.tbCustCode.TextChanged += new System.EventHandler(this.tbCustCode_TextChanged);
//
// tbYear
//
this.tbYear.BackColor = System.Drawing.SystemColors.Window;
this.tbYear.Location = new System.Drawing.Point(160, 239);
this.tbYear.Margin = new System.Windows.Forms.Padding(8, 13, 8, 13);
this.tbYear.Name = "tbYear";
this.tbYear.Size = new System.Drawing.Size(404, 39);
this.tbYear.TabIndex = 11;
this.tbYear.Text = "21";
this.tbYear.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.tbYear.TextChanged += new System.EventHandler(this.tbCustCode_TextChanged);
//
// linkLabel4
//
this.linkLabel4.AutoSize = true;
this.linkLabel4.Location = new System.Drawing.Point(10, 334);
this.linkLabel4.Margin = new System.Windows.Forms.Padding(8, 0, 8, 0);
this.linkLabel4.Name = "linkLabel4";
this.linkLabel4.Size = new System.Drawing.Size(143, 32);
this.linkLabel4.TabIndex = 14;
this.linkLabel4.TabStop = true;
this.linkLabel4.Text = "일련번호(4)";
this.linkLabel4.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel4_LinkClicked);
//
// tbSeq
//
this.tbSeq.Location = new System.Drawing.Point(160, 331);
this.tbSeq.Margin = new System.Windows.Forms.Padding(8, 13, 8, 13);
this.tbSeq.Name = "tbSeq";
this.tbSeq.Size = new System.Drawing.Size(289, 39);
this.tbSeq.TabIndex = 15;
this.tbSeq.Text = "R000,0001";
this.tbSeq.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.tbSeq.TextChanged += new System.EventHandler(this.tbCustCode_TextChanged);
//
// tb1
//
this.tb1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
this.tb1.Location = new System.Drawing.Point(160, 9);
this.tb1.Margin = new System.Windows.Forms.Padding(8, 13, 8, 13);
this.tb1.Name = "tb1";
this.tb1.Size = new System.Drawing.Size(404, 39);
this.tb1.TabIndex = 1;
this.tb1.Text = "R";
this.tb1.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.tb1.TextChanged += new System.EventHandler(this.tbCustCode_TextChanged);
//
// tbtype
//
this.tbtype.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
this.tbtype.Location = new System.Drawing.Point(160, 55);
this.tbtype.Margin = new System.Windows.Forms.Padding(8, 13, 8, 13);
this.tbtype.Name = "tbtype";
this.tbtype.Size = new System.Drawing.Size(404, 39);
this.tbtype.TabIndex = 3;
this.tbtype.Text = "I/C";
this.tbtype.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.tbtype.TextChanged += new System.EventHandler(this.tbCustCode_TextChanged);
//
// linkLabel5
//
this.linkLabel5.AutoSize = true;
this.linkLabel5.Location = new System.Drawing.Point(58, 12);
this.linkLabel5.Margin = new System.Windows.Forms.Padding(8, 0, 8, 0);
this.linkLabel5.Name = "linkLabel5";
this.linkLabel5.Size = new System.Drawing.Size(95, 32);
this.linkLabel5.TabIndex = 0;
this.linkLabel5.TabStop = true;
this.linkLabel5.Text = "예약(1)";
this.linkLabel5.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel5_LinkClicked);
//
// linkLabel6
//
this.linkLabel6.AutoSize = true;
this.linkLabel6.Location = new System.Drawing.Point(58, 58);
this.linkLabel6.Margin = new System.Windows.Forms.Padding(8, 0, 8, 0);
this.linkLabel6.Name = "linkLabel6";
this.linkLabel6.Size = new System.Drawing.Size(95, 32);
this.linkLabel6.TabIndex = 2;
this.linkLabel6.TabStop = true;
this.linkLabel6.Text = "종류(1)";
this.linkLabel6.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel6_LinkClicked);
//
// linkLabel7
//
this.linkLabel7.AutoSize = true;
this.linkLabel7.Location = new System.Drawing.Point(34, 150);
this.linkLabel7.Margin = new System.Windows.Forms.Padding(8, 0, 8, 0);
this.linkLabel7.Name = "linkLabel7";
this.linkLabel7.Size = new System.Drawing.Size(119, 32);
this.linkLabel7.TabIndex = 6;
this.linkLabel7.TabStop = true;
this.linkLabel7.Text = "발행처(1)";
this.linkLabel7.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel7_LinkClicked);
//
// tbLoca
//
this.tbLoca.BackColor = System.Drawing.SystemColors.Window;
this.tbLoca.Location = new System.Drawing.Point(160, 147);
this.tbLoca.Margin = new System.Windows.Forms.Padding(8, 13, 8, 13);
this.tbLoca.Name = "tbLoca";
this.tbLoca.Size = new System.Drawing.Size(404, 39);
this.tbLoca.TabIndex = 7;
this.tbLoca.Text = "K3=3,K4=4,K5=5";
this.tbLoca.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.tbLoca.TextChanged += new System.EventHandler(this.tbCustCode_TextChanged);
//
// linkLabel8
//
this.linkLabel8.AutoSize = true;
this.linkLabel8.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold);
this.linkLabel8.Location = new System.Drawing.Point(82, 288);
this.linkLabel8.Margin = new System.Windows.Forms.Padding(8, 0, 8, 0);
this.linkLabel8.Name = "linkLabel8";
this.linkLabel8.Size = new System.Drawing.Size(71, 32);
this.linkLabel8.TabIndex = 12;
this.linkLabel8.TabStop = true;
this.linkLabel8.Text = "월(1)";
this.linkLabel8.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel8_LinkClicked);
//
// tbMon
//
this.tbMon.BackColor = System.Drawing.SystemColors.Window;
this.tbMon.Location = new System.Drawing.Point(160, 285);
this.tbMon.Margin = new System.Windows.Forms.Padding(8, 13, 8, 13);
this.tbMon.Name = "tbMon";
this.tbMon.Size = new System.Drawing.Size(404, 39);
this.tbMon.TabIndex = 13;
this.tbMon.Text = "10=A,11=B,12=C";
this.tbMon.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
this.tbMon.TextChanged += new System.EventHandler(this.tbCustCode_TextChanged);
//
// button8
//
this.button8.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.button8.Font = new System.Drawing.Font("맑은 고딕", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.button8.Location = new System.Drawing.Point(477, 417);
this.button8.Name = "button8";
this.button8.Size = new System.Drawing.Size(87, 32);
this.button8.TabIndex = 31;
this.button8.Text = "중복검사";
this.button8.UseVisualStyleBackColor = true;
this.button8.Click += new System.EventHandler(this.button8_Click);
//
// lbLen
//
this.lbLen.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.lbLen.BackColor = System.Drawing.Color.Tomato;
this.lbLen.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.lbLen.Font = new System.Drawing.Font("맑은 고딕", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.lbLen.Location = new System.Drawing.Point(13, 417);
this.lbLen.Name = "lbLen";
this.lbLen.Size = new System.Drawing.Size(89, 32);
this.lbLen.TabIndex = 33;
this.lbLen.Text = "길이";
this.lbLen.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
// button1
//
this.button1.Font = new System.Drawing.Font("맑은 고딕", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.button1.Location = new System.Drawing.Point(460, 331);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(104, 39);
this.button1.TabIndex = 34;
this.button1.Text = "생성";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click_1);
//
// radNormal
//
this.radNormal.AutoSize = true;
this.radNormal.Checked = true;
this.radNormal.Location = new System.Drawing.Point(160, 376);
this.radNormal.Name = "radNormal";
this.radNormal.Size = new System.Drawing.Size(81, 36);
this.radNormal.TabIndex = 36;
this.radNormal.TabStop = true;
this.radNormal.Text = "일반";
this.radNormal.UseVisualStyleBackColor = true;
this.radNormal.Click += new System.EventHandler(this.radNormal_Click);
//
// radReturn
//
this.radReturn.AutoSize = true;
this.radReturn.Location = new System.Drawing.Point(247, 376);
this.radReturn.Name = "radReturn";
this.radReturn.Size = new System.Drawing.Size(81, 36);
this.radReturn.TabIndex = 36;
this.radReturn.Text = "반환";
this.radReturn.UseVisualStyleBackColor = true;
this.radReturn.Click += new System.EventHandler(this.radNormal_Click);
//
// radDup
//
this.radDup.AutoSize = true;
this.radDup.Location = new System.Drawing.Point(334, 376);
this.radDup.Name = "radDup";
this.radDup.Size = new System.Drawing.Size(81, 36);
this.radDup.TabIndex = 36;
this.radDup.Text = "중복";
this.radDup.UseVisualStyleBackColor = true;
this.radDup.Click += new System.EventHandler(this.radNormal_Click);
//
// fNewReelID
//
this.AutoScaleDimensions = new System.Drawing.SizeF(14F, 32F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(573, 508);
this.Controls.Add(this.radDup);
this.Controls.Add(this.radReturn);
this.Controls.Add(this.radNormal);
this.Controls.Add(this.button1);
this.Controls.Add(this.lbLen);
this.Controls.Add(this.button8);
this.Controls.Add(this.linkLabel8);
this.Controls.Add(this.tbMon);
this.Controls.Add(this.linkLabel7);
this.Controls.Add(this.tbLoca);
this.Controls.Add(this.linkLabel6);
this.Controls.Add(this.linkLabel5);
this.Controls.Add(this.tbtype);
this.Controls.Add(this.tb1);
this.Controls.Add(this.linkLabel4);
this.Controls.Add(this.tbSeq);
this.Controls.Add(this.linkLabel3);
this.Controls.Add(this.linkLabel2);
this.Controls.Add(this.linkLabel1);
this.Controls.Add(this.tbDiv);
this.Controls.Add(this.btOK);
this.Controls.Add(this.tbRID);
this.Controls.Add(this.tbCustCode);
this.Controls.Add(this.tbYear);
this.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.Margin = new System.Windows.Forms.Padding(6, 8, 6, 8);
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "fNewReelID";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Make New Reel ID";
this.Load += new System.EventHandler(this.fNewReelID_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.LinkLabel linkLabel3;
private System.Windows.Forms.LinkLabel linkLabel2;
private System.Windows.Forms.LinkLabel linkLabel1;
private System.Windows.Forms.Button btOK;
private System.Windows.Forms.LinkLabel linkLabel4;
public System.Windows.Forms.TextBox tbDiv;
public System.Windows.Forms.TextBox tbCustCode;
public System.Windows.Forms.TextBox tbYear;
public System.Windows.Forms.TextBox tbSeq;
private System.Windows.Forms.TextBox tbRID;
public System.Windows.Forms.TextBox tb1;
public System.Windows.Forms.TextBox tbtype;
private System.Windows.Forms.LinkLabel linkLabel5;
private System.Windows.Forms.LinkLabel linkLabel6;
private System.Windows.Forms.LinkLabel linkLabel7;
public System.Windows.Forms.TextBox tbLoca;
private System.Windows.Forms.LinkLabel linkLabel8;
public System.Windows.Forms.TextBox tbMon;
private System.Windows.Forms.Button button8;
private System.Windows.Forms.Label lbLen;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.RadioButton radNormal;
private System.Windows.Forms.RadioButton radReturn;
private System.Windows.Forms.RadioButton radDup;
}
}

View File

@@ -1,261 +0,0 @@
using AR;
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 Project.Dialog
{
public partial class fNewReelID : Form
{
public string NewID { get; set; }
public fNewReelID(string custcode)
{
InitializeComponent();
this.NewID = string.Empty;
tbCustCode.Text = custcode;
if (PUB.Result.JobType2 == "RET")
radReturn.Checked = true;
else
radNormal.Checked = false;
tbRID.TextChanged += (s1, e1) =>
{
lbLen.Text = $"길이({tbRID.Text.Length})";
lbLen.BackColor = tbRID.Text.Length == 15 ? Color.Lime : Color.Tomato;
};
}
private void fNewReelID_Load(object sender, EventArgs e)
{
tbtype.Text = "C";
tbLoca.Text = AR.SETTING.Data.ReelIdDeviceLoc;
tbDiv.Text = AR.SETTING.Data.ReelIdDeviceID;
tbYear.Text = DateTime.Now.Year.ToString().Substring(2);
tbMon.Text = DateTime.Now.Month.ToString("X");
this.radNormal.Checked = true;
RefreshID();
}
private void btOK_Click(object sender, EventArgs e)
{
var codelen = 15;
this.NewID = tbRID.Text;
if (this.NewID.Length != codelen)
{
UTIL.MsgE($"Reel ID는 {codelen}자리 입니다");
return;
}
//db에서도 검색한다
var db = new EEEntities();
if (db.Component_Reel_Result.Where(t => t.RID == NewID).Any())
{
UTIL.MsgE($"해당 ID는 발행 기록이 있는 ID 입니다\n값:{NewID}");
return;
}
//서버에서 중복검사실행
if (AR.SETTING.Data.OnlineMode == false)
{
UTIL.MsgE("오프라인 모드라 사용할 수 없습니다");
return;
}
var rlt = Amkor.RestfulService.get_existed_matl_by_id(NewID);
if (rlt.Complete == false)
{
UTIL.MsgE("중복검사 실패\n" + rlt.Message);
return;
}
else if (rlt.Result == true)
{
UTIL.MsgE("REEL ID 가 중복되었습니다\n새로고침 하세요");
return;
}
////데이터를 추가해준다.
//var db = new EEEntities();
//db.Component_Reel_NewAssign.Add(new Component_Reel_NewAssign()
//{
// bPrint = false,
// CUST = tbCustCode.Text.Trim(),
// TIME = tbYear.Text.Trim(),
// DIV = tbDiv.Text.Trim(),
// SEQ = tbSeq.Text,
// RID = tbRID.Text.Trim(),
// wdate = DateTime.Now,
// wuid = COMM.SETTING.Data.Asset,
//});
//db.SaveChanges();
DialogResult = DialogResult.OK;
}
void UpdateRID()
{
var data = tb1.Text.Trim();
data += tbtype.Text.Trim();
data += tbCustCode.Text.Trim();
data += tbLoca.Text.Trim();
data += tbDiv.Text.Trim();
data += tbYear.Text.Trim();
data += tbMon.Text.Trim();
data += tbSeq.Text.Trim();
this.tbRID.Text = data;
}
private void tbCustCode_TextChanged(object sender, EventArgs e)
{
UpdateRID();
}
private void button1_Click(object sender, EventArgs e)
{
RefreshID();
}
void RefreshID()
{
if (tbCustCode.Text.Length != 4)
{
tbCustCode.Focus();
tbCustCode.SelectAll();
}
//시간정보업데이트
tbYear.Text = DateTime.Now.ToString("yy");
tbDiv.Text = AR.SETTING.Data.ReelIdDeviceID; //라벨어태치용
UpdateSN();
UpdateRID();
}
/// <summary>
/// 일련번호 업데이트
/// </summary>
void UpdateSN()
{
var datestr = this.tbYear.Text + this.tbMon.Text;
if (datestr.Length != 3)
{
UTIL.MsgE("년도/월 값이 입력되지 않았습니다");
return;
}
var newsn = string.Empty;
if (this.radReturn.Checked)
newsn = AmkorReelID.GetNextSNbyYM_Return(datestr);
else if (this.radDup.Checked)
newsn = AmkorReelID.GetNextSNbyYM_Dup(datestr);
else
newsn = AmkorReelID.GetNextSNbyYM(datestr);
tbSeq.Text = newsn;
}
private void linkLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
UTIL.TouchKeyShow(tbCustCode, "고객코드를 입력하세요");
}
private void linkLabel3_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
UTIL.TouchKeyShow(tbDiv, "장치 분류를 입력(L:Logistic/M:Manufacture,A:AutoLabel Attach)");
}
private void linkLabel4_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
UTIL.TouchKeyShow(tbSeq, "일련번호입력(001~999)");
}
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
UTIL.TouchKeyShow(tbYear, "년도(2자리)");
}
private void linkLabel5_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
UTIL.TouchKeyShow(tb1, "예약됨(R)");
}
private void linkLabel6_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
UTIL.TouchKeyShow(tbtype, "예약됨(C/I)");
}
private void linkLabel7_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
UTIL.TouchKeyShow(tbLoca, "발행처(3/4/5)");
}
private void linkLabel8_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
UTIL.TouchKeyShow(tbMon, "월(1자리 10월=A,11월=B,12월=C");
}
private void button8_Click(object sender, EventArgs e)
{
//중복검사
var rid = tbRID.Text.Trim();
if (rid.isEmpty())
{
UTIL.MsgE("Reel Id 값이 없습니다");
return;
}
//db에서도 검색한다
if (AR.SETTING.Data.OnlineMode)
{
var db = new EEEntities();
if (db.Component_Reel_Result.Where(t => t.RID == rid).Any())
{
UTIL.MsgE($"해당 ID는 발행 기록이 있는 ID 입니다\n값:{rid}");
return;
}
var result = Amkor.RestfulService.get_existed_matl_by_id(rid);
if (result.Complete == false)
{
UTIL.MsgE("중복검사 서버 오류\n" + result.Message);
}
else
{
if (result.Result == true)
{
UTIL.MsgE($"해당 ID는 중복된 ID 입니다\n값:{rid}");
return;
}
else
{
UTIL.MsgI($"해당 ID는 중복되지 않았습니다\n{rid}");
}
}
}
}
private void chkReturn_CheckedChanged(object sender, EventArgs e)
{
UpdateSN();
UpdateRID();
}
private void button1_Click_1(object sender, EventArgs e)
{
UpdateSN();
}
private void radNormal_Click(object sender, EventArgs e)
{
UpdateSN();
UpdateRID();
}
}
}

View File

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

View File

@@ -2,11 +2,14 @@
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Windows.Forms.Design;
using AR;
namespace Project.Dialog
{
@@ -258,7 +261,7 @@ namespace Project.Dialog
//PUB.sm.seq.Clear(eSMStep.RUN_VISION0);
//PUB.sm.seq.UpdateTime(eSMStep.RUN_COM_VS0);
PUB.log.Add(string.Format("LEFT-QR검증({0}) 취소 JGUID={1}", "L", PUB.Result.ItemDataL.guid));
UpdateDatabase(0);
UpdateDatabase(eWorkPort.Left);
DialogResult = DialogResult.OK;
}
@@ -283,25 +286,34 @@ namespace Project.Dialog
{
var itemdata = vidx == eWorkPort.Left ? PUB.Result.ItemDataL : PUB.Result.ItemDataR;
//취소상태를 DB에도 남긴다.
using (var db = new EEEntities())
var sql = "select top 1 * from K4EE_Component_Reel_Result where JGUID = @jguid";
var dr = DBHelper.Get<DataSet1.Component_Reel_ResultDataTable>(sql, new SqlParameter("jguid", itemdata.guid)).FirstOrDefault();
if (dr == null)
{
var dr = db.Component_Reel_Result.AsNoTracking().Where(t => t.JGUID == itemdata.guid).FirstOrDefault();
if (dr == null)
{
var ermsg = string.Format("다음 guid 를 찾을수 없어 검증취소 를 변경하지 못함 vidx={2},guid={0},sid={1}", itemdata.guid, itemdata.VisionData.SID, vidx);
PUB.AddDebugLog(ermsg, true);
PUB.log.AddE(ermsg);
}
else
{
dr.ANGLE = itemdata.VisionData.ApplyAngle; //210331 - 도중에 사용자 angle 이 있다면 그것이 적용되었음
dr.PRNVALID = false;
dr.REMARK = "검증취소";
db.SaveChanges();
}
var ermsg = string.Format("다음 guid 를 찾을수 없어 검증취소 를 변경하지 못함 vidx={2},guid={0},sid={1}", itemdata.guid, itemdata.VisionData.SID, vidx);
PUB.AddDebugLog(ermsg, true);
PUB.log.AddE(ermsg);
}
else
{
DBHelper.UpdateWhere("K4EE_Component_Reel_Result",
new Dictionary<string, object>
{
{ "ANGLE", itemdata.VisionData.ApplyAngle },
{ "PRNVALID", 0 },
{ "REMARK", "검증취소" }
},
new Dictionary<string, object>
{
{ "idx", dr.idx }
});
//dr.ANGLE = itemdata.VisionData.ApplyAngle; //210331 - 도중에 사용자 angle 이 있다면 그것이 적용되었음
//dr.PRNVALID = false;
//dr.REMARK = "검증취소";
//db.SaveChanges();
}
}
private void button11_Click(object sender, EventArgs e)

View File

@@ -1,4 +1,5 @@
using System;
using AR;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;

View File

@@ -517,7 +517,7 @@ namespace Project.Dialog
private void button1_Click(object sender, EventArgs e)
{
this.TopMost = false;
var f = new Dialog.fTouchKeyFull("CUSTOMER CODE", cmbCustCode.Text.Trim());
var f = new AR.Dialog.fTouchKeyFull("CUSTOMER CODE", cmbCustCode.Text.Trim());
if (f.ShowDialog() == DialogResult.OK)
{
cmbCustCode.Text = f.tbInput.Text.Trim();

View File

@@ -13,12 +13,12 @@ namespace Project.Dialog
{
public partial class fSelectResult : Form
{
public Component_Reel_Result SelectedValue = null;
public fSelectResult(List<Component_Reel_Result> list)
public DataSet1.Component_Reel_ResultRow SelectedValue = null;
public fSelectResult(DataSet1.Component_Reel_ResultDataTable list)
{
InitializeComponent();
this.lv1.Items.Clear();
foreach (var item in list)
foreach (DataSet1.Component_Reel_ResultRow item in list)
{
var dt = (DateTime)item.wdate;
var lv = this.lv1.Items.Add(dt.ToString("dd HH:mm:ss"));
@@ -53,7 +53,7 @@ namespace Project.Dialog
UTIL.MsgE("아이템을 선택하세요\n\n취소하려면 ESC키 혹은 닫기 버튼을 누르세요");
return;
}
this.SelectedValue = this.lv1.FocusedItem.Tag as Component_Reel_Result;
this.SelectedValue = this.lv1.FocusedItem.Tag as DataSet1.Component_Reel_ResultRow;
this.DialogResult = DialogResult.OK;
}

View File

@@ -1,4 +1,5 @@
using System;
using AR;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;

View File

@@ -29,114 +29,113 @@ namespace Project.Dialog
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fZPLEditor));
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
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.toolStripButton4 = new System.Windows.Forms.ToolStripButton();
this.logTextBox1 = new arCtl.LogTextBox();
this.toolStrip1.SuspendLayout();
this.SuspendLayout();
//
// richTextBox1
//
this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox1.Location = new System.Drawing.Point(0, 39);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(664, 462);
this.richTextBox1.TabIndex = 0;
this.richTextBox1.Text = "";
//
// toolStrip1
//
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(32, 32);
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
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.toolStripButton4 = new System.Windows.Forms.ToolStripButton();
this.logTextBox1 = new arCtl.LogTextBox();
this.toolStrip1.SuspendLayout();
this.SuspendLayout();
//
// richTextBox1
//
this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox1.Location = new System.Drawing.Point(0, 39);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(664, 462);
this.richTextBox1.TabIndex = 0;
this.richTextBox1.Text = "";
//
// toolStrip1
//
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(32, 32);
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripButton1,
this.toolStripButton2,
this.toolStripButton3,
this.toolStripButton4});
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(664, 39);
this.toolStrip1.TabIndex = 1;
this.toolStrip1.Text = "toolStrip1";
//
// toolStripButton1
//
this.toolStripButton1.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton1.Image")));
this.toolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton1.Name = "toolStripButton1";
this.toolStripButton1.Size = new System.Drawing.Size(69, 36);
this.toolStripButton1.Text = "Load";
this.toolStripButton1.Click += new System.EventHandler(this.toolStripButton1_Click);
//
// toolStripButton2
//
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(68, 36);
this.toolStripButton2.Text = "Save";
this.toolStripButton2.Click += new System.EventHandler(this.toolStripButton2_Click);
//
// toolStripButton3
//
this.toolStripButton3.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.toolStripButton3.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton3.Image")));
this.toolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton3.Name = "toolStripButton3";
this.toolStripButton3.Size = new System.Drawing.Size(82, 36);
this.toolStripButton3.Text = "Print(L)";
this.toolStripButton3.Click += new System.EventHandler(this.toolStripButton3_Click);
//
// toolStripButton4
//
this.toolStripButton4.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.toolStripButton4.Image = ((System.Drawing.Image)(resources.GetObject("toolStripButton4.Image")));
this.toolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton4.Name = "toolStripButton4";
this.toolStripButton4.Size = new System.Drawing.Size(83, 36);
this.toolStripButton4.Text = "Print(R)";
this.toolStripButton4.Click += new System.EventHandler(this.toolStripButton4_Click);
//
// logTextBox1
//
this.logTextBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(24)))), ((int)(((byte)(24)))), ((int)(((byte)(24)))));
this.logTextBox1.ColorList = new arCtl.sLogMessageColor[0];
this.logTextBox1.DateFormat = "yy-MM-dd HH:mm:ss";
this.logTextBox1.DefaultColor = System.Drawing.Color.LightGray;
this.logTextBox1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.logTextBox1.EnableDisplayTimer = true;
this.logTextBox1.EnableGubunColor = true;
this.logTextBox1.Font = new System.Drawing.Font("Consolas", 9F);
this.logTextBox1.ListFormat = "[{0}] {1}";
this.logTextBox1.Location = new System.Drawing.Point(0, 501);
this.logTextBox1.MaxListCount = ((ushort)(200));
this.logTextBox1.MaxTextLength = ((uint)(4000u));
this.logTextBox1.MessageInterval = 50;
this.logTextBox1.Name = "logTextBox1";
this.logTextBox1.Size = new System.Drawing.Size(664, 100);
this.logTextBox1.TabIndex = 2;
this.logTextBox1.Text = "";
//
// fZPLEditor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(664, 601);
this.Controls.Add(this.richTextBox1);
this.Controls.Add(this.logTextBox1);
this.Controls.Add(this.toolStrip1);
this.Name = "fZPLEditor";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "fZPLEditor";
this.Load += new System.EventHandler(this.fZPLEditor_Load);
this.toolStrip1.ResumeLayout(false);
this.toolStrip1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
this.toolStrip1.Name = "toolStrip1";
this.toolStrip1.Size = new System.Drawing.Size(664, 39);
this.toolStrip1.TabIndex = 1;
this.toolStrip1.Text = "toolStrip1";
//
// toolStripButton1
//
this.toolStripButton1.Image = global::Project.Properties.Resources.icons8_folder_40;
this.toolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton1.Name = "toolStripButton1";
this.toolStripButton1.Size = new System.Drawing.Size(69, 36);
this.toolStripButton1.Text = "Load";
this.toolStripButton1.Click += new System.EventHandler(this.toolStripButton1_Click);
//
// toolStripButton2
//
this.toolStripButton2.Image = global::Project.Properties.Resources.icons8_save_40;
this.toolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton2.Name = "toolStripButton2";
this.toolStripButton2.Size = new System.Drawing.Size(68, 36);
this.toolStripButton2.Text = "Save";
this.toolStripButton2.Click += new System.EventHandler(this.toolStripButton2_Click);
//
// toolStripButton3
//
this.toolStripButton3.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.toolStripButton3.Image = global::Project.Properties.Resources.icons8_printer_48;
this.toolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton3.Name = "toolStripButton3";
this.toolStripButton3.Size = new System.Drawing.Size(82, 36);
this.toolStripButton3.Text = "Print(L)";
this.toolStripButton3.Click += new System.EventHandler(this.toolStripButton3_Click);
//
// toolStripButton4
//
this.toolStripButton4.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
this.toolStripButton4.Image = global::Project.Properties.Resources.icons8_printer_48;
this.toolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta;
this.toolStripButton4.Name = "toolStripButton4";
this.toolStripButton4.Size = new System.Drawing.Size(83, 36);
this.toolStripButton4.Text = "Print(R)";
this.toolStripButton4.Click += new System.EventHandler(this.toolStripButton4_Click);
//
// logTextBox1
//
this.logTextBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(24)))), ((int)(((byte)(24)))), ((int)(((byte)(24)))));
this.logTextBox1.ColorList = new arCtl.sLogMessageColor[0];
this.logTextBox1.DateFormat = "yy-MM-dd HH:mm:ss";
this.logTextBox1.DefaultColor = System.Drawing.Color.LightGray;
this.logTextBox1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.logTextBox1.EnableDisplayTimer = true;
this.logTextBox1.EnableGubunColor = true;
this.logTextBox1.Font = new System.Drawing.Font("Consolas", 9F);
this.logTextBox1.ListFormat = "[{0}] {1}";
this.logTextBox1.Location = new System.Drawing.Point(0, 501);
this.logTextBox1.MaxListCount = ((ushort)(200));
this.logTextBox1.MaxTextLength = ((uint)(4000u));
this.logTextBox1.MessageInterval = 50;
this.logTextBox1.Name = "logTextBox1";
this.logTextBox1.Size = new System.Drawing.Size(664, 100);
this.logTextBox1.TabIndex = 2;
this.logTextBox1.Text = "";
//
// fZPLEditor
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(664, 601);
this.Controls.Add(this.richTextBox1);
this.Controls.Add(this.logTextBox1);
this.Controls.Add(this.toolStrip1);
this.Name = "fZPLEditor";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "ZPL Printer Code Editor";
this.Load += new System.EventHandler(this.fZPLEditor_Load);
this.toolStrip1.ResumeLayout(false);
this.toolStrip1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}

View File

@@ -120,65 +120,4 @@
<metadata name="toolStrip1.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="toolStripButton1.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>
<data name="toolStripButton2.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>
<data name="toolStripButton3.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>
<data name="toolStripButton4.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>
</root>