Использование SmartRecordList библиотеки в Delphi

Программирование для SmarTeam.

Использование SmartRecordList библиотеки в Delphi

Сообщение ayrat » 14 сен 2011 06:11

На С# это выглядит так:
var PrIdAtt = new SmRecList.SmRecord();
...
newObj=Session.ObjectStore.RetrieveObjectByPrimaryIdentity(ClassID, PrIdAtt);
Вопрос, как будет тоже самое выглядеть в Delphi?
ayrat
Новичок
Новичок
 
Сообщения: 5
Зарегистрирован: 19 окт 2009 11:44
Откуда: Железногорск(Красноярск)

Re: Использование SmartRecordList библиотеки в Delphi

Сообщение Геройчиковый » 15 сен 2011 01:18

Да так же и будет, только синтаксис дельфийский.
Если не знаете синтаксис делфи, зачем тогда это вам? 8)

тем более вверху приведён пример не на шарпе, а на гибриде шарпа и дельфи.

В дельфи надо как-то так:

var SmRecord: PrIdAtt;
SmObject: newObj;

Begin
PrIdAtt := SmRecord.Create;
end;

Ну и в начале не забыть про
uses SmRecList, SmApplic, и т.п.
Будь у героев время подумать - героизма не было бы вовсе...
Все люди, занятые истинно важным делом, всегда просты, потому что не имеют времени придумывать лишнее. (Лев Николаевич Толстой)
Делай, что можешь, с тем, что имеешь, там, где ты есть. (Теодор Рузвельт)
Аватара пользователя
Геройчиковый
Участник
Участник
 
Сообщения: 170
Зарегистрирован: 25 сен 2007 08:52
Откуда: Балашиха

Re: Использование SmartRecordList библиотеки в Delphi

Сообщение ayrat » 05 окт 2011 05:32

Геройчиковый писал(а):Да так же и будет, только синтаксис дельфийский.
Если не знаете синтаксис делфи, зачем тогда это вам? 8)

тем более вверху приведён пример не на шарпе, а на гибриде шарпа и дельфи.

бред какой-то, насчет гибрида. Возникла проблема с программами на С# использующих API SmarTeam - через какое-то время могут выдавать ошибку. Решили пробовать делать на Delphi.
Геройчиковый писал(а):В дельфи надо как-то так:

var SmRecord: PrIdAtt;
SmObject: newObj;

Begin
PrIdAtt := SmRecord.Create;
end;

Ну и в начале не забыть про
uses SmRecList, SmApplic, и т.п.

Если бы все было так, я бы не спрашивал. Но проблема в том, что в библиотеке SmartRecordList_TLB не прописан тип ISmRecord. Прописаны только IRecord и IMutableRecord которые метод
SmSession.ObjectStore.RetrieveObjectByPrimaryIdentity(SmClassParent.ClassId, SmRecord) не принимает в качестве параметра.
ayrat
Новичок
Новичок
 
Сообщения: 5
Зарегистрирован: 19 окт 2009 11:44
Откуда: Железногорск(Красноярск)

Re: Использование SmartRecordList библиотеки в Delphi

Сообщение Геройчиковый » 06 окт 2011 00:01

ayrat писал(а):бред какой-то, насчет гибрида.

Бред не на счёт гибрида, а бред в приведённом куске кода:
ayrat писал(а):На С# это выглядит так:
var PrIdAtt = new SmRecList.SmRecord();

var - это объявление переменных в Паскале. Если вы пишете var PrIdAtt на шарпе, это означает, что вы хотите объявить переменную PrIdAtt типа var.
Потому я и написал - гибрид.

ayrat писал(а):Возникла проблема с программами на С# использующих API SmarTeam - через какое-то время могут выдавать ошибку. Решили пробовать делать на Delphi.

Писал на шарпе для смартима - 4 года и не я один - всё стабильно работает и очень даже неплохо. Вы бы лучше бы проблему описали - может быть помогли бы тут решить. Дело не в шарпе, дело в коде. Дельфи тут не решение. Хотя если в команде есть много толковых Дельфистов, то, несоменно, на Дельфи лучше. Но тогда бы вопрос бы такой не возник, верно? :-)
Кстати, сам Смартим, точнее некоторые его библиотеки, писали в Дельфи. Можете попробовать вскрыть некоторые дллки и убедиться 8)
А сейчас всё больше приложений в пакете идёт уже на под дотНЕТ.

А почему в SmartRecordList_TLB нет ISmRecord'а - сказать не могу. Кстати, в сторонних средах (например в том же шарпе в ВизуалСТудии), когда смотрите состав библиотек смартима - методы и классы могут незначительно отличаться. Так что поищите что-то похожее, может быть даже IRecord это и есть СмРекорд, кто знает...
Будь у героев время подумать - героизма не было бы вовсе...
Все люди, занятые истинно важным делом, всегда просты, потому что не имеют времени придумывать лишнее. (Лев Николаевич Толстой)
Делай, что можешь, с тем, что имеешь, там, где ты есть. (Теодор Рузвельт)
Аватара пользователя
Геройчиковый
Участник
Участник
 
Сообщения: 170
Зарегистрирован: 25 сен 2007 08:52
Откуда: Балашиха


Вернуться в Программирование

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5