Справочный номер на чертеже

Автор Тема: Справочный номер на чертеже  (Прочитано 5917 раз)

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

Оффлайн rokataevАвтор темы

  • ADN OPEN
  • Сообщений: 4
  • Карма: 0
Добры день,
На чертеже пользуемся основной надписью и рамкой модуля ESKD

Через API формируем справочный номер
ThisApplication.ActiveDocument.PropertySets.Item("Свойства ГОСТ").Item("Справочный номер").Value = "НОМЕР"
Справочный номер записывается, но на чертеже не отображается.
При обращении к меню Основной надписи измененный справочный номер виден. При сохранении появляется и на чертеже

Как средствами API обновить справочный номер на чертеже?

Оффлайн mikazakov

  • ADN
  • *
  • Сообщений: 752
  • Карма: 195
  • Skype: mikazakov@mail.ru
Re: Справочный номер на чертеже
« Ответ #1 : 15-03-2017, 20:42:39 »
На чертеже пользуемся основной надписью и рамкой модуля ESKD
Да фиг его знает, что там внутри модуля ESKD и как он обновляет.
Нужно посмотреть, что там за текстовое поле в скетч-символе. Если там промтовое поле, то просто заменить его на редактируемое свойство.

Оффлайн rokataevАвтор темы

  • ADN OPEN
  • Сообщений: 4
  • Карма: 0
Re: Справочный номер на чертеже
« Ответ #2 : 16-03-2017, 08:02:29 »
Прошу прощения, что такое "промтовое поле"?

Свойство как раз нужное (Свойства ГОСТ.Справочный номер ), посмотрели изначально.
Нужная нам часть рамки выводиться через эскизные обозначения "ГОСТ - Доп.графы 2"
Менять его на другое не хотелось бы, потому как процедуру хотелось бы делать в любых уже сделанных чертежах.

Само свойство обновляется. При входе в диалог редактирования Основной надписи оно отображается корректно. При нажатии "Ок" появляется и на чертеже
Такое ощущение, что нужно как то подтолкнуть обновление нужного эскизного обозначения. Только не знаю как это сделать.

Оффлайн mikazakov

  • ADN
  • *
  • Сообщений: 752
  • Карма: 195
  • Skype: mikazakov@mail.ru
Re: Справочный номер на чертеже
« Ответ #3 : 16-03-2017, 09:24:21 »
что такое "промтовое поле"?
У меня это Prompted Entry:

как это будет по русски я не знаю.
По поводу ЕСКДэшных шаблонов, у меня их даже нет, слишком уж там вычурный подход был реализован.
Если в ЕСКДэшных шаблонах Справочный номер это обычное свойство в текстовом поле, то попробуйте использовать функцию:
DrawingDocument.ActiveSheet.Update()

P.S. есть еще DrawingDocument.Update()

Оффлайн rokataevАвтор темы

  • ADN OPEN
  • Сообщений: 4
  • Карма: 0
Re: Справочный номер на чертеже
« Ответ #4 : 16-03-2017, 09:52:40 »
Точно не промтовое поле



Ни один из вариантов
DrawingDocument.ActiveSheet.Update()
DrawingDocument.Update()
не помогает

Оффлайн mikazakov

  • ADN
  • *
  • Сообщений: 752
  • Карма: 195
  • Skype: mikazakov@mail.ru
Re: Справочный номер на чертеже
« Ответ #5 : 16-03-2017, 09:59:40 »
Выкладывайте чертеж и причесаный пример кода и последовательность действий.
Тогда посмотрю что там не так

Оффлайн rokataevАвтор темы

  • ADN OPEN
  • Сообщений: 4
  • Карма: 0
Re: Справочный номер на чертеже
« Ответ #6 : 16-03-2017, 10:09:49 »
В файле примера есть лишь установленное свойство "Обозначение"
и единственная процедура в VBA
которая проверяет наличие свойства и условие и записывает справочный номер

Оффлайн mikazakov

  • ADN
  • *
  • Сообщений: 752
  • Карма: 195
  • Skype: mikazakov@mail.ru
Re: Справочный номер на чертеже
« Ответ #7 : 17-03-2017, 07:52:06 »
В файле примера
файл в формате 2017, такой у меня тока дома стоит, вечером седня взгляну если успею