시간%추가

This commit is contained in:
chi
2025-06-18 13:23:46 +09:00
parent a1477fcdd1
commit ceffd28980

View File

@@ -107,6 +107,7 @@ namespace FPJ0000.JobReport_
var taCommon = new dsJobReportTableAdapters.CommonTableAdapter();
this.fpSpread1.Sheets[0].ColumnCount = 12;
//조회공정
this.fpSpread1.Sheets[0].Cells[3, 2].Value = tbProcess.Text;
@@ -119,6 +120,14 @@ namespace FPJ0000.JobReport_
//종료일:G4
this.fpSpread1.Sheets[0].Cells[3, 6].Value = dte.Value;
this.fpSpread1.Sheets[0].Cells[5, 11].BackColor = this.fpSpread1.Sheets[0].Cells[5, 10].BackColor;
this.fpSpread1.Sheets[0].Cells[5, 11].ForeColor = this.fpSpread1.Sheets[0].Cells[5, 10].ForeColor;
this.fpSpread1.Sheets[0].Cells[5, 11].Value = "총투입\n시간(%)";
fpSpread1.Sheets[0].Columns[11].HorizontalAlignment = FarPoint.Win.Spread.CellHorizontalAlignment.Center;
fpSpread1.Sheets[0].Columns[11].VerticalAlignment = FarPoint.Win.Spread.CellVerticalAlignment.Center;
fpSpread1.Sheets[0].AddSpanCell(5, 11, 2, 1);
//근문일수,시간
var vSD = dts.Value.ToShortDateString();
var vED = dte.Value.ToShortDateString();
@@ -290,14 +299,14 @@ namespace FPJ0000.JobReport_
foreach (var prcitem in prclist)
{
this.progressBar2.Value += 1;
var item = baseData.Where(t => t.type.Replace(" ","") == prcitem.memo.Replace(" ","")); //해당 프로세스에 해당하는 아이템을 가져온다
var item = baseData.Where(t => t.type.Replace(" ", "") == prcitem.memo.Replace(" ", "")); //해당 프로세스에 해당하는 아이템을 가져온다
//프로세스 이름 확인
if (prcitem.memo == null) prcitem.memo = string.Empty;
var processName = prcitem.memo.Trim();
this.fpSpread1.Sheets[0].Cells[row, 1].Value = processName;
if(processName== "Documentation (문서작업)")
if (processName == "Documentation (문서작업)")
{
}
@@ -324,7 +333,7 @@ namespace FPJ0000.JobReport_
if (colName != "*" && colName.isEmpty() == false)
{
//해당 이름에 해당하는 데이트 취합
var timeList = item.Where(t => t.svalue.Replace(" ","") == colName.Replace(" ",""));
var timeList = item.Where(t => t.svalue.Replace(" ", "") == colName.Replace(" ", ""));
if (timeList != null)
{
hrs = (double)timeList.Sum(t => t.hrs);
@@ -349,7 +358,9 @@ namespace FPJ0000.JobReport_
else fpSpread1.Sheets[0].Cells[row, maxcol].Value = othervalue;
}
sumOt = item.Sum(t => t.ot);
fpSpread1.Sheets[0].Cells[row, 7].CellType = numberCellType1;
fpSpread1.Sheets[0].Cells[row, 7].ParseFormatString = "N1";
@@ -358,16 +369,25 @@ namespace FPJ0000.JobReport_
fpSpread1.Sheets[0].Cells[row, 7].Formula = string.Format("SUM(C{0}:G{0})+K{0}", row + 1);
fpSpread1.Sheets[0].Cells[row, 8].Formula = string.Format("H{0}/$I$4", row + 1);
if (sumOt == 0.0) fpSpread1.Sheets[0].Cells[row, 9].Value = null; //OT합계
else fpSpread1.Sheets[0].Cells[row, 9].Value = sumOt; //OT합계
var tot_process_ot = item.Sum(t => t.ot);
var tot_process_hrs = item.Sum(t => t.hrs);
var tot_time = baseData.Sum(t => t.hrs) + baseData.Sum(t => t.ot);
if (tot_process_ot == 0.0) fpSpread1.Sheets[0].Cells[row, 9].Value = null; //OT합계
else fpSpread1.Sheets[0].Cells[row, 9].Value = tot_process_ot; //OT합계
var perc = ((tot_process_ot + tot_process_hrs) / tot_time) * 100.0; //총투입시간(%)
if (perc == 0.0) fpSpread1.Sheets[0].Cells[row, 11].Value = null;
else fpSpread1.Sheets[0].Cells[row, 11].Value = Math.Round(perc, 2);
this.fpSpread1.Sheets[0].Cells[row, 11].Border = this.fpSpread1.Sheets[0].Cells[row, 3].Border;
// process 의 휴가시간을 다시 계산한다.
if(processName == "휴가")
if (processName == "휴가")
{
}
var = baseData.Where(t => t.process.Replace(" ","") == processName.Replace(" ","") && t.svalue.Replace(" ", "") == "휴가");
var = baseData.Where(t => t.process.Replace(" ", "") == processName.Replace(" ", "") && t.svalue.Replace(" ", "") == "휴가");
if ( == null || .Count() < 1)
{
fpSpread1.Sheets[0].Cells[row, 10].Value = null;// 0.0; //휴가시간