From a0080c8a684adb6f7ce228d7370495715b9a70ee Mon Sep 17 00:00:00 2001 From: AJ Date: Thu, 23 Jun 2022 11:06:23 -0400 Subject: [PATCH] Print errors when getting BOM items. --- ExportDXF/Forms/MainForm.cs | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/ExportDXF/Forms/MainForm.cs b/ExportDXF/Forms/MainForm.cs index b174779..6400f27 100644 --- a/ExportDXF/Forms/MainForm.cs +++ b/ExportDXF/Forms/MainForm.cs @@ -283,12 +283,11 @@ namespace ExportDXF.Forms if (worker.CancellationPending) return; - var itemExtractor = new BomItemExtractor(bom); - itemExtractor.SkipHiddenRows = true; + var bomItems = GetItems(bom); - Print($"Fetching components from {bom.BomFeature.Name}"); + if (bomItems == null) + return; - var bomItems = itemExtractor.GetItems(); items.AddRange(bomItems); } @@ -300,6 +299,25 @@ namespace ExportDXF.Forms ExportToDXF(items); } + private List GetItems(BomTableAnnotation bom) + { + try + { + var itemExtractor = new BomItemExtractor(bom); + itemExtractor.SkipHiddenRows = true; + + Print($"Fetching components from {bom.BomFeature.Name}"); + + return itemExtractor.GetItems(); + } + catch (Exception ex) + { + Print($"Failed to get items from BOM. {ex.Message}", Color.Red); + } + + return null; + } + private void ExportToDXF(PartDoc part) { var prefix = prefixTextBox.Text;