private void BindWeatherReportToTable(object weatherDatasource, CellRange bindingRange)
        {
            Worksheet sheet = spreadsheetControl1.Document.Worksheets[0];

            // Remove all data bindings bound to the specified data source.
            sheet.DataBindings.Remove(weatherDatasource);

            // Specify the binding options.
            ExternalDataSourceOptions dsOptions = new ExternalDataSourceOptions();

            dsOptions.ImportHeaders      = true;
            dsOptions.CellValueConverter = new MyWeatherConverter();
            dsOptions.SkipHiddenRows     = true;

            // Create a table and bind the data source to the table.
            try {
                WorksheetTableDataBinding sheetDataBinding = sheet.DataBindings.BindTableToDataSource(weatherDatasource, bindingRange, dsOptions);
                sheetDataBinding.Table.Style = spreadsheetControl1.Document.TableStyles[BuiltInTableStyleId.TableStyleMedium14];

                // Adjust the column width.
                sheetDataBinding.Range.AutoFitColumns();
            }
            catch (Exception e) {
                MessageBox.Show(e.Message, "Binding Exception");
            }
        }
        private void BindWeatherReportToRange(object weatherDatasource, CellRange bindingRange)
        {
            Worksheet sheet = spreadsheetControl1.Document.Worksheets[0];

            // Check for range conflicts.
            var dataBindingConflicts = sheet.DataBindings.
                                       Where(d => (d.Range.RightColumnIndex >= bindingRange.LeftColumnIndex) || (d.Range.BottomRowIndex >= bindingRange.TopRowIndex));

            if (dataBindingConflicts.Count() > 0)
            {
                MessageBox.Show("Cannot bind the range to data.\r\nThe worksheet contains other binding ranges which may conflict.", "Range Conflict");
                return;
            }

            // Specify the binding options.
            ExternalDataSourceOptions dsOptions = new ExternalDataSourceOptions();

            dsOptions.ImportHeaders      = true;
            dsOptions.CellValueConverter = new MyWeatherConverter();
            dsOptions.SkipHiddenRows     = true;

            // Bind the data source to the worksheet range.
            WorksheetDataBinding sheetDataBinding = sheet.DataBindings.BindToDataSource(weatherDatasource, bindingRange, dsOptions);

            // Adjust the column width.
            sheetDataBinding.Range.AutoFitColumns();
        }
        private void barBtnBindMyFishes_ItemClick(object sender, DevExpress.Xpf.Bars.ItemClickEventArgs e)
        {
            // Specify the binding options.
            ExternalDataSourceOptions dsOptions = new ExternalDataSourceOptions();

            dsOptions.ImportHeaders = true;
            // Bind the data source to the worksheet range.
            this.fishesDataBinding = spreadsheetControl1.Document.Worksheets[0].DataBindings.BindToDataSource(MyFishesSource.Data, 2, 5, dsOptions);
            // Highlight the binding range.
            this.fishesDataBinding.Range.FillColor = System.Drawing.Color.LightCyan;
            // Adjust column width.
            spreadsheetControl1.Document.Worksheets[0].Range.FromLTRB(5, 2, this.fishesDataBinding.Range.RightColumnIndex, this.fishesDataBinding.Range.BottomRowIndex).AutoFitColumns();
        }
Exemple #4
0
        private void BindingDataSource()
        {
            run();

            Workbook = spreadsheetControl1.Document;
            Workbook.LoadDocument(@"Document\situation.xlsx", DocumentFormat.Xlsx);

            IWorkbook workbook = spreadsheetControl1.Document;

            Worksheet worksheet = Workbook.Worksheets[0];

            workbook.BeginUpdate();
            try
            {
                ExternalDataSourceOptions options = new ExternalDataSourceOptions()
                {
                    ImportHeaders = true
                };


                worksheet.DataBindings.Clear();
                worksheet.Columns.ClearOutline();



                //worksheet.DataBindings.BindTableToDataSource(null);
                worksheet.DataBindings.BindTableToDataSource(dataView, 4, 1, options);

                worksheet.Cells.AutoFitColumns();
                worksheet.Cells.AutoFitRows();
                worksheet.Cells.Alignment.Horizontal     = SpreadsheetHorizontalAlignment.Left;
                worksheet.Cells.Style.Alignment.Vertical = SpreadsheetVerticalAlignment.Top;
                worksheet.ActiveView.Zoom = 80;



                //worksheet.RowColumnHeadersVisible = false;
            }
            finally
            {
                workbook.EndUpdate();
            }
        }
 private void BindWeatherReport(object weatherDatasource)
 {
     if (this.weatherDataBinding != null)
     {
         spreadsheetControl1.Document.Worksheets[0].DataBindings.Remove(this.weatherDataBinding);
     }
     #region #BindTheList
     // Specify the binding options.
     ExternalDataSourceOptions dsOptions = new ExternalDataSourceOptions();
     dsOptions.ImportHeaders      = true;
     dsOptions.CellValueConverter = new MyWeatherConverter();
     dsOptions.SkipHiddenRows     = true;
     // Bind the data source to the worksheet range.
     Worksheet            sheet            = spreadsheetControl1.Document.Worksheets[0];
     WorksheetDataBinding sheetDataBinding = sheet.DataBindings.BindToDataSource(weatherDatasource, 2, 1, dsOptions);
     #endregion #BindTheList
     this.weatherDataBinding = sheetDataBinding;
     // Highlight the binding range.
     this.weatherDataBinding.Range.FillColor = System.Drawing.Color.Lavender;
     // Adjust column width.
     spreadsheetControl1.Document.Worksheets[0].Range.FromLTRB(1, 1, this.weatherDataBinding.Range.RightColumnIndex, this.weatherDataBinding.Range.BottomRowIndex).AutoFitColumns();
 }
Exemple #6
0
        private void btnCmd_Click(object pSender, EventArgs pEventArgs)
        {
            SimpleButton pCmd = pSender as SimpleButton;

            string sCls = pCmd.Name.Substring(6, 2);

            switch (sCls)
            {
            case "10":

                try
                {
                    CoFAS_DevExpressManager.SetCursor(this, Cursors.WaitCursor);
                    OpenFileDialog opd = new OpenFileDialog();
                    opd.InitialDirectory = "C\\";
                    opd.FileName         = "";
                    opd.Filter           = "xlsxFile(*.xlsx)|*.xlsx|xlsFile(*.xls)|*.xls";
                    opd.Title            = "Excel Export";

                    if (opd.ShowDialog() == DialogResult.OK)
                    {
                        fileName     = opd.SafeFileName;
                        fileFullName = opd.FileName;
                        filePath     = fileFullName.Replace(fileName, "");

                        // 선택한 엑셀 파일 spread control에 바인딩
                        using (FileStream stream = new FileStream(opd.FileName.ToString(), FileMode.Open, FileAccess.Read))
                        {
                            spreadsheetControl2.LoadDocument(stream);

                            IWorkbook workbook = spreadsheetControl2.Document;
                            Worksheet sheet_0  = workbook.Worksheets["COCKPIT"];

                            IWorkbook workbook2 = spreadsheetControl1.Document;
                            Worksheet sheet2_0  = workbook2.Worksheets[0];

                            Range usedRange = sheet_0.GetUsedRange();

                            if (sheet2_0.Cells[2, 5].Value.ToString() != null && sheet2_0.Cells[2, 5].Value.ToString() != "")
                            {
                                if (CoFAS_DevExpressManager.ShowQuestionMessage("작업중인 데이터가 있습니다. 계속 진행하시겠습니까?") == DialogResult.No)
                                {
                                    return;
                                }
                                else
                                {
                                    using (FileStream st = new FileStream("Documents\\COCKPIT_SHEET.xlsx", FileMode.Open))
                                    {
                                        spreadsheetControl1.LoadDocument(st, DocumentFormat.Xlsx);
                                    }
                                }
                            }

                            ExternalDataSourceOptions dsOptions = new ExternalDataSourceOptions();
                            dsOptions.ImportHeaders = true;

                            DataTable dt = new DataTable();

                            for (int i = 0; i < usedRange.RowCount; i++)
                            {
                                sheet2_0.Cells[i + 1, 0].Value = sheet_0.Cells[12 + i, 0].Value.ToString();
                                sheet2_0.Cells[i + 1, 1].Value = sheet_0.Cells[12 + i, 2].Value.ToString();
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    CoFAS_DevExpressManager.ShowInformationMessage("엑셀 파일을 확인해주세요.");
                }
                finally
                {
                    CoFAS_DevExpressManager.SetCursor(this, Cursors.Default);
                }


                break;

            case "20":

                IWorkbook workbook3 = spreadsheetControl1.Document;
                Worksheet sheet_3   = workbook3.Worksheets[0];

                if (sheet_3.Cells[2, 5].Value.ToString() != null && sheet_3.Cells[2, 5].Value.ToString() != "")
                {
                    // Save the modified document to a stream.
                    using (FileStream stream = new FileStream("Documents\\SaveDocuments\\" + sheet_3.Cells[2, 5].Value.ToString() + "_" + DateTime.Now.ToString("yyyyMMdd") + ".xlsx",
                                                              FileMode.Create, FileAccess.ReadWrite))
                    {
                        workbook3.SaveDocument(stream, DocumentFormat.Xlsx);

                        CoFAS_DevExpressManager.ShowInformationMessage("저장 되었습니다.");
                    }
                }
                else
                {
                    CoFAS_DevExpressManager.ShowInformationMessage("PO 넘버를 입력해주세요.");
                }

                break;

            case "30":

                CoFAS_DevExpressManager.SetCursor(this, Cursors.WaitCursor);
                OpenFileDialog opd2 = new OpenFileDialog();
                opd2.FileName         = "";
                opd2.InitialDirectory = Application.StartupPath + "\\Documents\\SaveDocuments";
                opd2.Filter           = "xlsxFile(*.xlsx)|*.xlsx|xlsFile(*.xls)|*.xls";
                opd2.Title            = "Excel Import";

                if (opd2.ShowDialog() == DialogResult.OK)
                {
                    fileName     = opd2.SafeFileName;
                    fileFullName = opd2.FileName;
                    filePath     = fileFullName.Replace(fileName, "");

                    // 선택한 엑셀 파일 spread control에 바인딩
                    using (FileStream stream = new FileStream(opd2.FileName.ToString(), FileMode.Open, FileAccess.Read))
                    {
                        spreadsheetControl1.LoadDocument(stream);
                    }
                }

                CoFAS_DevExpressManager.SetCursor(this, Cursors.Default);

                break;

            default: break;
            }
        }
Exemple #7
0
        private void Sheet_Info_Sheet_Data(DataTable tTempData, string ORDER_ID)   //추가
        {
            try
            {
                CoFAS_DevExpressManager.SetCursor(this, Cursors.WaitCursor);

                // _pMaterialInspectRegisterEntity.ORDER_ID = _luORDER_ID.Text.ToString();

                IWorkbook workbook    = _sdMAIN.Document;
                string    _pPART_CODE = tTempData.Rows[0]["PART_CODE"].ToString();
                using (DBManager pDBManager = new DBManager())
                {
                    _pucWorkOrderInfoPopup_T50Entity.PRODUCTION_ORDER_ID = ORDER_ID;
                    _pucWorkOrderInfoPopup_T50Entity.PART_CODE           = _pPART_CODE;
                    _dsList = new ucWorkOrderInfoPopup_T50Provider(pDBManager).ucWorkOrderPopup_info_ExcelBinding(_pucWorkOrderInfoPopup_T50Entity);

                    ////생산지시정보 및 제품정보
                    _dtList2 = _dsList.Tables[0];
                    //자재정보
                    _dtList3 = _dsList.Tables[1];

                    if (_dtList2 != null && _dtList2.Rows.Count > 0)
                    {
                        Worksheet sheet_1    = workbook.Worksheets[1];
                        Worksheet sheet_0    = workbook.Worksheets[0];
                        Range     data_range = sheet_1.GetDataRange();
                        sheet_1.Clear(data_range);
                        ExternalDataSourceOptions dsOptions = new ExternalDataSourceOptions();
                        dsOptions.ImportHeaders = false;

                        //당일 날짜, 로그인명
                        sheet_0.Cells["G1"].Value = DateTime.Today.ToString("yyyy.MM.dd");
                        sheet_0.Cells["G3"].Value = _pUSER_CODE;
                        //바코드정보
                        sheet_0.Cells["C5"].Value = "*" + ORDER_ID + "*";//"*WO190131000001*";
                        int i = 0;
                        int j = 0;
                        //라우팅정보 for 엑셀은 0부터 시작

                        for (i = 0; i < _dtList2.Rows.Count; i++)
                        {
                            string seq = "";
                            seq = _dtList2.Rows[i]["SEQ"].ToString();
                            sheet_0.Rows[6][2].Value  = " " + _dtList2.Rows[i]["PART_CODE"].ToString();
                            sheet_0.Rows[7][2].Value  = " " + _dtList2.Rows[i]["PART_NAME"].ToString();
                            sheet_0.Rows[11][i].Value = seq;
                            sheet_0.Rows[12][i].Value = _dtList2.Rows[i]["PROCESS_CODE"].ToString();
                            sheet_0.Rows[13][i].Value = _dtList2.Rows[i]["PROCESS_GUBUN"].ToString();
                            sheet_0.Rows[14][i].Value = _dtList2.Rows[i]["PROCESS_NAME"].ToString();
                            sheet_0.Rows[16][0].Value = _dtList2.Rows[0]["CARVE"].ToString();
                            sheet_0.Rows[22][0].Value = _dtList2.Rows[0]["MESSAGE"].ToString();
                        }
                        if (_dtList3 != null && _dtList3.Rows.Count > 0)
                        {
                            for (j = 0; j < _dtList3.Rows.Count; j++)
                            {
                                sheet_0.Rows[8][2].Value = " " + _dtList3.Rows[j]["PART_CODE"].ToString();
                                sheet_0.Rows[9][2].Value = " " + _dtList3.Rows[j]["PART_NAME"].ToString();
                            }
                        }
                        else
                        {
                            CoFAS_DevExpressManager.ShowInformationMessage("BOM 정보를 불러오지 못했습니다.");
                        }
                    }
                    else
                    {
                        CoFAS_DevExpressManager.ShowInformationMessage("조회 내역이 없습니다.");
                    }
                }

                workbook.Worksheets.ActiveWorksheet = workbook.Worksheets[0];
                _sdMAIN.ShowPrintPreview();
            }
            catch (ExceptionManager pExceptionManager)
            {
                CoFAS_DevExpressManager.ShowErrorMessage(string.Format("{0}\n{1}", pExceptionManager.Exception.Message.ToString(), pExceptionManager.TargetSite.ToString()));
            }
            finally
            {
                CoFAS_DevExpressManager.SetCursor(this, Cursors.Default);
            }
        }
        private void Sheet_Info_Sheet_Data()   //추가
        {
            try
            {
                CoFAS_DevExpressManager.SetCursor(this, Cursors.WaitCursor);

                // _pRawMaterialInspectRegisterEntity.ORDER_ID = _luORDER_ID.Text.ToString();

                IWorkbook workbook = _sdMAIN.Document;

                using (DBManager pDBManager = new DBManager())
                {
                    string _terminal_name = _luTTERMINAL_LIST.Text;
                    string _check_list = _luTCHECK_CATEGORY.Text;

                    _pEquipmentHistoryEntity.CRUD = "R";
                    _pEquipmentHistoryEntity.DATE_FROM = DateTime.Parse(_luTORDER_DATE.FromDateTime.ToString()).ToString("yyyyMMdd");
                    _pEquipmentHistoryEntity.DATE_TO = DateTime.Parse(_luTORDER_DATE.ToDateTime.ToString()).ToString("yyyyMMdd");
                    _pEquipmentHistoryEntity.TERMINAL_NAME = _terminal_name.ToString();
                    _pEquipmentHistoryEntity.CHECK_LIST = _check_list.ToString();

                    // _dtList = new MaterialOrderRegisterProvider(pDBManager).Sheet_Info_Sheet_Data(_pRawMaterialInspectRegisterEntity);
                    _dtList = new EquipmentHistoryProvider(pDBManager).EquipmentHistory_info_ExcelBinding(_pEquipmentHistoryEntity);
                    //품목정보용
                   // _dtList = _dsList.Tables[0];
                    //시험항목검사결과(엑셀바인딩용)
                    _dtList_01 = _dsList.Tables[1];
                    _dtList_02 = _dsList.Tables[2];
                    if (_dtList != null && _dtList.Rows.Count > 0)
                    {

                        Worksheet sheet_1 = workbook.Worksheets["데이터"];
                        Worksheet sheet_0 = workbook.Worksheets[0];
                        Worksheet sheet_2 = workbook.Worksheets["저장용 데이터"];
                        Range data_range = sheet_1.GetDataRange();
                        sheet_1.Clear(data_range);
                        ExternalDataSourceOptions dsOptions = new ExternalDataSourceOptions();
                        dsOptions.ImportHeaders = true;

                        /* 
                         * 발주서 양식에 데이터를 바인딩할 때, row와 column의 인덱스 또는 범위(range)를 직접 지정하여 바인딩해야 한다.
                         * 현재, 발주번호 1건에 1개의 품목이 정의된 상태에서는 'data' 시트에 '기본 정보'와 '품목 조회 부분'을 같이 불러왔다. 
                         * 그리고 엑셀의 참조 기능을 이용하여 발주서 양식을 완성했다. 
                         * 
                         * 하지만, 발주번호 1건에 여러 개의 품목이 정의된 상태는 바인딩 방법을 다르게 해야 한다.
                         * DataSet으로 '기본 정보'와 '품목 조회 부분'을 따로 불러와야 한다.
                         * '기본 정보'는 'data' 시트에 바인딩한 후, 엑셀의 참조 기능을 이용한다.
                         * 그리고, '품목 조회 부분'은 rows.count()를 이용해 row의 수를 파악하여 발주서 양식에 행을 추가한다.
                         * 그 후, 행을 추가한 부분에 '품목 조회 부분'의 위치를 직접 지정하여 바인딩해야 한다.
                         * 
                        */
                        sheet_1.DataBindings.BindToDataSource(_dtList, 1, 0, dsOptions);
                        sheet_1.DataBindings.BindToDataSource(_dtList_01, 4, 0, dsOptions);

                      
     
                  }
                    else
                    {

                        CoFAS_DevExpressManager.ShowInformationMessage("조회 내역이 없습니다.");
                    }
                }

                workbook.Worksheets.ActiveWorksheet = workbook.Worksheets[0];

            }
            catch (ExceptionManager pExceptionManager)
            {
                CoFAS_DevExpressManager.ShowErrorMessage(string.Format("{0}\n{1}", pExceptionManager.Exception.Message.ToString(), pExceptionManager.TargetSite.ToString()));
            }
            finally
            {
                CoFAS_DevExpressManager.SetCursor(this, Cursors.Default);
            }
        }
        private void Sheet_Info_Sheet_Data()
        {
            try
            {
                CoFAS_DevExpressManager.SetCursor(this, Cursors.WaitCursor);

                _pSampleExcelBindingEntity.CRUD      = "R";                                                                        // pCRUD;
                _pSampleExcelBindingEntity.DATE_FROM = DateTime.Parse(_luINOUT_DATE.FromDateTime.ToString()).ToString("yyyyMMdd"); //Convert.ToString(_luINOUT_DATE.FromDateTime).Substring(0, 10).Replace("-", "");
                _pSampleExcelBindingEntity.DATE_TO   = DateTime.Parse(_luINOUT_DATE.ToDateTime.ToString()).ToString("yyyyMMdd");   //Convert.ToString(_luINOUT_DATE.ToDateTime).Substring(0, 10).Replace("-", "");
                _pSampleExcelBindingEntity.PART_CODE = _luPART_CODE.Text;
                _pSampleExcelBindingEntity.PART_NAME = _luPART_NAME.Text;
                _pSampleExcelBindingEntity.VEND_CODE = "";// _luVEND_CODE.Text;
                _pSampleExcelBindingEntity.VEND_NAME = _luVEND_NAME.Text;
                //new sheet에 dt 바인딩
                //_dtList = new SampleExcelBindingBusiness().Sheet_Info_Sheet_Data(_pSampleExcelBindingEntity);
                _dsList = new SampleExcelBindingBusiness().Sheet_Info_Sheet_Data(_pSampleExcelBindingEntity);

                //각각 필요한 현황들 바인딩
                _dtList_01 = _dsList.Tables[0];
                _dtList_02 = _dsList.Tables[1];
                _dtList_03 = _dsList.Tables[2];
                _dtList_04 = _dsList.Tables[3];
                //IWorkbook workbook = _sdMAIN.Document;
                workbook = _sdMAIN.Document;

                //원본 데이터 바인딩할 엑셀Sheet명
                //Worksheet worksheet_1 = workbook.Worksheets["Data"];        //sample
                ////Worksheet worksheet_BackData_01 = workbook.Worksheets["Back_Data_01"];
                ////Worksheet worksheet_BackData_02 = workbook.Worksheets["Back_Data_02"];
                ////Worksheet worksheet_BackData_03 = workbook.Worksheets["Back_Data_03"];
                ////Worksheet worksheet_BackData_04 = workbook.Worksheets["Back_Data_04"];

                Worksheet worksheet_BackData_01 = workbook.Worksheets["Data01"];

                // if (_dtList != null)
                if (_dsList != null)
                {
                    ExternalDataSourceOptions dsOptions = new ExternalDataSourceOptions();
                    dsOptions.ImportHeaders = false;
                    // worksheet_1.DataBindings.BindToDataSource(_dtList, 1, 0, dsOptions);

                    //피벗테이블에 들어갈 각 표들의 원본 데이터 바인딩
                    // 1.제품입고현황
                    // worksheet_BackData_01.DataBindings.BindToDataSource(_dtList_01, 1, 0, dsOptions);
                    // 2.기간별생산실적현황
                    // worksheet_BackData_02.DataBindings.BindToDataSource(_dtList_02, 1, 0, dsOptions);
                    // 3.제품미출고현황
                    //  worksheet_BackData_03.DataBindings.BindToDataSource(_dtList_03, 1, 0, dsOptions);
                    // 4.제품재고현황
                    //  worksheet_BackData_04.DataBindings.BindToDataSource(_dtList_04, 1, 0, dsOptions);
                }
                else
                {
                    CoFAS_DevExpressManager.ShowInformationMessage("조회 내역이 없습니다.");
                }

                //18.06.22 원본 : 현황하나만 보여주는 경우

                /*
                 * //피벗테이블이 있는 시트번호
                 * Worksheet worksheet_2 = workbook.Worksheets[1];
                 * Worksheet worksheet_3 = workbook.Worksheets[0]; //보여줄것
                 *
                 * //백데이터 범위
                 * Range backdata_range = worksheet_1.GetDataRange();
                 * worksheet_2.PivotTables[0].ChangeDataSource(backdata_range);
                 *
                 * // 피벗시트에서 피벗테이블 범위 알아오기 -> 차트에 범위 갱신
                 * Range PivotTable_range = worksheet_2.GetDataRange();
                 *
                 * //변경된 차트의 데이터범위를 조정
                 * //worksheet_2.Charts[0].SelectData(worksheet_2[pivotdata_range]);
                 * //worksheet_3.Charts[0].SelectData(worksheet_2[pivotdata_range]);
                 * worksheet_2.Charts[0].SelectData(PivotTable_range);
                 * worksheet_3.Charts[0].SelectData(PivotTable_range);
                 *
                 * workbook.Worksheets.ActiveWorksheet = workbook.Worksheets[0];
                 * workbook.PivotCaches.RefreshAll();
                 * //수정될경우 이벤트 호출
                 * workbook.ActiveSheetChanged += Workbook_ActiveSheetChanged; ;
                 * //workbook.change
                 */

                //피벗테이블이 있는 시트번호
                ////Worksheet worksheet_PivotTable_01 = workbook.Worksheets["Pivot_01"];
                ////Worksheet worksheet_PivotTable_02 = workbook.Worksheets["Pivot_02"];
                ////Worksheet worksheet_PivotTable_03 = workbook.Worksheets["Pivot_03"];
                ////Worksheet worksheet_PivotTable_04 = workbook.Worksheets["Pivot_04"];

                //보여줄 현황 시트(차트있는 시트)
                ////Worksheet worksheet_Chart_01 = workbook.Worksheets["제품입고현황"];
                ////Worksheet worksheet_Chart_02 = workbook.Worksheets["기간별생산실적현황"];
                ////Worksheet worksheet_Chart_03 = workbook.Worksheets["제품미출고현황"];
                ////Worksheet worksheet_Chart_04 = workbook.Worksheets["제품재고현황"];


                //백데이터 범위 재지정
                ////Range backdata_range_01 = worksheet_PivotTable_01.GetDataRange();
                ////Range backdata_range_02 = worksheet_PivotTable_02.GetDataRange();
                ////Range backdata_range_03 = worksheet_PivotTable_03.GetDataRange();
                ////Range backdata_range_04 = worksheet_PivotTable_04.GetDataRange();

                ////worksheet_PivotTable_01.Charts[0].SelectData(backdata_range_01);
                ////worksheet_PivotTable_02.Charts[0].SelectData(backdata_range_02);
                ////worksheet_PivotTable_03.Charts[0].SelectData(backdata_range_03);
                ////worksheet_PivotTable_04.Charts[0].SelectData(backdata_range_04);

                //worksheet_PivotTable_01.Charts[0].ChangeDataSource(worksheet_BackData_01.GetDataRange());
                //worksheet_PivotTable_02.Charts[0].ChangeDataSource(worksheet_BackData_02.GetDataRange());
                //worksheet_PivotTable_03.Charts[0].ChangeDataSource(worksheet_BackData_03.GetDataRange());
                //worksheet_PivotTable_04.Charts[0].ChangeDataSource(worksheet_BackData_04.GetDataRange());

                //변경된 차트의 데이터범위를 조정
                ////worksheet_Chart_01.Charts[0].SelectData(backdata_range_01);
                ////worksheet_Chart_02.Charts[0].SelectData(backdata_range_02);
                ////worksheet_Chart_03.Charts[0].SelectData(backdata_range_03);
                ////worksheet_Chart_04.Charts[0].SelectData(backdata_range_04);

                workbook.Worksheets.ActiveWorksheet = workbook.Worksheets[0];
                workbook.PivotCaches.RefreshAll();
                //수정될경우 이벤트 호출
                workbook.ActiveSheetChanged += Workbook_ActiveSheetChanged;;
            }
            catch (ExceptionManager pExceptionManager)
            {
                CoFAS_DevExpressManager.ShowErrorMessage(string.Format("{0}\n{1}", pExceptionManager.Exception.Message.ToString(), pExceptionManager));
            }
            finally
            {
                CoFAS_DevExpressManager.SetCursor(this, Cursors.Default);
            }
        }
Exemple #10
0
        private void btnImportDataNorm_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            try
            {
                xtraOpenFileDialog1.Title            = "Auswahl einer DATANORM Datei";
                xtraOpenFileDialog1.Filter           = "Alle Dateien (*.*)|*.*";
                xtraOpenFileDialog1.FilterIndex      = 2;
                xtraOpenFileDialog1.CheckFileExists  = true;
                xtraOpenFileDialog1.CheckPathExists  = true;
                xtraOpenFileDialog1.FileName         = string.Empty;
                xtraOpenFileDialog1.RestoreDirectory = true;
                xtraOpenFileDialog1.ShowDialog();
                if (!string.IsNullOrEmpty(xtraOpenFileDialog1.FileName))
                {
                    IWorkbook workbook   = spreadsheetControl1.Document;
                    bool      isOSExists = false;
                    bool      isILExists = false;
                    bool      isVLExists = false;
                    foreach (Worksheet ws in workbook.Sheets)
                    {
                        if (ws.Name == "Blatt im Original")
                        {
                            var result = XtraMessageBox.Show("Das Blatt enthält Daten. Möchten Sie den Prozess fortsetzen?", "Bestätigung!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                            if (Convert.ToString(result) == "No")
                            {
                                return;
                            }
                            ws.ConditionalFormattings.Clear();
                            ws.DataValidations.Clear();
                            isOSExists = true;
                        }
                        else if (ws.Name == "Import des Logs")
                        {
                            ws.ConditionalFormattings.Clear();
                            isILExists = true;
                        }
                        else if (ws.Name == "Log mit Validierungsangaben")
                        {
                            ws.ConditionalFormattings.Clear();
                            isVLExists = true;
                        }
                    }

                    SplashScreenManager.ShowForm(this, typeof(WaitForm1), true, true, false);
                    SplashScreenManager.Default.SetWaitFormDescription("Importieren...");
                    if (isOSExists)
                    {
                        workbook.Worksheets.Add("Sheet1");
                        workbook.Worksheets.Remove(workbook.Worksheets["Blatt im Original"]);
                    }
                    if (isILExists)
                    {
                        workbook.Worksheets.Remove(workbook.Worksheets["Import des Logs"]);
                    }

                    if (isVLExists)
                    {
                        workbook.Worksheets.Remove(workbook.Worksheets["Log mit Validierungsangaben"]);
                    }

                    DataTable dt = DNU.ProccessFile(xtraOpenFileDialog1.FileName, Application.UserAppDataPath, Path.GetDirectoryName(Application.ExecutablePath));
                    SplashScreenManager.Default.SetWaitFormDescription("Datenverarbeitung … ");
                    Worksheet sheet = workbook.Worksheets[0];
                    sheet.Name = "Blatt im Original";
                    workbook.BeginUpdate();
                    try
                    {
                        ExternalDataSourceOptions options = new ExternalDataSourceOptions()
                        {
                            ImportHeaders = true
                        };
                        Table table = sheet.Tables.Add(dt, 0, 0, options);
                        table.Columns[0].Name  = "Artikel_Id";
                        table.Columns[1].Name  = "Artikelnummer";
                        table.Columns[2].Name  = "Kurztext1";
                        table.Columns[3].Name  = "Kurztext2";
                        table.Columns[4].Name  = "WG";
                        table.Columns[5].Name  = "WA";
                        table.Columns[6].Name  = "WI";
                        table.Columns[7].Name  = "A";
                        table.Columns[8].Name  = "B";
                        table.Columns[9].Name  = "L";
                        table.Columns[10].Name = "Preis";
                        sheet.DataValidations.Add(sheet["E:K"], DataValidationType.Custom, "=AND(ISNUMBER(E1))");
                        sheet.Range["N:N"].NumberFormat = "mmm/yyyy";
                        sheet.Columns.AutoFit(0, 10);
                    }
                    finally
                    {
                        workbook.EndUpdate();
                    }
                    btnSaveandConfirm.Visibility = DevExpress.XtraBars.BarItemVisibility.Never;
                    SplashScreenManager.CloseForm(false);
                }
            }
            catch (Exception ex)
            {
                SplashScreenManager.CloseForm(false);
                XtraMessageBox.Show(ex.Message);
            }
        }
Exemple #11
0
        private void btnValidateDataNorm_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            try
            {
                try
                {
                    if (dtValidityDate == null)
                    {
                        return;
                    }
                    Worksheet worksheet     = spreadsheetControl1.Document.Worksheets.ActiveWorksheet;
                    Range     range         = worksheet.GetDataRange();
                    Range     SelectedRange = worksheet.SelectedCell;
                    SplashScreenManager.ShowForm(this, typeof(WaitForm1), true, true, false);
                    SplashScreenManager.Default.SetWaitFormDescription("Validieren...");
                    int       CCount = 11;
                    int       rCount = range.RowCount;
                    DataTable dt     = new DataTable();
                    for (int j = 0; j < CCount; j++)
                    {
                        if (Convert.ToString(worksheet.Rows[0][j].Value) == "Preis")
                        {
                            dt.Columns.Add(Convert.ToString(worksheet.Rows[0][j].Value), typeof(decimal));
                        }
                        else
                        {
                            dt.Columns.Add(Convert.ToString(worksheet.Rows[0][j].Value), typeof(string));
                        }
                    }

                    DataRow dr = null;
                    for (int i = 1; i < rCount; i++)
                    {
                        dr = dt.NewRow();
                        for (int j = 0; j < CCount; j++)
                        {
                            try
                            {
                                CellValue v = worksheet.Rows[i][j].Value;
                                dr[j] = Convert.ToString(v);
                            }
                            catch (Exception) { }
                        }
                        dt.Rows.Add(dr);
                    }
                    if (dt.Rows.Count > 0)
                    {
                        BSupplier ObjBSupplier = new BSupplier();
                        DataSet   dsResults    = ObjBSupplier.ValidateDataNorm(SupplierID, dtValidityDate, dt);
                        if (dsResults.Tables[0].Rows.Count > 0)
                        {
                            IWorkbook workbook   = spreadsheetControl1.Document;
                            bool      isVLExists = false;
                            bool      isOLExists = false;
                            bool      isILExists = false;
                            foreach (Worksheet ws in workbook.Sheets)
                            {
                                if (ws.Name == "Blatt im Original")
                                {
                                    ws.ConditionalFormattings.Clear();
                                    isOLExists = true;
                                }
                                else if (ws.Name == "Log mit Validierungsangaben")
                                {
                                    ws.ConditionalFormattings.Clear();
                                    isVLExists = true;
                                }
                                else if (ws.Name == "Import des Logs")
                                {
                                    ws.ConditionalFormattings.Clear();
                                    isILExists = true;
                                }
                            }

                            if (isOLExists)
                            {
                                workbook.Worksheets.Add("Sheet1");
                                workbook.Worksheets.Remove(workbook.Worksheets["Blatt im Original"]);
                            }

                            if (isVLExists)
                            {
                                workbook.Worksheets.Remove(workbook.Worksheets["Log mit Validierungsangaben"]);
                            }

                            if (isILExists)
                            {
                                workbook.Worksheets.Remove(workbook.Worksheets["Import des Logs"]);
                            }

                            if (dsResults.Tables.Count > 1)
                            {
                                if (dsResults.Tables[1].Rows.Count > 0)
                                {
                                    btnSaveandConfirm.Visibility = DevExpress.XtraBars.BarItemVisibility.Never;
                                }
                                else
                                {
                                    btnSaveandConfirm.Visibility = DevExpress.XtraBars.BarItemVisibility.Always;
                                }
                            }
                            Worksheet sheet = workbook.Worksheets[0];
                            sheet.Name = "Blatt im Original";
                            workbook.BeginUpdate();
                            try
                            {
                                ExternalDataSourceOptions options = new ExternalDataSourceOptions()
                                {
                                    ImportHeaders = true
                                };
                                Table table = sheet.Tables.Add(dsResults.Tables[0], 0, 0, options);
                                table.Columns[0].Name  = "Artikel_Id";
                                table.Columns[1].Name  = "Artikelnummer";
                                table.Columns[2].Name  = "Kurztext1";
                                table.Columns[3].Name  = "Kurztext2";
                                table.Columns[4].Name  = "WG";
                                table.Columns[5].Name  = "WA";
                                table.Columns[6].Name  = "WI";
                                table.Columns[7].Name  = "A";
                                table.Columns[8].Name  = "B";
                                table.Columns[9].Name  = "L";
                                table.Columns[10].Name = "Preis";
                                table.Columns[11].Name = "New/Update";
                                table.Columns[12].Name = "OldPreis";
                                table.Columns[13].Name = "Validity Date";
                                table.Columns[14].Name = "Comments";
                                sheet.DataValidations.Add(sheet["E:K"], DataValidationType.Custom, "=AND(ISNUMBER(E1))");
                                sheet.Range["N:N"].NumberFormat = "mmm/yyyy";
                            }
                            finally
                            {
                                workbook.EndUpdate();
                            }

                            if (dsResults.Tables[1].Rows.Count > 0)
                            {
                                workbook.Worksheets.Add("Log mit Validierungsangaben");
                                Worksheet Vsheet = workbook.Worksheets["Log mit Validierungsangaben"];
                                workbook.BeginUpdate();
                                try
                                {
                                    ExternalDataSourceOptions options = new ExternalDataSourceOptions()
                                    {
                                        ImportHeaders = true
                                    };
                                    Table table = Vsheet.Tables.Add(dsResults.Tables[1], 0, 0, options);
                                    table.Columns[0].Name = "Art_Id";
                                    table.Columns[1].Name = "Comments";
                                }
                                finally
                                {
                                    workbook.EndUpdate();
                                }
                                sheet.Columns.AutoFit(0, 14);
                                workbook.Worksheets.ActiveWorksheet = workbook.Worksheets["Blatt im Original"];
                                Range LogRange = Vsheet.GetDataRange();
                                ApplyNotExistsArticleFormatingforValidationLog(sheet, LogRange, Vsheet);
                                string stRange = SelectedRange.GetReferenceA1();
                                spreadsheetControl1.SelectedCell = sheet.Cells[stRange];
                                SplashScreenManager.CloseForm(false);
                                XtraMessageBox.Show("Die Angaben wurden validiert. Bitte prüfen Sie die Hinweise zur Validierung.");
                            }
                            else
                            {
                                string stRange = SelectedRange.GetReferenceA1();
                                spreadsheetControl1.SelectedCell = sheet.Cells[stRange];
                                sheet.Columns.AutoFit(0, 14);
                                SplashScreenManager.CloseForm(false);
                                XtraMessageBox.Show("Die Angaben wurden validiert. Sämtliche Angaben sind korrekt und vollständig.");
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    SplashScreenManager.CloseForm(false);
                    XtraMessageBox.Show(ex.Message);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemple #12
0
        private void btnSaveandConfirm_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            try
            {
                if (SupplierID == null)
                {
                    return;
                }
                if (dtValidityDate == null)
                {
                    return;
                }
                Worksheet worksheet = spreadsheetControl1.Document.Worksheets.ActiveWorksheet;
                Range     range     = worksheet.GetDataRange();
                int       CCount    = 11;
                int       rCount    = range.RowCount;
                SplashScreenManager.ShowForm(this, typeof(WaitForm1), true, true, false);
                SplashScreenManager.Default.SetWaitFormDescription("Importieren...");
                DataTable dt = new DataTable();
                for (int j = 0; j < CCount; j++)
                {
                    if (Convert.ToString(worksheet.Rows[0][j].Value) == "Preis")
                    {
                        dt.Columns.Add(Convert.ToString(worksheet.Rows[0][j].Value), typeof(decimal));
                    }
                    else
                    {
                        dt.Columns.Add(Convert.ToString(worksheet.Rows[0][j].Value), typeof(string));
                    }
                }

                DataRow dr = null;
                for (int i = 1; i < rCount; i++)
                {
                    dr = dt.NewRow();
                    for (int j = 0; j < CCount; j++)
                    {
                        try
                        {
                            CellValue v = worksheet.Rows[i][j].Value;
                            dr[j] = Convert.ToString(v);
                        }
                        catch (Exception) {}
                    }
                    dt.Rows.Add(dr);
                }
                if (dt.Rows.Count > 0)
                {
                    BSupplier ObjBSupplier = new BSupplier();
                    DataTable dtResults    = ObjBSupplier.ImportDataNorm(SupplierID, dtValidityDate, dt);
                    if (dtResults.Rows.Count > 0)
                    {
                        IWorkbook workbook   = spreadsheetControl1.Document;
                        bool      isILExists = false;
                        bool      isVLExists = false;
                        foreach (Worksheet ws in workbook.Sheets)
                        {
                            if (ws.Name == "Blatt im Original")
                            {
                                ws.ConditionalFormattings.Clear();
                            }
                            else if (ws.Name == "Import des Logs")
                            {
                                ws.ConditionalFormattings.Clear();
                                isILExists = true;
                            }
                            else if (ws.Name == "Log mit Validierungsangaben")
                            {
                                ws.ConditionalFormattings.Clear();
                                isVLExists = true;
                            }
                        }

                        if (isILExists)
                        {
                            workbook.Worksheets.Remove(workbook.Worksheets["Import des Logs"]);
                        }

                        if (isVLExists)
                        {
                            workbook.Worksheets.Remove(workbook.Worksheets["Log mit Validierungsangaben"]);
                        }

                        workbook.Worksheets.Add("Import des Logs");
                        Worksheet sheet = workbook.Worksheets["Import des Logs"];
                        workbook.BeginUpdate();
                        try
                        {
                            ExternalDataSourceOptions options = new ExternalDataSourceOptions()
                            {
                                ImportHeaders = true
                            };
                            Table table = sheet.Tables.Add(dtResults, 0, 0, options);
                            table.Columns[0].Name = "Art_ID";
                            table.Columns[1].Name = "WG";
                            table.Columns[2].Name = "WA";
                            table.Columns[3].Name = "WI";
                            table.Columns[4].Name = "A";
                            table.Columns[5].Name = "B";
                            table.Columns[6].Name = "L";
                            table.Columns[7].Name = "Error";
                        }
                        finally
                        {
                            workbook.EndUpdate();
                        }

                        Range LogRange = sheet.GetUsedRange();
                        ApplyNotExistsArticleFormatingforImportLog(worksheet, LogRange, sheet);
                        workbook.Worksheets.ActiveWorksheet = workbook.Worksheets["Blatt im Original"];
                    }
                }
                SplashScreenManager.CloseForm(false);
                XtraMessageBox.Show("Die Daten wurden erfolgreiche importiert und gespeichert.");
            }
            catch (Exception ex)
            {
                SplashScreenManager.CloseForm(false);
                XtraMessageBox.Show(ex.Message);
            }
        }
        // DB 처리
        #region ○ 메인조회 - MainFind_DisplayData()

        private void MainFind_DisplayData()
        {
            try
            {
                CoFAS_DevExpressManager.SetCursor(this, Cursors.WaitCursor);

                // string strPART_TYPE = _luPART_TYPE.GetValue();
                // pPRODUCTION_ORDER_ID = "";
                //string pPART_NAME = _luCD_NM.Text;
                // string pPART_CODE = _luCD.Text;
                string pPROCESS_CODE_MST = "";
                string pFROM_DATE        = "";
                string pTO_DATE          = "";

                _pCRUD = "R";
                //_dtList = new ucWorkOrderDocRegPopupBusiness().ucWorkOrderDocRegPopup_Return(_pCRUD, _pLANGUAGE_TYPE,  pPRODUCTION_ORDER_ID,  pPART_NAME,  pPART_CODE,  pPROCESS_CODE_MST).Tables[0];
                // _dtList = new ucWorkOrderDocRegPopupBusiness().ucWorkOrderDocRegPopup_Return(_pCRUD, _pLANGUAGE_TYPE, pPRODUCTION_ORDER_ID, "", "", pPROCESS_CODE_MST).Tables[0];
                _dsList  = new ucWorkOrderDocRegPopupBusiness().ucWorkOrderDocRegPopup_Return2(_pCRUD, _pLANGUAGE_TYPE, _pucWorkOrderDocRegPopupEntity.PART_CODE, _pucWorkOrderDocRegPopupEntity.PROCESS_CODE_MST);
                _dtList  = _dsList.Tables[0];
                _dtList2 = _dsList.Tables[1];


                if (_pCRUD == "")
                {
                    _dtList.Rows.Clear();
                }

                if ((_dtList != null && _dtList.Rows.Count > 0) || (_dtList != null && _pCRUD == ""))
                {
                    //  CoFAS_DevExpressManager.BindGridControl(_gdMAIN, _gdMAIN_VIEW, _dtList);

                    IWorkbook workbook = _sdMAIN.Document;
                    //Worksheet sheet_1 = workbook.Worksheets["데이터"];
                    Worksheet sheet_1 = workbook.Worksheets[1];
                    Worksheet sheet_0 = workbook.Worksheets[0];
                    // Worksheet sheet_2 = workbook.Worksheets["저장용 데이터"];
                    Range data_range = sheet_1.GetDataRange();
                    sheet_1.Clear(data_range);
                    ExternalDataSourceOptions dsOptions = new ExternalDataSourceOptions();
                    dsOptions.ImportHeaders = true;
                    sheet_1.DataBindings.BindToDataSource(_dtList, 3, 0, dsOptions);
                    sheet_1.DataBindings.BindToDataSource(_dtList2, 0, 0, dsOptions);
                    //string Select_PartType = _gdMAIN_VIEW.GetFocusedRowCellValue("PART_TYPE").ToString();
                    //Worksheet sheet_1 = workbook.Worksheets["데이터"];
                    string Select_PartType = "1003";// sheet_1.GetCellValue(8, 1).ToString();//_gdMAIN_VIEW.GetFocusedRowCellValue("PART_TYPE").ToString();
                    string name_tmp        = string.Empty;
                    if (Select_PartType == "1001")
                    {
                    }
                    else if (Select_PartType == "1003")
                    {
                        //  sheet_0.Cells["G7"].SetValue(_dtList2.Rows[0]["make_no"]);
                        _dtList4 = _dsList.Tables[2];
                        string menufacture_data = string.Empty;
                        //제조공정
                        //고도화 이후, 품목마다 공정 매핑 수정필요

                        /*
                         *
                         * string menufacture_seq = string.Empty;
                         * for (int i =0; i< _dtList4.Rows.Count;i++)
                         * {
                         *  menufacture_seq +="공정 " + (i + 1) + ":" + _dtList4.Rows[i]["PROCESS_NAME"] + "\n" + _dtList4.Rows[i]["PROCESS_VALUE"] + "\n";
                         *  sheet_0.Cells["M11"].SetValue(menufacture_seq);
                         * }
                         */
                        menufacture_data = _dtList4.Rows[0]["PROCESS_VALUE"].ToString();
                        sheet_0.Cells["M11"].SetValue(menufacture_data);
                    }
                    if (_dtList.Rows.Count == 0)
                    {
                        // CoFAS_DevExpressManager.BindGridControl(_gdMAIN, _gdMAIN_VIEW, _dtList);
                    }
                }
            }
            catch (ExceptionManager pExceptionManager)
            {
                CoFAS_DevExpressManager.ShowErrorMessage(string.Format("{0}\n{1}", pExceptionManager.Exception.Message.ToString(), pExceptionManager.TargetSite.ToString()));
            }
            finally
            {
                _gdMAIN_VIEW.BestFitColumns();

                CoFAS_DevExpressManager.SetCursor(this, Cursors.Default);
            }
        }