Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
19 Окт 2017, 13:50
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Переход на 1с 8.3 без режима совместимости с 8.2  (Прочитано 6286 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Alexg45

  • *
  • Сообщений: 24
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-24
  • Сайт: 
Всем здравствуйте!
Проблема такая. Убрали галку с режимом совместимости с 8.2. Переименовали все свойства, все ошибки исправили. Стали тестировать отчёт, 2 вкладки работают, одна нет. Получаю ошибку:

Ошибка исполнения отчета
по причине:
Ошибка при выполнении обработчика - 'ПриКомпоновкеРезультата'
по причине:
{Отчет.Название.МодульОбъекта(1343)}: Ошибка при вызове метода контекста (Вывести)

по причине:
Ошибка вывода результата
по причине:
Ошибка при выводе результата
по причине:
Ошибка получения данных
по причине:
Ошибка в выражении
по причине:
Ожидается ключевое слово "Конец"

Привожу код предшествующий методу Вывести():

СхемаКомпоновкиДанных = ПолучитьМакет("СКДСверкаПериод");
      КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
      КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
      ТЗ = ПолучитьТаблицуОстатков();
      Если ТЗ.Количество()<=0 Тогда
         Сообщить("Недостаточно данных");
         РезультатДок = ЭтотОбъект.ПолучитьФорму().ЭлементыФормы.РезультатСверка;
         РезультатДок.Очистить();
         Возврат;
      КонецЕсли;
      ВнешниеНаборыДанных = Новый Структура;
      ВнешниеНаборыДанных.Вставить("ТЗ",ТЗ);

//Помещаем в переменную данные о расшифровке данных
   ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;

   //Формируем макет, с помощью компоновщика макета
   КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;

   //Передаем в макет компоновки схему, настройки и данные расшифровки
   МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,
                                           Настройки, ДанныеРасшифровки);
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,ВнешниеНаборыДанных,ДанныеРасшифровки,истина);
РезультатДок = ЭтотОбъект.ПолучитьФорму().ЭлементыФормы.РезультатСверка;
РезультатДок.Очистить();
   //Выводим результат в табличный документ
   ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
   ПроцессорВывода.УстановитьДокумент(РезультатДок);
   ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
   РезультатДок.ПоказатьУровеньГруппировокСтрок(0);


Никак не пойму в чём может быть проблема. Проверял отладчиком, запрос выполняется, таблица ТЗ заполняется данными, непустая. Всё успешно отрабатывает ровно до строки: ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); На ней вылезает ошибка. Данный отчёт работает на реальной базе нормально. Его не меняли.


Оффлайн Vladimir_Sh

  • 1С:Специалист
  • ****
  • Сообщений: 356
  • РЕПУТАЦИЯ: 68
  • КПД: 19%
  • Регистрация: 2015-10-16
  • Компания: Центр бизнес решений "ALT"
  • Профессия: Разработчик 1С
Alexg45, добрый день! Немного глупых вопросов:
1. В данной строке РезультатДок какой получает тип данных?
РезультатДок = ЭтотОбъект.ПолучитьФорму().ЭлементыФормы.РезультатСверка;
2. Это вся процедура или до строки с получением макета есть еще что-то?

P.S. Пожалуйста заключайте код в тэг "code". Так намного удобнее читать.
Если я Вам помог, нажми - Спасибо!

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Похоже, что в СКД есть поле или на закладке "Вычисляемые поля" или на закладке "Параметры" и в выражении этого поля скорее всего есть инструкция "Выбор", где не хватает завершающего оператора "Конец".

Оффлайн Alexg45

  • *
  • Сообщений: 24
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-24
  • Сайт: 
РезультатДок получает тип данных ПолеТабличногоДокумента.
До этого код, конечно, есть. Там 2 больших запроса, на основе которых получается данные для таблицы ТЗ.


Оффлайн Vladimir_Sh

  • 1С:Специалист
  • ****
  • Сообщений: 356
  • РЕПУТАЦИЯ: 68
  • КПД: 19%
  • Регистрация: 2015-10-16
  • Компания: Центр бизнес решений "ALT"
  • Профессия: Разработчик 1С
РезультатДок получает тип данных ПолеТабличногоДокумента.
До этого код, конечно, есть. Там 2 больших запроса, на основе которых получается данные для таблицы ТЗ.
Как вариант:
Попробуйте все же создать именно ТабличныйДокумент и после компоновки присвоить результат в ПолеТабличногоДокумента.
Если я Вам помог, нажми - Спасибо!

Оффлайн Alexg45

  • *
  • Сообщений: 24
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-24
  • Сайт: 
В СКД всё проверяли, там нет выражений. Ни на вкладке Вычисляемые поля, ни Параметры, ни Ресурсы.
Добавлено: 26 Ноя 2015, 11:35

Попробовал так:
РезультатДок = Новый ТабличныйДокумент;
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(РезультатДок);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
РезультатДок.ПоказатьУровеньГруппировокСтрок(0);

Выдаёт точно такую же ошибку по методу Вывести.

Последний раз редактировалось: Alexg45; 26 Ноя 2015, 11:35. Причина: Объединение сообщений

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С

Оффлайн Alexg45

  • *
  • Сообщений: 24
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-24
  • Сайт: 
Макеты в скд пустые

Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,
                                           Настройки, ДанныеРасшифровки);

Настройки - это что?

Оффлайн Alexg45

  • *
  • Сообщений: 24
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-24
  • Сайт: 
Получилось вывести хоть какую-то информацию. Оказалось дело в группировке. Если отключить одну, отчёт выводится. Получается, что либо ошибка в самом СКД, так как этот же отчёт неплохо работает без изменений на старой базе и к тому же, обычно в тексте ошибки выводится само выражение, которое привело к ошибке. Либо разработчики что-то поменяли в СКД.
Добавлено: 26 Ноя 2015, 14:12

Там такая последовательность:
СхемаКомпоновкиДанных = ПолучитьМакет("СКДСверкаПериод");
КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКомпоновкиДанных.НастройкиПоУмолчанию);
Настройки = КомпоновщикНастроек.Настройки;


Теги:
 

Часть четвертая: переход на «1С» версии «3.0». Где в программе находятся «Параметры учета»? Алгоритм настройки кадрового учета в новой версии программы «1С»

Автор 1cwikiРаздел Зарплата и управление персоналом

Ответов: 0
Просмотров: 3725
Последний ответ 20 Мар 2015, 12:58
от 1cwiki
переход с зарплаты 7.7 бюджет на зарплату 8.2 бюджет

Автор SergeyDCZNРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 2967
Последний ответ 12 Янв 2012, 15:58
от SergeyDCZN
Часть вторая: переход на «1С ЗУП» версии «3.0». Работа с «Параметрами учета» и проверка всех настроек программы после транспортировки из предыдущей редакции

Автор 1cwikiРаздел Зарплата и управление персоналом

Ответов: 0
Просмотров: 4092
Последний ответ 16 Мар 2015, 16:19
от 1cwiki
Часть третья: переход на «1С ЗУП» версии «3.0». Адрес в программе «Параметров учета» и настройки состава удержаний и начислений

Автор 1cwikiРаздел Зарплата и управление персоналом

Ответов: 0
Просмотров: 5655
Последний ответ 20 Мар 2015, 12:54
от 1cwiki
Переход на программу «ЗУП 3.0»: алгоритм подготовки и настройки переноса информации с «1С ЗУП» редакции «2.5»

Автор 1cwikiРаздел Зарплата и управление персоналом

Ответов: 0
Просмотров: 3595
Последний ответ 10 Мар 2015, 16:37
от 1cwiki

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

oleg-x
86 Сообщений
alex0402
54 Сообщений
AIFrame
41 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
38 Сообщений
Oldman06
31 Сообщений
Golickoff Golickoff
30 Сообщений
vitasw
29 Сообщений
MuI_I_Ika MuI_I_Ika
19 Сообщений
BuhRust
14 Сообщений
AsadRoman
13 Сообщений

* Кто онлайн

  • Точка Гостей: 944
  • Точка Скрытых: 0
  • Точка Пользователей: 15
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal