После замены дублей номенклатуры пропала аналитика учета номенклатуры в регистрах

1. alexlx 114 17.01.21 22:07 Сейчас в теме
Добрый день,
УТ 11.2. После замены дублей заметили некоторый перекос в отчетности, а именно "Валовая прибыль предприятия" и "Ведомость по товарам организаций".
После недолгого изучения обнаружили, что в регистрах "ВыручкаИСебестоимостьПродаж" и "ТоварыОрганизаций" не заполнен реквизит "Аналитика учета номенклатуры".
Если отменить проведение - провести регистратор, все становится на места, просто перепроведение ничего не даёт.
Документов очень много, есть способ исправить это без перепроведения?
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
2. insurgut 208 17.01.21 22:17 Сейчас в теме +5 $m
Универсального способа нет. Писать свою обработку, которая:
1. Проверяет наличие ключа аналитики номенклатуры по связке Номенклатура+Склад, если нет, то создает её.
2. Отбирает запросом все регистраторы, у которых измерение ключа аналитики номенклатуры пустое

Запрос = Новый Запрос("ВЫБРАТЬ
|	ТоварыОрганизаций.Регистратор КАК Регистратор
|ИЗ
|	РегистрНакопления.ТоварыОрганизаций КАК ТоварыОрганизаций
|ГДЕ
|	(ТоварыОрганизаций.АналитикаУчетаНоменклатуры = ЗНАЧЕНИЕ(Справочник.КлючиАналитикиУчетаНоменклатуры.ПустаяСсылка)
|			ИЛИ ТоварыОрганизаций.АналитикаУчетаНоменклатуры ЕСТЬ NULL)
|
|СГРУППИРОВАТЬ ПО
|	ТоварыОрганизаций.Регистратор");
Результат = Запрос.Выполнить().Выбрать();
Показать


3. Для каждого регистратора делаем примерно так:

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


P.S. Код на 100% не рабочий - только чтобы суть передать.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. insurgut 208 17.01.21 22:17 Сейчас в теме +5 $m
Универсального способа нет. Писать свою обработку, которая:
1. Проверяет наличие ключа аналитики номенклатуры по связке Номенклатура+Склад, если нет, то создает её.
2. Отбирает запросом все регистраторы, у которых измерение ключа аналитики номенклатуры пустое

Запрос = Новый Запрос("ВЫБРАТЬ
|	ТоварыОрганизаций.Регистратор КАК Регистратор
|ИЗ
|	РегистрНакопления.ТоварыОрганизаций КАК ТоварыОрганизаций
|ГДЕ
|	(ТоварыОрганизаций.АналитикаУчетаНоменклатуры = ЗНАЧЕНИЕ(Справочник.КлючиАналитикиУчетаНоменклатуры.ПустаяСсылка)
|			ИЛИ ТоварыОрганизаций.АналитикаУчетаНоменклатуры ЕСТЬ NULL)
|
|СГРУППИРОВАТЬ ПО
|	ТоварыОрганизаций.Регистратор");
Результат = Запрос.Выполнить().Выбрать();
Показать


3. Для каждого регистратора делаем примерно так:

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


P.S. Код на 100% не рабочий - только чтобы суть передать.
4. alexlx 114 17.01.21 22:23 Сейчас в теме
(2)
Пока Результат.Следующий() Цикл
НаборЗаписейРН = РегистрыНакопления.ТоварыОрганизаций.СоздатьНаборЗаписей();
НаборЗаписейРН.Отбор.Регистратор.Использование = Истина;
НаборЗаписейРН.Отбор.Регистратор.Значение = Результат.Ссылка;
НаборЗаписейРН.Прочитать();
Для Каждого ЗаписьРН Из НаборЗаписейРН Цикл
ЗаписьРН.АналитикаУчетаНоменклатуры = Ссылка_на_ключ_аналитики_наденной_по_номенклатуре_и_складу;
КонецЦикла;

Это просто дополняет запись регистра ключей аналитики? Не очищает, а именно дописывает?
5. insurgut 208 17.01.21 22:24 Сейчас в теме
(4) да, заполненные измерения не очистятся, но нужно смотреть ещё на модуль самого регистра при записи. Там могут быть свои подводные камни. Пробуйте на тестовой на примере одного документа.
3. uriah 18 17.01.21 22:18 Сейчас в теме
6. A1WEB 59 17.01.21 23:10 Сейчас в теме
Перепроведите приходы.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот