Задать вопрос
@Dina42
Аналитик 1С

Мне надо написать произвольный код в отчете, но 1с выдает ошибку «формула для показателя содержит синтаксические ошибки», почему?

Функционал кода: при создании отчетной формы с предыдущего периода должны перетягиваться данные в новый отчет, этот отчет делают раз в неделю.
Показатели.стр001_гр02 = ПредыдущийПериод(НеделяГода(ТекущаяДата()));

Процедура ЗаполнитьПоказатели() 
    ДатаСейчас = ТекущаяДата();
    ТекущийПериод = НеделяГода(ТекущаяДата);
    
    // Получаем данные текущего периода
    ТекущиеДанные = ПолучитьДанныеПоПериоду(ТекущийПериод);
    
    // Получаем данные предыдущего периода
    ДанныеПредыдущегоПериода = ПолучитьДанныеПоПериоду(ПредыдущийПериод(ТекущийПериод));
    
    // Записываем значения в ячейки
    Показатели.стр001_гр02_Предыдущий = ДанныеПредыдущегоПериода;
КонецПроцедуры    

Функция ПредыдущийПериод(ТекущийПериод) 
    Если ТекущийПериод = 1 Тогда
        Возврат 52; // Последняя неделя предыдущего года
    Иначе
        Возврат ТекущийПериод - 1; // Возврат к предыдущей неделе 
    КонецЕсли;
КонецФункции
  • Вопрос задан
  • 33 просмотра
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
Как минимум, явно должно быть так:
- ТекущийПериод = НеделяГода(ТекущаяДата);
+ ТекущийПериод = НеделяГода(ДатаСейчас);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы