8.х Изменение наименования группы

Тема в разделе "Установка платформы "1С:Предприятие 8"", создана пользователем Angella, 20 окт 2008.

  1. TopicStarter Overlay
    Angella
    Offline

    Angella

    Регистрация:
    20 окт 2008
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте! Вопрос по 1с v8.1 ЗУП. В справочнике "Тарифные разряды" имеется группа содержащая тарифные разряды с 1-6. Группа имеет наименование примерно "1/25.8, 2/27.6, 3/29.3, 4/32,5, 5/56.6, 6/5.62" (Наименование разряда/Размер тарифной ставки). Вопрос следующий: необходимо создать процедуру которая при индексации выбирает наименование тарифного разряда из справочника "Тарифные разряды" и размеры тарифных ставок из регистра сведений "Размеры тарифных ставок". Результаты выборки формируются в строку, это нужно для того, чтобы изменить наименование группы тарифных разрядов. Т.е. в наименовании размеры старых тарифных ставок должны заменяться на новые. Подскажите пожалуйста как это лучше реализовать. Я попробовала написать следующую процедуру, но результатов она не дает.

    Код:
    ////////////////////////////////////////////////////////////////// 
    
    ПодгруппаТарифныхРазрядов=Справочники.ТарифныеРазряды.НайтиПоКоду("000000012"); 
    ОбъектТРазряды=ПодгруппаТарифныхРазрядов.ПолучитьОбъект(); 
    Запрос = Новый Запрос; 
    Запрос.Текст= 
    "ВЫБРАТЬ РАЗЛИЧНЫЕ 
    | ТарифныеРазряды.Наименование, 
    | СУММА(РазмерТарифныхСтавокСрезПоследних.Размер) КАК Размер, 
    | ТарифныеРазряды.Родитель.Родитель.Ссылка КАК Родитель 
    |ИЗ 
    | Справочник.ТарифныеРазряды КАК ТарифныеРазряды 
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РазмерТарифныхСтавок.СрезПоследних(&ДатаАктуальности, ) КАК РазмерТарифныхСтавокСрезПоследних 
    | ПО (РазмерТарифныхСтавокСрезПоследних.ТарифныйРазряд = ТарифныеРазряды.Ссылка) 
    |ГДЕ 
    | ТарифныеРазряды.ЭтоГруппа = ЛОЖЬ 
    | 
    |СГРУППИРОВАТЬ ПО 
    | ТарифныеРазряды.Родитель.Родитель.Ссылка, 
    | ТарифныеРазряды.Наименование"; 
    Запрос.УстановитьПараметр("ДатаАктуальности",ДатаАктуальности); 
    Выборка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); 
    Пока Выборка.Следующий() Цикл 
    ВыборкаДочерних=Выборка.Выбрать(ОбходРезультатаЗапроса.Прямой); 
    СтрокаНаименование=""; 
    Пока ВыборкаДочерних.Следующий() Цикл СтрокаНаименование=СтрокаНаименование+ВыборкаДочерних.Наименование+"/"+ВыборкаДочерних.Размер+", "; 
    КонецЦикла; 
    ОбъектТРазряды.Наименование=СтрокаНаименование; 
    КонецЦикла; 
    ОбъектТРазряды.Записать(); 
    /////////////////////////////////////////////////////////////////////
    

Поделиться этой страницей