Отчет не сформирован синтаксическая ошибка скд

Всё работало хорошо, но вдруг перестало, после того, как я внес изменения в макет СКД:

При формировании отчета появлялась надпись «Синтаксическая ошибка» и всё.

Когда убрал некоторые секции, методом деструктивного исключения обнаружил, что глючит зеленая секция.

Благо, CTRL+Z сработал и вернул изменения назад (каюсь, рабочей версии отчета не было).

Вздохнул было, но потом опять ошибка возникла. И тут до меня дошло — проблема в пустых ячейках, где указан тип ячейки «Параметр», но не указано, значение какого параметра брать. Поменял тип на Текст — и все заработало.

Экие тонкости в 1С, однако!

0

askharlov

24.07.12

14:55

Запрос в консоли запросов отрабатывает прекрасно. В СКД при попытке сформировать отчет получаю  

«Отчет не сформирован. Синтаксическая ошибка.»

Больше никаких комментариев 1С не дает.

В чем может быть проблема, где копать?

Заранее спасибо за помощь.

1

Господин ПЖ

24.07.12

14:56

телепатирую — в запросе есть итоги…

2

0_Serg_0

24.07.12

14:56

стоит для начала книжки про скд почитать…

3

askharlov

24.07.12

14:59

(1) Итогов нет. Есть СГРУППИРОВАТЬ в 2-х временных таблицах

4

askharlov

24.07.12

14:59

Собственно вот сам запрос:

+code

ВЫБРАТЬ РАЗРЕШЕННЫЕ

   МАКСИМУМ(ХозрасчетныйОборотыДтКт.Регистратор) КАК Регистратор,

   МАКСИМУМ(ХозрасчетныйОборотыДтКт.Период) КАК Период,

   ХозрасчетныйОборотыДтКт.СубконтоДт1 КАК Номенклатура,

   МАКСИМУМ(ВЫБОР

           КОГДА ХозрасчетныйОборотыДтКт.КоличествоОборотДт <> 0

               ТОГДА ХозрасчетныйОборотыДтКт.СуммаОборот / ХозрасчетныйОборотыДтКт.КоличествоОборотДт

           ИНАЧЕ ХозрасчетныйОборотыДтКт.СуммаОборот

       КОНЕЦ) КАК ЦенаПокупки

ПОМЕСТИТЬ ВТЦеныПоступления

ИЗ

   РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(, &КонецПериода, Регистратор, СчетДт = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ТоварыНаСкладе), , СчетКт В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетыСПоставщикамиИПодрядчиками)), , ) КАК ХозрасчетныйОборотыДтКт

ГДЕ

   ХозрасчетныйОборотыДтКт.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг

СГРУППИРОВАТЬ ПО

   ХозрасчетныйОборотыДтКт.СубконтоДт1

;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ РАЗРЕШЕННЫЕ

   КонтрагентыПоМенеджерам.Контрагент,

   КонтрагентыПоМенеджерам.Период КАК ПериодНач,

   КонтрагентыПоМенеджерам.Менеджер,

   МИНИМУМ(ЕСТЬNULL(КонтрагентыПоМенеджерам1.Период, &КонецПериода)) КАК ПериодКон

ПОМЕСТИТЬ ВТМенеджера

ИЗ

   РегистрСведений.КонтрагентыПоМенеджерам КАК КонтрагентыПоМенеджерам

       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтрагентыПоМенеджерам КАК КонтрагентыПоМенеджерам1

       ПО КонтрагентыПоМенеджерам.Контрагент = КонтрагентыПоМенеджерам1.Контрагент

           И КонтрагентыПоМенеджерам.Период < КонтрагентыПоМенеджерам1.Период

СГРУППИРОВАТЬ ПО

   КонтрагентыПоМенеджерам.Период,

   КонтрагентыПоМенеджерам.Менеджер,

   КонтрагентыПоМенеджерам.Контрагент

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ

   КонтрагентыПоМенеджерамСрезПоследних.Контрагент,

   КонтрагентыПоМенеджерамСрезПоследних.Период,

   КонтрагентыПоМенеджерамСрезПоследних.Менеджер,

   ЕСТЬNULL(КонтрагентыПоМенеджерамСрезПервых.Период, &КонецПериода)

ИЗ

   РегистрСведений.КонтрагентыПоМенеджерам.СрезПоследних(&НачалоПериода, ) КАК КонтрагентыПоМенеджерамСрезПоследних

       ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтрагентыПоМенеджерам.СрезПервых(&НачалоПериода, ) КАК КонтрагентыПоМенеджерамСрезПервых

       ПО КонтрагентыПоМенеджерамСрезПоследних.Период <> КонтрагентыПоМенеджерамСрезПервых.Период

           И КонтрагентыПоМенеджерамСрезПоследних.Контрагент = КонтрагентыПоМенеджерамСрезПервых.Контрагент

;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ РАЗРЕШЕННЫЕ

   ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.Организация,

   ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.Контрагент КАК Покупатель,

   ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.ДатаОплаты,

   ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Сделка КАК СчетФактура,

   РеализацияТоваровУслуг.Ссылка КАК РасходнаяНакладная,

   СчетНаОплатуПокупателюТовары.Номенклатура,

   ВЫРАЗИТЬ(СчетНаОплатуПокупателюТовары.Количество * ПлатежноеПоручениеВходящееРасшифровкаПлатежа.СуммаПлатежа / СчетНаОплатуПокупателюТовары.Ссылка.СуммаДокумента КАК ЧИСЛО(15, 2)) КАК Количество,

   ВЫРАЗИТЬ(СчетНаОплатуПокупателюТовары.Сумма * ПлатежноеПоручениеВходящееРасшифровкаПлатежа.СуммаПлатежа / СчетНаОплатуПокупателюТовары.Ссылка.СуммаДокумента КАК ЧИСЛО(15, 2)) КАК СуммаПродажи,

   СчетНаОплатуПокупателюТовары.Цена КАК ЦенаПродажи,

   ВТЦеныПоступления.Регистратор КАК ДокументОприходования,

   ВТЦеныПоступления.Регистратор.Контрагент КАК Поставщик,

   ВЫРАЗИТЬ(ВТЦеныПоступления.ЦенаПокупки КАК ЧИСЛО(15, 2)) КАК ЦенаПокупки,

   ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка КАК ПлатежноеПоручениеВходящее,

   ВЫРАЗИТЬ(ВТЦеныПоступления.ЦенаПокупки * СчетНаОплатуПокупателюТовары.Количество * ПлатежноеПоручениеВходящееРасшифровкаПлатежа.СуммаПлатежа / СчетНаОплатуПокупателюТовары.Ссылка.СуммаДокумента КАК ЧИСЛО(15, 2)) КАК СуммаПокупки,

   ВТМенеджера.Менеджер

ИЗ

   Документ.ПлатежноеПоручениеВходящее.РасшифровкаПлатежа КАК ПлатежноеПоручениеВходящееРасшифровкаПлатежа

       ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг

       ПО ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Сделка = РеализацияТоваровУслуг.Сделка

       ЛЕВОЕ СОЕДИНЕНИЕ Документ.СчетНаОплатуПокупателю.Товары КАК СчетНаОплатуПокупателюТовары

           ЛЕВОЕ СОЕДИНЕНИЕ ВТЦеныПоступления КАК ВТЦеныПоступления

           ПО СчетНаОплатуПокупателюТовары.Номенклатура = ВТЦеныПоступления.Номенклатура

       ПО ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Сделка = СчетНаОплатуПокупателюТовары.Ссылка

       ЛЕВОЕ СОЕДИНЕНИЕ ВТМенеджера КАК ВТМенеджера

       ПО ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.Контрагент = ВТМенеджера.Контрагент

           И ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.ДатаОплаты >= ВТМенеджера.ПериодНач

           И ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.ДатаОплаты < ВТМенеджера.ПериодКон

ГДЕ

   ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.Проведен

   И ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.ДатаОплаты МЕЖДУ &НачалоПериода И &КонецПериода

   И ПлатежноеПоручениеВходящееРасшифровкаПлатежа.Ссылка.Оплачено

Всем добрый день. Есть локальная база, 20+ юзеров, на одном компе при формировании отчета вываливается ошибка «Отчет не сформирован! Синтаксическая ошибка.» на других компах норм. Настройки структуры одинаковые. подключал внешний отчет, рабочий, такая же ошибка. Подскажите пожалуйста в чем дело. Заранее Спасибо.

Почистить на компе %UserProfile%Application Data1C1Cv81

Убей кэш путем перепрописывания базы в списке выбора

Спасибо, сейчас попробую!

Тэги: 1С 8

Комментарии доступны только авторизированным пользователям

1C 8 Система компоновки данных (СКД): вывод вычисляемых полей при программном формировании отчета

Описание ошибки:
Отчет на СКД формируется программно. При этом используется одно вычисляемое поле, в выражении которого указана экспортная функция глобального модуля. При формировании отчета возникает ошибка:
{Форма.ФормаОтчета.Форма(137)}: Ошибка при вызове метода контекста (Следующий)
ЭлементРезультата = ПроцессорКомпановки.Следующий();
по причине:
Ошибка компоновки данных
по причине:
Ошибка получения данных
по причине:
Ошибка в выражении
по причине:
Синтаксическая ошибка «УчетДрагМеталловГлобальный.ОтчетКоличествоМеталла»

Найденные решения:

1с 8 скд вывод вычисляемого поля с выражением при программном выводе

1с 8 ошибка при выводе вычисляемого поля с выражением отчета на СКД при программном выводе

Подробное изучение методической информации дало понять, что при программном выводе отчета в коде было отключено использование внешних функций. См. текст из синтаксис-помощника метода Инициализировать() процессора компоновки данных (ПроцессорКомпоновкиДанных):

Инициализировать(<Макет>, <ВнешниеНаборыДанных>, <ДанныеРасшифровки>, <ВозможностьИспользованияВнешнихФункций>),
где <ВозможностьИспользованияВнешнихФункций> (необязательный)
Тип: Булево.
Указывает возможность использования функции общих модулей конфигурации в выражениях компоновки данных.
Значение по умолчанию: Ложь

Поэтому в код программного вывода отчета было добавлено отсутствующее условие (выделено жирным):

ПроцессорКомпановки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпановки.Инициализировать(МакетКомпоновки, , ДанныеРасшифровки, Истина);

Но после этого СКД отказалсь вывести отчет, рапортуя ошибку:

1с 8 скд ошибка вывода вычисляемого поля отчета на СКД использующего выражение с функцией при программном выводе

{Форма.ФормаОтчета.Форма(137)}: Ошибка при вызове метода контекста (Следующий)
        ЭлементРезультата = ПроцессорКомпановки.Следующий();
по причине:
Ошибка компоновки данных
по причине:
Ошибка получения данных
по причине:
Функция не найдена «УчетДрагМеталловГлобальный.ОтчетКоличествоМеталла»

При этом функция по всем правилам была экспортной и к этому моменту проверок размещена в глобальном модуле. Поэтому название модуля было исключено из значения выражения вычисляемого поля системы компоновки данных и отчет вывелся.

1с 8 скд использование функции в выражении вычисляемого поля программно выводимого отчета

А для случая, если функция для расчета выражения вычисляемого поля скд, размещена не в глобальном модуле, то необходимо указать и имя самого модуля, содержащего используемую функцию (пример рис. 01).

Оцените, помогло ли Вам предоставленное описание решения ошибки?




© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

22-05-2015

Журавлев А.С.
(www.azhur-c.ru)

Main

Top

Interesting

☀️⛵️🌴 650 ideas

Help

Follow us:

  • Follow us on Vkontakte

  • Follow us on Telegram

  • Follow us on Pinterest

  • Follow us on Odnoklassniki

Applications

  • iOS

  • Android

  • Huawei

COMPANY

  • About

  • News

  • Help

PRODUCTS

  • Checklists

  • Button «Share»

  • Media program

COMMUNITY

  • Afisha LJ

  • Frank

  • Stylish merch

CHOOSE LANGUAGE

  • Privacy Policy

  • User Agreement

  • Help

LiveJournal — v.667

?

LiveJournal

Top

LiveJournal

Log in

No account?
Create an account

Remember me

Forgot password

If this type of authorization does not work for you, convert your account using the link

fixin

November 18 2020, 15:00

Странная «Синтаксическая ошибка» в СКД с макетом

Как поборол эту странную ошибку.

Читать далее: https://geniy1s.ru/strannaya-sintaksicheskaya-oshibka-v-skd-s-maketom/

СКДслучай из практики 1с

promo


fixin

december 31, 2037 16:57

1420

Buy for 30 tokens

ЧаВо о Фиксине для новичков (блог переехал на fixinchik.ru)

UPD: Друзья, в августе 2019 года блог переехал на http://fixinchik.ru. Welcome! Добро пожаловать в журнал Осипова Сергея Александровича, известного также как Fixin и Гений 1С. Рекомендую ознакомиться с Часто Задаваемыми Вопросами обо мне. Что я хочу в подарок — список. Мой проект «…

Возможно, вам также будет интересно:

  • Отчет не сдан устраните ошибки указанные в протоколе
  • Отчет не принят сервером ошибка сервера фсс unmarshalling error
  • Отчет не принят порталом ошибка при десериализации документа фтс
  • Отчет ндс ошибка в кпп
  • Отчет на тему мои ошибки

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии