private void GridColumnInit(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { /************************************************ * comment : SS의 Column의 Header를 설정한다. * * created by : * * modified by : bee-jae jung(2010-08-10-화요일) ************************************************/ try { Cursor.Current = Cursors.WaitCursor; SS.RPT_ColumnInit(); SS.RPT_AddBasicColumn("RES_ID", 0, 0, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 80); SS.RPT_AddBasicColumn("OPER", 0, 1, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 80); SS.RPT_AddBasicColumn("START_TIME", 0, 2, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 80); SS.RPT_AddBasicColumn("END_TIME", 0, 3, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 80); SS.RPT_AddBasicColumn("LOT_ID", 0, 4, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 80); SS.RPT_AddBasicColumn("↓", 0, 5, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 20); SS.RPT_AddBasicColumn("MAT_ID", 0, 6, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 120); SS.RPT_AddBasicColumn("PATTERN_NO", 0, 7, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 80); SS.RPT_AddBasicColumn("START_TIME", 0, 8, Visibles.False, Frozen.False, Align.Center, Merge.True, Formatter.String, 80); // 특정 Columns의 색상을 지정한다. SS.ActiveSheet.Columns[4].BackColor = Color.AliceBlue; } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); } finally { Cursor.Current = Cursors.Default; } }
private void ClearData(Miracom.SmartWeb.UI.Controls.udcFarPoint spread, char ProcStep) { try { } catch (Exception ex) { CmnFunction.ShowMsgBox("YLD041003() : " + ex.ToString()); } }
private void fnSSInitial(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { try { } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnSSInitial(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { /**************************************************** * Comment : SS의 Header를 설정한다. * * Created By : KIM-MINWOO(2010-10-04-월요일) * * Modified By :KIM-MINWOO(2010-10-04-월요일) ****************************************************/ try { Cursor.Current = Cursors.WaitCursor; SS.RPT_ColumnInit(); // CUSTOMER SS.RPT_AddBasicColumn("CUSTOMER", 0, 0, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 80); SS.RPT_AddBasicColumn("MM-2", 0, 1, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("MM-1", 0, 2, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("MM", 0, 3, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("WW-3", 0, 4, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("WW-2", 0, 5, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("WW-1", 0, 6, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("WW", 0, 7, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("DD-6", 0, 8, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("DD-5", 0, 9, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("DD-4", 0, 10, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("DD-3", 0, 11, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("DD-2", 0, 12, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("DD-1", 0, 13, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("DD", 0, 14, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnSSInitial(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { /**************************************************** * Comment : Spread Sheet의 Header를 설정한다. * * Created By : bee-jae jung(2016-06-15-수요일) * * Modified By : bee-jae jung(2016-06-15-수요일) ****************************************************/ int iIdx = 0; try { Cursor.Current = Cursors.WaitCursor; SS.RPT_ColumnInit(); SS.RPT_AddBasicColumn("WORK_MONTH", 0, iIdx + 0, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); SS.RPT_AddBasicColumn("CUSTOMER", 0, iIdx + 1, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); SS.RPT_AddBasicColumn("PACKAGE", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); SS.RPT_AddBasicColumn("RETURN_QTY_1", 0, iIdx + 3, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 100); SS.RPT_AddBasicColumn("RETURN_PRICE_1", 0, iIdx + 4, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 100); SS.RPT_AddBasicColumn("RECEIVE_QTY_1", 0, iIdx + 5, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 100); SS.RPT_AddBasicColumn("RECEIVE_PRICE_1", 0, iIdx + 6, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 100); SS.RPT_AddBasicColumn("ISSUE_QTY_1", 0, iIdx + 7, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 100); SS.RPT_AddBasicColumn("ISSUE_PRICE_1", 0, iIdx + 8, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 100); SS.RPT_AddBasicColumn("WIP_QTY_1", 0, iIdx + 9, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 100); SS.RPT_AddBasicColumn("WIP_PRICE_1", 0, iIdx + 10, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 100); SS.RPT_AddBasicColumn("SHIP_QTY_1", 0, iIdx + 11, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 100); SS.RPT_AddBasicColumn("SHIP_PRICE_1", 0, iIdx + 12, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 100); } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnMakeChart(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { /**************************************************** * Comment : DataTable의 데이터를 Chart에 표시한다. * * Created By : bee-jae jung(2011-03-28-월요일) * * Modified By : bee-jae jung(2011-03-28-월요일) ****************************************************/ int iRow = 0; int[] iRowDataY1; double dMaxY = 0, dMaxY_Temp = 0; String[] strSeries = new String[] { "당월(M)" }; try { Cursor.Current = Cursors.WaitCursor; // 2011-03-28-정비재 : DT에 데이터가 없으면 종료한다. if (SS.Sheets[0].RowCount <= 0) { return; } // 2011-03-28-정비재 : Chart에서 사용할 Data Row의 배열을 선언한다. iRowDataY1 = new int[SS.Sheets[0].RowCount]; // STEP 3 : Bar Chart에 대한 데이터를 배열에 입력한다. for (iRow = 0; iRow < iRowDataY1.Length; iRow++) { iRowDataY1[iRow] = (iRowDataY1.Length - 1) - iRow; } // 2015-12-02-정비재 : chart에 사용할 series title을 설정한다. if (rbS01.Checked == true) { strSeries = new String[] { "전월(M-1)", "당월(M)" }; } else if (rbS02.Checked == true) { strSeries = new String[] { "전월(M-2)", "전월(M-1)", "당월(M)" }; } else if (rbS03.Checked == true) { strSeries = new String[] { "전월(M-3)", "전월(M-2)", "전월(M-1)", "당월(M)" }; } else if (rbS04.Checked == true) { strSeries = new String[] { "전월(M-4)", "전월(M-3)", "전월(M-2)", "전월(M-1)", "당월(M)" }; } else if (rbS05.Checked == true) { strSeries = new String[] { "전월(M-5)", "전월(M-4)", "전월(M-3)", "전월(M-2)", "전월(M-1)", "당월(M)" }; } // STEP 1 : Chart를 이미지를 초기화 함 udcMSChart1.RPT_1_ChartInit(); // STEP 2 : Chart를 Display하는 데이터를 초기화 함. udcMSChart1.RPT_2_ClearData(); // STEP 3 : Chart를 그리기 위하여 Open udcMSChart1.RPT_3_OpenData(strSeries.Length, iRowDataY1.Length); // STEP 4 : BarChart 그리기 및 BarChart의 최대값 계산 if (rbS01.Checked == true) { dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 1 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 2 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); } else if (rbS02.Checked == true) { dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 1 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 2 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 3 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); } else if (rbS03.Checked == true) { dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 1 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 2 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 3 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 4 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); } else if (rbS04.Checked == true) { dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 1 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 2 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 3 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 4 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 5 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); } else if (rbS05.Checked == true) { dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 1 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 2 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 3 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 4 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 5 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 6 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); } // STEP 5 : Chart를 닫음 udcMSChart1.RPT_5_CloseData(); // STEP 6 : Chart를 Display한다. udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 0, 1, "", AsixType.Y, DataTypes.Initeger, dMaxY * 1.05); // STEP 7 : Chart의 X축의 Title을 설정한다. udcMSChart1.RPT_7_SetXAsixTitleUsingSpreadHeader(SS, 0, strSeries.Length); // STEP 8 : Chart의 series값으로 표시한다. udcMSChart1.RPT_8_SetSeriseLegend(strSeries, System.Windows.Forms.DataVisualization.Charting.Docking.Top); } catch (Exception ex) { LoadingPopUp.LoadingPopUpHidden(); CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnMakeChart(Miracom.SmartWeb.UI.Controls.udcFarPoint SS, int iselrow) { /**************************************************** * Comment : SS의 데이터를 Chart에 표시한다. * * Created By : KIM-MINWOO(2010-10-04-월요일) * * Modified By :KIM-MINWOO(2010-10-04-월요일) ****************************************************/ int[] ich_mm = new int[3]; int[] icols_mm = new int[3]; int[] irows_mm = new int[1]; string[] stitle_mm = new string[1]; int[] ich_ww = new int[4]; int[] icols_ww = new int[4]; int[] irows_ww = new int[1]; string[] stitle_ww = new string[1]; int[] ich_dd = new int[7]; int[] icols_dd = new int[7]; int[] irows_dd = new int[1]; string[] stitle_dd = new string[1]; int[] ich_md = new int[31]; int[] icols_md = new int[31]; int[] irows_md = new int[5]; string[] stitle_md = new string[5]; int icol = 0, irow = 0; try { Cursor.Current = Cursors.WaitCursor; if (SS.Sheets[0].RowCount <= 0) { return; } cf01.RPT_1_ChartInit(); cf02.RPT_1_ChartInit(); cf03.RPT_1_ChartInit(); cf01.RPT_2_ClearData(); cf02.RPT_2_ClearData(); cf03.RPT_2_ClearData(); cf01.AxisX.Title.Text = "Monthly Status"; cf01.AxisY.Title.Text = "DC YIELD"; cf01.Gallery = SoftwareFX.ChartFX.Gallery.Lines; cf01.AxisY.DataFormat.Format = 0; cf01.AxisY.DataFormat.Decimals = 2; cf01.AxisX.Staggered = false; cf01.PointLabels = true; for (icol = 0; icol < ich_mm.Length; icol++) { ich_mm[icol] = icol + 1; icols_mm[icol] = icol + 1; } for (irow = 0; irow < SS.Sheets[0].RowCount; irow++) { irows_mm[irow] = iselrow + irow; stitle_mm[irow] = SS.Sheets[0].Cells[iselrow + irow, 0].Text; } cf01.RPT_3_OpenData(irows_mm.Length, icols_mm.Length); cf01.RPT_4_AddData(SS, irows_mm, icols_mm, SeriseType.Rows); cf01.RPT_5_CloseData(); cf01.RPT_7_SetXAsixTitleUsingSpreadHeader(SS, 0, 1); cf01.RPT_8_SetSeriseLegend(stitle_mm, SoftwareFX.ChartFX.Docked.Top); // 주별 Chart cf02.AxisX.Title.Text = "Weekly Status"; cf02.AxisY.Title.Text = "DC YIELD"; cf02.Gallery = SoftwareFX.ChartFX.Gallery.Curve; cf02.AxisY.DataFormat.Format = 0; cf02.AxisY.DataFormat.Decimals = 2; cf02.AxisX.Staggered = false; cf02.PointLabels = true; for (icol = 0; icol < ich_ww.Length; icol++) { ich_ww[icol] = icol + 4; icols_ww[icol] = icol + 4; } for (irow = 0; irow < SS.Sheets[0].RowCount; irow++) { irows_ww[irow] = iselrow + irow; stitle_ww[irow] = SS.Sheets[0].Cells[iselrow + irow, 0].Text; } cf02.RPT_3_OpenData(irows_ww.Length, icols_ww.Length); cf02.RPT_4_AddData(SS, irows_ww, icols_ww, SeriseType.Rows); cf02.RPT_5_CloseData(); cf02.RPT_7_SetXAsixTitleUsingSpreadHeader(SS, 0, 4); cf02.RPT_8_SetSeriseLegend(stitle_ww, SoftwareFX.ChartFX.Docked.Top); // 일별 Chart cf03.AxisX.Title.Text = "Daily Status"; cf03.AxisY.Title.Text = "DC YIELD"; cf03.Gallery = SoftwareFX.ChartFX.Gallery.Curve; cf03.AxisY.DataFormat.Format = 0; cf03.AxisY.DataFormat.Decimals = 2; cf03.AxisX.Staggered = false; cf03.PointLabels = true; for (icol = 0; icol < ich_dd.Length; icol++) { ich_dd[icol] = icol + 8; icols_dd[icol] = icol + 8; } for (irow = 0; irow < SS.Sheets[0].RowCount; irow++) { irows_dd[irow] = iselrow + irow; stitle_dd[irow] = SS.Sheets[0].Cells[iselrow + irow, 0].Text; } cf03.RPT_3_OpenData(irows_dd.Length, icols_dd.Length); cf03.RPT_4_AddData(SS, irows_dd, icols_dd, SeriseType.Rows); cf03.RPT_5_CloseData(); cf03.RPT_7_SetXAsixTitleUsingSpreadHeader(SS, 0, 8); cf03.RPT_8_SetSeriseLegend(stitle_dd, SoftwareFX.ChartFX.Docked.Top); } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
//기준날짜 선택 시 검사건, 불량건 수량 차트 private void fnMakeChart(Miracom.SmartWeb.UI.Controls.udcFarPoint SS, int iselrow) { // SS의 데이터를 Chart에 표시 int[] ich_mm = new int[iselrow]; int[] icols_mm = new int[iselrow]; int[] irows_mm = new int[iselrow]; string[] stitle_mm = new string[1]; int[] yield_rows = new int[iselrow]; int icol = 0, irow = 0; try { System.Windows.Forms.Cursor.Current = Cursors.WaitCursor; if (SS.Sheets[0].RowCount <= 0) { return; } //cf01.RPT_1_ChartInit(); //cf02.RPT_1_ChartInit(); //cf01.RPT_2_ClearData(); //cf02.RPT_2_ClearData(); udcMSChart1.RPT_1_ChartInit(); udcMSChart2.RPT_1_ChartInit(); udcMSChart1.RPT_2_ClearData(); udcMSChart2.RPT_2_ClearData(); //cf01.AxisX.Staggered = false; //cf01 // ms chart에서 기능 확인 필요 for (icol = 0; icol < ich_mm.Length; icol++) { icols_mm[icol] = icol; } for (irow = 0; irow < irows_mm.Length; irow++) { irows_mm[irow] = irow; yield_rows[irow] = irow; } //cf02.AxisX.Staggered = false; //cf02 for (icol = 0; icol < ich_mm.Length; icol++) { icols_mm[icol] = icol; } for (irow = 0; irow < irows_mm.Length; irow++) { irows_mm[irow] = irow; yield_rows[irow] = irow; } String legendDescShip = ""; String legendDescLoss = ""; //cf01.RPT_3_OpenData(1, icols_mm.Length); //cf02.RPT_3_OpenData(1, icols_mm.Length); //double max1 = cf01.RPT_4_AddData(SS, irows_mm, new int[] { 2 }, SeriseType.Column); //double max2 = cf02.RPT_4_AddData(SS, irows_mm, new int[] { 3 }, SeriseType.Column); //cf01.RPT_5_CloseData(); //cf02.RPT_5_CloseData(); //cf01.RPT_6_SetGallery(ChartType.Bar, 0, 1, legendDescShip, AsixType.Y, DataTypes.Initeger, max1 * 1.2); //cf02.RPT_6_SetGallery(ChartType.Bar, 1, 1, legendDescLoss, AsixType.Y, DataTypes.Initeger, max2 * 1.2); //최대값 넉넉히 //cf01.Series[0].PointLabels = true; //cf02.Series[0].PointLabels = true; //포인트 라벨 //cf01.RPT_7_SetXAsixTitleUsingSpread(SS, irows_mm, 1); //cf02.RPT_7_SetXAsixTitleUsingSpread(SS, irows_mm, 1); //x축 대표라벨 //cf01.RPT_8_SetSeriseLegend(new string[] { "검사건" }, SoftwareFX.ChartFX.Docked.Top); //cf02.RPT_8_SetSeriseLegend(new string[] { "불량건" }, SoftwareFX.ChartFX.Docked.Top); //cf01.AxisY.Gridlines = true; //cf02.AxisY.Gridlines = true; //눈금라벨 //cf01.AxisY.DataFormat.Decimals = 0; //cf02.AxisY.DataFormat.Decimals = 0; //cf01.AxisX.Font = new System.Drawing.Font("Tahoma", 8F); //cf02.AxisX.Font = new System.Drawing.Font("Tahoma", 8F); //글씨체,크키 조절 udcMSChart1.RPT_3_OpenData(1, icols_mm.Length); udcMSChart2.RPT_3_OpenData(1, icols_mm.Length); double max1 = udcMSChart1.RPT_4_AddData(SS, irows_mm, new int[] { 2 }, SeriseType.Column); double max2 = udcMSChart2.RPT_4_AddData(SS, irows_mm, new int[] { 3 }, SeriseType.Column); udcMSChart1.RPT_6_SetGallery(SeriesChartType.Column, 0, 1, legendDescShip, AsixType.Y, DataTypes.Initeger, max1 * 1.2); udcMSChart2.RPT_6_SetGallery(SeriesChartType.Column, 0, 1, legendDescLoss, AsixType.Y, DataTypes.Initeger, max2 * 1.2); //최대값 넉넉히 udcMSChart1.Series[0].IsValueShownAsLabel = true; udcMSChart2.Series[0].IsValueShownAsLabel = true; //포인트 라벨 udcMSChart1.Series[0]["DrawingStyle"] = "Cylinder"; udcMSChart2.Series[0]["DrawingStyle"] = "Cylinder"; udcMSChart1.RPT_7_SetXAsixTitleUsingSpread(SS, irows_mm, 1); udcMSChart2.RPT_7_SetXAsixTitleUsingSpread(SS, irows_mm, 1); //x축 대표라벨 udcMSChart1.RPT_8_SetSeriseLegend(new string[] { "검사건" }, System.Windows.Forms.DataVisualization.Charting.Docking.Top); udcMSChart2.RPT_8_SetSeriseLegend(new string[] { "불량건" }, System.Windows.Forms.DataVisualization.Charting.Docking.Top); udcMSChart1.ChartAreas[0].AxisX.MajorGrid.LineWidth = 0; udcMSChart2.ChartAreas[0].AxisX.MajorGrid.LineWidth = 0; udcMSChart1.Legends[0].Alignment = StringAlignment.Center; udcMSChart2.Legends[0].Alignment = StringAlignment.Center; //MS CHART //chart1.Series[0].Points.Clear(); //chart2.Series[0].Points.Clear(); //chart1.Series[0].LegendText = "검사건"; //chart2.Series[0].LegendText = "불량건"; //chart1.Series[0]["DrawingStyle"] = "Cylinder"; //chart2.Series[0]["DrawingStyle"] = "Cylinder"; //chart1.Series[0].ChartType = SeriesChartType.Column; //chart2.Series[0].ChartType = SeriesChartType.Column; //for (int a = 0; a < SS.Sheets[0].RowCount; a++ ) //{ // string userDesc = SS.Sheets[0].Cells[a, 1].Value.ToString(); //"USER_DESC" // int tot = Convert.ToInt32(SS.Sheets[0].Cells[a, 2].Value); //"TOT_SHIPMENT" 검사건 // int loss = Convert.ToInt32(SS.Sheets[0].Cells[a, 3].Value); //"LOSS_SHIPMENT" 불량건 // chart1.Series[0].Points.AddXY(userDesc, tot); // chart2.Series[0].Points.AddXY(userDesc, loss); //} } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { System.Windows.Forms.Cursor.Current = Cursors.Default; } }
//공정 미선택 시 LOSS 수량과 YIELD 차트 private void fnMakeChart2(Miracom.SmartWeb.UI.Controls.udcFarPoint SS, int iselrow) { /**************************************************** * Comment : SS의 데이터를 Chart에 표시한다. * * Created By : min-woo kim(2010-10-20) * * Modified By : min-woo kim(2010-10-20) ****************************************************/ int[] ich_mm = new int[iselrow - 1]; int[] icols_mm = new int[iselrow - 1]; int[] irows_mm = new int[iselrow - 1]; string[] stitle_mm = new string[1]; int[] yield_rows = new int[iselrow - 1]; int icol = 0, irow = 0; try { Cursor.Current = Cursors.WaitCursor; if (SS.Sheets[0].RowCount <= 0) { return; } cf02.RPT_1_ChartInit(); cf02.RPT_2_ClearData(); cf02.AxisX.Staggered = false; for (icol = 0; icol < ich_mm.Length; icol++) { icols_mm[icol] = icol + 1; } for (irow = 0; irow < irows_mm.Length; irow++) { irows_mm[irow] = irow + 1; yield_rows[irow] = irow + 1; } String legendDescLoss = "LOSS [단위 : pcs]"; String legendDescYield = "YIELD [단위 :%]"; cf02.RPT_3_OpenData(2, icols_mm.Length); double max1 = cf02.RPT_4_AddData(SS, irows_mm, new int[] { 4 }, SeriseType.Column); double max2 = cf02.RPT_4_AddData(SS, irows_mm, new int[] { 3 }, SeriseType.Column); cf02.RPT_5_CloseData(); cf02.RPT_6_SetGallery(ChartType.Bar, 0, 1, legendDescLoss, AsixType.Y, DataTypes.Initeger, max1 * 1.2); cf02.RPT_6_SetGallery(ChartType.Line, 1, 1, legendDescYield, AsixType.Y2, DataTypes.Initeger, max2 * 1.2); cf02.Series[0].PointLabels = true; cf02.Series[1].PointLabels = true; cf02.RPT_7_SetXAsixTitleUsingSpread(SS, irows_mm, 0); cf02.RPT_8_SetSeriseLegend(new string[] { "LOSS", "YIELD" }, SoftwareFX.ChartFX.Docked.Top); cf02.AxisY.Gridlines = true; cf02.AxisY2.Gridlines = true; cf02.AxisY.DataFormat.Decimals = 0; cf02.AxisY2.DataFormat.Decimals = 3; cf02.AxisY2.Step = 1; cf02.AxisY2.Max = 100; cf02.AxisY2.Min = 97; } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnSSInitial(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { /**************************************************** * Comment : SS의 Header를 설정한다. * * Created By : bee-jae jung(2010-05-11-화요일) * * Modified By : bee-jae jung(2010-05-11-화요일) ****************************************************/ int iIdx = 0; try { Cursor.Current = Cursors.WaitCursor; SS.RPT_ColumnInit(); // CUSTOMER if (udcWIPCondition1.Text != "ALL" && udcWIPCondition1.Text != "") { iIdx = 0; SS.RPT_AddBasicColumn("CUSTOMER", 0, iIdx, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // FAMILY if (udcWIPCondition2.Text != "ALL" && udcWIPCondition2.Text != "") { iIdx++; SS.RPT_AddBasicColumn("FAMILY", 0, iIdx, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // PACKAGE if (udcWIPCondition3.Text != "ALL" && udcWIPCondition3.Text != "") { iIdx++; SS.RPT_AddBasicColumn("PACKAGE", 0, iIdx, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // TYPE1 if (udcWIPCondition4.Text != "ALL" && udcWIPCondition4.Text != "") { iIdx++; SS.RPT_AddBasicColumn("TYPE1", 0, iIdx, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // TYPE2 if (udcWIPCondition5.Text != "ALL" && udcWIPCondition5.Text != "") { iIdx++; SS.RPT_AddBasicColumn("TYPE2", 0, iIdx, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // LEAD COUNT if (udcWIPCondition6.Text != "ALL" && udcWIPCondition6.Text != "") { iIdx++; SS.RPT_AddBasicColumn("LEAD_COUNT", 0, iIdx, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // DENSITY if (udcWIPCondition7.Text != "ALL" && udcWIPCondition7.Text != "") { iIdx++; SS.RPT_AddBasicColumn("DENSITY", 0, iIdx, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // GENERATION if (udcWIPCondition8.Text != "ALL" && udcWIPCondition8.Text != "") { iIdx++; SS.RPT_AddBasicColumn("GENERATION", 0, iIdx, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } if (iIdx > 0) { iIdx++; } switch (SS.Name.ToUpper()) { case "SS01": SS.RPT_AddBasicColumn("USER_ID", 0, iIdx, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 80); SS.RPT_AddBasicColumn("USER_DESC", 0, iIdx + 1, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); SS.RPT_AddBasicColumn("FAIL_PERCENT", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("RETURN_PERCENT", 0, iIdx + 3, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double2, 80); SS.RPT_AddBasicColumn("TOTAL_QTY", 0, iIdx + 4, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("PASS_QTY", 0, iIdx + 5, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("FAIL_QTY", 0, iIdx + 6, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("RETURN_QTY", 0, iIdx + 7, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("DEFECT_QTY", 0, iIdx + 8, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); break; case "SS02": SS.RPT_AddBasicColumn("DEFECT_CODE", 0, iIdx, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); SS.RPT_AddBasicColumn("DEFECT_DESC", 0, iIdx + 1, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); SS.RPT_AddBasicColumn("DEFECT_QTY", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); // 2010-05-11-정비재 : 일자별로 가로로 출력하는 것은 추후에 작업할 것 //spdData.RPT_AddDynamicColumn(cdvFromToDate, 0, 13, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 70); break; } } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnSSInitial(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { /**************************************************** * comment : ss의 header를 설정한다. * * created by : bee-jae jung(2010-07-23-금요일) * * modified by : bee-jae jung(2010-07-23-금요일) ****************************************************/ string qry = ""; int iindex = 0; Formatter nf; try { Cursor.Current = Cursors.WaitCursor; SS.RPT_ColumnInit(); // CUSTOMER if (udcWIPCondition1.Text != "ALL" && udcWIPCondition1.Text != "") { iindex = 0; SS.RPT_AddBasicColumn("CUSTOMER", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // FAMILY if (udcWIPCondition2.Text != "ALL" && udcWIPCondition2.Text != "") { iindex++; SS.RPT_AddBasicColumn("FAMILY", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // PACKAGE if (udcWIPCondition3.Text != "ALL" && udcWIPCondition3.Text != "") { iindex++; SS.RPT_AddBasicColumn("PACKAGE", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // TYPE1 if (udcWIPCondition4.Text != "ALL" && udcWIPCondition4.Text != "") { iindex++; SS.RPT_AddBasicColumn("TYPE1", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // TYPE2 if (udcWIPCondition5.Text != "ALL" && udcWIPCondition5.Text != "") { iindex++; SS.RPT_AddBasicColumn("TYPE2", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // LEAD COUNT if (udcWIPCondition6.Text != "ALL" && udcWIPCondition6.Text != "") { iindex++; SS.RPT_AddBasicColumn("LEAD_COUNT", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // DENSITY if (udcWIPCondition7.Text != "ALL" && udcWIPCondition7.Text != "") { iindex++; SS.RPT_AddBasicColumn("DENSITY", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // GENERATION if (udcWIPCondition8.Text != "ALL" && udcWIPCondition8.Text != "") { iindex++; SS.RPT_AddBasicColumn("GENERATION", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 40); } // 2010-07-23-정비재 : 검색구분에 따라서 숫자 format을 설정한다. if (rb01.Checked == true) { nf = Formatter.Double3; } else { nf = Formatter.Number; } // 2010-07-20-정비재 : sheet의 headeer를 설정한다. SS.RPT_AddBasicColumn("Classification", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); SS.RPT_AddBasicColumn("Period average", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Double3, 100); // 2010-07-23-정비재 : 기준일자(basedate) 기준으로 일자를 설정한다. qry = "SELECT SUBSTR(TO_CHAR(TO_DATE('" + cdvBaseDate.Value.ToString("yyyyMMdd") + "', 'YYYYMMDD') - 7, 'YYYYMMDD'), -4) AS DD_7\n" + " , SUBSTR(TO_CHAR(TO_DATE('" + cdvBaseDate.Value.ToString("yyyyMMdd") + "', 'YYYYMMDD') - 6, 'YYYYMMDD'), -4) AS DD_6\n" + " , SUBSTR(TO_CHAR(TO_DATE('" + cdvBaseDate.Value.ToString("yyyyMMdd") + "', 'YYYYMMDD') - 5, 'YYYYMMDD'), -4) AS DD_5\n" + " , SUBSTR(TO_CHAR(TO_DATE('" + cdvBaseDate.Value.ToString("yyyyMMdd") + "', 'YYYYMMDD') - 4, 'YYYYMMDD'), -4) AS DD_4\n" + " , SUBSTR(TO_CHAR(TO_DATE('" + cdvBaseDate.Value.ToString("yyyyMMdd") + "', 'YYYYMMDD') - 3, 'YYYYMMDD'), -4) AS DD_3\n" + " , SUBSTR(TO_CHAR(TO_DATE('" + cdvBaseDate.Value.ToString("yyyyMMdd") + "', 'YYYYMMDD') - 2, 'YYYYMMDD'), -4) AS DD_2\n" + " , SUBSTR(TO_CHAR(TO_DATE('" + cdvBaseDate.Value.ToString("yyyyMMdd") + "', 'YYYYMMDD') - 1, 'YYYYMMDD'), -4) AS DD_1\n" + " FROM DUAL"; if (GlobalVariable.gsUserGroup == "ADMIN_GROUP" || GlobalVariable.gsUserGroup == "HANA_ADMIN_GROUP") { Clipboard.SetText(qry.Replace((char)Keys.Tab, ' ')); } dt = CmnFunction.oComm.GetFuncDataTable("DYNAMIC", qry.Replace((char)Keys.Tab, ' ')); if (dt.Rows.Count <= 0) { SS.RPT_AddBasicColumn("DD-7", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn("DD-6", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn("DD-5", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn("DD-4", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn("DD-3", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn("DD-2", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn("DD-1", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); } else { SS.RPT_AddBasicColumn(dt.Rows[0][0].ToString(), 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn(dt.Rows[0][1].ToString(), 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn(dt.Rows[0][2].ToString(), 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn(dt.Rows[0][3].ToString(), 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn(dt.Rows[0][4].ToString(), 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn(dt.Rows[0][5].ToString(), 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); SS.RPT_AddBasicColumn(dt.Rows[0][6].ToString(), 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, nf, 100); } dt.Dispose(); } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnMakeChart(Miracom.SmartWeb.UI.Controls.udcFarPoint SS, int iselrow, int iselcol) { /**************************************************** * Comment : SS의 데이터를 Chart에 표시한다. * * Created By : bee-jae jung(2010-07-23-금요일) * * Modified By : bee-jae jung(2010-07-23-금요일) ****************************************************/ int[] ich_dd; int[] icols_dd; int[] irows_dd; string[] stitle_dd; int icol = 0, irow = 0; //int idecimalposition = 0; //string sxtitle = "", sytitle = ""; try { Cursor.Current = Cursors.WaitCursor; // 2010-07-23-정비재 : SS에 데이터가 없으면 종료한다. if (SS.Sheets[0].RowCount <= 0) { return; } // 2010-07-23-정비재 : 검색조건에 따라서 Chart에 Display하는 숫자의 Format을 달리한다. //if (rb01.Checked == true) //{ // idecimalposition = 3; // sxtitle = "가동율(%)"; // sytitle = "설비 가동율"; //} //else //{ // idecimalposition = 0; // sxtitle = "Down Time(초)"; // sytitle = "설비 Down Time 현황"; //} // 2010-07-23-정비재 : 검색된 데이터 건 수 만큼 배열을 생성한다. ich_dd = new int[SS.Sheets[0].ColumnCount - 2]; icols_dd = new int[SS.Sheets[0].ColumnCount - 2]; irows_dd = new int[SS.Sheets[0].RowCount]; stitle_dd = new string[SS.Sheets[0].RowCount]; for (icol = 0; icol < ich_dd.Length; icol++) { ich_dd[icol] = iselcol + icol; icols_dd[icol] = iselcol + icol; } for (irow = 0; irow < SS.Sheets[0].RowCount; irow++) { irows_dd[irow] = iselrow + irow; stitle_dd[irow] = SS.Sheets[0].Cells[iselrow + irow, 0].Text; } // 2010-07-23-정비재 : Display할 Chart를 초기화 한다. udcMSChart1.RPT_1_ChartInit(); udcMSChart1.RPT_2_ClearData(); udcMSChart1.RPT_3_OpenData(irows_dd.Length, icols_dd.Length); udcMSChart1.RPT_4_AddData(SS, irows_dd, icols_dd, SeriseType.Rows); udcMSChart1.RPT_5_CloseData(); udcMSChart1.RPT_7_SetXAsixTitleUsingSpreadHeader(SS, 0, stitle_dd.Length); udcMSChart1.RPT_8_SetSeriseLegend(stitle_dd, System.Windows.Forms.DataVisualization.Charting.Docking.Top); } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnSSInitial(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { /**************************************************** * Comment : SS의 Header를 설정한다. * * Created By : bee-jae jung(2010-08-30-월요일) * * Modified By : bee-jae jung(2010-11-29-월요일) ****************************************************/ int iIdx = 0; try { Cursor.Current = Cursors.WaitCursor; SS.RPT_ColumnInit(); if (rbSearch01.Checked == true || rbSearch02.Checked == true) { SS.RPT_AddBasicColumn("Customer", 0, iIdx + 0, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); SS.RPT_AddBasicColumn("PACKAGE", 0, iIdx + 1, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); if (rbSearch01.Checked == true) { // 2010-11-29-정비재 : 일자별 SS.RPT_AddBasicColumn("WORK_DATE", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); } else if (rbSearch02.Checked == true) { // 2010-11-29-정비재 : 월별 SS.RPT_AddBasicColumn("WORK_MONTH", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); } SS.RPT_AddBasicColumn("RETURN_LOT", 0, iIdx + 3, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("RETURN_QTY", 0, iIdx + 4, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("RECEIVE_LOT", 0, iIdx + 5, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("RECEIVE_QTY", 0, iIdx + 6, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("ISSUE_LOT", 0, iIdx + 7, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("ISSUE_QTY", 0, iIdx + 8, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("WIP_LOT", 0, iIdx + 9, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("WIP_QTY", 0, iIdx + 10, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("SHIP_LOT", 0, iIdx + 11, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("SHIP_QTY", 0, iIdx + 12, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); } else if (rbSearch03.Checked == true || rbSearch04.Checked == true) { if (rbSearch03.Checked == true) { // 2010-11-29-정비재 : 일자별 SS.RPT_AddBasicColumn("WORK_DATE", 0, iIdx + 0, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); } else if (rbSearch04.Checked == true) { // 2010-11-29-정비재 : 월별 SS.RPT_AddBasicColumn("WORK_MONTH", 0, iIdx + 0, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); } SS.RPT_AddBasicColumn("RETURN_LOT", 0, iIdx + 1, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("RETURN_QTY", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("RECEIVE_LOT", 0, iIdx + 3, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("RECEIVE_QTY", 0, iIdx + 4, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("ISSUE_LOT", 0, iIdx + 5, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("ISSUE_QTY", 0, iIdx + 6, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("WIP_LOT", 0, iIdx + 7, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("WIP_QTY", 0, iIdx + 8, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("SHIP_LOT", 0, iIdx + 9, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); SS.RPT_AddBasicColumn("SHIP_QTY", 0, iIdx + 10, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 80); } } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnMakeChart(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { /**************************************************** * Comment : SS의 데이터를 Chart에 표시한다. * * Created By : bee-jae jung(2010-08-30-월요일) * * Modified By : bee-jae jung(2010-11-29-월요일) ****************************************************/ int iRow = 0; double dMaxY = 0, dMaxY_Temp = 0, dMaxY2 = 0, dMaxY2_Temp = 0; try { Cursor.Current = Cursors.WaitCursor; // 2010-11-29-정비재 : SS에 데이터가 없으면 종료한다. if (SS.Sheets[0].RowCount <= 0) { return; } // 2010-11-29-정비재 : Chart에서 Ship수량을 빼고 Chart를 그리기 위하여 int[] iRowDataY1 = new int[SS.Sheets[0].RowCount]; int[] iRowDataY2 = new int[SS.Sheets[0].RowCount]; // 2010-09-01-정비재 : Qty 및 Time에 대한 Bar Chart를 Display한다. for (iRow = 0; iRow < iRowDataY1.Length; iRow++) { iRowDataY1[iRow] = (iRowDataY1.Length - 1) - iRow; iRowDataY2[iRow] = (iRowDataY1.Length - 1) - iRow; } String[] strSeries = new String[] { "RETURN_LOT", "RETURN_QTY", "RECEIVE_LOT", "RECEIVE_QTY" , "ISSUE_LOT", "ISSUE_QTY", "WIP_LOT", "WIP_QTY" , "SHIP_LOT", "SHIP_QTY" }; // STEP 1 : Chart를 이미지를 초기화 함 udcMSChart1.RPT_1_ChartInit(); // STEP 2 : Chart를 Display하는 데이터를 초기화 함. udcMSChart1.RPT_2_ClearData(); // STEP 3 : Chart를 그리기 위하여 Open udcMSChart1.RPT_3_OpenData(strSeries.Length, iRowDataY1.Length); // 2015-12-02-정비재 : 검색조건에 맞는 chart를 그린다. if (rbSearch01.Checked == true || rbSearch02.Checked == true) { // STEP 4 : 입력된 데이터로 Chart를 Display한다. // 2010-11-29-정비재 : BarChart 그리기 및 BarChart의 최대값 계산 dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 3 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 5 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 7 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 9 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 11 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); // 2010-11-29-정비재 : LineChart 그리기 및 LineChart의 최대값 계산 dMaxY2_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY2, new int[] { 4 }, SeriseType.Column); dMaxY2 = (dMaxY2_Temp > dMaxY2 == true ? dMaxY2_Temp : dMaxY2); dMaxY2_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY2, new int[] { 6 }, SeriseType.Column); dMaxY2 = (dMaxY2_Temp > dMaxY2 == true ? dMaxY2_Temp : dMaxY2); dMaxY2_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY2, new int[] { 8 }, SeriseType.Column); dMaxY2 = (dMaxY2_Temp > dMaxY2 == true ? dMaxY2_Temp : dMaxY2); dMaxY2_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY2, new int[] { 10 }, SeriseType.Column); dMaxY2 = (dMaxY2_Temp > dMaxY2 == true ? dMaxY2_Temp : dMaxY2); dMaxY2_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY2, new int[] { 12 }, SeriseType.Column); dMaxY2 = (dMaxY2_Temp > dMaxY2 == true ? dMaxY2_Temp : dMaxY2); // STEP 5 : Chart를 닫음 udcMSChart1.RPT_5_CloseData(); // STEP 6 : Chart를 Display한다. // 2010-11-29-정비재 : BarChart를 그림 udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 0, 1, "LOT 건 수", AsixType.Y, DataTypes.Initeger, dMaxY * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 1, 1, "LOT 건 수", AsixType.Y, DataTypes.Initeger, dMaxY * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 2, 1, "LOT 건 수", AsixType.Y, DataTypes.Initeger, dMaxY * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 3, 1, "LOT 건 수", AsixType.Y, DataTypes.Initeger, dMaxY * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 4, 1, "LOT 건 수", AsixType.Y, DataTypes.Initeger, dMaxY * 1.1); // 2010-09-01-정비재 : LineChart를 그림 udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 5, 1, "QTY(수량)", AsixType.Y2, DataTypes.Initeger, dMaxY2 * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 6, 1, "QTY(수량)", AsixType.Y2, DataTypes.Initeger, dMaxY2 * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 7, 1, "QTY(수량)", AsixType.Y2, DataTypes.Initeger, dMaxY2 * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 8, 1, "QTY(수량)", AsixType.Y2, DataTypes.Initeger, dMaxY2 * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 9, 1, "QTY(수량)", AsixType.Y2, DataTypes.Initeger, dMaxY2 * 1.1); } else if (rbSearch03.Checked == true || rbSearch04.Checked == true) { // STEP 4 : 입력된 데이터로 Chart를 Display한다. // 2010-11-30-정비재 : BarChart 그리기 및 BarChart의 최대값 계산 dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 1 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 3 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 5 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 7 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); dMaxY_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY1, new int[] { 9 }, SeriseType.Column); dMaxY = (dMaxY_Temp > dMaxY == true ? dMaxY_Temp : dMaxY); // 2010-11-30-정비재 : LineChart 그리기 및 LineChart의 최대값 계산 dMaxY2_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY2, new int[] { 2 }, SeriseType.Column); dMaxY2 = (dMaxY2_Temp > dMaxY2 == true ? dMaxY2_Temp : dMaxY2); dMaxY2_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY2, new int[] { 4 }, SeriseType.Column); dMaxY2 = (dMaxY2_Temp > dMaxY2 == true ? dMaxY2_Temp : dMaxY2); dMaxY2_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY2, new int[] { 6 }, SeriseType.Column); dMaxY2 = (dMaxY2_Temp > dMaxY2 == true ? dMaxY2_Temp : dMaxY2); dMaxY2_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY2, new int[] { 8 }, SeriseType.Column); dMaxY2 = (dMaxY2_Temp > dMaxY2 == true ? dMaxY2_Temp : dMaxY2); dMaxY2_Temp = udcMSChart1.RPT_4_AddData(SS, iRowDataY2, new int[] { 10 }, SeriseType.Column); dMaxY2 = (dMaxY2_Temp > dMaxY2 == true ? dMaxY2_Temp : dMaxY2); // STEP 5 : Chart를 닫음 udcMSChart1.RPT_5_CloseData(); // STEP 6 : Chart를 Display한다. // 2010-11-30-정비재 : BarChart를 그림 udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 0, 1, "LOT 건 수", AsixType.Y, DataTypes.Initeger, dMaxY * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 1, 1, "LOT 건 수", AsixType.Y, DataTypes.Initeger, dMaxY * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 2, 1, "LOT 건 수", AsixType.Y, DataTypes.Initeger, dMaxY * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 3, 1, "LOT 건 수", AsixType.Y, DataTypes.Initeger, dMaxY * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 4, 1, "LOT 건 수", AsixType.Y, DataTypes.Initeger, dMaxY * 1.1); // 2010-09-01-정비재 : LineChart를 그림 udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 5, 1, "QTY(수량)", AsixType.Y2, DataTypes.Initeger, dMaxY2 * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 6, 1, "QTY(수량)", AsixType.Y2, DataTypes.Initeger, dMaxY2 * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 7, 1, "QTY(수량)", AsixType.Y2, DataTypes.Initeger, dMaxY2 * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 8, 1, "QTY(수량)", AsixType.Y2, DataTypes.Initeger, dMaxY2 * 1.1); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 9, 1, "QTY(수량)", AsixType.Y2, DataTypes.Initeger, dMaxY2 * 1.1); } // STEP 7 : Chart의 X축의 Title을 설정한다. udcMSChart1.RPT_7_SetXAsixTitleUsingSpread(SS, iRowDataY1, strSeries.Length); udcMSChart1.RPT_8_SetSeriseLegend(strSeries, System.Windows.Forms.DataVisualization.Charting.Docking.Top); } catch (Exception ex) { LoadingPopUp.LoadingPopUpHidden(); CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnSSInitial(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { /**************************************************** * comment : ss의 header를 설정한다. * * created by : bee-jae jung(2010-07-20-화요일) * * modified by : bee-jae jung(2010-07-20-화요일) ****************************************************/ int iindex = 0; try { Cursor.Current = Cursors.WaitCursor; SS.RPT_ColumnInit(); // CUSTOMER if (udcWIPCondition1.Text != "ALL" && udcWIPCondition1.Text != "") { iindex = 0; SS.RPT_AddBasicColumn("CUSTOMER", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 40); } // FAMILY if (udcWIPCondition2.Text != "ALL" && udcWIPCondition2.Text != "") { iindex++; SS.RPT_AddBasicColumn("FAMILY", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 40); } // PACKAGE if (udcWIPCondition3.Text != "ALL" && udcWIPCondition3.Text != "") { iindex++; SS.RPT_AddBasicColumn("PACKAGE", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 40); } // TYPE1 if (udcWIPCondition4.Text != "ALL" && udcWIPCondition4.Text != "") { iindex++; SS.RPT_AddBasicColumn("TYPE1", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 40); } // TYPE2 if (udcWIPCondition5.Text != "ALL" && udcWIPCondition5.Text != "") { iindex++; SS.RPT_AddBasicColumn("TYPE2", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 40); } // LEAD COUNT if (udcWIPCondition6.Text != "ALL" && udcWIPCondition6.Text != "") { iindex++; SS.RPT_AddBasicColumn("LEAD_COUNT", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 40); } // DENSITY if (udcWIPCondition7.Text != "ALL" && udcWIPCondition7.Text != "") { iindex++; SS.RPT_AddBasicColumn("DENSITY", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 40); } // GENERATION if (udcWIPCondition8.Text != "ALL" && udcWIPCondition8.Text != "") { iindex++; SS.RPT_AddBasicColumn("GENERATION", 0, iindex, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 40); } // 2010-07-20-정비재 : sheet의 headeer를 설정한다. SS.RPT_AddBasicColumn("GCT_PROJECT_NO", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("GCT_DEVICE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("PACKAGE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 100); SS.RPT_AddBasicColumn("LD_COUNT", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 100); SS.RPT_AddBasicColumn("DIMENSION", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 100); SS.RPT_AddBasicColumn("CUSTOMER_DEVICE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("WFR_LOT_ID", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 100); SS.RPT_AddBasicColumn("GCT_ASSY_LOT_ID", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("GCT_TEST_LOT_ID", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("VENDOR_LOT_ID", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("PROD_RLSESCHED_NO", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("VENDOR_ORDER_NO", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("TEST_RCVD_QTY", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("TEST_RCVD_DATE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("TEST_QUE", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("TEST_START_DATE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("FINAL_TEST_CAS_OS", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("QA_EL_TEST", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("TEST_HOLD", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("LOT_HOLD_DATE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("LOT_HOLD_REL_DATE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("TEST_OUT_QTY", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("TEST_OUT_FCST_DATE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("TEST_OUT_DATE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("VM", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("BAKE", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("TNR", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("PACK", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("PACK_OUT_QTY", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("PACK_OUT_DATE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("FGS", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("SHIP_OUT_QTY", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("FCST_SHIP_DATE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("ACT_SHIP_DATE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("CUST_REQ_DATE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("PR_NO", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("TEST_PO", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("HOLD_CODE", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("REJECT", 0, iindex++, Visibles.True, Frozen.False, Align.Right, Merge.False, Formatter.Number, 120); SS.RPT_AddBasicColumn("REMARK", 0, iindex++, Visibles.True, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); SS.RPT_AddBasicColumn("UPDATE_TIME", 0, iindex++, Visibles.False, Frozen.False, Align.Center, Merge.False, Formatter.String, 120); } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnSSInitial(Miracom.SmartWeb.UI.Controls.udcFarPoint SS) { /**************************************************** * Comment : SS의 Header를 설정한다. * * Created By : bee-jae jung(2011-03-28-월요일) * * Modified By : bee-jae jung(2011-03-28-월요일) ****************************************************/ int iIdx = 0; try { Cursor.Current = Cursors.WaitCursor; SS.RPT_ColumnInit(); SS.RPT_AddBasicColumn("classification", 0, iIdx + 0, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.String, 100); if (rbS01.Checked == true) { SS.RPT_AddBasicColumn("Last month (M-1)", 0, iIdx + 1, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Current month (M)", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); } else if (rbS02.Checked == true) { SS.RPT_AddBasicColumn("Last month (M-2)", 0, iIdx + 1, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Last month (M-1)", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Current month (M)", 0, iIdx + 3, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); } else if (rbS03.Checked == true) { SS.RPT_AddBasicColumn("Last month (M-3)", 0, iIdx + 1, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Last month (M-2)", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Last month (M-1)", 0, iIdx + 3, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Current month (M)", 0, iIdx + 4, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); } else if (rbS04.Checked == true) { SS.RPT_AddBasicColumn("Last month (M-4)", 0, iIdx + 1, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Last month (M-3)", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Last month (M-2)", 0, iIdx + 3, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Last month (M-1)", 0, iIdx + 4, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Current month (M)", 0, iIdx + 5, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); } else if (rbS05.Checked == true) { SS.RPT_AddBasicColumn("Last month (M-5)", 0, iIdx + 1, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Last month (M-4)", 0, iIdx + 2, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Last month (M-3)", 0, iIdx + 3, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Last month (M-2)", 0, iIdx + 4, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Last month (M-1)", 0, iIdx + 5, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); SS.RPT_AddBasicColumn("Current month (M)", 0, iIdx + 6, Visibles.True, Frozen.False, Align.Center, Merge.True, Formatter.Number, 100); } fnSSSortInit(); } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
// 공정 선택 시 불량율 차트 private void fnMakeChart3(Miracom.SmartWeb.UI.Controls.udcFarPoint SS, int iselrow) { /**************************************************** * Comment : SS의 데이터를 Chart에 표시한다. * * Created By : bee-jae jung(2010-06-28-월요일) * * Modified By : bee-jae jung(2010-06-28-월요일) ****************************************************/ int[] ich_mm = new int[6]; int[] icols_mm = new int[6]; int[] irows_mm = new int[1]; string[] stitle_mm = new string[1]; int[] ich_ww = new int[iselrow - 1]; int[] icols_ww = new int[iselrow - 1]; int[] irows_ww = new int[iselrow]; string[] stitle_ww = new string[iselrow]; try { Cursor.Current = Cursors.WaitCursor; if (SS.Sheets[0].RowCount <= 0) { return; } cf01.RPT_1_ChartInit(); cf01.RPT_2_ClearData(); // 2010-10-19-정비재 : 불량현황을 Chart에 Display한다. cf01.AxisX.Title.Text = "불량현황"; cf01.Gallery = SoftwareFX.ChartFX.Gallery.Pie; cf01.LeftGap = 1; cf01.RightGap = 1; cf01.TopGap = 1; cf01.BottomGap = 1; cf01.AxisY.DataFormat.Format = 0; //cf01.AxisY.DataFormat.Decimals = 2; cf01.AxisX.Staggered = false; cf01.PointLabels = true; icols_mm[0] = 3; icols_mm[1] = 5; icols_mm[2] = 7; icols_mm[3] = 9; icols_mm[4] = 11; icols_mm[5] = 13; irows_mm[0] = iselrow; stitle_mm[0] = SS.Sheets[0].Cells[iselrow, 0].Text; cf01.RPT_3_OpenData(irows_mm.Length, icols_mm.Length); cf01.RPT_4_AddData(SS, irows_mm, icols_mm, SeriseType.Rows); cf01.RPT_5_CloseData(); // 차트의 헤더를 이용한 타이틀이 아닌 직접 타이틀 입력 //cf01.RPT_7_SetXAsixTitleUsingSpreadHeader(SS, 1, 6); cf01.Legend[0] = SS.Sheets[0].Cells[iselrow, 2].Text; cf01.Legend[1] = SS.Sheets[0].Cells[iselrow, 4].Text; cf01.Legend[2] = SS.Sheets[0].Cells[iselrow, 6].Text; cf01.Legend[3] = SS.Sheets[0].Cells[iselrow, 8].Text; cf01.Legend[4] = SS.Sheets[0].Cells[iselrow, 10].Text; cf01.Legend[5] = SS.Sheets[0].Cells[iselrow, 12].Text; cf01.RPT_8_SetSeriseLegend(stitle_mm, SoftwareFX.ChartFX.Docked.Top); cf01.AxisY.DataFormat.Decimals = 0; } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnMakeChart(Miracom.SmartWeb.UI.Controls.udcFarPoint SS, Int32 iCellRowCount, String sCustomer) { /**************************************************** * Comment : SS의 데이터를 Chart에 표시한다. * * Created By : bee-jae jung(2016-06-15-수요일) * * Modified By : bee-jae jung(2016-06-15-수요일) ****************************************************/ Int32 iRow = 0, iSelectRowCount = 0; Int32[] iSelectRow_MM, iSelectCol_MM; String[] sSelectRow_MM; Double dChartMax = 0; try { Cursor.Current = Cursors.WaitCursor; // 2016-06-20-정비재 : SS에 데이터가 없으면 종료한다. if (SS.Sheets[0].RowCount <= 0) { return; } // 2016-06-20-정비재 : 선택한 cell을 chart에 표시하기 위하여 row count를 계산한다. for (iRow = 0; iRow < iCellRowCount; iRow++) { if (SS.Sheets[0].Cells[iRow, 1].Text == sCustomer) { iSelectRowCount++; } } // 2016-06-20-정비재 : 선택한 고객사의 package수 만큼 데이터 배열을 생성한다. iSelectRow_MM = new Int32[iSelectRowCount]; sSelectRow_MM = new String[iSelectRowCount]; // 2016-06-20-정비재 : 선택한 고객사의 package이름을 배열에 입력한다. iSelectRowCount = 0; for (iRow = 0; iRow < iCellRowCount; iRow++) { if (SS.Sheets[0].Cells[iRow, 1].Text == sCustomer) { iSelectRow_MM[iSelectRowCount] = iRow; sSelectRow_MM[iSelectRowCount] = SS.Sheets[0].Cells[iRow, 2].Text; iSelectRowCount++; } } // 2016-06-20-정비재 : 선택한 고객사의 package에 대한 수량, 금액정보를 배열에 저장한다. iSelectCol_MM = new Int32[4]; if (rbS01.Checked == true) { iSelectCol_MM = new Int32[] { 3, 5, 7, 9, 11 }; } else { iSelectCol_MM = new Int32[] { 4, 6, 8, 10, 12 }; } // 2016-06-20-정비재 : 변수에 저장된 데이터를 이용하여 chart에 표시한다. udcMSChart1.RPT_1_ChartInit(); udcMSChart1.RPT_2_ClearData(); udcMSChart1.ChartAreas[0].AxisX.Title = sCustomer; udcMSChart1.ChartAreas[0].AxisX.TitleFont = new System.Drawing.Font("Tahoma", 10.25F); udcMSChart1.ChartAreas[0].AxisY.Title = "매출현황"; udcMSChart1.RPT_3_OpenData(iSelectRow_MM.Length, iSelectCol_MM.Length); dChartMax = udcMSChart1.RPT_4_AddData(SS, iSelectRow_MM, iSelectCol_MM, SeriseType.Rows); udcMSChart1.RPT_5_CloseData(); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Bar, 0, 1, "", AsixType.Y, DataTypes.Initeger, dChartMax * 1.05); udcMSChart1.RPT_7_SetXAsixTitleUsingSpreadHeader(SS, 0, 2); udcMSChart1.RPT_8_SetSeriseLegend(sSelectRow_MM, System.Windows.Forms.DataVisualization.Charting.Docking.Top); } catch (Exception ex) { LoadingPopUp.LoadingPopUpHidden(); CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnMakeChart(Miracom.SmartWeb.UI.Controls.udcFarPoint SS, int iselrow) { /**************************************************** * Comment : SS의 데이터를 Chart에 표시한다. * * Created By : min-woo kim(2010-10-05-화요일) * * Modified By : min-woo kim(2010-10-05-화요일) ****************************************************/ int[] ich_mm = new int[iselrow]; int[] icols_mm = new int[iselrow]; int[] irows_mm = new int[iselrow - 1]; string[] stitle_mm = new string[iselrow]; int icol = 0, irow = 0; try { Cursor.Current = Cursors.WaitCursor; if (SS.Sheets[0].RowCount <= 0) { return; } udcChartFX1.RPT_1_ChartInit(); udcChartFX1.RPT_2_ClearData(); udcChartFX1.AxisY.Font = new System.Drawing.Font("Tahoma", 8.25F); udcChartFX1.AxisX.Font = new System.Drawing.Font("Tahoma", 8.25F); udcChartFX1.AxisX.Title.Text = "DC TREND"; udcChartFX1.AxisX.Title.Font = new System.Drawing.Font("Tahoma", 13.25F); udcChartFX1.AxisY.Title.Text = "yield"; udcChartFX1.AxisX.Staggered = false; for (icol = 0; icol < ich_mm.Length; icol++) { ich_mm[icol] = icol + 1; icols_mm[icol] = icol + 1; } for (irow = 0; irow < irows_mm.Length; irow++) { irows_mm[irow] = irow + 1; //stitle_mm[irow] = SS.Sheets[0].Cells[irow, 0].Text; } udcChartFX1.RPT_3_OpenData(1, icols_mm.Length - 1); double max1 = udcChartFX1.RPT_4_AddData(SS, irows_mm, new int[] { 10 }, SeriseType.Column); //double max1 = udcChartFX1.RPT_4_AddData(spdData, new int[] { 2 }, icols_mm, SeriseType.Rows); udcChartFX1.RPT_5_CloseData(); //udcChartFX1.RPT_6_SetGallery(ChartType.Line, 0, 1, "", AsixType.Y, DataTypes.Double2, 100); //udcChartFX1.RPT_7_SetXAsixTitleUsingSpreadHeader(SS, 0, 1); udcChartFX1.RPT_7_SetXAsixTitleUsingSpread(SS, irows_mm, 12); //udcChartFX1.RPT_8_SetSeriseLegend(stitle_mm, SoftwareFX.ChartFX.Docked.Bottom); udcChartFX1.Gallery = SoftwareFX.ChartFX.Gallery.Scatter; udcChartFX1.MarkerShape = SoftwareFX.ChartFX.MarkerShape.Circle; udcChartFX1.MarkerSize = 1; udcChartFX1.AxisY.Max = Convert.ToDouble(txtYield.Text); udcChartFX1.AxisY.Min = Convert.ToDouble(txtYield.Text) - 1; udcChartFX1.AxisY.Step = 0.1; udcChartFX1.AxisY.LabelsFormat.Decimals = 2; } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private bool fnDataFind() { /**************************************************** * Comment : DataBase에 저장된 데이터를 조회한다. * * Created By : KIM-MINWOO(2010-10-04-월요일) * * Modified By :KIM-MINWOO(2010-10-04-월요일) ****************************************************/ DataTable dt = null; Miracom.SmartWeb.UI.Controls.udcFarPoint SS = null; string QRY = ""; try { Cursor.Current = Cursors.WaitCursor; LoadingPopUp.LoadIngPopUpShow(this); CmnInitFunction.ClearList(SS01, true); // 검색 날짜의 주차 가져오기 DataTable dt1 = null; dt1 = null; dt1 = CmnFunction.oComm.GetFuncDataTable("DYNAMIC", MakeSqlString2(cdvBaseDate.Value.ToString("yyyyMMdd"))); string week = dt1.Rows[0][0].ToString(); // 검색 날짜의 주차 가져오기(-1) dt1 = null; dt1 = CmnFunction.oComm.GetFuncDataTable("DYNAMIC", MakeSqlString2(cdvBaseDate.Value.AddDays(-7).ToString("yyyyMMdd"))); string week_1 = dt1.Rows[0][0].ToString(); // 검색 날짜의 주차 가져오기(-2) dt1 = null; dt1 = CmnFunction.oComm.GetFuncDataTable("DYNAMIC", MakeSqlString2(cdvBaseDate.Value.AddDays(-14).ToString("yyyyMMdd"))); string week_2 = dt1.Rows[0][0].ToString(); // 검색 날짜의 주차 가져오기(-3) dt1 = null; dt1 = CmnFunction.oComm.GetFuncDataTable("DYNAMIC", MakeSqlString2(cdvBaseDate.Value.AddDays(-21).ToString("yyyyMMdd"))); string week_3 = dt1.Rows[0][0].ToString(); QRY = "SELECT CUSTOMER \n" + " , NVL(ROUND(DC_OUT_QTY_MM_2/DECODE(DC_IN_QTY_MM_2,0,1,DC_IN_QTY_MM_2) * 100,2),0) AS MM_2 \n" + " , NVL(ROUND(DC_OUT_QTY_MM_1/DECODE(DC_IN_QTY_MM_1,0,1,DC_IN_QTY_MM_1) * 100,2),0) AS MM_1 \n" + " , NVL(ROUND(DC_OUT_QTY_MM/DECODE(DC_IN_QTY_MM,0,1,DC_IN_QTY_MM) * 100,2),0) AS MM \n" + " , ROUND(DC_OUT_QTY_WW_3/DECODE(DC_IN_QTY_WW_3,0,1,DC_IN_QTY_WW_3) * 100,2) AS WW_3 \n" + " , ROUND(DC_OUT_QTY_WW_2/DECODE(DC_IN_QTY_WW_2,0,1,DC_IN_QTY_WW_2) * 100,2) AS WW_2 \n" + " , ROUND(DC_OUT_QTY_WW_1/DECODE(DC_IN_QTY_WW_1,0,1,DC_IN_QTY_WW_1) * 100,2) AS WW_1 \n" + " , ROUND(DC_OUT_QTY_WW/DECODE(DC_IN_QTY_WW,0,1,DC_IN_QTY_WW) * 100,2) AS WW \n" + " , ROUND(DC_OUT_QTY_DD_6/DECODE(DC_IN_QTY_DD_6,0,1,DC_IN_QTY_DD_6) * 100,2) AS DD_6 \n" + " , ROUND(DC_OUT_QTY_DD_5/DECODE(DC_IN_QTY_DD_5,0,1,DC_IN_QTY_DD_5) * 100,2) AS DD_5 \n" + " , ROUND(DC_OUT_QTY_DD_4/DECODE(DC_IN_QTY_DD_4,0,1,DC_IN_QTY_DD_4) * 100,2) AS DD_4 \n" + " , ROUND(DC_OUT_QTY_DD_3/DECODE(DC_IN_QTY_DD_3,0,1,DC_IN_QTY_DD_3) * 100,2) AS DD_3 \n" + " , ROUND(DC_OUT_QTY_DD_2/DECODE(DC_IN_QTY_DD_2,0,1,DC_IN_QTY_DD_2) * 100,2) AS DD_2 \n" + " , ROUND(DC_OUT_QTY_DD_1/DECODE(DC_IN_QTY_DD_1,0,1,DC_IN_QTY_DD_1) * 100,2) AS DD_1 \n" + " , ROUND(DC_OUT_QTY_DD/DECODE(DC_IN_QTY_DD,0,1,DC_IN_QTY_DD) * 100,2) AS DD \n" + " FROM( \n" + "SELECT CUSTOMER AS CUSTOMER \n" + " , SUM(DECODE(WORK_MONTH,'"+ cdvBaseDate.Value.AddMonths(-2).ToString("yyyyMM") + "', DC_IN_QTY,0)) AS DC_IN_QTY_MM_2 \n" + " , SUM(DECODE(WORK_MONTH,'"+ cdvBaseDate.Value.AddMonths(-1).ToString("yyyyMM") + "', DC_IN_QTY,0)) AS DC_IN_QTY_MM_1 \n" + " , SUM(DECODE(WORK_MONTH,'"+ cdvBaseDate.Value.ToString("yyyyMM") + "', DC_IN_QTY,0)) AS DC_IN_QTY_MM \n" + " , SUM(DECODE(WORK_MONTH,'"+ cdvBaseDate.Value.AddMonths(-2).ToString("yyyyMM") + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_MM_2 \n" + " , SUM(DECODE(WORK_MONTH,'"+ cdvBaseDate.Value.AddMonths(-1).ToString("yyyyMM") + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_MM_1 \n" + " , SUM(DECODE(WORK_MONTH,'"+ cdvBaseDate.Value.ToString("yyyyMM") + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_MM \n" + " , SUM(DECODE(PLAN_WEEK,'"+ week_3 + "', DC_IN_QTY,0)) AS DC_IN_QTY_WW_3 \n" + " , SUM(DECODE(PLAN_WEEK,'"+ week_2 + "', DC_IN_QTY,0)) AS DC_IN_QTY_WW_2 \n" + " , SUM(DECODE(PLAN_WEEK,'"+ week_1 + "', DC_IN_QTY,0)) AS DC_IN_QTY_WW_1 \n" + " , SUM(DECODE(PLAN_WEEK,'"+ week + "', DC_IN_QTY,0)) AS DC_IN_QTY_WW \n" + " , SUM(DECODE(PLAN_WEEK,'"+ week_3 + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_WW_3 \n" + " , SUM(DECODE(PLAN_WEEK,'"+ week_2 + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_WW_2 \n" + " , SUM(DECODE(PLAN_WEEK,'"+ week_1 + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_WW_1 \n" + " , SUM(DECODE(PLAN_WEEK,'"+ week + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_WW \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-6).ToString("yyyyMMdd") + "', DC_IN_QTY,0)) AS DC_IN_QTY_DD_6 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-5).ToString("yyyyMMdd") + "', DC_IN_QTY,0)) AS DC_IN_QTY_DD_5 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-4).ToString("yyyyMMdd") + "', DC_IN_QTY,0)) AS DC_IN_QTY_DD_4 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-3).ToString("yyyyMMdd") + "', DC_IN_QTY,0)) AS DC_IN_QTY_DD_3 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-2).ToString("yyyyMMdd") + "', DC_IN_QTY,0)) AS DC_IN_QTY_DD_2 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-1).ToString("yyyyMMdd") + "', DC_IN_QTY,0)) AS DC_IN_QTY_DD_1 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.ToString("yyyyMMdd") + "', DC_IN_QTY,0)) AS DC_IN_QTY_DD \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-6).ToString("yyyyMMdd") + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_DD_6 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-5).ToString("yyyyMMdd") + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_DD_5 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-4).ToString("yyyyMMdd") + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_DD_4 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-3).ToString("yyyyMMdd") + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_DD_3 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-2).ToString("yyyyMMdd") + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_DD_2 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.AddDays(-1).ToString("yyyyMMdd") + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_DD_1 \n" + " , SUM(DECODE(WORK_DATE,'"+ cdvBaseDate.Value.ToString("yyyyMMdd") + "', DC_OUT_QTY,0)) AS DC_OUT_QTY_DD \n" + " FROM (" + " SELECT A.*, B.PLAN_WEEK FROM RSUMDCLHIS A, MWIPCALDEF B \n" + " WHERE A.WORK_DATE = B.SYS_DATE \n" + " ANd B.CALENDAR_ID = 'SE' \n" + " AND CUSTOMER = '" + cdvCustomer.Text + "' \n" + " AND LOT_ID LIKE '" + txtLotID.Text + "' \n" + " AND MAT_ID LIKE '" + txtSearchProduct.Text + "' \n"; #region 상세 조회에 따른 SQL문 생성 if (udcWIPCondition1.Text != "ALL" && udcWIPCondition1.Text != "") { //QRY += " AND CUSTOMER " + udcWIPCondition1.SelectedValueToQueryString + "\n"; if (udcWIPCondition2.Text != "ALL" && udcWIPCondition2.Text != "") { QRY += " AND FAMILY "+ udcWIPCondition2.SelectedValueToQueryString + "\n"; } } if (udcWIPCondition3.Text != "ALL" && udcWIPCondition3.Text != "") { QRY += " AND PKG "+ udcWIPCondition3.SelectedValueToQueryString + "\n"; } if (udcWIPCondition4.Text != "ALL" && udcWIPCondition4.Text != "") { QRY += " AND TYPE1 "+ udcWIPCondition4.SelectedValueToQueryString + "\n"; } if (udcWIPCondition5.Text != "ALL" && udcWIPCondition5.Text != "") { QRY += " AND TYPE2 "+ udcWIPCondition5.SelectedValueToQueryString + "\n"; } if (udcWIPCondition6.Text != "ALL" && udcWIPCondition6.Text != "") { QRY += " AND LD_COUNT "+ udcWIPCondition6.SelectedValueToQueryString + "\n"; } if (udcWIPCondition7.Text != "ALL" && udcWIPCondition7.Text != "") { QRY += " AND DENSITY "+ udcWIPCondition7.SelectedValueToQueryString + "\n"; } if (udcWIPCondition8.Text != "ALL" && udcWIPCondition8.Text != "") { QRY += " AND GENERATION "+ udcWIPCondition8.SelectedValueToQueryString + "\n"; } if (udcRASCondition6.Text != "ALL" && udcRASCondition6.Text != "") { QRY += " AND (BG_RES_ID "+ udcRASCondition6.SelectedValueToQueryString + "\n"; QRY += " OR SAW_RES_ID "+ udcRASCondition6.SelectedValueToQueryString + "\n"; QRY += " OR DA1_RES_ID "+ udcRASCondition6.SelectedValueToQueryString + "\n"; QRY += " OR DA2_RES_ID "+ udcRASCondition6.SelectedValueToQueryString + "\n"; QRY += " OR DA3_RES_ID "+ udcRASCondition6.SelectedValueToQueryString + "\n"; QRY += " OR WB1_RES_ID "+ udcRASCondition6.SelectedValueToQueryString + "\n"; QRY += " OR WB2_RES_ID "+ udcRASCondition6.SelectedValueToQueryString + "\n"; QRY += " OR WB3_RES_ID "+ udcRASCondition6.SelectedValueToQueryString + "\n"; QRY += " OR MD_RES_ID "+ udcRASCondition6.SelectedValueToQueryString + ")\n"; } #endregion QRY += " )GROUP BY CUSTOMER)"; if (GlobalVariable.gsUserGroup == "ADMIN_GROUP" || GlobalVariable.gsUserGroup == "HANA_ADMIN_GROUP") { System.Windows.Forms.Clipboard.SetText(QRY.Replace((char)Keys.Tab, ' ')); } dt = CmnFunction.oComm.GetFuncDataTable("DYNAMIC", QRY.Replace((char)Keys.Tab, ' ')); if (dt.Rows.Count == 0) { dt.Dispose(); LoadingPopUp.LoadingPopUpHidden(); CmnFunction.ShowMsgBox(RptMessages.GetMessage("STD010", GlobalVariable.gcLanguage)); return(false); } SS = SS01; SS.DataSource = dt; SS.RPT_AutoFit(false); fnMakeChart(SS, 0); return(true); } catch (Exception ex) { LoadingPopUp.LoadingPopUpHidden(); MessageBox.Show(ex.Message); return(false); } finally { LoadingPopUp.LoadingPopUpHidden(); Cursor.Current = Cursors.Default; } }
// 불량율 차트 private void fnMakeChart(Miracom.SmartWeb.UI.Controls.udcFarPoint SS, int iselrow) { /**************************************************** * Comment : SS의 데이터를 Chart에 표시한다. * * Created By : min-woo kim(2010-10-20) * * Modified By : min-woo kim(2010-10-20) ****************************************************/ int[] ich_mm = new int[6]; int[] icols_mm = new int[dtLoss.Rows.Count]; int[] irows_mm = new int[1]; string[] stitle_mm = new string[1]; int[] ich_ww = new int[iselrow - 1]; int[] icols_ww = new int[iselrow - 1]; int[] irows_ww = new int[iselrow]; string[] stitle_ww = new string[iselrow]; try { Cursor.Current = Cursors.WaitCursor; if (SS.Sheets[0].RowCount <= 0) { return; } cf01.RPT_1_ChartInit(); cf01.RPT_2_ClearData(); cf01.AxisX.Title.Text = "Defect Status"; cf01.Gallery = SoftwareFX.ChartFX.Gallery.Pie; cf01.LeftGap = 1; cf01.RightGap = 1; cf01.TopGap = 1; cf01.BottomGap = 1; cf01.AxisY.DataFormat.Format = 0; cf01.AxisX.Staggered = false; cf01.PointLabels = true; for (int i = 0; i < dtLoss.Rows.Count; i++) { icols_mm[i] = 9 + i; } irows_mm[0] = iselrow; stitle_mm[0] = SS.Sheets[0].Cells[iselrow, 0].Text; cf01.RPT_3_OpenData(irows_mm.Length, icols_mm.Length); cf01.RPT_4_AddData(SS, irows_mm, icols_mm, SeriseType.Rows); cf01.RPT_5_CloseData(); //cf01.RPT_7_SetXAsixTitleUsingSpreadHeader(SS, 1, 6); //cf01.Legend[0] = "LOSS_123";// SS.Sheets[0].Cells[0, 7].Text; for (int i = 0; i < dtLoss.Rows.Count; i++) { cf01.Legend[i] = SS.Sheets[0].Columns[9 + i].Label; } cf01.RPT_8_SetSeriseLegend(stitle_mm, SoftwareFX.ChartFX.Docked.Top); cf01.AxisY.DataFormat.Decimals = 0; } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }
private void fnMakeChart(Miracom.SmartWeb.UI.Controls.udcFarPoint SS, int iselrow) { /**************************************************** * Comment : SS의 데이터를 Chart에 표시한다. * * Created By : min-woo kim(2010-07-06-화요일) * * Modified By : min-woo kim(2010-07-06-화요일) ****************************************************/ int[] ich_mm = new int[8]; int[] icols_mm = new int[8]; int[] irows_mm = new int[iselrow]; string[] stitle_mm = new string[iselrow]; int icol = 0, irow = 0; try { Cursor.Current = Cursors.WaitCursor; // 2015-12-02-정비재 : 데이터가 없을 경우 종료 if (SS.Sheets[0].RowCount <= 0) { return; } // 2015-12-02-정비재 : chart에 표시할 데이터를 배열 변수에 입력한다. for (icol = 0; icol < ich_mm.Length; icol++) { ich_mm[icol] = icol + 1; icols_mm[icol] = icol + 1; } for (irow = 0; irow < irows_mm.Length; irow++) { irows_mm[irow] = irow; stitle_mm[irow] = SS.Sheets[0].Cells[irow, 0].Text; } // 2015-12-02-정비재 : chart를 초기화 한다. udcMSChart1.RPT_1_ChartInit(); udcMSChart1.RPT_2_ClearData(); // 2015-12-02-정비재 : chart의 title을 설정한다. if (cdvFactory.Text == GlobalVariable.gsAssyDefaultFactory) { udcMSChart1.ChartAreas[0].AxisX.Title = "ASSY 달성율현황"; } else if (cdvFactory.Text == GlobalVariable.gsTestDefaultFactory) { udcMSChart1.ChartAreas[0].AxisX.Title = "TEST 달성율현황"; } else { udcMSChart1.ChartAreas[0].AxisX.Title = "달성율현황"; } udcMSChart1.ChartAreas[0].AxisY.Title = "Achievement rate"; udcMSChart1.ChartAreas[0].AxisX.TitleFont = new System.Drawing.Font("Tahoma", 10.25F); udcMSChart1.RPT_3_OpenData(irows_mm.Length, icols_mm.Length); double max1 = udcMSChart1.RPT_4_AddData(SS, irows_mm, icols_mm, SeriseType.Rows); udcMSChart1.RPT_5_CloseData(); udcMSChart1.RPT_6_SetGallery(System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Line, 0, 1, "", AsixType.Y, DataTypes.Initeger, max1 * 1.05); udcMSChart1.RPT_7_SetXAsixTitleUsingSpreadHeader(SS, 0, 1); udcMSChart1.RPT_8_SetSeriseLegend(stitle_mm, System.Windows.Forms.DataVisualization.Charting.Docking.Top); } catch (Exception ex) { CmnFunction.ShowMsgBox(ex.Message); return; } finally { Cursor.Current = Cursors.Default; } }