Проблема API? Не видит прикрепленные чертежи у Компаса 21, 22.

Автор Frnkluv, 16.11.23, 12:58:17

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

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

Frnkluv

Здравствуйте!
Обнаружил такую проблему, что при попытке считывания(проверки наличия) прикрепленных чертежей в 21, 22 версии, в переменную arrAttachDoc присваивается null (как будто бы ничего нет).
При тестах в версиях 18, 19 (и полагаю ниже) все окей, код работает.
Такое происходит именно с прикрепленными чертежами, т.к. спецификацию отображает.
Прикреплял чертежи в компасе: управление -> управление связными чертежами.

Подскажите возможно ли решить данную проблему, или же это косяк апи?

private void AttachDrawings(SerializableDocumentStructure modelData, string fileName)
{
    var ksDoc = (ksDocument3D)_api5.Document3D();
    ksDoc.Open(fileName, true);

    var doc3d = _api7.ActiveDocument as IKompasDocument3D;
    var propKeeper = doc3d.TopPart as IPropertyKeeper;

    var productDataManager = _api7.ActiveDocument as IProductDataManager;
    var arrAttachDoc= productDataManager?.ObjectAttachedDocuments[propKeeper];

    var path = _api5.ksSystemPath(5);


    if (arrAttachDoc != null)
        foreach (string item in arrAttachDoc)
        {
            //something
        }

    ksDoc.close();
}

Nipal

var arrAttachDoc = productDataManager?.ObjectAttachedDocuments[propKeeper];
Выделил жирным, надо?

p3452

На v20 аналогичный код работает!
(с единственной разницей: вместо "var arrAttachDoc" стоит "dynamic arrAttachDoc")

feron

Цитата: Nipal от 16.11.23, 13:05:02Выделил жирным, надо?
Видимо это условный оператор проверяющий на существование объекта productDataManager.

Цитата: p3452 от 16.11.23, 16:26:25(с единственной разницей: вместо "var arrAttachDoc" стоит "dynamic arrAttachDoc")
Какой в этом смысл если переменная в контексте функции работает ?

p3452

Цитата: feron от 21.11.23, 17:25:22
Цитировать(с единственной разницей: вместо "var arrAttachDoc" стоит "dynamic arrAttachDoc")
Какой в этом смысл если переменная в контексте функции работает ?
1. Определенности, знаете ли, добавляет...
2. Позволяет, в последующих строчках, нормально отработать циклу "foreach...".

Достаточно "смысла"?

feron

Цитата: p3452 от 21.11.23, 22:19:321. Определенности, знаете ли, добавляет...
2. Позволяет, в последующих строчках, нормально отработать циклу "foreach...".

Массив получают сразу здесь вполне достаточна var.. в любом случае автору наверно сейчас не до этого..

4uzhoy


Frnkluv

Цитата: 4uzhoy от 04.07.24, 14:51:59Удалось ли решить проблему?

выяснилось что получение связных чертежей зависит от тумблера "для всех исполнений". Он по дефу включен. А если он включен или же у вас нет исполнений, то чертежи не достаются.
Если же его офнуть, то все становится ок.
Вопрос в том как получить к этому тумблеру доступ, чтобы офать его, если он включен.
+ Благодарностей: 1

p3452

Цитата: Frnkluv от 23.08.24, 14:46:02Вопрос в том как получить к этому тумблеру доступ, чтобы офать его, если он включен.
Нормальным РУССКИМ языком изложите проблему и код проблемный прикрепите...

Lemieux

Цитата: p3452 от 23.08.24, 15:57:49Нормальным РУССКИМ языком изложите проблему и код проблемный прикрепите...

Вроде человек всё понятно написал.

СВ

 (Повторю историю, ещё с армейских моих времён (слово в слово, как сейчас помню):
Один боец - другому:
- Подай голицы?
Второй оглядывается:
- Где?
- Да у тебя под ногами?
- Эти, что ли?
- Да.
- Дурак, какие это голицы, это ВЕЗЁНКИ!
И бросает тому ру....)


Frnkluv

Цитата: p3452 от 23.08.24, 15:57:49Нормальным РУССКИМ языком изложите проблему и код проблемный прикрепите...


жаль, что вы не в состоянии нажать кнопку "home" или колесико покрутить, чтобы 1 сообщение в теме посмотреть
к сожалению, я ничего не могу с этим сделать

p3452

Цитата: Frnkluv от 27.08.24, 17:11:28жаль, что вы не в состоянии нажать кнопку "home" или колесико покрутить, чтобы 1 сообщение в теме посмотреть
к сожалению, я ничего не могу с этим сделать
Вы уж определитесь, что для Вас важнее "умничать" и "гнуть пальцы" или ПОЛУЧИТЬ ОТВЕТ НА ВОПРОС?!

Lemieux

Цитата: p3452 от 27.08.24, 17:57:29Вы уж определитесь, что для Вас важнее "умничать" и "гнуть пальцы" или ПОЛУЧИТЬ ОТВЕТ НА ВОПРОС?!
Жаль, что я не получаю ответы на свои вопросы  :`(

p3452

Цитата: Lemieux от 27.08.24, 18:58:18Жаль, что я не получаю ответы на свои вопросы
Вы ПОЛУЧИЛИ ответы, но не захотели принять!

Lemieux


UU

Цитата: Lemieux от 27.08.24, 19:35:31Не смог унести  :-)))  :beer:
Сумачку по больше возьмите, только бублики закончились.