Имя: Пароль:
1C
1С v8
Как до записывать НаборЗаписей не удаляя старые?
0 aramisov
 
26.09.14
09:18
Имеется регистр сведений Не переодический Не подчинённый регистратору
мееться документ ПоступленияТоваровУслуг из этого документа вызывается процедура которая на основании табличной части товаров заполняет набор записей (номенклатура и серия номенклатуры) после чего открывается форма набора записей и пользователю предлогаеться заполнить цену, но есть одно но,если номенклатура ранее записаная не присутствует в следующем наборе она удаляеться из регистра сведения, вопрос как это избежать?




    Запрос = новый Запрос;            
    
    Запрос.Текст = "ВЫБРАТЬ
    |    ПоступлениеТоваровУслугТовары.Номенклатура,
    |    ПоступлениеТоваровУслугТовары.СерияНоменклатуры,
    |    ЕСТЬNULL(ЦенаПоСерииям.Цена, 0) КАК Цена
    |ИЗ
    |    Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦенаПоСерииям КАК ЦенаПоСерииям
    |        ПО ПоступлениеТоваровУслугТовары.Номенклатура = ЦенаПоСерииям.Номенклатура
    |            И ПоступлениеТоваровУслугТовары.СерияНоменклатуры = ЦенаПоСерииям.СерияНоменклатуры
    |ГДЕ
    |    ПоступлениеТоваровУслугТовары.Ссылка = &Ссылка";
    Запрос.УстановитьПараметр("Ссылка",Ссылка);
    Результат = Запрос.Выполнить().Выгрузить();
    НаборЗаписей = РегистрыСведений.ЦенаПоСерииям.СоздатьНаборЗаписей();
    НаборЗаписей.Загрузить(Результат);
    Форма = НаборЗаписей.ПолучитьФорму("ФормаНабораЗаписей");
    Форма.Открыть();
1 Ёпрст
 
26.09.14
09:18
Устанавливай Отбор, потом перебирай записи и изменяй..
2 Ненавижу 1С
 
гуру
26.09.14
09:19
правильно:
подчинить регистр регистратору, сделать периодическим
неправильно:
надо сначала прочитать набор записей, потом добавлять
3 PLUT
 
26.09.14
09:21
+(2) а можно при записи всегда добавлять записи))) хуже точно будет, судя по (0)
4 aramisov
 
26.09.14
09:59
(2) не всегда этот регистр из реализации заполняться будет, иногда проще будет провалиться в регистр и в ручную заколотить. (1) есть ли возможность данну конструкцию сохранить передав отбор например в списке значений или таблице значений?
5 Fedor-1971
 
26.09.14
10:08
(4) тебе нужно любым способом передать параметры для отбора - как удобно, так и передай (структура, ТЗ, список значений, массив). Потом на наборе записей регистра установишь Отбор, что-то поправишь(добавишь, удалишь) и сохранишь результат в регистр.
Поищи по  "1С8: Как изменить записи в регистре сведений".
6 Зойч
 
26.09.14
10:24
Записать(ЛОЖЬ)
7 Зойч
 
26.09.14
10:24
Или менеджер записи использовать
8 aramisov
 
26.09.14
10:50
(5) (6) (7) а в отбор как список значений или таблицу передать, везде пример где только одно значение передаёться если значений много то отбор и запись в цикле
9 Fedor-1971
 
26.09.14
11:03
(8) лентяй! Прочитай тут: http://helpf.pro/faq8/view/558.html
10 aramisov
 
26.09.14
15:20
(9) в отбор нельзя передать список или таблицу значени
НаборЗаписей.Отбор.Номенклатура.Установить(ТекущаяНоменклатура);
НаборЗаписей.Отбор.Свойство.Установить(ТекущееСвойство);
11 netsurfer
 
26.09.14
16:03
замещение выставить в ложь