Имя: Пароль:
1C
1С v8
Поиск по измерению в РегистрСведенийНаборЗаписей
,
0 geka-geka
 
11.05.12
08:38
ЗУП
У формы элемента справочника ФизическиеЛица есть  переменная НаборКонтактнойИнформации типа РегистрСведенийНаборЗаписей. Как в этом наборе найти запись с измерением АдресДляИнформирования и заменить его на нужный?

Хочется написать что-то наподобие:

НаборКонтактныйАдрес = ФормаФизЛица.НаборКонтактнойИнформации;
НаборКонтактныйАдрес.Прочитать();
Для Каждого ЗаписьКонтактнойИнформации Из НаборКонтактныйАдрес Цикл
   Если ЗаписьКонтактнойИнформации.Вид = Справочники.ВидыКонтактнойИнформации.ИнформАдресФизЛица Тогда
       ЗаписьКонтактнойИнформации. = ....
       Возврат;
   КонецЕсли;
КонецЦикла;

Может есть способы по эффективнее?
1 Fragster
 
гуру
11.05.12
08:39
выгрузить-загрузить
2 geka-geka
 
11.05.12
08:42
(1) думаешь будет быстрее работать?
3 Rizhij_Nikitos
 
11.05.12
09:06
Все или конкретную? МОжно еще отбор вкатить, чтобы не все читать...
4 geka-geka
 
11.05.12
09:13
отбор пробовал, может конечно ступил где, но у меня он оставлял только одну нужную запись, а остальные перетирал
5 Rizhij_Nikitos
 
11.05.12
09:29
эт когда записывал набор записей да? по идеи он должен был тебе записать удалив все записи по отбору и записать новые, но можно еще было бы попробывать
НаборЗаписей.Записывать(Ложь) эт ты еще добавишь запись, но думаю эт не вариант для тебя.
6 geka-geka
 
11.05.12
09:44
Сделал так:

НаборКонтактныйАдрес = ФормаФизЛица.НаборКонтактнойИнформации;
тз_Контактнаяинформация = НаборКонтактныйАдрес.Выгрузить();
НайденнаяЗапись = тз_Контактнаяинформация.Найти(Справочники.ВидыКонтактнойИнформации.ИнформАдресФизЛица,"Вид");
Если НайденнаяЗапись <> Неопределено И НайденнаяЗапись.Представление = "" Тогда
   Индекс = тз_Контактнаяинформация.Индекс(НайденнаяЗапись);
   НаборКонтактныйАдрес[Индекс].Вид =
   ...
КонецЕсли;
7 geka-geka
 
11.05.12
09:48
Еще, модифицированность в значении истина, а не спрашивает сохранить или нет изменения при ОткрытьМодально(). Почему?
8 Rizhij_Nikitos
 
11.05.12
09:48
(6) а если у тебя 5к записей, или 10к, ты все перебирать будешь?
9 geka-geka
 
11.05.12
09:51
(8)В каком месте? Вряд ли будет больше 10 записей.
10 geka-geka
 
11.05.12
10:01
Больше на самом деле интересует вопрос в (7)
11 Rizhij_Nikitos
 
11.05.12
14:29
(7) я че то вопрос не понял, ну ОткрылМодально() ты форму а че хочешь не понял.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.