Имя: Пароль:
1C
1С v8
Динамический заголовок в табличной части документа 1С 8.1
0 Kuklachel
 
30.07.13
12:15
Добрый день. Создаю табличную часть документа, в ней есть заголовки: "Номер", "Назначение", "Адрес"..... и т.д. Мне нужно добавить заголовки которые бы менялись в зависимости от условий. Т.е., вычисляется дата окончания договора, после которой нужно повысить ставку, допустим "20 июля 2013", тогда добавляются заголовки с месяцами: "август 2013", "сентябрь 2013" и т.д. Подскажите, пожалуйста, возможно ли такое реализовать?
1 Капитан О
 
30.07.13
12:16
возможно
2 Cube
 
30.07.13
12:17
(0) "Создаю табличную часть документа, в ней есть заголовки: "Номер", "Назначение", "Адрес" ... Мне нужно добавить заголовки ... с месяцами: "август 2013", "сентябрь 2013""

Феерично.
3 Kuklachel
 
30.07.13
12:19
А что в этом такого? Динамически расширяемая таблица.
4 Cube
 
30.07.13
12:19
Если я правильно понял этот поток мыслей, то тебе нужно выводить на форму двумерную таблицу. Да? Ну тогда рисуй её программно на форме и все действия с ней тоже описывай вручную.
5 Капитан О
 
30.07.13
12:21
(3) где данные будут хранится у этой динамической таблицы?
6 cw014
 
30.07.13
12:22
+(4) Пример найдешь в типовых конфигах в документе "Установка цен номенклатуры"
7 Kuklachel
 
30.07.13
12:26
Спасибо за советы, буду разбираться.
8 Kuklachel
 
02.08.13
15:41
Добрый день. В реализации своей задачи столкнулся с проблемой. Заполняю таблицу из запроса, добавляю нужные колонки с месяцами.
  ТабличнаяЧастьПрогноза.Загрузить(Запрос.Выполнить().Выгрузить());
    ТабличнаяЧастьПрогноза.Сортировать("ДатаОкончания Возр");
    
    Массив = Новый Массив;
    Массив = ТабличнаяЧастьПрогноза.ВыгрузитьКолонку("ДатаОкончания");
    НужнаяДата = Массив[0];
    КонГода = (КонецГода(НужнаяДата));
Для Каждого Строка Из ТабличнаяЧастьПрогноза Цикл
        Пока НужнаяДата <= КонГода Цикл
            
            НужнаяДата = ДобавитьМесяц(НужнаяДата, 1);
            ДатаОк = Формат(НужнаяДата,"ДФ='MMMM_YYYY'");
            ТекущаяТаблица.Колонки.Добавить(ДатаОк);
        КонецЦикла;
КонецЦикла;

Далее, в колонке "процент повышения" указываю нужный процент и нажимаю кнопку "заполнить". Срабатывает процедура.
    НоваяСтрока = ТабличнаяЧастьПрогноза.Добавить();
    
    ТекущаяТаблица = ЭлементыФормы.ТабличнаяЧастьПрогноза;
    ДобавитьВТаблицу = ЭтотОбъект.ТабличнаяЧастьПрогноза.Добавить();

    Для Каждого Строка Из ТабличнаяЧастьПрогноза Цикл
        
        Если Строка.ПроцентПовышенияСтавки <> 0 Тогда                
            СуммаСПроцентом = Строка.СтавкаВМесяц / 100 * Строка.ПроцентПовышенияСтавки + Строка.СтавкаВМесяц;     
            ДобавитьВТаблицу[ДатаОк] = СуммаСПроцентом;
        КонецЕсли;
    КонецЦикла;

Получаю ошибку "поле объекта не обнаружено()". Оно и понятно, ведь этого поля в "ДобавитьВТаблицу" нет, оно есть в "ТекущаяТаблица", но через не го тоже не получается добавить "обращение к процедуре объекта как к функции (добавитьстроку)".
Подскажите, пожалуйста, как мне добавить строку в созданную колонку?
9 Kuklachel
 
02.08.13
16:53
Помогите!
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан