Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как сохранить список? / 11 сообщений из 11, страница 1 из 1
02.09.2009, 16:17
    #36175087
CacheLot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
Как сохранить список объектов в соответ. свойстве класса?
Есть свойство типа: (в классе NewClass1):
Код: plaintext
1.
Property MyTestProperty As list Of MyTestClass;
Не получается сохранить в этом свойстве список объектов:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
ClassMethod TestMethod(TestList As %Library.ListOfObjects) [ ZenMethod ]
{
  s MyOpen=##class(NewClass1).%OpenId( 1 )
  d MyOpen.MyTestProperty.InsertList(TestList) //Тут ошщибка..
  d MyOpen.%Save()

}

Функции типа InsertListOfObjects() - вроде б нету... Кащей 2009.1
...
Рейтинг: 0 / 0
02.09.2009, 16:24
    #36175101
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
CacheLot , лучше не используйте такой тип для свойств... Т.к. будут потом и другие "трудности".
...
Рейтинг: 0 / 0
02.09.2009, 16:30
    #36175115
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
CacheLot , если верить документу "КашеОбжектКвикСтарт"...

автор
Вставка элементов в конец списка:

Код: plaintext
1.
USER>do p.Symptoms.Insert("Кашель")
USER>do p.Symptoms.Insert("Насморк")

Вставка элемента в конкретное место списка:

Код: plaintext
USER>do p.Symptoms.InsertAt("Жар", 2 )
...
Рейтинг: 0 / 0
02.09.2009, 16:33
    #36175124
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
И еще...

автор
Изменение значения элемента списка:

Код: plaintext
USER>do p.Symptoms.SetAt("Температура", 2 )

Удаление элемента из списка:

Код: plaintext
USER>do p.Symptoms.RemoveAt( 2 )

Сохраните и закройте объект .
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
02.09.2009, 16:40
    #36175144
CacheLot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
krvsa CacheLot , лучше не используйте такой тип для свойств... Т.к. будут потом и другие "трудности".

Какие трудности? А какая альтернатива? Вообще в этом же методе я использовал функции : InsertObjectId() - без проблем!
GetObjectIdAt() - тож работает!
..а вот список вставлять не хочет...
...
Рейтинг: 0 / 0
02.09.2009, 16:54
    #36175180
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
CacheLotКакие трудности?

Всвоё время их тут много перечисляли... Да например создание индекса, работа с sql...

CacheLotА какая альтернатива?

Другой класс. Связать его отношением с этим и нет никаких проблем!
...
Рейтинг: 0 / 0
02.09.2009, 17:13
    #36175224
CacheLot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
krvsaCacheLotКакие трудности?

Да например создание индекса, работа с sql...

Ну если использовать синтаксис "->" - то можно и с SQL-ем пробовать работать.. насчёт индексов на эти свойства думаю обойтись можно...
...
Рейтинг: 0 / 0
02.09.2009, 20:13
    #36175630
Ptn
Ptn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
а обычное присвоение не проканает ?

Код: plaintext
1.
  d MyOpen.MyTestProperty=TestList
...
Рейтинг: 0 / 0
02.09.2009, 21:00
    #36175660
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
CacheLot , дело конечно хозяйское...
...
Рейтинг: 0 / 0
03.09.2009, 10:44
    #36176214
CacheLot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
Ptnа обычное присвоение не проканает ?

Код: plaintext
1.
  s MyOpen.MyTestProperty=TestList


И как это я сам не догадался... работает!
...
Рейтинг: 0 / 0
24.09.2009, 02:07
    #36213888
neznau
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сохранить список?
CacheLot...А какая альтернатива? ...

Можно, например, глобал "обернуть" классом, если нужно какой либо список хранить...да и не только список можно будет хранить, а что угодно.

К этому пришёл после того, как при использовании свойства-списка выполнение программы валилось по ошибке (не помню её названия), которая возникала из-за того, что данное свойство заполнялось большим числом данных, объект в это время хранился в памяти и когда свободная память выделенная джобу кончилась - генерировалась ошибка.
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как сохранить список? / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]