Страница 1 из 1

Update документа

СообщениеДобавлено: 17 ноя 2011 12:46
dr-dr
Как используя API-интерфейс Smarteam автоматически сменить режим Profile Card с View на Update?

Re: Update документа

СообщениеДобавлено: 20 ноя 2011 02:51
Геройчиковый
Оооо, это очень хороший вопрос.
Когда я воевал со смартимом, я так и не нашёл ответа на такого рода вопрос (например, как узнать в каком состоянии находится объект(а точнее его карточка атрибутов)- просмотр или редактирование или вообще новый создаётся). Я решил свою задачу только с помощью ВиндовсАПИ, но, сами понимаете, что это не есть нормальное решение.
Хотя, сейчас уже кучу всего новго добавили в смартимовский АПИ, так что может быть уже есть возможность сделать и это.
Тут где-то была тема рядом про ISmFieldControl , я ещё советую покопаться в ISmGUIComponent.
Если найдёте решение - отпишитесь.
Другим, думаю, тоже будет интересно.

Re: Update документа

СообщениеДобавлено: 28 ноя 2011 08:52
dr-dr
состояние картоки атрибутов объекта определяется в строком атрибуте Operation.
например:

Код: Выделить всё
Function ABC(ApplHndl As Long, Operation As String, FirstPar As Long, SecondPar As Long, ThirdPar As Long) As Integer


при вызове функции в параметре Operation хранится одно из значений (ADD, UPDATE, VIEW)
скрипт можно вешать через FormDesigner на нужную карточку на событие OnShow.
таким образом, выяснить в каком состоянии карточка находится в даннный момент не проблема, а вот искуственно перевести карточку в режим UPDATE.. вот это проблема.

Re: Update документа

СообщениеДобавлено: 28 ноя 2011 20:29
Геройчиковый
Не, я помню, что с этим Оперейшн было что-то не то и состояние объекта из него не опредлишь. Он вообще, похоже всегда пустой.
Сейчас трудно сказать - протестить не могу, но я помню, что я все входящие переменные пересматривал - не было там ничего.
Может они уже пофиксили там что-то, но вот тройку годиков назад - я долго бился и так и не нашёл другого решения, кроме как искать эту табличку с информацией о состоянии объекта через ВинАПИ.

Re: Update документа

СообщениеДобавлено: 28 ноя 2011 20:32
Геройчиковый
В моём случае скрипт вешался на кнопку на форме. И нужно было определить состояние объекта в скрипте, который вызывался при нажатии на эту кнопку. On show - не пойдёт.

Re: Update документа

СообщениеДобавлено: 22 янв 2012 14:33
Smike
А вроде как можно было это сделать таки через изменение Operation...