Beispiel #1
0
        private void bKT_Click(object sender, EventArgs e)
        {
            var excPkg = ExcelOperations.GetExcelPackage(SelectedOrder.selectedOrder.modelId);// currentOrder.modelId);

            if (excPkg != null)
            {
                string additionalComment = "";// lProdWerehouseStock.Text != "" ? $"Wyrób znajduje się na regale: {lProdWerehouseStock.Text}" : "";
                if (ProductionStock.CurrentStock.Count > 0)
                {
                    additionalComment = $"Wyrób znajduje się na regale: {string.Join(", ", ProductionStock.CurrentStock)}";
                }

                string tempFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), ExcelOperations.ExcelParameters.tempFileName);
                for (int i = 0; i < 20; i++) //try 20 filenames for tempFile
                {
                    tempFile = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), $"{i}_{ExcelOperations.ExcelParameters.tempFileName}");
                    if (!ExcelOperations.IsFileLocked(new FileInfo(tempFile)))
                    {
                        break;
                    }
                    if (i == 14)
                    {
                        MessageBox.Show("Nie można uzystać dostępu do programu Excel. Zamknij wszystkie okna Excel i spróbuj ponownie." + Environment.NewLine + "W razie dalszych problemów uruchom ponownie komputer");
                        return;
                    }
                }

                ExcelOperations.FillOutExcelData(ref excPkg, false, additionalComment);
                ExcelOperations.SaveToExcel(excPkg, tempFile);
                Process.Start(tempFile);
            }
        }