=====* UniMarc [0.0167] 버전 업데이트 내용 *=====

** ERP 작업 전면 중단 (마크우선) **

1. 목록 집계
클릭 시, 우측 텍스트박스 초기화 제대로 되지않던 점 수정.

2. 복본조사
순천 시립 추가

3. 마크 선택
내부 소장마크를 ISBN만 맞으면 가져오던것에서 검색기능을 추가함.
This commit is contained in:
SeungHo Yang
2022-10-14 18:22:39 +09:00
parent 6d76903414
commit e459ab18a4
22 changed files with 269 additions and 118 deletions

Binary file not shown.

View File

@@ -74,11 +74,11 @@ namespace WindowsFormsApp1
cmd = _DB.DB_Select_Search("`idx`", "Comp", "comp_name", result[4]);
com_idx = _DB.DB_Send_CMD_Search(cmd).Replace("|", "");
// if (com_idx != "1")
// {
ToolStripMenuItem.Visible = false;
ToolStripMenuItem.Visible = false;
// }
if (com_idx != "1")
{
ToolStripMenuItem.Visible = false;
ToolStripMenuItem.Visible = false;
}
if (result[5] != "관리자") { ToolStripMenuItem.Visible = false; }
Settings.Default.compidx = com_idx;

View File

@@ -530,9 +530,12 @@ namespace WindowsFormsApp1.Delivery
}
private void infor_reset()
{
tb_work_name.Text = "";
TextBox[] box = { tb_client, tb_gu, tb_boss, tb_tel, tb_fax, tb_email, tb_addr, tb_work_name, tb_send_way };
foreach (TextBox tb in box)
tb.Text = "";
rtb_etc.Text = "";
tb_work_way.Text = "";
tb_send_way.Text = "";
}
private void infor_Update(int rowidx)
{
@@ -540,6 +543,7 @@ namespace WindowsFormsApp1.Delivery
row = rowidx;
infor_reset();
string client = dataGridView1.Rows[rowidx].Cells["clt"].Value.ToString();
if (client == "") return;
client_Setting(client);
// 작업명
tb_work_name.Text = dataGridView1.Rows[rowidx].Cells["work_name"].Value.ToString();

View File

@@ -349,7 +349,7 @@
this.btn_OpenMemo.Name = "btn_OpenMemo";
this.btn_OpenMemo.Size = new System.Drawing.Size(75, 24);
this.btn_OpenMemo.TabIndex = 2;
this.btn_OpenMemo.Text = "메모장열기";
this.btn_OpenMemo.Text = ".txt 열기";
this.btn_OpenMemo.UseVisualStyleBackColor = true;
this.btn_OpenMemo.Click += new System.EventHandler(this.btn_OpenMemo_Click);
//

View File

@@ -245,7 +245,6 @@ namespace WindowsFormsApp1.Mac
}
// 전남 도립 TODO: 오류발생 (원인불명) [한번에 3개씩 검색결과가 표출됨]
/*
else if (URL.IndexOf("lib.jeonnam.go.kr") > -1)
{
@@ -290,6 +289,12 @@ namespace WindowsFormsApp1.Mac
(text);
}
// 전남 순천 시립도서관
else if (URL.IndexOf("library.suncheon.go.kr") > -1)
{
BookCount = (text);
}
// 전북대학교 도서관
else if (URL.IndexOf("dl.jbnu") > -1)
{
@@ -939,6 +944,60 @@ namespace WindowsFormsApp1.Mac
#endregion
#region
string (string text)
{
foreach (HtmlElement select in webBrowser1.Document.GetElementsByTagName("select"))
{
if (select.Id == "lib_code")
{
select.SetAttribute("value", Code);
break;
}
}
foreach (HtmlElement input in webBrowser1.Document.GetElementsByTagName("input"))
{
if (input.Id == "search_val")
{
input.SetAttribute("value", text);
break;
}
}
webBrowser1.Document.GetElementsByTagName("button")[0].InvokeMember("click");
// foreach (HtmlElement button in webBrowser1.Document.GetElementsByTagName("button"))
// {
// button.InvokeMember("click");
// break;
// }
string result = "";
foreach (HtmlElement table in webBrowser1.Document.GetElementsByTagName("table"))
{
if (table.GetAttribute("className").IndexOf("search_bar") > -1)
{
result = Regex.Replace(table.Document.GetElementsByTagName("font")[0].InnerText, @"\D", "");
// foreach (HtmlElement font in table.Document.GetElementsByTagName("font"))
// {
// if (font.GetAttribute("className").IndexOf("cyan") > -1)
// {
// result = Regex.Replace(font.InnerText, @"\D", "");
// break;
// }
// }
break;
}
}
return result;
}
#endregion
#endregion
#region

View File

@@ -29,15 +29,8 @@ namespace UniMarc.마크
/// </summary>
private void InitializeComponent()
{
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
this.panel1 = new System.Windows.Forms.Panel();
this.btn_ShowDeleteMarc = new System.Windows.Forms.Button();
this.btn_Close = new System.Windows.Forms.Button();
this.btn_Delete = new System.Windows.Forms.Button();
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();
@@ -49,6 +42,17 @@ namespace UniMarc.마크
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();
this.btn_Delete = new System.Windows.Forms.Button();
this.panel2 = new System.Windows.Forms.Panel();
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.panel3 = new System.Windows.Forms.Panel();
this.cb_SearchFilter = new System.Windows.Forms.ComboBox();
this.tb_SearchBox = new System.Windows.Forms.TextBox();
this.btn_Search = new System.Windows.Forms.Button();
this.progressBar1 = new System.Windows.Forms.ProgressBar();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
this.panel1.SuspendLayout();
this.panel2.SuspendLayout();
@@ -60,14 +64,14 @@ namespace UniMarc.마크
this.dataGridView1.AllowUserToAddRows = false;
this.dataGridView1.AllowUserToDeleteRows = false;
this.dataGridView1.BorderStyle = System.Windows.Forms.BorderStyle.None;
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;
dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle5.Font = new System.Drawing.Font("굴림", 9F, 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.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.idx,
@@ -92,78 +96,6 @@ namespace UniMarc.마크
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";
@@ -239,6 +171,120 @@ namespace UniMarc.마크
this.marc.ReadOnly = true;
this.marc.Width = 200;
//
// panel1
//
this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panel1.Controls.Add(this.progressBar1);
this.panel1.Controls.Add(this.btn_Search);
this.panel1.Controls.Add(this.tb_SearchBox);
this.panel1.Controls.Add(this.cb_SearchFilter);
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;
//
// cb_SearchFilter
//
this.cb_SearchFilter.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cb_SearchFilter.FormattingEnabled = true;
this.cb_SearchFilter.Items.AddRange(new object[] {
"도서명",
"저자",
"출판사"});
this.cb_SearchFilter.Location = new System.Drawing.Point(11, 5);
this.cb_SearchFilter.Name = "cb_SearchFilter";
this.cb_SearchFilter.Size = new System.Drawing.Size(91, 20);
this.cb_SearchFilter.TabIndex = 2;
//
// tb_SearchBox
//
this.tb_SearchBox.Location = new System.Drawing.Point(109, 5);
this.tb_SearchBox.Name = "tb_SearchBox";
this.tb_SearchBox.Size = new System.Drawing.Size(238, 21);
this.tb_SearchBox.TabIndex = 3;
this.tb_SearchBox.KeyDown += new System.Windows.Forms.KeyEventHandler(this.tb_SearchBox_KeyDown);
//
// btn_Search
//
this.btn_Search.Location = new System.Drawing.Point(353, 4);
this.btn_Search.Name = "btn_Search";
this.btn_Search.Size = new System.Drawing.Size(75, 23);
this.btn_Search.TabIndex = 4;
this.btn_Search.Text = "검 색";
this.btn_Search.UseVisualStyleBackColor = true;
this.btn_Search.Click += new System.EventHandler(this.btn_Search_Click);
//
// progressBar1
//
this.progressBar1.Location = new System.Drawing.Point(434, 4);
this.progressBar1.Name = "progressBar1";
this.progressBar1.Size = new System.Drawing.Size(100, 23);
this.progressBar1.TabIndex = 5;
//
// MarcCopySelect
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
@@ -251,6 +297,7 @@ namespace UniMarc.마크
this.Text = "마크 선택";
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
this.panel2.ResumeLayout(false);
this.panel3.ResumeLayout(false);
this.ResumeLayout(false);
@@ -278,5 +325,9 @@ namespace UniMarc.마크
private System.Windows.Forms.DataGridViewTextBoxColumn grade;
private System.Windows.Forms.DataGridViewTextBoxColumn tag008;
private System.Windows.Forms.DataGridViewTextBoxColumn marc;
private System.Windows.Forms.ComboBox cb_SearchFilter;
private System.Windows.Forms.Button btn_Search;
private System.Windows.Forms.TextBox tb_SearchBox;
private System.Windows.Forms.ProgressBar progressBar1;
}
}

View File

@@ -9,6 +9,7 @@ using System.Threading.Tasks;
using System.Windows.Forms;
using WindowsFormsApp1;
using ExcelTest;
using static System.Windows.Forms.VisualStyles.VisualStyleElement;
namespace UniMarc.
{
@@ -28,17 +29,50 @@ namespace UniMarc.마크
{
InitializeComponent();
m = _m;
db.DBcon();
}
public MarcCopySelect(AddMarc _am)
{
InitializeComponent();
am = _am;
db.DBcon();
}
private void tb_SearchBox_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
btn_Search_Click(null, null);
}
private void btn_Search_Click(object sender, EventArgs e)
{
if (cb_SearchFilter.SelectedIndex < 0) return;
dataGridView1.Rows.Clear();
richTextBox1.Text = "";
string search_Col = "";
string search_Target = tb_SearchBox.Text;
switch (cb_SearchFilter.SelectedIndex)
{
case 0:
search_Col = "서명";
break;
case 1:
search_Col = "저자";
break;
case 2:
search_Col = "출판사";
break;
}
Init(search_Col, search_Target);
}
public void Init(string search_col, string search_Target)
{
db.DBcon();
if (search_Target == "") return;
// 0 1 2 3 4
string Area = "`idx`, `compidx`, `ISBN`, `서명`, `저자`, " +
// 5 6 7 8 9
@@ -56,6 +90,9 @@ namespace UniMarc.마크
private void InputGrid(string[] Value)
{
progressBar1.Value = 0;
progressBar1.Maximum = Value.Length / 16;
string[] Grid = {
"", "", "", "", "",
"", "", "", "", "",
@@ -74,14 +111,15 @@ namespace UniMarc.마크
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 == 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);
progressBar1.Value += 1;
}
}

View File

@@ -87,7 +87,6 @@ namespace UniMarc.마크
{ "54", "100", "태그삭제" },
{ "55", "110", "태그삭제" },
/////////
{ "56", "440", "440n p x -> 490v [p-n-v 순서]로 변환" },
{ "57", "440", "440n p x -> 830 n p v로 변환" },
@@ -852,27 +851,27 @@ namespace UniMarc.마크
Target = st.GetMiddelString(TagMarc, "▼" + TargetTagAccount, "▼").Replace("▲", "");
break;
}
}
// 추출된 값이 없을 경우, 처음 들어온 그대로 반환
if (Target == "")
return ViewMarc;
// 추출된 값이 없을 경우, 처음 들어온 그대로 반환
if (Target == "")
return ViewMarc;
// 추출한 태그의 정보를 적용할 태그에 복사
SplitMarc = MoveTag(ApplyTagNum, jisi, ApplyTagAccount, Target, SplitMarc);
// 추출한 태그의 정보를 적용할 태그에 복사
SplitMarc = MoveTag(ApplyTagNum, jisi, ApplyTagAccount, Target, SplitMarc);
if (isDelete)
if (isDelete)
{
for (int a = 0; a < SplitMarc.Count; a++)
{
for (int a = 0; a < SplitMarc.Count; a++)
{
if (SplitMarc[a].Length < 2)
continue;
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;
}
if (SplitMarc[a].StartsWith(TargetTagNum) && SplitMarc[a].Contains(Target))
{
string RemoveTarget = string.Format("▼{0}{1}", TargetTagAccount, Target);
SplitMarc[a] = SplitMarc[a].Replace(RemoveTarget, "");
break;
}
}
}