Имя: Пароль:
1C
 
Снятие с регистрации плана обмена набора записей
↓ (Волшебник 13.02.2024 10:36)
0 HamyaG
 
13.02.24
09:44
Всем бодрого времени суток. Перелопатил весь гугл, но то ли я дурак, то ли лыжи не едут. Пните в нужную сторону)
Имеем в расширении план обмена. На него автоматически регистрируются изменения периодического независимого регистра сведений основной конфигурации. У регистра 3 измерения - ВидЦен, Номенклатура, Характеристика. У всех трех стоит галочка основной отбор.
Цель - снять с регистрации уже обработанные наборы записей.
На текущий момент код следующий:

НаборЗаписей = РегистрыСведений.ЦеныНоменклатуры.СоздатьНаборЗаписей();
Для Каждого Товар из ВсеЦеныУзла цикл
	НаборЗаписей.Отбор.Период.Установить(Товар.Дата);
	НаборЗаписей.Отбор.Период.Использование = Истина;
	НаборЗаписей.Отбор.Номенклатура.Установить(Товар.Номенклатура); 
	НаборЗаписей.Отбор.Номенклатура.Использование = Истина;
	НаборЗаписей.Отбор.Характеристика.Установить(Товар.Характеристика);
	НаборЗаписей.Отбор.Характеристика.Использование = Истина;
	НаборЗаписей.Отбор.ВидЦен.Установить(Товар.РозничныйВидЦен,Истина); 
	НаборЗаписей.Отбор.ВидЦен.Использование = Истина;
	НаборЗаписей.Прочитать();
	ПланыОбмена.УдалитьРегистрациюИзменений(Сервер.ПланОбмена, НаборЗаписей);
КонецЦикла;


В наборе записей запись по фильтру находит, но регистрация все равно остается. Куда копать, уже хз, прошу помощи у коллективного разума))
1 Волшебник
 
13.02.24
09:43
Не надо читать набор
2 Волшебник
 
13.02.24
09:44
метод Установить ставит Использование в Истина, так что уберите все такие строки
3 HamyaG
 
13.02.24
09:46
и читал и не читал, итог к сожалению один((
4 Волшебник
 
13.02.24
09:47
(3) Вам надо посидеть в отладчике и привести побольше программного кода. Например, непонятно, что такое "Сервер.ПланОбмена". Там должен быть узел
5 HamyaG
 
13.02.24
09:50
Сервер.ПланОбмена - это ссылка на узел плана обмена

использование и ставил в истину и убирал строки - итог один
6 Волшебник
 
13.02.24
09:53
(5) Не морочьте нам голову
7 Волшебник
 
13.02.24
09:54
(5) Если это узел, то назовите переменную по-другому
8 HamyaG
 
13.02.24
09:56
в отладчике:

Сервер.ПланОбмена    Тестовый контур    ПланОбменаСсылка.ОбменСВнешнимСервером

НаборЗаписей    РегистрСведенийНаборЗаписей.ЦеныНоменклатуры    РегистрСведенийНаборЗаписей.ЦеныНоменклатуры
9 Волшебник
 
13.02.24
09:57
В прошлой ветке у Вас в адресе "E:\1cBase" буква "с" была русская.
Может и здесь херню какую-то наворотили?
10 HamyaG
 
13.02.24
09:59
(9) судя по отладчику - не похоже)
11 Волшебник
 
13.02.24
10:00
что такое ВсеЦеныУзла?
заходит ли в цикл?

Почему переменная цикла называется "Товар", хотя там не товар, а цена по товару и характеристике?

набор записей безопасней создавать внутри цикла
12 Волшебник
 
13.02.24
10:00
(10) Может регистрация удаляется, а Вы смотрите в другой базе, где не удалилась? От Вас всего можно ожидать
13 HamyaG
 
13.02.24
10:09
ВсеЦеныУзла - ТЗ выгруженная из запроса по изменениям узла, с ценами. Сначала обрабатываются и отправляются данные, после цикл - пытаюсь снять с регистрации

Там не только цена, много данных по товару из запроса

Создавал и внутри, и выносил из него, нашел пример в ИТС. Кстати, в нем использование была Истина. Поэтому вставил эти строки
14 HamyaG
 
13.02.24
10:09
(12) угу, а отладчик сам по себе останавливается?
15 Волшебник
 
13.02.24
10:10
(13) Рано снимаете с регистрации. Надо сначала получить подтверждение о приёме.
16 HamyaG
 
13.02.24
10:11
(15) я получаю подтверждение о приеме
17 HamyaG
 
13.02.24
10:25
Вопрос закрыт, неверная дата приходила из запроса
18 Волшебник
 
13.02.24
10:36
(17) Я же говорил, херня.
2 + 2 = 3.9999999999999999999999999999999...