diff --git a/unimarc/unimarc/Properties/AssemblyInfo.cs b/unimarc/unimarc/Properties/AssemblyInfo.cs
index d16216a..cdd8b8e 100644
--- a/unimarc/unimarc/Properties/AssemblyInfo.cs
+++ b/unimarc/unimarc/Properties/AssemblyInfo.cs
@@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 번호를
// 기본값으로 할 수 있습니다.
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("2026.01.20.2130")]
-[assembly: AssemblyFileVersion("2026.01.20.2130")]
+[assembly: AssemblyVersion("2026.01.21.2318")]
+[assembly: AssemblyFileVersion("2026.01.21.2318")]
diff --git a/unimarc/unimarc/UniMarc.csproj b/unimarc/unimarc/UniMarc.csproj
index 2389090..526dbd9 100644
--- a/unimarc/unimarc/UniMarc.csproj
+++ b/unimarc/unimarc/UniMarc.csproj
@@ -352,6 +352,7 @@
Help_008.cs
+
Form
diff --git a/unimarc/unimarc/마크/MacEditorParameter.cs b/unimarc/unimarc/마크/MacEditorParameter.cs
new file mode 100644
index 0000000..2b4efd0
--- /dev/null
+++ b/unimarc/unimarc/마크/MacEditorParameter.cs
@@ -0,0 +1,22 @@
+//using Microsoft.Office.Interop.Excel;
+namespace ExcelTest
+{
+
+ public class MacEditorParameter
+ {
+ public string ISBN13 { get; set; }
+ public string URL { get; set; }
+ public string MarcIdx { get; set; }
+ public string Grade { get; set; }
+ public string User { get; set; }
+ public string SaveDate { get; set; }
+ public string ListIdx { get; set; }
+
+ public string BookName { get; set; }
+ public string Author { get; set; }
+ public string Publisher { get; set; }
+ public string Price { get; set; }
+
+ }
+
+}
\ No newline at end of file
diff --git a/unimarc/unimarc/마크/Marc.cs b/unimarc/unimarc/마크/Marc.cs
index 82650a6..e6ae66a 100644
--- a/unimarc/unimarc/마크/Marc.cs
+++ b/unimarc/unimarc/마크/Marc.cs
@@ -455,8 +455,8 @@ namespace ExcelTest
if (BaseText.IndexOf(lblisbn) < 0)
{
- var dlg = UTIL.MsgQ("저장된 ISBN이 마크데이터에 없습니다.\nISBN값이 변경되었습니다\n그래도 저장 할까요?");
- if (dlg != DialogResult.Yes) return;
+ UTIL.MsgE("저장된 ISBN이 마크데이터에 없습니다.\nISBN값이 변경되었습니다");
+ //if (dlg != DialogResult.Yes) return;
return;
}
@@ -921,8 +921,8 @@ namespace ExcelTest
data_book[0] = List_Book.Rows[row].Cells["ISBN13"].Value.ToString();
data_book[1] = List_Book.Rows[row].Cells["book_name"].Value.ToString();
data_book[2] = List_Book.Rows[row].Cells["author"].Value.ToString();
- data_book[3] = List_Book.Rows[row].Cells["book_comp"].Value.ToString();
- data_book[4] = List_Book.Rows[row].Cells["pay"].Value.ToString();
+ data_book[3] = List_Book.Rows[row].Cells["book_comp"].Value.ToString(); //publichser
+ data_book[4] = List_Book.Rows[row].Cells["pay"].Value.ToString(); //price
}
void input_picture(int row)
{
@@ -1229,47 +1229,48 @@ namespace ExcelTest
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
- string name = ((CheckBox)sender).Name;
- if (((CheckBox)sender).Checked == true)
+ var chk = sender as CheckBox;
+ string name = chk.Name;
+ if (chk.Checked == true)
{
switch (name)
{
case "checkBox1":
- ((CheckBox)sender).InvokeText("회의간행물o");
+ chk.InvokeText("회의간행물o");
break;
case "checkBox2":
- ((CheckBox)sender).InvokeText("기념논문집o");
+ chk.InvokeText("기념논문집o");
break;
case "checkBox4":
- ((CheckBox)sender).InvokeText("색인o");
+ chk.InvokeText("색인o");
break;
}
}
- else if (((CheckBox)sender).Checked == false)
+ else if (chk.Checked == false)
{
switch (name)
{
case "checkBox1":
- ((CheckBox)sender).InvokeText("회의간행물x");
+ chk.InvokeText("회의간행물x");
break;
case "checkBox2":
- ((CheckBox)sender).InvokeText("기념논문집x");
+ chk.InvokeText("기념논문집x");
break;
case "checkBox4":
- ((CheckBox)sender).InvokeText("색인x");
+ chk.InvokeText("색인x");
break;
}
}
switch (name)
{
- case "checkBox1":
- Publication(checkBox1.Checked, 29);
+ case "checkBox1": //회의간행물
+ Publication(chk.Checked, 29);
break;
- case "checkBox2":
- Publication(checkBox2.Checked, 30);
+ case "checkBox2": //기념논문집
+ Publication(chk.Checked, 30);
break;
- case "checkBox4":
- Publication(checkBox4.Checked, 31);
+ case "checkBox4": //색인
+ Publication(chk.Checked, 31);
break;
}
}
diff --git a/unimarc/unimarc/마크/Marc2.cs b/unimarc/unimarc/마크/Marc2.cs
index 5ef03a3..d1e2142 100644
--- a/unimarc/unimarc/마크/Marc2.cs
+++ b/unimarc/unimarc/마크/Marc2.cs
@@ -89,7 +89,7 @@ namespace ExcelTest
input_list(p_lidx, p_value, p_cidx, p_cust, p_name);
}
-
+
///
/// 가져온 목록을 책목록과 연동하여 Grid에 집어넣음.
@@ -99,7 +99,7 @@ namespace ExcelTest
public void input_list(string l_idx, string value, string C_idx, string custidx, string custname)
{
p_lidx = l_idx;
- p_value = value;
+ p_value = value;
p_cidx = C_idx;
p_cust = custidx;
p_name = custname;
@@ -170,9 +170,10 @@ namespace ExcelTest
//}
}
chk_Marc();
- mLoadCompleted = true;
List_Book.ClearSelection();
+ mLoadCompleted = true;
+
if (this.List_Book.RowCount > 0)
List_Book.Rows[0].Selected = true;
}
@@ -351,7 +352,21 @@ namespace ExcelTest
string saveDate = List_Book.Rows[row_idx].Cells["SaveDate"].Value?.ToString() ?? "";
string listIdx = List_Book.Rows[row_idx].Cells["list_idx"].Value?.ToString() ?? ""; // verify this column name in input_list
- marcEditorControl1.LoadBookData(isbn13, url, marcIdx, dbMarc, grade, user, saveDate, listIdx);
+ var p = new MacEditorParameter
+ {
+ ISBN13 = isbn13,
+ URL = url,
+ Grade = grade,
+ ListIdx = listIdx,
+ MarcIdx = marcIdx,
+ SaveDate = saveDate,
+ User = user,
+ BookName = bookName,
+ Author = author,
+ Publisher = publisher,
+ Price = price
+ };
+ marcEditorControl1.LoadBookData(dbMarc, p);
}
@@ -520,9 +535,9 @@ namespace ExcelTest
"grade", "marc_chk", "user", "division", "008tag",
"date", "compidx" };
string[] Insert_col = {
- e.griddata[0], e.griddata[1], e.griddata[2], e.griddata[3],
- e.griddata[4], orimarc, e.etc1, e.etc2, e.griddata[5],
- e.Grade, "1", mUserName, e.tag056, e.text008,
+ e.griddata.ISBN13, e.griddata.BookName, e.griddata.Author, e.griddata.Publisher,
+ e.griddata.Price, orimarc, e.etc1, e.etc2, e.griddata.URL,
+ e.griddata.Grade, "1", mUserName, e.tag056, e.text008,
date, mCompidx };
string Incmd = db.DB_INSERT(table_name, Insert_tbl, Insert_col);
@@ -538,11 +553,11 @@ namespace ExcelTest
"user", "grade" };
string[] Edit_col = {
mCompidx, orimarc, "1", mOldMarc , "0", e.etc1,
- e.etc2, e.griddata[5], e.tag056,e.text008, date,
- mUserName, e.Grade };
+ e.etc2, e.griddata.URL, e.tag056,e.text008, date,
+ mUserName, e.griddata.Grade };
string[] Sear_tbl = { "idx", "compidx" };
string[] Sear_col = { Midx, mCompidx };
- if (e.griddata[0] == null || e.griddata[0] == "")
+ if (e.griddata.ISBN13 == null || e.griddata.ISBN13 == "")
{
MessageBox.Show("ISBN 데이터가 없습니다.");
return;
@@ -554,7 +569,7 @@ namespace ExcelTest
isNewData = false;
}
- List_Book.Rows[SaveRowIdx].Cells["grade"].Value = e.Grade;
+ List_Book.Rows[SaveRowIdx].Cells["grade"].Value = e.griddata.Grade;
List_Book.Rows[SaveRowIdx].Cells["SaveDate"].Value = e.SaveDate;
List_Book.Rows[SaveRowIdx].Cells["user"].Value = mUserName;
List_Book.Rows[SaveRowIdx].Cells["db_marc"].Value = e.DBMarc;
@@ -563,7 +578,7 @@ namespace ExcelTest
if (isNewData)
{
- string MidxQuery = string.Format("SELECT `idx` FROM Marc WHERE isbn = {0} AND `compidx` = {1};", e.griddata[0], mCompidx);
+ string MidxQuery = string.Format("SELECT `idx` FROM Marc WHERE isbn = {0} AND `compidx` = {1};", e.griddata.ISBN13, mCompidx);
PUB.log.Add("MarcInsert", string.Format("{0}({1}) : {2}", mUserName, mCompidx, MidxQuery));
Midx = db.DB_Send_CMD_Search(MidxQuery).Replace("|", "");
List_Book.Rows[SaveRowIdx].Cells["marc_idx"].Value = Midx;
diff --git a/unimarc/unimarc/마크/Marc2.designer.cs b/unimarc/unimarc/마크/Marc2.designer.cs
index 917cee3..a3deb56 100644
--- a/unimarc/unimarc/마크/Marc2.designer.cs
+++ b/unimarc/unimarc/마크/Marc2.designer.cs
@@ -550,14 +550,6 @@
// marcEditorControl1
//
this.marcEditorControl1.BackColor = System.Drawing.Color.Gray;
- this.marcEditorControl1.CurrentDBMarc = null;
- this.marcEditorControl1.CurrentGrade = null;
- this.marcEditorControl1.CurrentISBN13 = null;
- this.marcEditorControl1.CurrentListIdx = null;
- this.marcEditorControl1.CurrentMarcIdx = null;
- this.marcEditorControl1.CurrentSaveDate = null;
- this.marcEditorControl1.CurrentURL = null;
- this.marcEditorControl1.CurrentUser = null;
this.marcEditorControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.marcEditorControl1.Font = new System.Drawing.Font("돋움", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.marcEditorControl1.Location = new System.Drawing.Point(0, 0);
diff --git a/unimarc/unimarc/마크/MarcEditorControl.Designer.cs b/unimarc/unimarc/마크/MarcEditorControl.Designer.cs
index a359568..d407179 100644
--- a/unimarc/unimarc/마크/MarcEditorControl.Designer.cs
+++ b/unimarc/unimarc/마크/MarcEditorControl.Designer.cs
@@ -28,14 +28,14 @@
///
private void InitializeComponent()
{
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle137 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle138 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle139 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle140 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle141 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle142 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle143 = new System.Windows.Forms.DataGridViewCellStyle();
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle144 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = 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();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
this.label31 = new System.Windows.Forms.Label();
this.label30 = new System.Windows.Forms.Label();
this.label33 = new System.Windows.Forms.Label();
@@ -782,7 +782,7 @@
this.tabPage2.Location = new System.Drawing.Point(4, 23);
this.tabPage2.Name = "tabPage2";
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
- this.tabPage2.Size = new System.Drawing.Size(941, 783);
+ this.tabPage2.Size = new System.Drawing.Size(941, 785);
this.tabPage2.TabIndex = 1;
this.tabPage2.Text = "마크 칸채우기";
//
@@ -835,7 +835,7 @@
this.panel4.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel4.Location = new System.Drawing.Point(3, 3);
this.panel4.Name = "panel4";
- this.panel4.Size = new System.Drawing.Size(935, 777);
+ this.panel4.Size = new System.Drawing.Size(935, 779);
this.panel4.TabIndex = 0;
//
// Btn_interlock
@@ -877,8 +877,8 @@
this.GridView020.Name = "GridView020";
this.GridView020.RowHeadersVisible = false;
this.GridView020.RowHeadersWidth = 30;
- dataGridViewCellStyle137.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
- this.GridView020.RowsDefaultCellStyle = dataGridViewCellStyle137;
+ dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+ this.GridView020.RowsDefaultCellStyle = dataGridViewCellStyle1;
this.GridView020.RowTemplate.Height = 23;
this.GridView020.Size = new System.Drawing.Size(408, 80);
this.GridView020.TabIndex = 0;
@@ -952,8 +952,8 @@
this.GridView505.Name = "GridView505";
this.GridView505.RowHeadersVisible = false;
this.GridView505.RowHeadersWidth = 30;
- dataGridViewCellStyle138.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
- this.GridView505.RowsDefaultCellStyle = dataGridViewCellStyle138;
+ dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+ this.GridView505.RowsDefaultCellStyle = dataGridViewCellStyle2;
this.GridView505.RowTemplate.Height = 23;
this.GridView505.Size = new System.Drawing.Size(401, 71);
this.GridView505.TabIndex = 2;
@@ -1092,14 +1092,14 @@
this.GridView246.AllowDrop = true;
this.GridView246.AllowUserToAddRows = false;
this.GridView246.AllowUserToResizeRows = false;
- dataGridViewCellStyle139.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
- dataGridViewCellStyle139.BackColor = System.Drawing.SystemColors.Control;
- dataGridViewCellStyle139.Font = new System.Drawing.Font("돋움", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- dataGridViewCellStyle139.ForeColor = System.Drawing.SystemColors.WindowText;
- dataGridViewCellStyle139.SelectionBackColor = System.Drawing.SystemColors.Highlight;
- dataGridViewCellStyle139.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
- dataGridViewCellStyle139.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.GridView246.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle139;
+ dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+ dataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle3.Font = new System.Drawing.Font("돋움", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ dataGridViewCellStyle3.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.GridView246.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle3;
this.GridView246.ColumnHeadersHeight = 29;
this.GridView246.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.Text246Jisi,
@@ -1112,8 +1112,8 @@
this.GridView246.Name = "GridView246";
this.GridView246.RowHeadersVisible = false;
this.GridView246.RowHeadersWidth = 30;
- dataGridViewCellStyle140.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
- this.GridView246.RowsDefaultCellStyle = dataGridViewCellStyle140;
+ dataGridViewCellStyle4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+ this.GridView246.RowsDefaultCellStyle = dataGridViewCellStyle4;
this.GridView246.RowTemplate.Height = 23;
this.GridView246.Size = new System.Drawing.Size(493, 138);
this.GridView246.TabIndex = 31;
@@ -1272,14 +1272,14 @@
this.GridView440.AllowDrop = true;
this.GridView440.AllowUserToAddRows = false;
this.GridView440.AllowUserToResizeRows = false;
- dataGridViewCellStyle141.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
- dataGridViewCellStyle141.BackColor = System.Drawing.SystemColors.Control;
- dataGridViewCellStyle141.Font = new System.Drawing.Font("돋움", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- dataGridViewCellStyle141.ForeColor = System.Drawing.SystemColors.WindowText;
- dataGridViewCellStyle141.SelectionBackColor = System.Drawing.SystemColors.Highlight;
- dataGridViewCellStyle141.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
- dataGridViewCellStyle141.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.GridView440.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle141;
+ dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+ dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle5.Font = new System.Drawing.Font("돋움", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.GridView440.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
this.GridView440.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.GridView440.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.text440a,
@@ -1292,8 +1292,8 @@
this.GridView440.Name = "GridView440";
this.GridView440.RowHeadersVisible = false;
this.GridView440.RowHeadersWidth = 30;
- dataGridViewCellStyle142.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
- this.GridView440.RowsDefaultCellStyle = dataGridViewCellStyle142;
+ dataGridViewCellStyle6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+ this.GridView440.RowsDefaultCellStyle = dataGridViewCellStyle6;
this.GridView440.RowTemplate.Height = 23;
this.GridView440.Size = new System.Drawing.Size(597, 71);
this.GridView440.TabIndex = 18;
@@ -1401,14 +1401,14 @@
this.GridView490.AllowDrop = true;
this.GridView490.AllowUserToAddRows = false;
this.GridView490.AllowUserToResizeRows = false;
- dataGridViewCellStyle143.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
- dataGridViewCellStyle143.BackColor = System.Drawing.SystemColors.Control;
- dataGridViewCellStyle143.Font = new System.Drawing.Font("돋움", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- dataGridViewCellStyle143.ForeColor = System.Drawing.SystemColors.WindowText;
- dataGridViewCellStyle143.SelectionBackColor = System.Drawing.SystemColors.Highlight;
- dataGridViewCellStyle143.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
- dataGridViewCellStyle143.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.GridView490.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle143;
+ dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+ dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle7.Font = new System.Drawing.Font("돋움", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.GridView490.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7;
this.GridView490.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.GridView490.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.text490a,
@@ -1417,8 +1417,8 @@
this.GridView490.Name = "GridView490";
this.GridView490.RowHeadersVisible = false;
this.GridView490.RowHeadersWidth = 30;
- dataGridViewCellStyle144.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
- this.GridView490.RowsDefaultCellStyle = dataGridViewCellStyle144;
+ dataGridViewCellStyle8.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224)))));
+ this.GridView490.RowsDefaultCellStyle = dataGridViewCellStyle8;
this.GridView490.RowTemplate.Height = 23;
this.GridView490.Size = new System.Drawing.Size(321, 71);
this.GridView490.TabIndex = 19;
@@ -2305,6 +2305,7 @@
//
// btNext
//
+ this.btNext.Enabled = false;
this.btNext.Location = new System.Drawing.Point(274, 266);
this.btNext.Name = "btNext";
this.btNext.Size = new System.Drawing.Size(107, 33);
@@ -2315,6 +2316,7 @@
//
// btPrev
//
+ this.btPrev.Enabled = false;
this.btPrev.Location = new System.Drawing.Point(98, 266);
this.btPrev.Name = "btPrev";
this.btPrev.Size = new System.Drawing.Size(107, 33);
diff --git a/unimarc/unimarc/마크/MarcEditorControl.cs b/unimarc/unimarc/마크/MarcEditorControl.cs
index 996a8d9..49629be 100644
--- a/unimarc/unimarc/마크/MarcEditorControl.cs
+++ b/unimarc/unimarc/마크/MarcEditorControl.cs
@@ -6,6 +6,7 @@ using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text.RegularExpressions;
+using System.Web.UI.WebControls.WebParts;
using System.Windows.Forms;
using UniMarc;
using UniMarc.ListOfValue;
@@ -19,9 +20,8 @@ namespace ExcelTest
///
/// isbn / 도서명 / 저자 / 출판사 / 가격
///
- string[] data_book = { "", "", "", "", "" };
+ //string[] data_book = { "", "", "", "", "" };
int SaveRowIdx = -1; // Keep for now but might be unused if we rely on properties
- public string mUserName;
string mCompidx = UniMarc.Properties.Settings.Default.compidx;
string mListIdx = "";
public string find;
@@ -35,29 +35,30 @@ namespace ExcelTest
Help008Tag tag008 = new Help008Tag();
Skill_Search_Text search_Text = new Skill_Search_Text();
String_Text st = new String_Text();
- public string CurrentISBN13 { get; set; }
-
- public string CurrentURL { get; set; } // image_url?
- public string CurrentMarcIdx { get; set; }
- public string CurrentDBMarc { get; set; } // db_marc
- public string CurrentGrade { get; set; }
- public string CurrentUser { get; set; }
- public string CurrentSaveDate { get; set; }
- public string CurrentListIdx { get; set; }
+ string l_idx = string.Empty;
+ string c_idx = string.Empty;
+ MacEditorParameter Param = null;
+ //public string CurrentISBN13 { get; set; }
+
+
+
+ //public string CurrentMarcIdx { get; set; }
+
+ //public string CurrentUser { get; set; }
+ //public string CurrentSaveDate { get; set; }
+ //public string CurrentListIdx { get; set; }
+
+
+ public event EventHandler FillBlankClicked;
+
+ public event EventHandler PrevButton;
+ public event EventHandler NextButton;
public MarcEditorControl()
{
InitializeComponent();
- mUserName = string.Empty;
}
- public void SetUser(string userName)
- {
- mUserName = userName;
- }
-
- string l_idx = string.Empty;
- string c_idx = string.Empty;
private void Marc_Load(object sender, EventArgs e)
{
#region ComboBox Item Setting
@@ -95,109 +96,67 @@ namespace ExcelTest
#endregion
}
-
- private string RealMarc(string[] MarcData)
+ ///
+ /// 입력된 자료를 표시합니다.
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public void LoadBookData(string dbMarc,MacEditorParameter _param)
{
- string result = "";
- if (MarcData[1] == "1")
- result = MarcData[0];
+ mLoadCompleted = false;
+ Param = _param;
+
- if (MarcData[3] == "1")
- result = MarcData[2];
+ lbl_SaveData.Text = $"[{Param.User}] [{Param.SaveDate}]";
+ lbl_ISBN.Text = $"[{Param.ISBN13}]";
- if (MarcData[5] == "1")
- result = MarcData[4];
+ LoadMarc(dbMarc); //여기에서도 008을 설정한다
- return result;
- }
+ try
+ {
+ //픽쳐박스이미지 업데이트
+ string isbn = _param.ISBN13;
+ string isbn3 = isbn.Substring(isbn.Length - 3, 3);
+ string tFilePath = string.Format("https://contents.kyobobook.co.kr/sih/fit-in/458x0/pdt/{0}.jpg", isbn);
+ pictureBox1.ImageLocation = tFilePath;
+ }
+ catch
+ {
+ pictureBox1.Image = null;
+ pictureBox1.ImageLocation = null;
+ }
+ finally
+ {
+ pictureBox1.Tag = _param.URL;
+ }
- public void LoadBookData(string isbn13, string url, string marcIdx, string dbMarc, string grade, string user, string saveDate, string listIdx)
- {
- CurrentISBN13 = isbn13;
- CurrentURL = url;
- CurrentMarcIdx = marcIdx;
- CurrentDBMarc = dbMarc;
- CurrentGrade = grade;
- CurrentUser = user;
- CurrentSaveDate = saveDate;
- CurrentListIdx = listIdx;
-
- lbl_SaveData.Text = $"[{user}] [{saveDate}]";
- lbl_ISBN.Text = $"[{CurrentISBN13}]";
-
- // Update data_book for Create_008 or Empty logic
- data_book[0] = CurrentISBN13;
- data_book[1] = "";// CurrentBookName;
- data_book[2] ="";//CurrentAuthor;
- data_book[3] ="";//CurrentPublisher;
- data_book[4] = "";//CurrentPrice;
-
- LoadMarc(CurrentDBMarc);
- input_picture();
richTextBox1.Text = "";
- bool check_Marc = click_Marc(dbMarc);
+ bool check_Marc = click_Marc(dbMarc); //여기안에서 또 008을 설정한다
if (!check_Marc)
richTextBox1.Text = Make_Empty();
else
ReadRemark();
-
Create_008();
st.Color_change("▼", richTextBox1);
st.Color_change("▲", richTextBox1);
-
-
+ //자료의 등급 다시 선택
+ if (int.TryParse(this.Param.Grade, out int gradeNo) == false)
+ gradeNo = 2;
+ cb_grade.SelectedIndex = gradeNo;
+ mLoadCompleted = true;
}
-
- ///
- /// 마크 유무 확인하는 함수
- ///
-
-
- private string NewestMarc(string[] marc, string[] marc_chk)
- {
- string result = "";
- int count = 0;
- foreach (string chk in marc_chk)
- {
- if (chk == "1")
- result = marc[count];
-
- count++;
- }
- return result;
- }
-
- private Color SetGradeColor(string Grade, bool isMyData = true)
- {
- if (!isMyData)
- return Color.Orange;
-
- switch (Grade)
- {
- case "0": // A
- return Color.Blue;
-
- case "1": // B
- return Color.Black;
-
- case "2": // C
- return Color.Gray;
-
- case "3": // D
- return Color.Red;
-
- default:
- return Color.Black;
- }
- }
-
-
private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
{
@@ -300,44 +259,40 @@ namespace ExcelTest
private void Btn_preview_Click(object sender, EventArgs e)
{
Marc_Preview mp = new Marc_Preview();
- mp.isbn = data_book[0];
+ mp.isbn = Param.ISBN13;
mp.richTextBox1.Text = richTextBox1.Text;
mp.Show();
}
public class BookSavedEventArgs : EventArgs
{
- public string ListIdx { get; set; }
- public string Grade { get; set; }
public string SaveDate { get; set; }
- public string User { get; set; }
public string DBMarc { get; set; }
- public string MarcIdx { get; set; }
public string etc1 { get; set; } //remark1
public string etc2 { get; set; } //remark2
- public string tag056 { get; set; }
+ public string tag056 { get; set; }
public string text008 { get; set; }
- public string[] griddata { get; set; }
+ public MacEditorParameter griddata { get; set; }
}
public event EventHandler BookSaved;
private void Btn_Save_Click(object sender, EventArgs e)
{
- if (string.IsNullOrEmpty(CurrentISBN13))
+ if (string.IsNullOrEmpty(Param.ISBN13))
{
MessageBox.Show("마크가 선택되지않았습니다.");
return;
}
int TabIndex = tabControl1.SelectedIndex;
- int grade = cb_grade.SelectedIndex;
+ Param.Grade = cb_grade.SelectedIndex.ToString();
if (TabIndex == 1)
{
MessageBox.Show("[칸채우기]가 아닌 [마크 편집] 탭에서 저장해주세요!");
return;
}
-
+
string BaseText = richTextBox1.Text;
- string lblisbn = CurrentISBN13; // lbl_ISBN.Text.Replace("[", "").Replace("]", "");
+ string lblisbn = Param.ISBN13; // lbl_ISBN.Text.Replace("[", "").Replace("]", "");
if (!BaseText.EndsWith("\n"))
BaseText += "\n";
@@ -351,21 +306,20 @@ namespace ExcelTest
//ISBN이 변경되었다면 저장하지 못하게 한다 (경고 후 저장 가능하게 한다 26010?)
if (BaseText.IndexOf(lblisbn) < 0)
{
- var dlg = UTIL.MsgQ("저장된 ISBN이 마크데이터에 없습니다.\nISBN값이 변경되었습니다\n그래도 저장 할까요?");
- if (dlg != DialogResult.Yes) return;
- //return;
+ UTIL.MsgE("저장된 ISBN이 마크데이터에 없습니다.\nISBN값이 변경되었습니다");
+ return;
}
string tag056 = Tag056();
- string[] grid_data = {
- CurrentISBN13,
- "",//CurrentBookName,
- "",// CurrentAuthor,
- "",// CurrentPublisher,
- "",// CurrentPrice,
- CurrentURL };
+ //string[] grid_data = {
+ // Param.ISBN13,
+ // "",//CurrentBookName,
+ // "",// CurrentAuthor,
+ // "",// CurrentPublisher,
+ // "",// CurrentPrice,
+ // "" };// CurrentURL"" };
string date = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
string orimarc = st.made_Ori_marc(richTextBox1).Replace(@"\", "₩");
- string marcIDX = CurrentMarcIdx;
+
// 필수태그 확인
if (!isMustTag(orimarc))
{
@@ -373,56 +327,23 @@ namespace ExcelTest
return;
}
- string SaveDate = CurrentSaveDate;
- string SaveUser = CurrentUser;
-
- // true일 경우 INSERT, false일 경우 UPDATE
- bool isNewData = marcIDX != "" ? false : true;
-
+
// Raise Event to Update List_Book in Parent
BookSaved?.Invoke(this, new BookSavedEventArgs
{
- ListIdx = CurrentListIdx,
- Grade = grade.ToString(),
SaveDate = date,
- User = mUserName,
DBMarc = orimarc,
- MarcIdx = marcIDX,
etc1 = etc1.Text,
etc2 = etc2.Text,
tag056 = tag056,
text008 = text008.Text,
- griddata = grid_data
+ griddata = this.Param
});
}
#region Save_Click_Sub
- ///
- /// 마크 저장시 사용하며, 마지막 수정일과 수정자를 가져와 덮어씌울지 백업데이터를 만들지 구분
- ///
- /// 저장할 마크의 마지막 수정일
- /// 저장할 마크의 마지막 수정자
- /// 마지막 수정일로부터 2일이 지나지않고, 마지막 수정자와 해당 유저가 동일 할 경우 true 반환
- private bool IsCoverData(int TimeSpanDaysValue, string user)
- {
- if (TimeSpanDaysValue < -1)
- return false;
- if (user != mUserName)
- return false;
-
- return true;
- }
-
- private TimeSpan spspsp(string LastDate, string SaveDate)
- {
- DateTime date1 = Convert.ToDateTime(LastDate);
- DateTime date2 = Convert.ToDateTime(SaveDate);
-
- TimeSpan result = date1 - date2;
- return result;
- }
-
+
///
/// 마크 오류체크 (형식체크)
///
@@ -699,12 +620,9 @@ namespace ExcelTest
return true;
}
- void OnSaveData(int row)
- {
-
- }
void ReadRemark()
{
+ var CurrentMarcIdx = Param.MarcIdx;
if (string.IsNullOrEmpty(CurrentMarcIdx) || CurrentMarcIdx == "0")
{
etc1.Text = "";
@@ -767,8 +685,9 @@ namespace ExcelTest
string res = TagNum[a];
if (TagNum[a] == "008")
{
- text008.Text = field[a].Replace("▲", "");
- data008 = text008.Text;
+ //0008은 click_marc 에서 실제 적용되므로 제거한다 260121 - chi
+ //text008.Text = field[a].Replace("▲", "");
+ //data008 = text008.Text;
continue;
}
else { }
@@ -786,24 +705,8 @@ namespace ExcelTest
richTextBox1.Text = result;
return true;
}
-
- ///
- /// 픽쳐박스 이미지 갱신
- ///
- void input_picture()
- {
- try
- {
- string isbn = CurrentISBN13;
- string isbn3 = isbn.Substring(isbn.Length - 3, 3);
- string tFilePath = string.Format("https://contents.kyobobook.co.kr/sih/fit-in/458x0/pdt/{0}.jpg", isbn);
- pictureBox1.ImageLocation = tFilePath;
- }
- catch
- {
- pictureBox1.Image = null;
- }
- }
+
+
private string Make_Empty()
{
string yyMMdd = DateTime.Now.ToString("yyMMdd");
@@ -821,7 +724,7 @@ namespace ExcelTest
"653\t \t▼a▲\n" +
"700\t \t▼a▲\n" +
"950\t \t▼b\\{5}▲\n",
- Empty_008, data_book[0], data_book[1], data_book[2], data_book[3], data_book[4]);
+ Empty_008, Param.ISBN13, Param.BookName, Param.Author, Param.Publisher, Param.Price);
etc1.Text = "";
etc2.Text = "";
return Empty_text;
@@ -896,6 +799,7 @@ namespace ExcelTest
checkBox1.Checked = tag008.CheckBox_008(Tag008[12]); // 회의간행물
checkBox2.Checked = tag008.CheckBox_008(Tag008[13]); // 기념논문집
+ checkBox4.Checked = tag008.CheckBox_008(Tag008[14]); // 색인 260121
col008res.Text = Tag008[10];
gov008res.Text = Tag008[19];
@@ -961,9 +865,9 @@ namespace ExcelTest
text008.Text = tag008.Combo_Change(text008.Text, comboBox5.Name, comboBox5.SelectedIndex); // 전기 (34) v
text008.Text = tag008.Combo_Change(text008.Text, comboBox6.Name, comboBox6.SelectedIndex); // 언어 (35-37) v
- Publication(checkBox1.Checked, 29);// 회의간행물 (29) c
- Publication(checkBox2.Checked, 30);// 기념논문집 (30) c
- Publication(checkBox4.Checked, 31);// 색인 (31)
+ Publication_008(checkBox1.Checked, 29);// 회의간행물 (29) c
+ Publication_008(checkBox2.Checked, 30);// 기념논문집 (30) c
+ Publication_008(checkBox4.Checked, 31);// 색인 (31)
textArray = text008.Text.ToCharArray();
@@ -1042,7 +946,7 @@ namespace ExcelTest
int comboIdx = ((ComboBox)sender).SelectedIndex;
text008.Text = tag008.Combo_Change(text, comboName, comboIdx);
- Apply_Main_marc();
+ Apply_Main_marc_008();
}
private void col008res_TextChanged(object sender, EventArgs e)
@@ -1067,11 +971,16 @@ namespace ExcelTest
}
text = new string(textArray);
text008.Text = text;
- Apply_Main_marc();
+ Apply_Main_marc_008();
}
private void input_date_ValueChanged(object sender, EventArgs e)
{
+ if (mLoadCompleted == false)
+ {
+ Console.WriteLine("초기화중이므로 처리하지 않습니다");
+ return;
+ }
if (text008.Text.Length < 3) { return; }
string date = input_date.Value.ToString();
date = date.Substring(0, 10);
@@ -1081,70 +990,71 @@ namespace ExcelTest
text008.Text = text008.Text.Remove(0, 6);
text008.Text = date + text008.Text;
- Apply_Main_marc();
+ Apply_Main_marc_008();
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
- string name = ((CheckBox)sender).Name;
- if (((CheckBox)sender).Checked == true)
+ var chk = sender as CheckBox;
+ string name = chk.Name;
+ if (chk.Checked == true)
{
switch (name)
{
case "checkBox1":
- ((CheckBox)sender).InvokeText("회의간행물o");
+ chk.InvokeText("회의간행물o");
break;
case "checkBox2":
- ((CheckBox)sender).InvokeText("기념논문집o");
+ chk.InvokeText("기념논문집o");
break;
case "checkBox4":
- ((CheckBox)sender).InvokeText("색인o");
+ chk.InvokeText("색인o");
break;
}
}
- else if (((CheckBox)sender).Checked == false)
+ else if (chk.Checked == false)
{
switch (name)
{
case "checkBox1":
- ((CheckBox)sender).InvokeText("회의간행물x");
+ chk.InvokeText("회의간행물x");
break;
case "checkBox2":
- ((CheckBox)sender).InvokeText("기념논문집x");
+ chk.InvokeText("기념논문집x");
break;
case "checkBox4":
- ((CheckBox)sender).InvokeText("색인x");
+ chk.InvokeText("색인x");
break;
}
}
switch (name)
{
- case "checkBox1":
- Publication(checkBox1.Checked, 29);
+ case "checkBox1": //회의간행물
+ Publication_008(chk.Checked, 29);
break;
- case "checkBox2":
- Publication(checkBox2.Checked, 30);
+ case "checkBox2": //기념논문집
+ Publication_008(chk.Checked, 30);
break;
- case "checkBox4":
- Publication(checkBox4.Checked, 31);
+ case "checkBox4": //색인
+ Publication_008(chk.Checked, 31);
break;
}
}
- void Publication(bool check, int idx)
+ void Publication_008(bool check, int idx)
{
if (text008.Text == "") { return; }
char[] ArrayChar = text008.Text.ToCharArray();
if (check == false) { ArrayChar[idx] = '0'; }
else if (check == true) { ArrayChar[idx] = '1'; }
text008.Text = new string(ArrayChar);
- Apply_Main_marc();
+ Apply_Main_marc_008();
}
///
/// 008text가 메인 텍스트박스에 적용됨.
///
- private void Apply_Main_marc()
+ private void Apply_Main_marc_008()
{
string text = text008.Text;
richTextBox1.Text = richTextBox1.Text.Replace(data008, text);
@@ -1164,17 +1074,13 @@ namespace ExcelTest
private void pictureBox1_DoubleClick(object sender, EventArgs e)
{
Zoom_Picture zp = new Zoom_Picture();
+ var CurrentURL = pictureBox1.Tag.ToString();
zp.url = pictureBox1.ImageLocation ?? CurrentURL;
- zp.ISBN = CurrentISBN13;
+ zp.ISBN = Param.ISBN13;
zp.Show();
}
- public event EventHandler FillBlankClicked;
-
- public event EventHandler PrevButton;
- public event EventHandler NextButton;
-
private void FillTextBox_KeyDown(object sender, KeyEventArgs e)
{
TextBox tb = sender as TextBox;
diff --git a/unimarc/unimarc/마크/Marc_Plan_Sub_MarcEdit2.Designer.cs b/unimarc/unimarc/마크/Marc_Plan_Sub_MarcEdit2.Designer.cs
index d33cdc3..30af000 100644
--- a/unimarc/unimarc/마크/Marc_Plan_Sub_MarcEdit2.Designer.cs
+++ b/unimarc/unimarc/마크/Marc_Plan_Sub_MarcEdit2.Designer.cs
@@ -35,14 +35,6 @@ namespace UniMarc.마크
// marcEditorControl1
//
this.marcEditorControl1.BackColor = System.Drawing.Color.Gray;
- this.marcEditorControl1.CurrentDBMarc = null;
- this.marcEditorControl1.CurrentGrade = null;
- this.marcEditorControl1.CurrentISBN13 = null;
- this.marcEditorControl1.CurrentListIdx = null;
- this.marcEditorControl1.CurrentMarcIdx = null;
- this.marcEditorControl1.CurrentSaveDate = null;
- this.marcEditorControl1.CurrentURL = null;
- this.marcEditorControl1.CurrentUser = null;
this.marcEditorControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.marcEditorControl1.Font = new System.Drawing.Font("돋움", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.marcEditorControl1.Location = new System.Drawing.Point(0, 0);