Генератор перечня элементов

Недавно начал работу над утилитой, которая поможет быстро сгенерировать перечень элементов по ГОСТ из программы Altium.

Недавно начал работу над утилитой, которая поможет быстро сгенерировать перечень элементов по ГОСТ из программы Altium.

Наверно внимательный читатель задастся вопросом почему не использую стандартный плагин для вывода перечня напрямую из программы. Причина проста - плагин использует MS Office. Не вижу смысла в API офиса для вывода отчетов.

Вот и приходится выкручиваться, используя OpenOffice или LibreOffice.

Утилита способна на следующее:

  • импорт BOM листа в формате XML;
  • группировка элементов по наименованию;
  • именование групп;
  • настройка пустых строк до и после групп;
  • настройка разделителя у группируемых элементов, например "..." у "R1...R8";

В будущем планирую доделать настройку для вывода перечня с несколькими исполнениями.

Окно приложения выглядит следующим образом.

Описание изображения

Настройка BOM в Altium Designer сводится в выводу полей:

  • Позиционное обозначение;
  • Наименование;
  • Количество;
  • Примечание (можно не использовать если нет необходимости).

В окне настроек приложения это выглядит следующим образом. Прошу обратить внимание на нестандартные имена полей!

Описание изображения

При импорте XML файла должна появиться таблица компонентов. Здесь можно внести правки: переименовать резистор, изменить номинал и др.

Описание изображения

Далее заходим в настройки проекта и заполняем соответствующие поля, которые уйдут в основную надпись документа.

Настройки вывода отчета пока не обширны:

  • разрешение группировки элементов по наименованию;
  • именование групп компонентов, здесь задается минимальное количество компонентов в группе и какое количество строк вставлять до и после имени группы;
  • галочка "Использовать исполнения", ровно как и вкладка "Исполнения" пока не работают, так что не стоит ждать изменений.
Описание изображения

Отчет выводим через меню "Отчет" или клавишей F5 (привык Visual Studio).

Вывести можно в два формата ODS и TXT. Первый это Open Document Sheet, второй - текстовый файл. Поддержка вывода в XLSX пока не реализована.

Посмотреть исходники можно на гитлабе: BOMautomatic