Форум пользователей ПО АСКОН

Профессиональные вопросы => Программирование приложений => Тема начата: beztrud от 24.06.18, 06:28:38

Название: Вместо фрагмента создается чертеж
Отправлено: beztrud от 24.06.18, 06:28:38
Здравствуйте. Никак не пойму как создать фрагмент, а не чертеж.
kompas:=KompasObject(CreateOleObject('Kompas.Application.5'));
kompas.Visible:=true;
DocumentParam := ksDocumentParam(kompas.GetParamStruct(ko_DocumentParam));
DocumentParam.Init();
DocumentParam.type_:=ksDocumentFragment;
Document2D:=ksDocument2D(kompas.Document2D);
Document2D.ksCreateDocument(DocumentParam);
Хотя в DocumentParam.type_:=ksDocumentFragment; явно указывает на создание фрагмента.
Название: Re: Вместо фрагмента создается чертеж
Отправлено: Sabahs от 24.06.18, 07:31:27
Для API5 должен быть тип - lt_DocFragment, Вы используете переменную для API7.
Проще в API7 его создать, так
pDocuments.Add(ksDocumentFragment,True);
или так
pDocuments.AddWithDefaultSettings(ksDocumentFragment,True);
А если нужен интерфейс API5, то его можно уже от созданного фрагмента получить.
Название: Re: Вместо фрагмента создается чертеж
Отправлено: beztrud от 24.06.18, 08:03:25
"Для API5 должен быть тип - lt_DocFragment"


Если можно код полностью для создания фрагмента.
Название: Re: Вместо фрагмента создается чертеж
Отправлено: Sabahs от 24.06.18, 08:24:28
Doc:=ksDocument2D(kompasApi.Document2D);
DocPar:=ksDocumentParam(KompasApi.GetParamStruct(ko_DocumentParam));
S:=Copy(Application.ExeName,1,Length(Application.ExeName)-3)+'frw';
DocPar.FileName:=S;
DocPar.comment:='Генератор программ на обработку крановых колес';
DocPar.author:='Мельник Б.Н.';
DocPar.type_:=lt_DocFragment;
DocPar.regime:=0;
Doc.ksCreateDocument(DocPar);
Название: Re: Вместо фрагмента создается чертеж
Отправлено: beztrud от 24.06.18, 12:29:25
а kompasapi: KompasObject? Какие библиотеки подключаете. Что-то ругается на  lt_DocFragment.
Название: Re: Вместо фрагмента создается чертеж
Отправлено: Sabahs от 24.06.18, 13:41:01
LDefin2D.pas
Название: Re: Вместо фрагмента создается чертеж
Отправлено: beztrud от 24.06.18, 14:43:54
Ура! Получилось! Спасибо большое.