389 lines
14 KiB
C#
389 lines
14 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using util = FCOMMON.Util;
|
|
namespace FPJ0000
|
|
{
|
|
public partial class fProjectIOMap : FCOMMON.fBase
|
|
{
|
|
string fn_fpcolsizeI = "";
|
|
string fn_fpcolsizeO = "";
|
|
string fn_fpcolsizeE = "";
|
|
|
|
int projectindex = 0;
|
|
public fProjectIOMap(int project_)
|
|
{
|
|
InitializeComponent();
|
|
projectindex = project_;
|
|
this.dsPRJ.ProjectsIOMap.TableNewRow += ProjectsSchedule_TableNewRow;
|
|
fn_fpcolsizeI = util.MakeFilePath(util.CurrentPath, "formSetting", "fp_" + this.Name + "i.ini");
|
|
fn_fpcolsizeO = util.MakeFilePath(util.CurrentPath, "formSetting", "fp_" + this.Name + "o.ini");
|
|
fn_fpcolsizeE = util.MakeFilePath(util.CurrentPath, "formSetting", "fp_" + this.Name + "e.ini");
|
|
}
|
|
|
|
void ProjectsSchedule_TableNewRow(object sender, DataTableNewRowEventArgs e)
|
|
{
|
|
e.Row["wuid"] = FCOMMON.info.Login.no;
|
|
e.Row["wdate"] = DateTime.Now;
|
|
e.Row["project"] = this.projectindex;
|
|
}
|
|
|
|
private void fProjectSchedule_Load(object sender, EventArgs e)
|
|
{
|
|
RefreshData();
|
|
|
|
}
|
|
void RefreshData()
|
|
{
|
|
try
|
|
{
|
|
this.ta.Fill(this.dsPRJ.ProjectsIOMap, this.projectindex);
|
|
FPUtil.ColSizeLoad(ref this.fpIN, fn_fpcolsizeI);
|
|
FPUtil.ColSizeLoad(ref this.fpOut, fn_fpcolsizeO);
|
|
FPUtil.ColSizeLoad(ref this.fpEtc, fn_fpcolsizeE);
|
|
}
|
|
catch (System.Exception ex)
|
|
{
|
|
System.Windows.Forms.MessageBox.Show(ex.Message);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
private void autoToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
|
|
this.fpIN.ActiveSheet.DataAutoSizeColumns = true;
|
|
|
|
for (int i = 0; i < this.fpIN.ActiveSheet.Rows.Count; i++)
|
|
this.fpIN.ActiveSheet.SetRowHeight(i, 25);
|
|
//dv1.AutoResizeColumns();
|
|
}
|
|
|
|
private void resetToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
foreach (FarPoint.Win.Spread.Column col in this.fpIN.ActiveSheet.Columns)
|
|
{
|
|
col.Width = 100;
|
|
}
|
|
}
|
|
|
|
private void saveToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
FPUtil.ColsizeSave(this.fpIN, fn_fpcolsizeI);
|
|
}
|
|
|
|
private void loadToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
FPUtil.ColSizeLoad(ref this.fpIN, fn_fpcolsizeI);
|
|
}
|
|
|
|
|
|
|
|
private void toolStripButton1_Click(object sender, EventArgs e)
|
|
{
|
|
this.Validate();
|
|
this.bsOut.EndEdit();
|
|
this.bsETC.EndEdit();
|
|
this.bsIn.EndEdit();
|
|
try
|
|
{
|
|
this.tam.UpdateAll(this.dsPRJ);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
FCOMMON.Util.MsgE(ex.Message);
|
|
}
|
|
|
|
}
|
|
private void exportListToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
var sd = new SaveFileDialog();
|
|
sd.Filter = "Excel|*.xls";
|
|
sd.FileName = "iomap_in";
|
|
if (sd.ShowDialog() != DialogResult.OK) return;
|
|
fpIN.SaveExcel(sd.FileName,
|
|
FarPoint.Excel.ExcelSaveFlags.SaveAsViewed
|
|
| FarPoint.Excel.ExcelSaveFlags.SaveAsFiltered
|
|
| FarPoint.Excel.ExcelSaveFlags.NoFormulas
|
|
| FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders);
|
|
}
|
|
|
|
private void toolStripMenuItem7_Click(object sender, EventArgs e)
|
|
{
|
|
var sd = new SaveFileDialog();
|
|
sd.Filter = "Excel|*.xls";
|
|
sd.FileName = "iomap_out";
|
|
if (sd.ShowDialog() != DialogResult.OK) return;
|
|
fpIN.SaveExcel(sd.FileName,
|
|
FarPoint.Excel.ExcelSaveFlags.SaveAsViewed
|
|
| FarPoint.Excel.ExcelSaveFlags.SaveAsFiltered
|
|
| FarPoint.Excel.ExcelSaveFlags.NoFormulas
|
|
| FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders);
|
|
}
|
|
|
|
private void toolStripMenuItem13_Click(object sender, EventArgs e)
|
|
{
|
|
var sd = new SaveFileDialog();
|
|
sd.Filter = "Excel|*.xls";
|
|
sd.FileName = "iomap_etc";
|
|
if (sd.ShowDialog() != DialogResult.OK) return;
|
|
fpIN.SaveExcel(sd.FileName,
|
|
FarPoint.Excel.ExcelSaveFlags.SaveAsViewed
|
|
| FarPoint.Excel.ExcelSaveFlags.SaveAsFiltered
|
|
| FarPoint.Excel.ExcelSaveFlags.NoFormulas
|
|
| FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders);
|
|
}
|
|
|
|
private void toolStripMenuItem9_Click(object sender, EventArgs e)
|
|
{
|
|
this.fpEtc.ActiveSheet.DataAutoSizeColumns = true;
|
|
|
|
for (int i = 0; i < this.fpEtc.ActiveSheet.Rows.Count; i++)
|
|
this.fpEtc.ActiveSheet.SetRowHeight(i, 25);
|
|
//dv1.AutoResizeColumns();
|
|
}
|
|
|
|
private void toolStripMenuItem3_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
|
|
this.fpOut.ActiveSheet.DataAutoSizeColumns = true;
|
|
|
|
for (int i = 0; i < this.fpOut.ActiveSheet.Rows.Count; i++)
|
|
this.fpOut.ActiveSheet.SetRowHeight(i, 25);
|
|
//dv1.AutoResizeColumns();
|
|
}
|
|
|
|
private void toolStripMenuItem4_Click(object sender, EventArgs e)
|
|
{
|
|
foreach (FarPoint.Win.Spread.Column col in this.fpOut.ActiveSheet.Columns)
|
|
{
|
|
col.Width = 100;
|
|
}
|
|
}
|
|
|
|
private void toolStripMenuItem10_Click(object sender, EventArgs e)
|
|
{
|
|
foreach (FarPoint.Win.Spread.Column col in this.fpEtc.ActiveSheet.Columns)
|
|
{
|
|
col.Width = 100;
|
|
}
|
|
}
|
|
|
|
private void toolStripMenuItem5_Click(object sender, EventArgs e)
|
|
{
|
|
FPUtil.ColsizeSave(this.fpOut, fn_fpcolsizeO);
|
|
}
|
|
|
|
private void toolStripMenuItem11_Click(object sender, EventArgs e)
|
|
{
|
|
FPUtil.ColsizeSave(this.fpEtc, fn_fpcolsizeE);
|
|
}
|
|
|
|
private void toolStripMenuItem6_Click(object sender, EventArgs e)
|
|
{
|
|
FPUtil.ColSizeLoad(ref this.fpOut, fn_fpcolsizeO);
|
|
}
|
|
|
|
private void toolStripMenuItem12_Click(object sender, EventArgs e)
|
|
{
|
|
FPUtil.ColSizeLoad(ref this.fpEtc, fn_fpcolsizeE);
|
|
}
|
|
|
|
private void bindingNavigatorAddNewItem1_Click(object sender, EventArgs e)
|
|
{
|
|
var newitem = bsIn.AddNew() as DataRowView;
|
|
newitem["Dir"] = "IN";
|
|
|
|
}
|
|
|
|
private void bindingNavigatorAddNewItem2_Click(object sender, EventArgs e)
|
|
{
|
|
var newitem = bsOut.AddNew() as DataRowView;
|
|
newitem["Dir"] = "OUT";
|
|
}
|
|
|
|
private void bindingNavigatorAddNewItem3_Click(object sender, EventArgs e)
|
|
{
|
|
var newitem = bsETC.AddNew() as DataRowView;
|
|
newitem["Dir"] = "ETC";
|
|
}
|
|
|
|
private void DefaultMake_Click(object sender, EventArgs e)
|
|
{
|
|
if (this.dsPRJ.ProjectsIOMap.Rows.Count > 0)
|
|
{
|
|
util.MsgE("기존에 저장된 자료가 있으면 생성하지 못합니다.");
|
|
return;
|
|
}
|
|
|
|
var dlg = util.MsgQ("입력 64, 출력 64개의 목록을 생성 합니다\n진행 할까요?");
|
|
if (dlg != DialogResult.Yes) return;
|
|
|
|
for (int i = 0; i < 64; i++)
|
|
{
|
|
//input
|
|
var newdi = this.dsPRJ.ProjectsIOMap.NewProjectsIOMapRow();
|
|
newdi.Dir = "IN";
|
|
newdi.PIn = "X" + i.ToString("X2");
|
|
this.dsPRJ.ProjectsIOMap.AddProjectsIOMapRow(newdi);
|
|
|
|
//output
|
|
var newdo = this.dsPRJ.ProjectsIOMap.NewProjectsIOMapRow();
|
|
newdo.Dir = "OUT";
|
|
newdo.PIn = "Y" + i.ToString("X2");
|
|
this.dsPRJ.ProjectsIOMap.AddProjectsIOMapRow(newdo);
|
|
|
|
}
|
|
}
|
|
|
|
private void toolStripButton2_Click(object sender, EventArgs e)
|
|
{
|
|
//var bs = new BindingSource(this.dsPRJ, "ProjectsIOMap");
|
|
//bs.Sort = "Dir desc";
|
|
//var fp = new FarPoint.Win.Spread.FpSpread();
|
|
//var newsheet = new FarPoint.Win.Spread.SheetView();
|
|
//newsheet.SheetName = "Sheet1";
|
|
//newsheet.DataSource = bs;
|
|
//fp.Sheets.Add(newsheet);
|
|
var sd = new SaveFileDialog();
|
|
sd.Filter = "Excel|*.xlsx";
|
|
sd.FileName = "iomap";
|
|
if (sd.ShowDialog() != DialogResult.OK) return;
|
|
//var rlt = fp.SaveExcel(sd.FileName,
|
|
// FarPoint.Excel.ExcelSaveFlags.SaveAsViewed
|
|
// | FarPoint.Excel.ExcelSaveFlags.SaveAsFiltered
|
|
// | FarPoint.Excel.ExcelSaveFlags.NoFormulas
|
|
// | FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders);
|
|
//if (rlt == false)
|
|
// FCOMMON.Util.MsgE("저장 실패");
|
|
|
|
|
|
|
|
libxl.Book book;// = new libxl.BinBook();
|
|
book = new libxl.XmlBook();
|
|
book.setKey(FCOMMON.info.libxlCompany, FCOMMON.info.libxlKey);
|
|
|
|
var cfTitle = book.addFormat();
|
|
cfTitle.alignH = libxl.AlignH.ALIGNH_CENTER;
|
|
cfTitle.alignV = libxl.AlignV.ALIGNV_CENTER;
|
|
cfTitle.setBorder(libxl.BorderStyle.BORDERSTYLE_THICK);
|
|
|
|
|
|
var cfTitleIn = book.addFormat();
|
|
cfTitleIn.alignH = libxl.AlignH.ALIGNH_CENTER;
|
|
cfTitleIn.alignV = libxl.AlignV.ALIGNV_CENTER;
|
|
cfTitleIn.fillPattern = libxl.FillPattern.FILLPATTERN_SOLID;
|
|
cfTitleIn.patternForegroundColor = libxl.Color.COLOR_YELLOW;
|
|
|
|
var cfTitleOut = book.addFormat();
|
|
cfTitleOut.alignH = libxl.AlignH.ALIGNH_CENTER;
|
|
cfTitleOut.alignV = libxl.AlignV.ALIGNV_CENTER;
|
|
cfTitleOut.fillPattern = libxl.FillPattern.FILLPATTERN_SOLID;
|
|
cfTitleOut.patternForegroundColor = libxl.Color.COLOR_PINK;
|
|
|
|
var cfTitleEtc = book.addFormat();
|
|
cfTitleEtc.alignH = libxl.AlignH.ALIGNH_CENTER;
|
|
cfTitleEtc.alignV = libxl.AlignV.ALIGNV_CENTER;
|
|
cfTitleEtc.fillPattern = libxl.FillPattern.FILLPATTERN_SOLID;
|
|
cfTitleEtc.patternForegroundColor = libxl.Color.COLOR_TEAL_CL;
|
|
|
|
|
|
var sheet = book.addSheet("IOMap");
|
|
|
|
|
|
|
|
sheet.writeStr(0, 1, "INPUT", cfTitle);
|
|
sheet.setMerge(0, 0, 1, 3);
|
|
var cf = sheet.cellFormat(0, 1);
|
|
|
|
|
|
sheet.writeStr(1, 1, "Pin", cfTitleIn);
|
|
sheet.writeStr(1, 2, "Title", cfTitleIn);
|
|
sheet.writeStr(1, 3, "Remark", cfTitleIn);
|
|
|
|
|
|
sheet.writeStr(0, 5, "OUTPUT", cfTitle);
|
|
sheet.setMerge(0, 0, 5, 7);
|
|
|
|
|
|
sheet.writeStr(1, 5, "Pin", cfTitleOut);
|
|
sheet.writeStr(1, 6, "Title", cfTitleOut);
|
|
sheet.writeStr(1, 7, "Remark", cfTitleOut);
|
|
|
|
|
|
sheet.writeStr(0, 9, "ETC", cfTitle);
|
|
sheet.setMerge(0, 0, 9, 12);
|
|
|
|
|
|
sheet.writeStr(1, 9, "Dir", cfTitleEtc);
|
|
sheet.writeStr(1, 10, "Pin", cfTitleEtc);
|
|
sheet.writeStr(1, 11, "Title", cfTitleEtc);
|
|
sheet.writeStr(1, 12, "Remark", cfTitleEtc);
|
|
|
|
|
|
|
|
var row = 2;
|
|
for (int r = 0; r < fpIN.ActiveSheet.RowCount; r++)
|
|
{
|
|
var col = 1;
|
|
var pin = fpIN.ActiveSheet.Cells[r, 0].Value?.ToString() ?? string.Empty;
|
|
var title = fpIN.ActiveSheet.Cells[r, 1].Value?.ToString() ?? string.Empty;
|
|
var remark = fpIN.ActiveSheet.Cells[r, 2].Value?.ToString() ?? string.Empty;
|
|
|
|
sheet.writeStr(row, col++, pin);
|
|
sheet.writeStr(row, col++, title);
|
|
sheet.writeStr(row, col++, remark);
|
|
|
|
row += 1;
|
|
}
|
|
|
|
row = 2;
|
|
for (int r = 0; r < fpOut.ActiveSheet.RowCount; r++)
|
|
{
|
|
var col = 5;
|
|
var pin = fpOut.ActiveSheet.Cells[r, 0].Value?.ToString() ?? string.Empty;
|
|
var title = fpOut.ActiveSheet.Cells[r, 1].Value?.ToString() ?? string.Empty;
|
|
var remark = fpOut.ActiveSheet.Cells[r, 2].Value?.ToString() ?? string.Empty;
|
|
|
|
sheet.writeStr(row, col++, pin);
|
|
sheet.writeStr(row, col++, title);
|
|
sheet.writeStr(row, col++, remark);
|
|
|
|
row += 1;
|
|
}
|
|
|
|
row = 2;
|
|
for (int r = 0; r < fpEtc.ActiveSheet.RowCount; r++)
|
|
{
|
|
var col = 9;
|
|
var dir = fpEtc.ActiveSheet.Cells[r, 0].Value?.ToString() ?? string.Empty;
|
|
var pin = fpEtc.ActiveSheet.Cells[r, 1].Value?.ToString() ?? string.Empty;
|
|
var title = fpEtc.ActiveSheet.Cells[r, 2].Value?.ToString() ?? string.Empty;
|
|
var remark = fpEtc.ActiveSheet.Cells[r, 3].Value?.ToString() ?? string.Empty;
|
|
|
|
sheet.writeStr(row, col++, dir);
|
|
sheet.writeStr(row, col++, pin);
|
|
sheet.writeStr(row, col++, title);
|
|
sheet.writeStr(row, col++, remark);
|
|
|
|
row += 1;
|
|
}
|
|
|
|
|
|
book.save(sd.FileName);
|
|
util.RunExplorer(sd.FileName);
|
|
|
|
|
|
|
|
}
|
|
}
|
|
}
|