Здравствуйте все...
Столкнулся с проблемой... Использовал макрос на CATScript, который заполнял основную надпись чертежа, используя параметры модели, с которой генерировался главный вид. Параметры Обозначение, Наименование, Материал и Масса этот макрос получал следующим образом (и делал это без сбоев):
Dim TextFrame1, TextFrame2, TextFrame3, TextFrame4 as String
Dim DrwSheet as DrawingSheet
Set DrwSheet = Catia.ActiveDocument.Sheets.ActiveSheet
TextFrame1 = DrwSheet.Views.Item("Front view").GenerativeBehavior.Document.PartNumber
TextFrame2 = DrwSheet.Views.Item("Front view").GenerativeBehavior.Document.Definition
TextFrame3 = DrwSheet.Views.Item("Front view").GenerativeBehavior.Document.Nomenclature
TextFrame4 = CStr(DrwSheet.Views.Item("Front view").GenerativeBehavior.Document.Analyze.Mass
Когда я попытался использовать эту конструкцию в программе, написанной на VB6, она не сработала, потому что выражение
DrwSheet.Views.Item("Front view").GenerativeBehavior.Document
возвращает объект типа AnyObject , который не имеет свойств PartNumber, Definition, Nomenclature и т.п.
Путем долгих тыков я родил конструкцию
TextFrame1 = DrwSheet.Views.Item("Front view").GenerativeBehavior.Document.Parent.Product.PartNumber
TextFrame2 = DrwSheet.Views.Item("Front view").GenerativeBehavior.Document.Parent.Product.Definition
TextFrame3 = DrwSheet.Views.Item("Front view").GenerativeBehavior.Document.Parent.Product.Nomenclature
которая вроде работала. Но по мере ее использования оказалось, что она сначала срабатывала 9 раз из 10 - ти, а потом все реже и реже, на некоторых сборках не срабатывает вообще. Иногда этот глюк лечится перезагрузкой Катии, иногда это не помогает. Отсюда вопрос - как правильно в VB6 коде получить ссылку на документ, содержащий продукт с которого генерировался главный вид и потом соответственно на упомянутые параметры этого продукта? Катя V5R16 SP4
Заранее спасибо