• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

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

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

Получить свойства/параметры спецификации

Автор Igor F, 27.09.21, 16:59:37

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Igor F

Доброго времени суток.

Есть приложение написанное на Delphi, в котором с помощью API 5 версии расшивается файл спецификации. (На вход приложения прилетает путь к файлу, далее рассчитывается количество деталей в спецификации и сборочных единицах).

У спецификации есть свойства "Обозначение" и "Наименование" (скрин прилагается). Возникла проблема, как вытащить эти параметры с помощью API? Сгодится пример на любом языке или направление где искать данный параметр.

параметр.png


Михаил88

# -*- coding: utf-8 -*-
from win32com.client import Dispatch, gencache

kompas_api7_module = gencache.EnsureModule('{69AC2981-37C0-4379-84FD-5DD2F3C0A520}', 0, 1, 0)
application = Dispatch('Kompas.Application.7')

kompas_document = application.ActiveDocument
property_mng = kompas_api7_module.IPropertyMng(application)
property_keeper = kompas_api7_module.IPropertyKeeper(kompas_document)

print(property_keeper.GetPropertyValue(property_mng.GetProperty(kompas_document, 4.0), '', True, True)[1]) #Выводится обозначение
print(property_keeper.GetPropertyValue(property_mng.GetProperty(kompas_document, 5.0), '', True, True)[1]) #Выводится наименование

graphdark

Отдам весь проект с сырцами и екзе. Он по xls строил СП. Всю шапку из программы заполнял. Проект на Delphi.2.zip

Igor F

Спасибо, за ответы.
Заполнение штампа у меня реализовано, а вот чтение оказалось менее очевидно, по крайней мере для меня.
Нашёл в SDK  пример в Step5 (процедура EditStamp), по идее там есть всё, что мне нужно.
Изначально думал, что можно обойтись без разбора штампа.