Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
брат666 Участник со стажем
Вступление в Клуб: 20.02.2014
|
Вт Ноя 10, 2015 15:56  Ошибка при добавлении в коллекцию |
|
Полезность: Нет оценки
|
Добрый день коллеги. Создал справочник, добавил реквизит адрес (массив). В экранной форме при нажатии на кнопку "адрес" не открывает и выходит такая ошибка : Нельзя использовать коллекцию без создания экземпляра. Создайте экземпляр.
Просьба помогите. За ранее благодарен. |
|
 |
alx Участник - экстремал
Вступление в Клуб: 29.06.2007
|
Вт Ноя 10, 2015 16:05   |
|
Полезность: 1
|
Смотрите в документации к администратору словаря - признак Простой конструктор, либо сначала создайте, не заполняя массив, а потом в редактировании заполняйте. |
|
 |
брат666 Участник со стажем
Вступление в Клуб: 20.02.2014
|
Вт Ноя 10, 2015 16:35   |
|
Полезность: Нет оценки
|
Спасибо большое. |
|
 |
Матвеев Евгений Профи
Вступление в Клуб: 31.01.2012
|
Вт Ноя 10, 2015 17:28  Re: Ошибка при добавлении в коллекцию |
|
Полезность: 1
|
брат666 пишет: | Добрый день коллеги. Создал справочник, добавил реквизит адрес (массив). В экранной форме при нажатии на кнопку "адрес" не открывает и выходит такая ошибка : Нельзя использовать коллекцию без создания экземпляра. Создайте экземпляр.
Просьба помогите. За ранее благодарен. |
Массив какого типа Вы создали? Теоретически там еще как правило структура привязывается...примеров полно в АСД
Это первое , второе
Вы как создавали экземпляр справочника? Если через insert то вполне возможно получение такой ошибки из за отсутствия init для массива...
Следует работать только через конструктор [new_auto] как вариант... |
|
 |
Alexsey Эксперт
Вступление в Клуб: 06.09.2007
|
Ср Ноя 11, 2015 11:11   |
|
Полезность: 2
|
Если работать через Insert, то сначала необходимо инициализировать структуру.
Например:
Код: | declare
vMDoc [MAIN_DOCUM];
begin
vMDoc%init(true,true);
-- заполнение структуры
::[MAIN_DOCUM]%insert(vMDoc);
end; |
В документации к PL+ глава 1.2.13.16.1 Модификатор %init. _________________ всегда есть как минимум 2 выхода |
|
 |
Матвеев Евгений Профи
Вступление в Клуб: 31.01.2012
|
Ср Ноя 11, 2015 11:54   |
|
Полезность: 1
|
Alexsey пишет: | Если работать через Insert, то сначала необходимо инициализировать структуру.
Например:
Код: | declare
vMDoc [MAIN_DOCUM];
begin
vMDoc%init(true,true);
-- заполнение структуры
::[MAIN_DOCUM]%insert(vMDoc);
end; |
В документации к PL+ глава 1.2.13.16.1 Модификатор %init. |
Вот и примерчик есть... Быть тебе экспертом, Алексей |
|
 |
Аленушка Участник со стажем
Вступление в Клуб: 13.05.2015
|
Пн Ноя 16, 2015 13:58   |
|
Полезность: 1
|
добрый день,
в экранной форме такая ошибка обычно выдается, если пытаются открыть коллекцию еще не существующего экземпляра. Если это конструктор же ? то нужно поставить галочку в операции во вкладке "компиляция" - простой конструктор. Тогда у еще не созданного экземпляра уже будет id-шник и ошибка не выйдет..
в сущности, все то же , что написал Алексей- только галочками в операции ) |
|
 |
|