Имя: Пароль:
1C
1C 7.7
v7: Вывод данных в секцию, переменная не определена
0 Роспатнюк Сергей Сер
 
24.05.19
09:57
Добрые форумчане помогите побороть секции, выражения, цель всех действий вывод в отчет реальной даты создания документа, для этого я взял уже готовый отчет по документам и добавил в него парсинг журнала регистрации с поиском в нем дат
все успешно находит записывает в тз и осталось вроде бы дело за малым прилепить секцию и при выводе строк присвоить выражению нужное значение, но не тут то было пробовал так

Процедура ПечатьРеквизитовШапки(пТаб, пДок, пРеквизиты,СекСостояние,СекОбязательные, ДатаСоздания)
    // Печатаем метку состояния
    Если пДок.Проведен() = 1 Тогда
        СекСостояние.Флаг.Текст    = "V";
    ИначеЕсли пДок.ПометкаУдаления() = 1 Тогда
        СекСостояние.Флаг.Текст    = "X";
    Иначе
        СекСостояние.Флаг.Текст    = " ";
    КонецЕсли;
    
    пТаб.ВывестиСекцию(СекСостояние);
    
    // Печатаем обязательные реквизиты...
    СекОбязательные.Номер.Текст = пДок.НомерДок;
    СекОбязательные.Дата.Текст  = пДок.ДатаДок;
    СекОбязательные.Время.Текст = пДок.ПолучитьВремя();
    СекОбязательные.Номер.Расшифровка(пДок.ТекущийДокумент(), 1);
    пТаб.ПрисоединитьСекцию(СекОбязательные);
    Если СДатДок = 1 Тогда
    СекСоздан               = пТаб.ПолучитьСекцию("Строка|Секция_8");
    СекСоздан.Создан.Текст     = ДатаСоздания;  
        КонецЕсли;
КонецПроцедуры

ошибка на строке СекСоздан.Создан.Текст = ДатаСоздания;  ..\УНИВЕРСАЛЬНЫЙ ОТЧЁТ ПО ДОКУМЕНТАМ.ERT(182)}: Значение не представляет агрегатный объект (Создан), в данный момент на пересечении этих секций Текст, что странно такая конструкция выше работает

пробовал ставить выражение "Создан" и делать так

      Если СДатДок = 1 Тогда
      СекСоздан               = пТаб.ПолучитьСекцию("Строка|Секция_8");
      Создан               = ДатаСоздания;  
      КонецЕсли;

Ошибок не выдает но и выражение не заполняет. Что же я делаю не так?
1 1Сергей
 
24.05.19
10:00
(0) не видно в коде

пТаб.ПрисоединитьСекцию(СекСоздан);
2 1Сергей
 
24.05.19
10:02
(1) Секция заполняется переменными в момент ВывестиСекцию и ПрисоединитьСекцию
3 Роспатнюк Сергей Сер
 
24.05.19
10:07
(1) попробовал присоединить поехал весь отчет,
4 НЕА123
 
24.05.19
10:08
ну передай еще и нужный СекС, или макет.
5 Роспатнюк Сергей Сер
 
24.05.19
10:08
(1) у меня раньше в коде есть
Если СДатДок = 1 Тогда
        пТаб.ПрисоединитьСекцию("Шапка|Секция_8");                                                                  
    КонецЕсли;
6 Роспатнюк Сергей Сер
 
24.05.19
10:11
(4) СекС это Секция строка ? а макет для чего ?
7 vcv
 
24.05.19
10:11
Варианта заполнения секций значениями два.
1. В секции есть ячейки с типом Выражение или Шаблон. При выводе секции в таблицу ищутся переменные с указанными в ячейке именами, их значения подставляются.
2. В секции есть именованные области (Таблица / Имена). Тогда с коде эти области должны заполняться значениями в стиле "СекСоздан.Создан.Текст = ДатаСоздания;"
8 vcv
 
24.05.19
10:13
Точнее "СекСоздан.Создан = ДатаСоздания;"
9 НЕА123
 
24.05.19
10:13
(6) извиняюсь. в (4) хрень.
10 Роспатнюк Сергей Сер
 
24.05.19
10:15
(7) как сделать мою ячейку именованной как в коде выше ?
11 Роспатнюк Сергей Сер
 
24.05.19
10:16
(7) что бы я мог написать в стиле СекСоздан.Создан.Текст = ДатаСоздания
12 Роспатнюк Сергей Сер
 
24.05.19
10:17
(7) извиняюсь если задаю совсем глупые вопросы просто в семерке не делал отчеты еще.
13 vcv
 
24.05.19
10:19
(10) Выделил нужную ячейку или несколько ячеек и в левом верхнем углу (где адрес текущей ячейки написан) пиши имя. По правилам именование переменных. Без пробелов и тому прочего.
14 Роспатнюк Сергей Сер
 
24.05.19
10:22
(13) Большое вам спасибо буду пробовать.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн