Имя: Пароль:
1C
1С v8
Удаление ключей аналитики УТ11
0 Александр Б
 
01.09.11
17:46
Создал номенклатуру. Создал и провел поступление. При проведении создался ключ аналитики для регистра себестоимости. Пометил на удаление документ и номенклатуру.
Запускаю удаление, документ удалился, номенклатура нет.

Подскажите, есть ли в УТ11 обработка по удалению неиспользуемых ключей аналитики, по аналогии с той, которая есть в КА?
1 Александр Б
 
01.09.11
17:47
Понятно, что можно самому написать, либо руками удалить. Но хочется знать, есть ли типовая обработка
2 Megas
 
02.09.11
09:43
"При проведении создался ключ аналитики для регистра себестоимости." - Запись что ли?

Что такое "Ключ аналитики"?
3 Amiralnar
 
02.09.11
09:50
Научным тыком в интерфейсе зав. учетом не нашлося?
4 ДенисЧ
 
02.09.11
09:50
А там нет "тестирования и исправления ключей аналитики", как в УПП?
5 Amiralnar
 
02.09.11
09:51
Тестирование и исправление ключей аналитики. Должно же быть.
6 shuhard
 
02.09.11
11:12
(5) в УТ 11 всё своё
ключи удаляются при обновлении релиза

ОбработчикиОбновления() Экспорт
...

Обработчик.Процедура = "Справочники.КлючиАналитикиУчетаНоменклатуры.ЗаполнитьРеквизитыКлючейАналитики";


Процедура ЗаполнитьРеквизитыКлючейАналитики() Экспорт
   
   Запрос = Новый Запрос("
   |ВЫБРАТЬ
   |    ДанныеСправочника.Ссылка КАК Ссылка,
   |    ДанныеСправочника.ПометкаУдаления КАК ПометкаУдаления,
   |    ЕСТЬNULL(ДанныеРегистра.Номенклатура, Неопределено) КАК Номенклатура,
   |    ДанныеРегистра.Характеристика КАК Характеристика,
   |    ДанныеРегистра.Склад КАК Склад
   |ИЗ
   |    Справочник.КлючиАналитикиУчетаНоменклатуры КАК ДанныеСправочника
   |
   |    ЛЕВОЕ СОЕДИНЕНИЕ
   |        РегистрСведений.АналитикаУчетаНоменклатуры КАК ДанныеРегистра
   |    ПО
   |        ДанныеСправочника.Ссылка = ДанныеРегистра.КлючАналитики
   |ГДЕ
   |    ДанныеСправочника.Номенклатура = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
   |");
   Выборка = Запрос.Выполнить().Выбрать();
   Пока Выборка.Следующий() Цикл
       
       СправочникОбъект = Выборка.Ссылка.ПолучитьОбъект();
       Если ЗначениеЗаполнено(Выборка.Номенклатура) Тогда
           ЗаполнитьЗначенияСвойств(СправочникОбъект, Выборка);
           Попытка
               СправочникОбъект.Записать();
           Исключение
           КонецПопытки;
       ИначеЕсли Не Выборка.ПометкаУдаления Тогда
           Попытка
               СправочникОбъект.УстановитьПометкуУдаления(Истина, Ложь);
           Исключение
           КонецПопытки;
       КонецЕсли;
       
   КонецЦикла;
   
КонецПроцедуры // ЗаполнитьРеквизитыКлючейАналитики()
7 Александр Б
 
02.09.11
11:22
Придется писать свою обработку по удалению неиспользуемых ключей :(
8 shuhard
 
02.09.11
11:26
(7) угу, целая строка кода
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс