Составное обозначение документа

Автор magicalblade, 18.02.24, 20:29:54

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

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

magicalblade

Из справки компаса: "Обозначение документа может быть простым или составным. Обозначение считается простым, если оно включает в себя только базовое обозначение. В составное обозначе�ние помимо базовой части входит номер исполнения, и/или дополнительный номер ис�полнения, и/или код документа."
У нас используется только простое обозначение т.е. как и написано а справке "простое обозначение можно вводить или редактировать непосредственно в ячейке основной надписи".
Но если с помощью API обновить штамп, даже если не вносить изменения в ячейку обозначения, то простое обозначение превращается в составное. При попытке ввести в ячейку данные выскакивает окно редактирования составного обозначения:
Составное обозначение.JPG
Так же в справке написано: " Составное обозначение превращается в простое, если очистить в диалоге поля с номе�ром исполнения, дополнительным номером и кодом (разделители должны быть систем�ными или отсутствовать)."
Как видно на картинке введено только базовое обозначение. Если в этом окне нажать "ОК" то при следующем редактировании ячейки обозначения это окно не будет появляться.
Но как сделать так что бы оно не появлялось из-за обновления штампа?
Так же оно появляется если внести изменения в именно в свойство "Обозначение". Свойство меня следующим кодом:
            IPropertyMng propertyMng = (IPropertyMng)Application;
            _Property property = propertyMng.GetProperty(kompasDocument, "Обозначение");
            IPropertyKeeper propertyKeeper = (IPropertyKeeper)kompasDocument2D;
            propertyKeeper.SetComplexPropertyValue(property,
                $@"<?xml version=""1.0""?>
                    <document fromSource=""false"" expression="""" type=""string"">
                     <property id=""base"" value=""qwe"" type=""string"" />
                     <property id=""embodimentDelimiter"" value=""-"" type=""string"" />
                     <property id=""embodimentNumber"" value="""" type=""string"" />
                     <property id=""additionalDelimiter"" value=""."" type=""string"" />
                     <property id=""additionalNumber"" value="""" type=""string"" />
                     <property id=""documentDelimiter"" value="""" type=""string"" />
                     <property id=""documentNumber"" value="""" type=""string"" />
                    </document>"
                );
            property.Update();
После этого при попытке внести изменения в ячейку обозначения выскакивает окно редактирования составного обозначения.
Но если открыть чертеж через API в режиме невидимости внести изменения в штамп обновить его, закрыть документ сохранившись - то в этом документе не выскакивает окно редактирования при попытке редактирования ячейки обозначения в штампе.
Не могу понять чем отличается внесение изменения в штамп в невидимом режиме документа и как это повторить. Как сделать так что бы после внесения изменения в штамп простое обозначения документа не превращалось в составное?

Хмарик


magicalblade

Цитата: Хмарик от 19.02.24, 10:20:11Посмотрите тему https://forum.ascon.ru/index.php?topic=38652.0
Сделайте как там. Без API.
Шаблоны не подходят. Чертеж не имеет 3Д модели и он уже готов. В данном конкретном случае необходимо записать имя файла в ячейку штампа "Обозначение". Можно конечно сделать кнопку которая копирует в буфер обмена имя файла а разработчик сам заходит в штамп и вставляет его. Но хотелось бы что бы все это делалось по одной кнопке.

Хмарик

вв
Цитата: magicalblade от 19.02.24, 10:45:45В данном конкретном случае необходимо записать имя файла в ячейку штампа "Обозначение"
1 Зачем?
2 Эта ячейка доступна для редактирования руками

magicalblade

Цитата: Хмарик от 19.02.24, 11:00:05вв1 Зачем?
2 Эта ячейка доступна для редактирования руками
У нас система документации не стандартная.
Человек обычно копирует файл чертежа и его изменяет. При этом скопировав файл он его сразу называет как надо, это имя надо перенести в штамп. Да можно редактировать руками, но когда файлов 20+ начинаешь уставать и путаться.
И это в данном случае. В будущем может понадобиться еще какие то изменения в штамп вносить. Хотелось бы понять ситуацию и как с этим бороться.

Хмарик

В штамп может вноситься только то что предусмотрено ГОСТ. И Компасом.
Отказывайтесь от нестандартной системы заполнения штампа, используйте Шаблон и у вас все будет великолепно.