Перейти к публикации

Построить дерево (TreeView) из файла mxl (1C)


Рекомендованные сообщения

Приветствую всех.

 

Необходимо решить задачу: построить дерево (TreeView), используя в качестве источника данных файл mxl (это табличный документ 1С) с группами.
Сделать это нужно, не используя 1С, а применяя ЯП (Visual Basic, Visual C# или что-то подобное).
Существуют ли библиотеки для работы с этими файлами? Или, может быть, есть примеры программного кода (опять же для работы с такими файлами)? Или хотя бы описание формата файла mxl?

Ссылка на сообщение
Поделиться на других сайтах


@@ainis, гугл

https://www.google.ru/search?q=populate+xml+to+treeview+C%23&oq=populate+xml+to+treeview+C%23&aqs=chrome..69i57j0.16151j0j1&sourceid=chrome&espv=210&es_sm=93&ie=UTF-8


Необходимо решить задачу:
 

А в подписи технопро. Вы там начинающий программист что-ли?  :smile:

Ссылка на сообщение
Поделиться на других сайтах

Файл mxl - это табличный документ, созданный программой "1С:Предприятие" версий 7.7 и 8 (http://chem-otkrit.ru/format/mxl).

Ссылка на сообщение
Поделиться на других сайтах

@@ainis,  упс. Я, по-ходу.

 

@@ainis, можете выложить такой файл, с какой нибудь простенькой табличкой/данными?

Ссылка на сообщение
Поделиться на других сайтах

Прилагаю файл mxl.

В нем два столбца - "Обозначение" и "Наименование" (обозначение и наименование изделия).

 

В сборку "000 Сборка" входят детали "000-1 Деталь 1", "000-2 Деталь 2", а также сборка "000-0 Сборка 1". В сборку "000-0 Сборка 1" входят детали "000-0-1 Деталь 1-1" и "000-0-2 Деталь 2-2".

Просмотреть файл можно бесплатным просмотровщиком "1С - Предприятие - Работа с файлами".

   

 

Пример.zip

Ссылка на сообщение
Поделиться на других сайтах

@@ainis

По сути, это обычный текстовик. Записан построчно. Считываете файл в одну строку, парсите регулярками по { { { } } }

Получаете текст.

Пример того, откуда надо чего парсить

{16,0,{1,1,  {"#","Столбец1"}}},1,
{16,0,{1,1,  {"#","Столбец2"}}},2,
{16,0,{1,1,  {"#","Столбец3"}}},3,
{16,0,{1,1,  {"#","Столбец4"}}},1,0,4,0,
{16,0,{1,1,  {"#",     "000"}}},1,
{16,0,{1,1,  {"#",  "Сборка"}}},2,
{16,0,{1,1,  {"#",    "0000"}}},3,
{16,0,{1,1,  {"#",    "8888"}}},2,0,4,0,
{16,0,{1,1,  {"#",   "000-1"}}},1,
{16,0,{1,1,  {"#","Деталь 1"}}},2,
{16,0,{1,1,  {"#",    "0001"}}},3,
{16,0,{1,1,  {"#",    "9999"}}},

 

 

Ссылка на сообщение
Поделиться на других сайтах

Такая идея приходила мне в голову. Проблема: как определить, какое изделие в состав какого входит?

Ссылка на сообщение
Поделиться на других сайтах

В общем, нет такого парсера. В принципе, тема уже не актуальна, можно ее закрывать.

Ссылка на сообщение
Поделиться на других сайтах

На C# можно:

 - Если вы делаете в WinForms, то вы есть замечательный класс TreeNode

иначе

 - Если вы делаете в WPF, то вы есть замечательный класс TreeView

Ссылка на сообщение
Поделиться на других сайтах
нет такого парсера
 парсер есть, если есть руки, чтоб хоть что-то написать. А иначе как бы сами 1С-шники работали?
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • david1920
      нет время нет заниматься да и информации новой нет Это я на других станках делал
    • gudstartup
      @david1920 имеется ввиду платы на системах с сертификацией опций фалом oprminf старые в расчет не принимаются вы свой 18i восстановили?
    • gudstartup
      очень даже спрашивают как обязательную информацию для проверки вашей компании налоговый идентификатор должен быть указан. на myfanuc не спрашивают а вот на портале к сожалению просто так не зарегаться. 
    • david1920
      На 0I-TC mate менял плату управления приводами На 18i-TB менял для диагностики платы процессоров (один был от Spinner другой простой) процы были одинаковые Всё работает
    • brigval
      Браком 1.04В версии 1.04Добавлено: Автоуменьшение высоты шрифта многострочного наименования в ОН чертежа.Добавлено: Переименование поверхностей, баз, размеров в порядке их следования на чертеже.Добавлено: Переименование изображений по ГОСТ: сначала виды, затем разрезы, сечения, выносные элементы.Добавлено: Выравнивание неассоциативных видов.Добавлено: Ручной ввод шага и угла наклона штриховки.Добавлено: Перемещаются в макроэлемент компоненты, исключаемые из спецификации.Добавлено: Выбор количества значащих цифр в значении площади поверхности детали для вставки в ТТ.Добавлено: Возможность не авторазмещать ТТ перед конвертацией чертежа в PDF.Добавлено: Добавлены кнопки «Выделить все включенные в расчет» и Выделить все исключенные из расчета».Добавлено: Версия КОМПАС-3D Home показывается в программе со словом Home.Добавлено: Улучшен алгоритм считывания и вставки ТТ чертежа.Добавлено: При конвертации чертежа в PDF удаляется старый файл с таким же обозначением в начале имени, как обозначение в начале имени нового файла.Добавлено: Улучшено считывание номеров позиций из 3D-модели сборки.Исправлено: Иногда скрытые и потом показанные объекты чертежа отображались не серым цветом.Исправлено: Иногда после ручного заполнения графы «Масса» ОН чертежа в окне программы масса могла отображаться не правильно.Исправлено: В некоторых случаях из ОН чертежа могла не считываться литера.Исправлено: В некоторых окнах программы неправильно показывался заголовок окна программы.Исправлено: Другие замеченные мелкие ошибки и неточности кода.Скачать
    • boomeeeer
      Не помню чтобы у меня такое спрашивали при регистрации.
    • Snake 60
      @eljer0n  Откройте макрос SaveDRW.swp редактором VBA Найдите вот эти строки: Поменяйте выделенную цифру на нужную вам 3 или 4 - это количество символов которое останется от имени конфигурации. PS При сохранении в PDF тоже ругается на неправильное название чертежа, т.к. тоже обрезает название конфигурации до двух знаков, там тоже надо править при желании...
    • eljer0n
      @malvi.dp в общем порядок следующий (на каждое исполнение свой чертеж и позиция в спецификации):   Для исполнения с 2мя знаками. 1. Есть деталь с именем формата ХХ-01.01-01 (последнее -01 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации (как у вас на картинке). Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с корректным именем. 5. В спецификации сборки все отображается корректно.     Для исполнения с 3мя знаками. 1. Есть деталь с именем формата ХХ-01.01-011 (последнее -011 это исполнение) 2. В Мпроп детали назначается исполнение из конфигурации. Отображается корректно 3. Создается чертеж по модели, исполнение в основной надписи чертежа детали отображается корректно. 4. Сохраняется через SaveDRW с некорректным именем, а именно - с обрезанным до двух знаков исполнением (-01). 5. В спецификации сборки шифр отображается (внезапно! может какой глюк был: у солида или у меня ) корректно, как и у вас на рисунке.     Выходит, загвоздка все-таки только в сохранялке чертежа.
    • gudstartup
      да информация о решенной проблеме очень важна так что будем ждать хороших новостей!
    • mrVladimir
      @gudstartup Спасибо Вам за помощь. Теперь дело в приобретении платы. Как что-то получится (сперва приобрести, потом поставить) обязательно отпишусь.
×
×
  • Создать...