diff --git a/unimarc/.vs/unimarc/FileContentIndex/18e4f71a-8b4a-4f8f-a0d5-f1117ee58e69.vsidx b/unimarc/.vs/unimarc/FileContentIndex/18e4f71a-8b4a-4f8f-a0d5-f1117ee58e69.vsidx
deleted file mode 100644
index 469de44..0000000
Binary files a/unimarc/.vs/unimarc/FileContentIndex/18e4f71a-8b4a-4f8f-a0d5-f1117ee58e69.vsidx and /dev/null differ
diff --git a/unimarc/.vs/unimarc/FileContentIndex/23a9657d-ef8d-4c67-890c-bf23fc529ef4.vsidx b/unimarc/.vs/unimarc/FileContentIndex/23a9657d-ef8d-4c67-890c-bf23fc529ef4.vsidx
deleted file mode 100644
index 279e4a0..0000000
Binary files a/unimarc/.vs/unimarc/FileContentIndex/23a9657d-ef8d-4c67-890c-bf23fc529ef4.vsidx and /dev/null differ
diff --git a/unimarc/.vs/unimarc/FileContentIndex/588734e5-2dd3-478a-a657-582bad511001.vsidx b/unimarc/.vs/unimarc/FileContentIndex/588734e5-2dd3-478a-a657-582bad511001.vsidx
new file mode 100644
index 0000000..5b2a4b0
Binary files /dev/null and b/unimarc/.vs/unimarc/FileContentIndex/588734e5-2dd3-478a-a657-582bad511001.vsidx differ
diff --git a/unimarc/.vs/unimarc/FileContentIndex/9486b2eb-3f19-4a0d-a1a7-8592882c0895.vsidx b/unimarc/.vs/unimarc/FileContentIndex/9486b2eb-3f19-4a0d-a1a7-8592882c0895.vsidx
new file mode 100644
index 0000000..89486af
Binary files /dev/null and b/unimarc/.vs/unimarc/FileContentIndex/9486b2eb-3f19-4a0d-a1a7-8592882c0895.vsidx differ
diff --git a/unimarc/.vs/unimarc/FileContentIndex/91acc93b-9c3c-4509-97ab-69c4e83ee5fe.vsidx b/unimarc/.vs/unimarc/FileContentIndex/bf6ef1e1-1f8e-42ac-9f4b-90a4b3f3282b.vsidx
similarity index 70%
rename from unimarc/.vs/unimarc/FileContentIndex/91acc93b-9c3c-4509-97ab-69c4e83ee5fe.vsidx
rename to unimarc/.vs/unimarc/FileContentIndex/bf6ef1e1-1f8e-42ac-9f4b-90a4b3f3282b.vsidx
index ade0ab3..8506a72 100644
Binary files a/unimarc/.vs/unimarc/FileContentIndex/91acc93b-9c3c-4509-97ab-69c4e83ee5fe.vsidx and b/unimarc/.vs/unimarc/FileContentIndex/bf6ef1e1-1f8e-42ac-9f4b-90a4b3f3282b.vsidx differ
diff --git a/unimarc/.vs/unimarc/FileContentIndex/3e69dca5-3d97-41eb-825f-9f9fb9f65f60.vsidx b/unimarc/.vs/unimarc/FileContentIndex/d6574f49-a2e3-4823-80e4-a3bcfdd7b101.vsidx
similarity index 100%
rename from unimarc/.vs/unimarc/FileContentIndex/3e69dca5-3d97-41eb-825f-9f9fb9f65f60.vsidx
rename to unimarc/.vs/unimarc/FileContentIndex/d6574f49-a2e3-4823-80e4-a3bcfdd7b101.vsidx
diff --git a/unimarc/.vs/unimarc/v17/.suo b/unimarc/.vs/unimarc/v17/.suo
index 998577c..7c9cb04 100644
Binary files a/unimarc/.vs/unimarc/v17/.suo and b/unimarc/.vs/unimarc/v17/.suo differ
diff --git a/unimarc/unimarc/Skill.cs b/unimarc/unimarc/Skill.cs
index e8c9513..ecf6709 100644
--- a/unimarc/unimarc/Skill.cs
+++ b/unimarc/unimarc/Skill.cs
@@ -1578,15 +1578,18 @@ namespace WindowsFormsApp1
string[] str_num = num.ToArray();
for (int a = 0; a < str_num.Length; a++)
{
- if (count[a].Length == 3) { count[a] = count[a].Insert(0, "0"); }
- else if (count[a].Length == 2) { count[a] = count[a].Insert(0, "00"); }
- else if (count[a].Length == 1) { count[a] = count[a].Insert(0, "000"); }
+ count[a] = count[a].PadLeft(4, '0');
+ // if (count[a].Length == 3) { count[a] = count[a].Insert(0, "0"); }
+ // else if (count[a].Length == 2) { count[a] = count[a].Insert(0, "00"); }
+ // else if (count[a].Length == 1) { count[a] = count[a].Insert(0, "000"); }
- if (total[a].Length == 4) { total[a] = total[a].Insert(0, "0"); }
- else if (total[a].Length == 3) { total[a] = total[a].Insert(0, "00"); }
- else if (total[a].Length == 2) { total[a] = total[a].Insert(0, "000"); }
- else if (total[a].Length == 1) { total[a] = total[a].Insert(0, "0000"); }
- 디렉토리 += str_num[a] + count[a] + total[a] + "\n";
+ total[a] = total[a].PadLeft(5, '0');
+ // if (total[a].Length == 4) { total[a] = total[a].Insert(0, "0"); }
+ // else if (total[a].Length == 3) { total[a] = total[a].Insert(0, "00"); }
+ // else if (total[a].Length == 2) { total[a] = total[a].Insert(0, "000"); }
+ // else if (total[a].Length == 1) { total[a] = total[a].Insert(0, "0000"); }
+ // 디렉토리 += str_num[a] + count[a] + total[a] + "\n";
+ 디렉토리 += str_num[a] + count[a] + total[a];
}
string[] 리더부 = { "00000","n", "a", "m", " ",
@@ -1594,7 +1597,7 @@ namespace WindowsFormsApp1
"k", " ", "4", "5", "0",
"0" };
디렉토리 += "";
- 디렉토리 = 디렉토리.Replace("\n", "");
+ // 디렉토리 = 디렉토리.Replace("\n", "");
가변길이 += "";
가변길이 = 가변길이.Replace("\n", "");
diff --git a/unimarc/unimarc/bin/Debug/UniMarc.exe b/unimarc/unimarc/bin/Debug/UniMarc.exe
index 0f21b79..4c07773 100644
Binary files a/unimarc/unimarc/bin/Debug/UniMarc.exe and b/unimarc/unimarc/bin/Debug/UniMarc.exe differ
diff --git a/unimarc/unimarc/bin/Debug/UniMarc.pdb b/unimarc/unimarc/bin/Debug/UniMarc.pdb
index 7015149..5905068 100644
Binary files a/unimarc/unimarc/bin/Debug/UniMarc.pdb and b/unimarc/unimarc/bin/Debug/UniMarc.pdb differ
diff --git a/unimarc/unimarc/bin/Debug/ko/UniMarc.resources.dll b/unimarc/unimarc/bin/Debug/ko/UniMarc.resources.dll
index 0d22586..b6b9a66 100644
Binary files a/unimarc/unimarc/bin/Debug/ko/UniMarc.resources.dll and b/unimarc/unimarc/bin/Debug/ko/UniMarc.resources.dll differ
diff --git a/unimarc/unimarc/obj/Debug/Interop.SHDocVw.dll b/unimarc/unimarc/obj/Debug/Interop.SHDocVw.dll
index f58fee8..17feb51 100644
Binary files a/unimarc/unimarc/obj/Debug/Interop.SHDocVw.dll and b/unimarc/unimarc/obj/Debug/Interop.SHDocVw.dll differ
diff --git a/unimarc/unimarc/obj/Debug/TempPE/Connected Services.BaroService_API.Reference.cs.dll b/unimarc/unimarc/obj/Debug/TempPE/Connected Services.BaroService_API.Reference.cs.dll
index 4efbe96..4888b7c 100644
Binary files a/unimarc/unimarc/obj/Debug/TempPE/Connected Services.BaroService_API.Reference.cs.dll and b/unimarc/unimarc/obj/Debug/TempPE/Connected Services.BaroService_API.Reference.cs.dll differ
diff --git a/unimarc/unimarc/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll b/unimarc/unimarc/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll
index 13003c4..9e7c3e6 100644
Binary files a/unimarc/unimarc/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll and b/unimarc/unimarc/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll differ
diff --git a/unimarc/unimarc/obj/Debug/UniMarc.csproj.GenerateResource.cache b/unimarc/unimarc/obj/Debug/UniMarc.csproj.GenerateResource.cache
index 0f04631..3537805 100644
Binary files a/unimarc/unimarc/obj/Debug/UniMarc.csproj.GenerateResource.cache and b/unimarc/unimarc/obj/Debug/UniMarc.csproj.GenerateResource.cache differ
diff --git a/unimarc/unimarc/obj/Debug/UniMarc.csproj.ResolveComReference.cache b/unimarc/unimarc/obj/Debug/UniMarc.csproj.ResolveComReference.cache
index cca39ff..50b86a7 100644
Binary files a/unimarc/unimarc/obj/Debug/UniMarc.csproj.ResolveComReference.cache and b/unimarc/unimarc/obj/Debug/UniMarc.csproj.ResolveComReference.cache differ
diff --git a/unimarc/unimarc/obj/Debug/UniMarc.exe b/unimarc/unimarc/obj/Debug/UniMarc.exe
index 0f21b79..4c07773 100644
Binary files a/unimarc/unimarc/obj/Debug/UniMarc.exe and b/unimarc/unimarc/obj/Debug/UniMarc.exe differ
diff --git a/unimarc/unimarc/obj/Debug/UniMarc.pdb b/unimarc/unimarc/obj/Debug/UniMarc.pdb
index 7015149..5905068 100644
Binary files a/unimarc/unimarc/obj/Debug/UniMarc.pdb and b/unimarc/unimarc/obj/Debug/UniMarc.pdb differ
diff --git a/unimarc/unimarc/obj/Debug/ko/UniMarc.resources.dll b/unimarc/unimarc/obj/Debug/ko/UniMarc.resources.dll
index 0d22586..b6b9a66 100644
Binary files a/unimarc/unimarc/obj/Debug/ko/UniMarc.resources.dll and b/unimarc/unimarc/obj/Debug/ko/UniMarc.resources.dll differ
diff --git a/unimarc/unimarc/마크/AddMarc.cs b/unimarc/unimarc/마크/AddMarc.cs
index 2ec4878..b5ee4dd 100644
--- a/unimarc/unimarc/마크/AddMarc.cs
+++ b/unimarc/unimarc/마크/AddMarc.cs
@@ -545,6 +545,7 @@ namespace UniMarc.마크
{
count = a;
eight_chk = true;
+ isEight = true;
}
else if (eight > 008 && !eight_chk)
{
diff --git a/unimarc/unimarc/마크/Check_Copy_Sub_List.cs b/unimarc/unimarc/마크/Check_Copy_Sub_List.cs
index a14a425..2f4dbba 100644
--- a/unimarc/unimarc/마크/Check_Copy_Sub_List.cs
+++ b/unimarc/unimarc/마크/Check_Copy_Sub_List.cs
@@ -80,6 +80,7 @@ namespace UniMarc.마크
string[] ary = Qurey.Split('|');
string[] grid = { "", "" };
+
for (int a = 0; a < ary.Length; a++)
{
diff --git a/unimarc/unimarc/마크/Check_copy.Designer.cs b/unimarc/unimarc/마크/Check_copy.Designer.cs
index 9f094b2..3a7ab88 100644
--- a/unimarc/unimarc/마크/Check_copy.Designer.cs
+++ b/unimarc/unimarc/마크/Check_copy.Designer.cs
@@ -41,6 +41,8 @@
this.tb_SearchTarget = new System.Windows.Forms.TextBox();
this.label1 = new System.Windows.Forms.Label();
this.panel2 = new System.Windows.Forms.Panel();
+ this.lbl_PW = new System.Windows.Forms.Label();
+ this.lbl_ID = new System.Windows.Forms.Label();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
this.book_name = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.book_comp = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -56,8 +58,6 @@
this.btn_OpenMemo = new System.Windows.Forms.Button();
this.chk_spChar = new System.Windows.Forms.CheckBox();
this.panel5 = new System.Windows.Forms.Panel();
- this.lbl_ID = new System.Windows.Forms.Label();
- this.lbl_PW = new System.Windows.Forms.Label();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.SearchCount)).BeginInit();
this.panel2.SuspendLayout();
@@ -200,6 +200,24 @@
this.panel2.Size = new System.Drawing.Size(635, 34);
this.panel2.TabIndex = 0;
//
+ // lbl_PW
+ //
+ this.lbl_PW.AutoSize = true;
+ this.lbl_PW.Location = new System.Drawing.Point(379, 10);
+ this.lbl_PW.Name = "lbl_PW";
+ this.lbl_PW.Size = new System.Drawing.Size(9, 12);
+ this.lbl_PW.TabIndex = 3;
+ this.lbl_PW.Text = " ";
+ //
+ // lbl_ID
+ //
+ this.lbl_ID.AutoSize = true;
+ this.lbl_ID.Location = new System.Drawing.Point(316, 10);
+ this.lbl_ID.Name = "lbl_ID";
+ this.lbl_ID.Size = new System.Drawing.Size(9, 12);
+ this.lbl_ID.TabIndex = 3;
+ this.lbl_ID.Text = " ";
+ //
// dataGridView1
//
this.dataGridView1.AllowUserToDeleteRows = false;
@@ -368,24 +386,6 @@
this.panel5.Size = new System.Drawing.Size(673, 738);
this.panel5.TabIndex = 4;
//
- // lbl_ID
- //
- this.lbl_ID.AutoSize = true;
- this.lbl_ID.Location = new System.Drawing.Point(316, 10);
- this.lbl_ID.Name = "lbl_ID";
- this.lbl_ID.Size = new System.Drawing.Size(9, 12);
- this.lbl_ID.TabIndex = 3;
- this.lbl_ID.Text = " ";
- //
- // lbl_PW
- //
- this.lbl_PW.AutoSize = true;
- this.lbl_PW.Location = new System.Drawing.Point(379, 10);
- this.lbl_PW.Name = "lbl_PW";
- this.lbl_PW.Size = new System.Drawing.Size(9, 12);
- this.lbl_PW.TabIndex = 3;
- this.lbl_PW.Text = " ";
- //
// Check_copy
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
@@ -395,6 +395,7 @@
this.Controls.Add(this.panel3);
this.Name = "Check_copy";
this.Text = "복본조사";
+ this.Load += new System.EventHandler(this.Check_copy_Load);
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.SearchCount)).EndInit();
diff --git a/unimarc/unimarc/마크/Check_copy.cs b/unimarc/unimarc/마크/Check_copy.cs
index d03df8f..e5c2d3c 100644
--- a/unimarc/unimarc/마크/Check_copy.cs
+++ b/unimarc/unimarc/마크/Check_copy.cs
@@ -175,6 +175,9 @@ namespace WindowsFormsApp1.Mac
string BookCount = "";
string text = dataGridView1.Rows[RowCount].Cells["book_name"].Value.ToString();
+ if (text == "----- 빈칸으로 놔주세요 -----")
+ return;
+
// 광주 시립 (무등, 사직, 산수)
if (URL.IndexOf("citylib.gwangju.kr/main/bookSearch") > -1)
{
@@ -308,6 +311,15 @@ namespace WindowsFormsApp1.Mac
BookCount = 전북교육청입력(text);
}
+ // 익산통합도서관
+ else if (URL.IndexOf("lib.iksan.go.kr") > -1)
+ {
+ if (URL.IndexOf("search_txt_add") > -1)
+ BookCount = 익산통합도서관결과();
+
+ 익산통합도서관입력(text);
+ }
+
int tmp = RowCount - 1;
if (tmp < 0) tmp = 0;
@@ -1032,6 +1044,72 @@ namespace WindowsFormsApp1.Mac
}
#endregion
+ #region 익산시 통합도서관
+
+ bool isIksanClick = false;
+ void 익산통합도서관입력(string text)
+ {
+
+ foreach (HtmlElement input in webBrowser1.Document.GetElementsByTagName("input"))
+ {
+ if (!isIksanClick)
+ {
+ if (input.Id == null)
+ continue;
+ if (input.Id.IndexOf("all_lib_simple") > -1)
+ {
+ input.InvokeMember("click");
+ // input.InvokeMember("submit");
+ }
+ if (input.Id.IndexOf(Code) > -1)
+ {
+ input.InvokeMember("click");
+ // input.InvokeMember("submit");
+ isIksanClick = true;
+ break;
+ }
+ btn_Close.Text = isIksanClick.ToString();
+ }
+ }
+
+ foreach (HtmlElement input in webBrowser1.Document.GetElementsByTagName("input"))
+ {
+ if (input.Id !=null && input.Id == "search_txt")
+ {
+ input.SetAttribute("value", text);
+ break;
+ }
+ }
+
+ //webBrowser1.Document.GetElementById("search_txt").SetAttribute("value", text);
+
+ webBrowser1.Document.GetElementById("submit_simple").InvokeMember("click");
+ }
+
+
+
+ string 익산통합도서관결과()
+ {
+ string result = "";
+
+ foreach (HtmlElement strong in webBrowser1.Document.GetElementsByTagName("strong"))
+ {
+ if (strong.GetAttribute("className").IndexOf("word") > -1)
+ {
+ string innerText = strong.InnerText;
+ if (Regex.IsMatch(innerText, @"^[0-9]+$"))
+ {
+ result = strong.InnerText;
+ break;
+ }
+ }
+ }
+
+ return result;
+ }
+
+ #endregion
+
#endregion
public string CopyCount(string Text)
@@ -1298,5 +1376,11 @@ namespace WindowsFormsApp1.Mac
{
this.Close();
}
+
+ private void Check_copy_Load(object sender, EventArgs e)
+ {
+ string[] Grid = { "빈칸", "----- 빈칸으로 놔주세요 -----", "" };
+ dataGridView1.Rows.Add(Grid);
+ }
}
}
diff --git a/unimarc/unimarc/마크/DLS_Copy.cs b/unimarc/unimarc/마크/DLS_Copy.cs
index d754748..57c6aee 100644
--- a/unimarc/unimarc/마크/DLS_Copy.cs
+++ b/unimarc/unimarc/마크/DLS_Copy.cs
@@ -147,9 +147,7 @@ namespace WindowsFormsApp1.Mac
MessageBox.Show("도서명이 입력되지않았습니다!");
return;
}
-
- bool isISBN = rBtn_ISBN.Checked;
- if (!SearchCopy(isISBN))
+ if (!SearchCopy(rBtn_ISBN.Checked))
return;
MessageBox.Show("완료되었습니다.");
diff --git a/unimarc/unimarc/마크/Marc.cs b/unimarc/unimarc/마크/Marc.cs
index bdd4deb..59914df 100644
--- a/unimarc/unimarc/마크/Marc.cs
+++ b/unimarc/unimarc/마크/Marc.cs
@@ -3326,6 +3326,7 @@ namespace ExcelTest
{
Skill_Grid sg = new Skill_Grid();
sg.Excel_to_DataGridView(sender, e);
+ sg.DataGrid_to_Delete(sender, e);
}
private void btn_FilterReturn_Click(object sender, EventArgs e)
diff --git a/unimarc/unimarc/마크/MarcCopySelect.Designer.cs b/unimarc/unimarc/마크/MarcCopySelect.Designer.cs
index 75b2103..242de79 100644
--- a/unimarc/unimarc/마크/MarcCopySelect.Designer.cs
+++ b/unimarc/unimarc/마크/MarcCopySelect.Designer.cs
@@ -29,16 +29,8 @@ namespace UniMarc.마크
///
private void InitializeComponent()
{
- System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
- this.idx = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.compidx = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.isbn = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.user = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.date = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.grade = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.tag008 = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.marc = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.panel1 = new System.Windows.Forms.Panel();
this.btn_ShowDeleteMarc = new System.Windows.Forms.Button();
this.btn_Close = new System.Windows.Forms.Button();
@@ -46,6 +38,17 @@ namespace UniMarc.마크
this.panel2 = new System.Windows.Forms.Panel();
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.panel3 = new System.Windows.Forms.Panel();
+ this.idx = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.compidx = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.isbn = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.Title = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.Author = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.Comp = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.user = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.date = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.grade = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.tag008 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.marc = new System.Windows.Forms.DataGridViewTextBoxColumn();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
this.panel1.SuspendLayout();
this.panel2.SuspendLayout();
@@ -57,19 +60,22 @@ namespace UniMarc.마크
this.dataGridView1.AllowUserToAddRows = false;
this.dataGridView1.AllowUserToDeleteRows = false;
this.dataGridView1.BorderStyle = System.Windows.Forms.BorderStyle.None;
- dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
- dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control;
- dataGridViewCellStyle1.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
- dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
- dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
- dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
- this.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
+ dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+ dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
+ dataGridViewCellStyle2.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
+ dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+ dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+ dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+ this.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.idx,
this.compidx,
this.isbn,
+ this.Title,
+ this.Author,
+ this.Comp,
this.user,
this.date,
this.grade,
@@ -80,12 +86,84 @@ namespace UniMarc.마크
this.dataGridView1.Name = "dataGridView1";
this.dataGridView1.ReadOnly = true;
this.dataGridView1.RowTemplate.Height = 23;
- this.dataGridView1.Size = new System.Drawing.Size(809, 106);
+ this.dataGridView1.Size = new System.Drawing.Size(1109, 106);
this.dataGridView1.TabIndex = 0;
this.dataGridView1.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView1_CellClick);
this.dataGridView1.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView1_CellDoubleClick);
this.dataGridView1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.dataGridView1_KeyDown);
//
+ // panel1
+ //
+ this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+ this.panel1.Controls.Add(this.btn_ShowDeleteMarc);
+ this.panel1.Controls.Add(this.btn_Close);
+ this.panel1.Controls.Add(this.btn_Delete);
+ this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
+ this.panel1.Location = new System.Drawing.Point(0, 0);
+ this.panel1.Name = "panel1";
+ this.panel1.Size = new System.Drawing.Size(1109, 33);
+ this.panel1.TabIndex = 1;
+ //
+ // btn_ShowDeleteMarc
+ //
+ this.btn_ShowDeleteMarc.Location = new System.Drawing.Point(844, 4);
+ this.btn_ShowDeleteMarc.Name = "btn_ShowDeleteMarc";
+ this.btn_ShowDeleteMarc.Size = new System.Drawing.Size(93, 23);
+ this.btn_ShowDeleteMarc.TabIndex = 1;
+ this.btn_ShowDeleteMarc.Text = "삭제 마크 확인";
+ this.btn_ShowDeleteMarc.UseVisualStyleBackColor = true;
+ this.btn_ShowDeleteMarc.Click += new System.EventHandler(this.btn_ShowDeleteMarc_Click);
+ //
+ // btn_Close
+ //
+ this.btn_Close.Location = new System.Drawing.Point(1021, 4);
+ this.btn_Close.Name = "btn_Close";
+ this.btn_Close.Size = new System.Drawing.Size(75, 23);
+ this.btn_Close.TabIndex = 0;
+ this.btn_Close.Text = "닫 기";
+ this.btn_Close.UseVisualStyleBackColor = true;
+ this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
+ //
+ // btn_Delete
+ //
+ this.btn_Delete.Location = new System.Drawing.Point(943, 4);
+ this.btn_Delete.Name = "btn_Delete";
+ this.btn_Delete.Size = new System.Drawing.Size(75, 23);
+ this.btn_Delete.TabIndex = 0;
+ this.btn_Delete.Text = "마크 삭제";
+ this.btn_Delete.UseVisualStyleBackColor = true;
+ this.btn_Delete.Click += new System.EventHandler(this.btn_Delete_Click);
+ //
+ // panel2
+ //
+ this.panel2.Controls.Add(this.dataGridView1);
+ this.panel2.Dock = System.Windows.Forms.DockStyle.Top;
+ this.panel2.Location = new System.Drawing.Point(0, 33);
+ this.panel2.Name = "panel2";
+ this.panel2.Size = new System.Drawing.Size(1109, 106);
+ this.panel2.TabIndex = 2;
+ //
+ // richTextBox1
+ //
+ this.richTextBox1.BackColor = System.Drawing.Color.LightGray;
+ this.richTextBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.richTextBox1.Font = new System.Drawing.Font("굴림체", 11.25F);
+ this.richTextBox1.Location = new System.Drawing.Point(0, 0);
+ this.richTextBox1.Name = "richTextBox1";
+ this.richTextBox1.Size = new System.Drawing.Size(1109, 540);
+ this.richTextBox1.TabIndex = 0;
+ this.richTextBox1.Text = "";
+ //
+ // panel3
+ //
+ this.panel3.Controls.Add(this.richTextBox1);
+ this.panel3.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.panel3.Location = new System.Drawing.Point(0, 139);
+ this.panel3.Name = "panel3";
+ this.panel3.Size = new System.Drawing.Size(1109, 540);
+ this.panel3.TabIndex = 3;
+ //
// idx
//
this.idx.HeaderText = "idx";
@@ -108,6 +186,24 @@ namespace UniMarc.마크
this.isbn.Name = "isbn";
this.isbn.ReadOnly = true;
//
+ // Title
+ //
+ this.Title.HeaderText = "서명";
+ this.Title.Name = "Title";
+ this.Title.ReadOnly = true;
+ //
+ // Author
+ //
+ this.Author.HeaderText = "저자";
+ this.Author.Name = "Author";
+ this.Author.ReadOnly = true;
+ //
+ // Comp
+ //
+ this.Comp.HeaderText = "출판사";
+ this.Comp.Name = "Comp";
+ this.Comp.ReadOnly = true;
+ //
// user
//
this.user.HeaderText = "수정자";
@@ -143,83 +239,11 @@ namespace UniMarc.마크
this.marc.ReadOnly = true;
this.marc.Width = 200;
//
- // panel1
- //
- this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.panel1.Controls.Add(this.btn_ShowDeleteMarc);
- this.panel1.Controls.Add(this.btn_Close);
- this.panel1.Controls.Add(this.btn_Delete);
- this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
- this.panel1.Location = new System.Drawing.Point(0, 0);
- this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(809, 33);
- this.panel1.TabIndex = 1;
- //
- // btn_ShowDeleteMarc
- //
- this.btn_ShowDeleteMarc.Location = new System.Drawing.Point(462, 4);
- this.btn_ShowDeleteMarc.Name = "btn_ShowDeleteMarc";
- this.btn_ShowDeleteMarc.Size = new System.Drawing.Size(93, 23);
- this.btn_ShowDeleteMarc.TabIndex = 1;
- this.btn_ShowDeleteMarc.Text = "삭제 마크 확인";
- this.btn_ShowDeleteMarc.UseVisualStyleBackColor = true;
- this.btn_ShowDeleteMarc.Click += new System.EventHandler(this.btn_ShowDeleteMarc_Click);
- //
- // btn_Close
- //
- this.btn_Close.Location = new System.Drawing.Point(639, 4);
- this.btn_Close.Name = "btn_Close";
- this.btn_Close.Size = new System.Drawing.Size(75, 23);
- this.btn_Close.TabIndex = 0;
- this.btn_Close.Text = "닫 기";
- this.btn_Close.UseVisualStyleBackColor = true;
- this.btn_Close.Click += new System.EventHandler(this.btn_Close_Click);
- //
- // btn_Delete
- //
- this.btn_Delete.Location = new System.Drawing.Point(561, 4);
- this.btn_Delete.Name = "btn_Delete";
- this.btn_Delete.Size = new System.Drawing.Size(75, 23);
- this.btn_Delete.TabIndex = 0;
- this.btn_Delete.Text = "마크 삭제";
- this.btn_Delete.UseVisualStyleBackColor = true;
- this.btn_Delete.Click += new System.EventHandler(this.btn_Delete_Click);
- //
- // panel2
- //
- this.panel2.Controls.Add(this.dataGridView1);
- this.panel2.Dock = System.Windows.Forms.DockStyle.Top;
- this.panel2.Location = new System.Drawing.Point(0, 33);
- this.panel2.Name = "panel2";
- this.panel2.Size = new System.Drawing.Size(809, 106);
- this.panel2.TabIndex = 2;
- //
- // richTextBox1
- //
- this.richTextBox1.BackColor = System.Drawing.Color.LightGray;
- this.richTextBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.richTextBox1.Font = new System.Drawing.Font("굴림체", 11.25F);
- this.richTextBox1.Location = new System.Drawing.Point(0, 0);
- this.richTextBox1.Name = "richTextBox1";
- this.richTextBox1.Size = new System.Drawing.Size(809, 540);
- this.richTextBox1.TabIndex = 0;
- this.richTextBox1.Text = "";
- //
- // panel3
- //
- this.panel3.Controls.Add(this.richTextBox1);
- this.panel3.Dock = System.Windows.Forms.DockStyle.Fill;
- this.panel3.Location = new System.Drawing.Point(0, 139);
- this.panel3.Name = "panel3";
- this.panel3.Size = new System.Drawing.Size(809, 540);
- this.panel3.TabIndex = 3;
- //
// MarcCopySelect
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
- this.ClientSize = new System.Drawing.Size(809, 679);
+ this.ClientSize = new System.Drawing.Size(1109, 679);
this.Controls.Add(this.panel3);
this.Controls.Add(this.panel2);
this.Controls.Add(this.panel1);
@@ -246,6 +270,9 @@ namespace UniMarc.마크
private System.Windows.Forms.DataGridViewTextBoxColumn idx;
private System.Windows.Forms.DataGridViewTextBoxColumn compidx;
private System.Windows.Forms.DataGridViewTextBoxColumn isbn;
+ private System.Windows.Forms.DataGridViewTextBoxColumn Title;
+ private System.Windows.Forms.DataGridViewTextBoxColumn Author;
+ private System.Windows.Forms.DataGridViewTextBoxColumn Comp;
private System.Windows.Forms.DataGridViewTextBoxColumn user;
private System.Windows.Forms.DataGridViewTextBoxColumn date;
private System.Windows.Forms.DataGridViewTextBoxColumn grade;
diff --git a/unimarc/unimarc/마크/MarcCopySelect.cs b/unimarc/unimarc/마크/MarcCopySelect.cs
index d29468b..8d30fe0 100644
--- a/unimarc/unimarc/마크/MarcCopySelect.cs
+++ b/unimarc/unimarc/마크/MarcCopySelect.cs
@@ -39,13 +39,15 @@ namespace UniMarc.마크
public void Init(string search_col, string search_Target)
{
db.DBcon();
- // 0 1 2 3 4 5
- string Area = "`idx`, `compidx`, `ISBN`, `user`, `date`, `grade`, `008tag`, " +
- // 6 7 8 9 10 11
+ // 0 1 2 3 4
+ string Area = "`idx`, `compidx`, `ISBN`, `서명`, `저자`, " +
+ // 5 6 7 8 9
+ "`출판사`, `user`, `date`, `grade`, `008tag`, " +
+ // 10 11 12 13 14 15
"`marc`, `marc_chk`, `marc1`, `marc_chk1`, `marc2`, `marc_chk2`";
string Table = "Marc";
- string Query = string.Format("SELECT {0} FROM {1} WHERE `{2}` = \"{3}\";", Area, Table, search_col, search_Target);
+ string Query = string.Format("SELECT {0} FROM {1} WHERE `{2}` like \"%{3}%\";", Area, Table, search_col, search_Target);
string Result = db.DB_Send_CMD_Search(Query);
string[] GridData = Result.Split('|');
@@ -54,25 +56,31 @@ namespace UniMarc.마크
private void InputGrid(string[] Value)
{
- string[] Grid = { "", "", "", "", "", "", "", "" };
+ string[] Grid = {
+ "", "", "", "", "",
+ "", "", "", "", "",
+ "" };
string[] MarcData = { "", "", "", "", "", "" };
for (int a = 0; a < Value.Length; a++)
{
- if (a % 13 == 0) Grid[0] = Value[a]; // idx
- if (a % 13 == 1) Grid[1] = Value[a]; // compidx
- if (a % 13 == 2) Grid[2] = Value[a]; // isbn
- if (a % 13 == 3) Grid[3] = Value[a]; // user
- if (a % 13 == 4) Grid[4] = Value[a]; // date
- if (a % 13 == 5) Grid[5] = ChangeGrade(Value[a]); // grade
- if (a % 13 == 6) Grid[6] = Value[a]; // 008tag
- if (a % 13 == 7) MarcData[0] = Value[a]; // marc
- if (a % 13 == 8) MarcData[1] = Value[a]; // marc_chk
- if (a % 13 == 9) MarcData[2] = Value[a]; // marc1
- if (a % 13 == 10) MarcData[3] = Value[a]; // marc_chk1
- if (a % 13 == 11) MarcData[4] = Value[a]; // marc2
- if (a % 13 == 12) { MarcData[5] = Value[a]; // marc_chk2
- Grid[7] = RealMarc(MarcData);
+ if (a % 16 == 0) Grid[0] = Value[a]; // idx
+ if (a % 16 == 1) Grid[1] = Value[a]; // compidx
+ if (a % 16 == 2) Grid[2] = Value[a]; // isbn
+ if (a % 16 == 3) Grid[3] = Value[a]; // 서명
+ if (a % 16 == 4) Grid[4] = Value[a]; // 저자
+ if (a % 16 == 5) Grid[5] = Value[a]; // 출판사
+ if (a % 16 == 6) Grid[6] = Value[a]; // user
+ if (a % 16 == 7) Grid[7] = Value[a]; // date
+ if (a % 16 == 8) Grid[8] = ChangeGrade(Value[a]); // grade
+ if (a % 16 == 9) Grid[9] = Value[a]; // 008tag
+ if (a % 16 == 10) MarcData[0] = Value[a]; // marc
+ if (a % 16 == 11) MarcData[1] = Value[a]; // marc_chk
+ if (a % 16 == 12) MarcData[2] = Value[a]; // marc1
+ if (a % 16 == 13) MarcData[3] = Value[a]; // marc_chk1
+ if (a % 16 == 14) MarcData[4] = Value[a]; // marc2
+ if (a % 16 == 15) { MarcData[5] = Value[a]; // marc_chk2
+ Grid[10] = RealMarc(MarcData);
dataGridView1.Rows.Add(Grid);
}
}
diff --git a/unimarc/unimarc/마크/MarcCopySelect.resx b/unimarc/unimarc/마크/MarcCopySelect.resx
index 412f95d..a04e178 100644
--- a/unimarc/unimarc/마크/MarcCopySelect.resx
+++ b/unimarc/unimarc/마크/MarcCopySelect.resx
@@ -126,6 +126,15 @@
True
+
+ True
+
+
+ True
+
+
+ True
+
True
diff --git a/unimarc/unimarc/마크/Marc_FillBlank.Designer.cs b/unimarc/unimarc/마크/Marc_FillBlank.Designer.cs
index 45ee0d9..b6c2895 100644
--- a/unimarc/unimarc/마크/Marc_FillBlank.Designer.cs
+++ b/unimarc/unimarc/마크/Marc_FillBlank.Designer.cs
@@ -42,10 +42,9 @@ namespace UniMarc
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.panel4 = new System.Windows.Forms.Panel();
this.panel7 = new System.Windows.Forms.Panel();
+ this.webBrowser1 = new System.Windows.Forms.WebBrowser();
this.panel5 = new System.Windows.Forms.Panel();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
- this.panel2 = new System.Windows.Forms.Panel();
- this.webBrowser1 = new System.Windows.Forms.WebBrowser();
this.List_idx = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.ISBN13 = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.BookName = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -53,6 +52,7 @@ namespace UniMarc
this.BookComp = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Price = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.BookMarc = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.panel2 = new System.Windows.Forms.Panel();
this.panel6.SuspendLayout();
this.panel3.SuspendLayout();
this.panel4.SuspendLayout();
@@ -192,6 +192,17 @@ namespace UniMarc
this.panel7.Size = new System.Drawing.Size(425, 702);
this.panel7.TabIndex = 1;
//
+ // webBrowser1
+ //
+ this.webBrowser1.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.webBrowser1.Location = new System.Drawing.Point(0, 0);
+ this.webBrowser1.MinimumSize = new System.Drawing.Size(20, 20);
+ this.webBrowser1.Name = "webBrowser1";
+ this.webBrowser1.ScriptErrorsSuppressed = true;
+ this.webBrowser1.Size = new System.Drawing.Size(425, 702);
+ this.webBrowser1.TabIndex = 0;
+ this.webBrowser1.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(this.webBrowser1_DocumentCompleted);
+ //
// panel5
//
this.panel5.Controls.Add(this.dataGridView1);
@@ -223,28 +234,6 @@ namespace UniMarc
this.dataGridView1.TabIndex = 0;
this.dataGridView1.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView1_CellContentClick);
//
- // panel2
- //
- this.panel2.Controls.Add(this.panel4);
- this.panel2.Controls.Add(this.panel3);
- this.panel2.Controls.Add(this.panel6);
- this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
- this.panel2.Location = new System.Drawing.Point(0, 0);
- this.panel2.Name = "panel2";
- this.panel2.Size = new System.Drawing.Size(1316, 733);
- this.panel2.TabIndex = 311;
- //
- // webBrowser1
- //
- this.webBrowser1.Dock = System.Windows.Forms.DockStyle.Fill;
- this.webBrowser1.Location = new System.Drawing.Point(0, 0);
- this.webBrowser1.MinimumSize = new System.Drawing.Size(20, 20);
- this.webBrowser1.Name = "webBrowser1";
- this.webBrowser1.ScriptErrorsSuppressed = true;
- this.webBrowser1.Size = new System.Drawing.Size(425, 702);
- this.webBrowser1.TabIndex = 0;
- this.webBrowser1.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(this.webBrowser1_DocumentCompleted);
- //
// List_idx
//
this.List_idx.HeaderText = "List_idx";
@@ -293,6 +282,17 @@ namespace UniMarc
this.BookMarc.ReadOnly = true;
this.BookMarc.Visible = false;
//
+ // panel2
+ //
+ this.panel2.Controls.Add(this.panel4);
+ this.panel2.Controls.Add(this.panel3);
+ this.panel2.Controls.Add(this.panel6);
+ this.panel2.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.panel2.Location = new System.Drawing.Point(0, 0);
+ this.panel2.Name = "panel2";
+ this.panel2.Size = new System.Drawing.Size(1316, 733);
+ this.panel2.TabIndex = 311;
+ //
// Marc_FillBlank
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
diff --git a/unimarc/unimarc/마크/Marc_Macro_Sub.cs b/unimarc/unimarc/마크/Marc_Macro_Sub.cs
index e8d65d8..85203c0 100644
--- a/unimarc/unimarc/마크/Marc_Macro_Sub.cs
+++ b/unimarc/unimarc/마크/Marc_Macro_Sub.cs
@@ -80,7 +80,7 @@ namespace UniMarc.마크
/////////
// { "49", "245", "245b -> 740a로 복사" },
- // { "50", "440", "440a -> 490a, 830a로 각각 복사" },
+ // { "50", "440", "440a -> 830a로 복사" },
// { "51", "440", "440x -> 490a로 복사" },
// { "52", "440", "440n p x -> 490v [p-n-v 순서]로 변환" },
// { "53", "440", "440n p x -> 830 n p v로 변환" },
@@ -286,6 +286,10 @@ namespace UniMarc.마크
/// 245태그 매크로 적용된 내용
private string Index_245(string idx, string[] SplitContent)
{
+ // 245b -> 740a로 복사
+ if (idx == "49")
+ return TagToOtherTag("245", "b", "740", "a", TargetMarc);
+
for (int a = 0; a < SplitContent.Length; a++)
{
if (a <= 1) continue;
@@ -461,6 +465,14 @@ namespace UniMarc.마크
private string Index_440(string idx, string[] SplitContent)
{
+ // 440a -> 830a로 복사
+ if (idx == "50")
+ return TagToOtherTag("440", "a", "830", "a", TargetMarc);
+
+ // 440x -> 490a로 복사
+ if (idx == "51")
+ return TagToOtherTag("440", "a", "490", "a", TargetMarc);
+
for (int a = 0; a < SplitContent.Length; a++)
{
if (a <= 1) continue;
@@ -699,5 +711,94 @@ namespace UniMarc.마크
}
return string.Join("▼", SplitContent);
}
+
+
+ ///
+ /// 타겟 태그를 가져와서 적용할 태그에 새로 만들고 필요에 따라 기존 식별기호 데이터를 삭제함
+ ///
+ /// 가져올 태그넘버
+ /// 가져올 태그의 식별기호
+ /// 적용할 태그넘버
+ /// 적용할 태그의 식별기호
+ /// 대상 마크(뷰형태)
+ /// 적용할 지시기호
+ /// 가져올 태그의 식별기호 데이터 삭제여부"
+ string TagToOtherTag(string TargetTagNum, string TargetTagAccount, string ApplyTagNum, string ApplyTagAccount, string ViewMarc, string jisi = " ", bool isDelete = false)
+ {
+ List SplitMarc = new List(ViewMarc.Split('\n'));
+
+ string Target = "";
+
+ // 가져올 태그 정보 추출
+ foreach (string TagMarc in SplitMarc)
+ {
+ if (TagMarc.Length < 2)
+ continue;
+
+ if (TagMarc.StartsWith(TargetTagNum))
+ {
+ Target = st.GetMiddelString(TagMarc, "▼" + TargetTagAccount, "▼").Replace("▲", "");
+ break;
+ }
+
+ // 추출된 값이 없을 경우, 처음 들어온 그대로 반환
+ if (Target == "")
+ return ViewMarc;
+
+ // 추출한 태그의 정보를 적용할 태그에 복사
+ SplitMarc = MoveTag(ApplyTagNum, jisi, ApplyTagAccount, Target, SplitMarc);
+
+ if (isDelete)
+ {
+ for (int a = 0; a < SplitMarc.Count; a++)
+ {
+ if (SplitMarc[a].Length < 2)
+ continue;
+
+ if (SplitMarc[a].StartsWith(TargetTagNum) && SplitMarc[a].Contains(Target))
+ {
+ string RemoveTarget = string.Format("▼{0}{1}", TargetTagAccount, Target);
+ SplitMarc[a] = SplitMarc[a].Replace(RemoveTarget, "");
+ break;
+ }
+ }
+ }
+ }
+
+ return string.Join("\n", SplitMarc);
+ }
+
+ ///
+ /// 가져온 태그의 정보를 적용할 태그에 복사함.
+ ///
+ /// 적용할 태그 번호
+ /// 적용할 지시기호
+ /// 적용할 식별기호
+ /// 적용할 내용
+ /// 적용할 List형 마크
+ /// 적용된 List형 마크
+ List MoveTag(string TagNum, string Jisi, string TagAccount, string TagContent, List Marc)
+ {
+ int AddIndex = -1;
+
+ for (int a = 0; a < Marc.Count; a++)
+ {
+ if (Marc[a].Length < 2)
+ continue;
+
+ int targetNum = Convert.ToInt32(Marc[a].Substring(0, 3));
+ int tagNum = Convert.ToInt32(TagNum);
+
+ if (targetNum > tagNum)
+ {
+ AddIndex = a;
+ break;
+ }
+ }
+ string Item = string.Format("{0}\t{1}\t▼{2}{3}▲", TagNum, Jisi, TagAccount, TagContent);
+ Marc.Insert(AddIndex, Item);
+
+ return Marc;
+ }
}
}
diff --git a/unimarc/unimarc/마크/Marc_Plan.Designer.cs b/unimarc/unimarc/마크/Marc_Plan.Designer.cs
index 63f10db..d1fc187 100644
--- a/unimarc/unimarc/마크/Marc_Plan.Designer.cs
+++ b/unimarc/unimarc/마크/Marc_Plan.Designer.cs
@@ -123,6 +123,10 @@
this.panel7 = new System.Windows.Forms.Panel();
this.printDocument1 = new System.Drawing.Printing.PrintDocument();
this.printPreviewDialog1 = new System.Windows.Forms.PrintPreviewDialog();
+ this.chkBox_AllowDrop = new System.Windows.Forms.CheckBox();
+ this.chk_Alignment = new System.Windows.Forms.CheckBox();
+ this.label24 = new System.Windows.Forms.Label();
+ this.tb_NumSize = new System.Windows.Forms.TextBox();
this.panel1.SuspendLayout();
this.panel4.SuspendLayout();
this.panel3.SuspendLayout();
@@ -604,6 +608,7 @@
//
// panel5
//
+ this.panel5.Controls.Add(this.chkBox_AllowDrop);
this.panel5.Controls.Add(this.panel3);
this.panel5.Controls.Add(this.panel2);
this.panel5.Dock = System.Windows.Forms.DockStyle.Top;
@@ -615,6 +620,7 @@
// panel6
//
this.panel6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(224)))), ((int)(((byte)(192)))));
+ this.panel6.Controls.Add(this.chk_Alignment);
this.panel6.Controls.Add(this.tb_Left);
this.panel6.Controls.Add(this.btn_Bring);
this.panel6.Controls.Add(this.btn_PrintView);
@@ -623,6 +629,8 @@
this.panel6.Controls.Add(this.chk_Num);
this.panel6.Controls.Add(this.label23);
this.panel6.Controls.Add(this.label22);
+ this.panel6.Controls.Add(this.tb_NumSize);
+ this.panel6.Controls.Add(this.label24);
this.panel6.Controls.Add(this.tb_TextSize);
this.panel6.Controls.Add(this.label20);
this.panel6.Controls.Add(this.label21);
@@ -668,7 +676,7 @@
//
// btn_Bring
//
- this.btn_Bring.Location = new System.Drawing.Point(1023, 5);
+ this.btn_Bring.Location = new System.Drawing.Point(1186, 5);
this.btn_Bring.Name = "btn_Bring";
this.btn_Bring.Size = new System.Drawing.Size(75, 49);
this.btn_Bring.TabIndex = 80;
@@ -678,7 +686,7 @@
//
// btn_PrintView
//
- this.btn_PrintView.Location = new System.Drawing.Point(942, 5);
+ this.btn_PrintView.Location = new System.Drawing.Point(1105, 5);
this.btn_PrintView.Name = "btn_PrintView";
this.btn_PrintView.Size = new System.Drawing.Size(75, 49);
this.btn_PrintView.TabIndex = 80;
@@ -689,7 +697,7 @@
// chk_GuideLine
//
this.chk_GuideLine.AutoSize = true;
- this.chk_GuideLine.Location = new System.Drawing.Point(824, 35);
+ this.chk_GuideLine.Location = new System.Drawing.Point(987, 37);
this.chk_GuideLine.Name = "chk_GuideLine";
this.chk_GuideLine.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.chk_GuideLine.Size = new System.Drawing.Size(112, 16);
@@ -703,19 +711,20 @@
this.cb_TextFont.FormattingEnabled = true;
this.cb_TextFont.Location = new System.Drawing.Point(726, 6);
this.cb_TextFont.Name = "cb_TextFont";
- this.cb_TextFont.Size = new System.Drawing.Size(72, 20);
+ this.cb_TextFont.Size = new System.Drawing.Size(168, 20);
this.cb_TextFont.TabIndex = 78;
//
// chk_Num
//
this.chk_Num.AutoSize = true;
- this.chk_Num.Location = new System.Drawing.Point(824, 8);
+ this.chk_Num.Location = new System.Drawing.Point(987, 22);
this.chk_Num.Name = "chk_Num";
this.chk_Num.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.chk_Num.Size = new System.Drawing.Size(112, 16);
this.chk_Num.TabIndex = 83;
this.chk_Num.Text = "등록번호 안으로";
this.chk_Num.UseVisualStyleBackColor = true;
+ this.chk_Num.CheckedChanged += new System.EventHandler(this.chk_Num_CheckedChanged);
//
// label23
//
@@ -738,7 +747,7 @@
//
// tb_TextSize
//
- this.tb_TextSize.Location = new System.Drawing.Point(765, 33);
+ this.tb_TextSize.Location = new System.Drawing.Point(739, 33);
this.tb_TextSize.Name = "tb_TextSize";
this.tb_TextSize.Size = new System.Drawing.Size(30, 21);
this.tb_TextSize.TabIndex = 79;
@@ -749,7 +758,7 @@
//
this.label20.AutoSize = true;
this.label20.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
- this.label20.Location = new System.Drawing.Point(706, 37);
+ this.label20.Location = new System.Drawing.Point(680, 37);
this.label20.Name = "label20";
this.label20.Size = new System.Drawing.Size(57, 12);
this.label20.TabIndex = 60;
@@ -1028,6 +1037,47 @@
this.printPreviewDialog1.Name = "printPreviewDialog1";
this.printPreviewDialog1.Visible = false;
//
+ // chkBox_AllowDrop
+ //
+ this.chkBox_AllowDrop.AutoSize = true;
+ this.chkBox_AllowDrop.Location = new System.Drawing.Point(1023, 10);
+ this.chkBox_AllowDrop.Name = "chkBox_AllowDrop";
+ this.chkBox_AllowDrop.Size = new System.Drawing.Size(147, 16);
+ this.chkBox_AllowDrop.TabIndex = 10;
+ this.chkBox_AllowDrop.Text = "표 드래그 앤 드롭 OFF";
+ this.chkBox_AllowDrop.UseVisualStyleBackColor = true;
+ this.chkBox_AllowDrop.CheckedChanged += new System.EventHandler(this.chkBox_AllowDrop_CheckedChanged);
+ //
+ // chk_Alignment
+ //
+ this.chk_Alignment.AutoSize = true;
+ this.chk_Alignment.Location = new System.Drawing.Point(987, 7);
+ this.chk_Alignment.Name = "chk_Alignment";
+ this.chk_Alignment.Size = new System.Drawing.Size(88, 16);
+ this.chk_Alignment.TabIndex = 85;
+ this.chk_Alignment.Text = "가운데 정렬";
+ this.chk_Alignment.UseVisualStyleBackColor = true;
+ //
+ // label24
+ //
+ this.label24.AutoSize = true;
+ this.label24.Font = new System.Drawing.Font("굴림", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
+ this.label24.Location = new System.Drawing.Point(781, 37);
+ this.label24.Name = "label24";
+ this.label24.Size = new System.Drawing.Size(83, 12);
+ this.label24.TabIndex = 60;
+ this.label24.Text = "등록번호크기";
+ //
+ // tb_NumSize
+ //
+ this.tb_NumSize.Enabled = false;
+ this.tb_NumSize.Location = new System.Drawing.Point(864, 33);
+ this.tb_NumSize.Name = "tb_NumSize";
+ this.tb_NumSize.Size = new System.Drawing.Size(30, 21);
+ this.tb_NumSize.TabIndex = 79;
+ this.tb_NumSize.Text = "10";
+ this.tb_NumSize.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
+ //
// Marc_Plan
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
@@ -1048,6 +1098,7 @@
this.panel2.ResumeLayout(false);
this.panel2.PerformLayout();
this.panel5.ResumeLayout(false);
+ this.panel5.PerformLayout();
this.panel6.ResumeLayout(false);
this.panel6.PerformLayout();
this.panel7.ResumeLayout(false);
@@ -1145,5 +1196,9 @@
private System.Windows.Forms.TextBox tb_Sero;
private System.Windows.Forms.TextBox tb_GaroGap;
private System.Windows.Forms.TextBox tb_Garo;
+ private System.Windows.Forms.CheckBox chkBox_AllowDrop;
+ private System.Windows.Forms.CheckBox chk_Alignment;
+ private System.Windows.Forms.TextBox tb_NumSize;
+ private System.Windows.Forms.Label label24;
}
}
\ No newline at end of file
diff --git a/unimarc/unimarc/마크/Marc_Plan.cs b/unimarc/unimarc/마크/Marc_Plan.cs
index 24ab235..05d835a 100644
--- a/unimarc/unimarc/마크/Marc_Plan.cs
+++ b/unimarc/unimarc/마크/Marc_Plan.cs
@@ -73,6 +73,8 @@ namespace WindowsFormsApp1.Mac
string Table = "Specs_Marc";
+ String_Text st = new String_Text();
+ string[] GetTag = { "049v", "049c", "049f" };
// idx
// 연번 등록번호 분류기호 저자기호 V(049v,볼륨)
// C(049c,복본) F(049f,별치) 구분(이용자) ISBN 도서명
@@ -120,10 +122,10 @@ namespace WindowsFormsApp1.Mac
if (a % 16 == 13) grid[17] = ary[a]; // price
if (a % 16 == 14) grid[18] = ary[a]; // midx
if (a % 16 == 15) { grid[19] = ary[a]; // marc
+
dataGridView1.Rows.Add(grid);
}
}
-
}
public void mk_Panel(string idx, string ListName, string date)
{
@@ -494,7 +496,29 @@ namespace WindowsFormsApp1.Mac
sm.Show();
}
- #region Grid 드래그 앤 드랍 함수 (현재 사용 중지) (사용하려면 dataGridView1의 AllowDrop 활성화해야함)
+ #region Grid 드래그 앤 드랍 함수 (사용하려면 dataGridView1의 AllowDrop 활성화해야함)
+
+ private void chkBox_AllowDrop_CheckedChanged(object sender, EventArgs e)
+ {
+ if (chkBox_AllowDrop.Checked)
+ {
+ chkBox_AllowDrop.Text = "표 드래그 앤 드롭 ON";
+ dataGridView1.AllowDrop = true;
+ dataGridView1.MouseDown += dataGridView1_MouseDown;
+ dataGridView1.MouseMove += dataGridView1_MouseMove;
+ dataGridView1.DragDrop += dataGridView1_DragDrop;
+ dataGridView1.DragOver += dataGridView1_DragOver;
+ }
+ else
+ {
+ chkBox_AllowDrop.Text = "표 드래그 앤 드롭 OFF";
+ dataGridView1.AllowDrop = false;
+ dataGridView1.MouseDown -= dataGridView1_MouseDown;
+ dataGridView1.MouseMove -= dataGridView1_MouseMove;
+ dataGridView1.DragDrop -= dataGridView1_DragDrop;
+ dataGridView1.DragOver -= dataGridView1_DragOver;
+ }
+ }
Skill_Grid sg = new Skill_Grid();
@@ -555,6 +579,7 @@ namespace WindowsFormsApp1.Mac
if (F != "")
F = string.Format("▼f{0}", F);
+
AddTag = string.Format("049\t \t{0}{1}{2}{3}▲", L, V, C, F);
}
if (col == 3 || col == 4 || col == 5)
@@ -707,6 +732,7 @@ namespace WindowsFormsApp1.Mac
int Sero = Convert.ToInt32(tb_Sero.Text);
int Total = Garo * Sero;
int FontSize = Convert.ToInt32(tb_TextSize.Text);
+ int NumSize = Convert.ToInt32(tb_NumSize.Text);
float GaroGap = mmToInch(Convert.ToDouble(tb_GaroGap.Text));
float SeroGap = mmToInch(Convert.ToDouble(tb_SeroGap.Text));
@@ -715,10 +741,13 @@ namespace WindowsFormsApp1.Mac
Pen ps = new Pen(Color.Red, 2);
Font F = new Font(cb_TextFont.Text, FontSize);
- Font NumFont = new Font(cb_TextFont.Text, 5);
+ Font NumFont = new Font(cb_TextFont.Text, NumSize);
StringFormat format = new StringFormat();
- //format.Alignment = StringAlignment.Center;
+ if (chk_Alignment.Checked)
+ {
+ format.Alignment = StringAlignment.Center;
+ }
int startCount = Convert.ToInt32(tb_StartPosition.Text);
if (isMorePage)
@@ -738,6 +767,9 @@ namespace WindowsFormsApp1.Mac
if (GridCount >= startCount - 1)
{
+ if (chk_Alignment.Checked)
+ UxPos += mmToInch(8);
+
e.Graphics.DrawString(GridData[Cnt], F, Brushes.Black, UxPos + mmToInch(6), yPos + mmToInch(2), format);
if (!chk_Num.Checked)
@@ -747,8 +779,18 @@ namespace WindowsFormsApp1.Mac
Brushes.Black,
UxPos + mmToInch(6),
yPos + Width + mmToInch(4), format);
+ else
+ e.Graphics.DrawString(
+ dataGridView1.Rows[Cnt].Cells["reg_num"].Value.ToString(),
+ NumFont,
+ Brushes.Black,
+ UxPos + mmToInch(6),
+ yPos + mmToInch(FontSize * 0.35146 * 6) + mmToInch(2.5), format);
Cnt++;
+
+ if (chk_Alignment.Checked)
+ UxPos -= mmToInch(8);
}
UxPos += Width + GaroGap;
GridCount++;
@@ -792,6 +834,11 @@ namespace WindowsFormsApp1.Mac
return result;
}
+ float mmToInch(int mm)
+ {
+ return mmToInch(Convert.ToDouble(mm));
+ }
+
///
/// 밀리미터를 인치 값으로 변환하여 반환
///
@@ -836,5 +883,9 @@ namespace WindowsFormsApp1.Mac
}
#endregion
+ private void chk_Num_CheckedChanged(object sender, EventArgs e)
+ {
+ tb_NumSize.Enabled = chk_Num.Checked;
+ }
}
}
diff --git a/unimarc/unimarc/마크/Marc_mkList.cs b/unimarc/unimarc/마크/Marc_mkList.cs
index c0f4dc1..82efcf7 100644
--- a/unimarc/unimarc/마크/Marc_mkList.cs
+++ b/unimarc/unimarc/마크/Marc_mkList.cs
@@ -167,13 +167,16 @@ namespace UniMarc.마크
string[] Author = { "", Marc[1] }; // 저자, 도서명
// 100, 110, 111태그중 한개라도 있으면 저자로 인식.
- string[] Author_Search = { "100a", "110a", "111a" };
+ string[] Author_Search = { "100a", "110a", "111a", "245d" };
string[] Author_res = st.Take_Tag(insert_marc_data[14], Author_Search);
if (Author_res[0].Length > 1) Author[0] = Author_res[0];
if (Author_res[1].Length > 1) Author[0] = Author_res[1];
if (Author_res[2].Length > 1) Author[0] = Author_res[2];
+ // 245d에 [외]가 있는 경우 저자가 아닌 출판사로 저자기호 생성
+ if (Author_res[3].IndexOf("[외]") > -1) Author[0] = Marc[5];
+
for (int b = 0; b < Marc.Length; b++)
{
diff --git a/unimarc/unimarc/마크/Set_Macro.Designer.cs b/unimarc/unimarc/마크/Set_Macro.Designer.cs
index 96eb776..6fbd9d2 100644
--- a/unimarc/unimarc/마크/Set_Macro.Designer.cs
+++ b/unimarc/unimarc/마크/Set_Macro.Designer.cs
@@ -29,7 +29,9 @@
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+ System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
this.panel1 = new System.Windows.Forms.Panel();
+ this.cb_EncodingType = new System.Windows.Forms.ComboBox();
this.btn_MakeFile = new System.Windows.Forms.Button();
this.cb_SearchList = new System.Windows.Forms.ComboBox();
this.btn_ListRemove = new System.Windows.Forms.Button();
@@ -43,7 +45,6 @@
this.TagNum = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Macro = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.Check = new System.Windows.Forms.DataGridViewCheckBoxColumn();
- this.cb_EncodingType = new System.Windows.Forms.ComboBox();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.MacroGrid)).BeginInit();
this.panel3.SuspendLayout();
@@ -66,6 +67,19 @@
this.panel1.Size = new System.Drawing.Size(900, 35);
this.panel1.TabIndex = 1;
//
+ // cb_EncodingType
+ //
+ this.cb_EncodingType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+ this.cb_EncodingType.FormattingEnabled = true;
+ this.cb_EncodingType.Items.AddRange(new object[] {
+ "ANSI",
+ "UTF-8",
+ "UniCode"});
+ this.cb_EncodingType.Location = new System.Drawing.Point(581, 7);
+ this.cb_EncodingType.Name = "cb_EncodingType";
+ this.cb_EncodingType.Size = new System.Drawing.Size(81, 20);
+ this.cb_EncodingType.TabIndex = 10;
+ //
// btn_MakeFile
//
this.btn_MakeFile.Location = new System.Drawing.Point(668, 6);
@@ -181,6 +195,8 @@
//
// TagNum
//
+ dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+ this.TagNum.DefaultCellStyle = dataGridViewCellStyle2;
this.TagNum.HeaderText = "태그번호";
this.TagNum.Name = "TagNum";
this.TagNum.ReadOnly = true;
@@ -201,19 +217,6 @@
this.Check.TrueValue = "T";
this.Check.Width = 40;
//
- // cb_EncodingType
- //
- this.cb_EncodingType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.cb_EncodingType.FormattingEnabled = true;
- this.cb_EncodingType.Items.AddRange(new object[] {
- "ANSI",
- "UTF-8",
- "UniCode"});
- this.cb_EncodingType.Location = new System.Drawing.Point(581, 7);
- this.cb_EncodingType.Name = "cb_EncodingType";
- this.cb_EncodingType.Size = new System.Drawing.Size(81, 20);
- this.cb_EncodingType.TabIndex = 10;
- //
// Set_Macro
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
@@ -245,10 +248,10 @@
private System.Windows.Forms.DataGridViewCheckBoxColumn Save_Check;
private System.Windows.Forms.ComboBox cb_SearchList;
private System.Windows.Forms.Button btn_MakeFile;
+ private System.Windows.Forms.ComboBox cb_EncodingType;
private System.Windows.Forms.DataGridViewTextBoxColumn idx;
private System.Windows.Forms.DataGridViewTextBoxColumn TagNum;
private System.Windows.Forms.DataGridViewTextBoxColumn Macro;
private System.Windows.Forms.DataGridViewCheckBoxColumn Check;
- private System.Windows.Forms.ComboBox cb_EncodingType;
}
}
\ No newline at end of file
diff --git a/unimarc/unimarc/마크/Set_Macro.cs b/unimarc/unimarc/마크/Set_Macro.cs
index de4029d..e4e940c 100644
--- a/unimarc/unimarc/마크/Set_Macro.cs
+++ b/unimarc/unimarc/마크/Set_Macro.cs
@@ -81,7 +81,7 @@ namespace WindowsFormsApp1.Mac
{
if (MacroGrid.Rows[a].Cells["idx"].Value.ToString() == l)
{
- MacroGrid.Rows[a].Cells["Check"].Value = true;
+ MacroGrid.Rows[a].Cells["Check"].Value = "T";
}
}
}
@@ -95,7 +95,7 @@ namespace WindowsFormsApp1.Mac
for (int a = 0; a < MacroGrid.Rows.Count; a++)
{
- if (MacroGrid.Rows[a].Cells["Check"].Value.ToString() == "T")
+ if (MacroGrid.Rows[a].Cells["Check"].Value.ToString().Contains("T"))
{
idxArray.Add(MacroGrid.Rows[a].Cells["idx"].Value.ToString());
}
@@ -220,10 +220,10 @@ namespace WindowsFormsApp1.Mac
return;
if (e.ColumnIndex == 3)
- if (MacroGrid.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString() == "T")
- MacroGrid.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = false;
+ if (MacroGrid.Rows[e.RowIndex].Cells["Check"].Value.ToString().Contains("T"))
+ MacroGrid.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "F";
else
- MacroGrid.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = true;
+ MacroGrid.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = "T";
}
}
}