Не работают внешние отчеты 1с

Не формируется внешний отчет в ЗУП

(1) Да, в модуле менеджера отчета в составе конфигурации есть вот такой код:

#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#КонецОбласти

(2+) Как это может влиять на формирование отчета в составе конфигурации, или формирование отчета как внешний?

нашел в инете:
|
Все дело в тексте запроса, он программно изменяется при открытии встроенного отчета. При открытии внешнего отчета событие по изменению текста не срабатывает.

Решение подойдет только для внутреннего отчета.
В модуле «ЗарплатаКадрыОтчетыБазовый», в конце процедуры «НастроитьВариантыОтчетов» и добавить новый отчет в список.
|

(12) не понятно что делать что бы работал внешний отчет!

Я скопировал отчет ОтчетыПоСотрудникам в составе конфигурации. Назвал его ОтчетыПоСотрудникамНовый.
Добавил вот это.

(17) Я так сделал, как в (13) но отчет открывается без вариантов отчета вообще (((

У меня задача. Сохранить отчет ОтчетыПоСотрудникам как внешний, и использовать его. Что бы он выводит данные. Пока он не формируется.
Зачем мне его регистрировать в БСП? Он же внешний, я его не добавляю во внешние отчеты и обработки.

(23) Ну то есть хотите сказать что, что бы сохранить
отчет на диск ОтчетыПоСотрудникам, изменив его несколько
и использовать как дубль отдельно в ЗуП 3.1.2.183 это
совсем не просто.
Там нужно прямо много много менять типовой код?
Вроде задача то элементарная?

Это можно сделать или нет, тогда такой вопрос?

Или сверх новые технологии 1с сейчас для такой простейшей операции, заставляют очень долго и долго разбираться и трудиться. Что бы сделать такую мелочь?

(26) Новые технологии подразумевают знание БСП
в твоем случае это «БСП Варианты отчетов».

Либо делай 4 отдельных внешних отчета и пихай в каждый по одному макету.

(41)
Я добавил нужный код в модуль объекта отчета и встроил его во внешние отчеты и обработки. Но он как не выводил жанные так и не выводит.

Вы по сути ничего не сказали.

(50) Из-за того что ты не знаешь как работает типовая конфа на БСП, не знаешь как работает БСП, ты не понимаешь как работает СКД, не знаешь как работает отладчик, предполагаю что и не знаешь как правильно сохранять отчеты и обработки в файлы, не хочешь читать что тебе тут уже разжевали, все бегают вокруг да около.
Ждешь что тебе пришлют готовый отчет? ты наверное слез с типовой УТ 10.3 и решил что в новых конфигурациях прокатят те же грабли.

Кроме кучи восклицательных знаков и «Отчет не работает» от тебя никакой информации.

Совет: закрой пофигуратор и вызови специалиста.

(53) Отчет ОтчетыПоСотрудникам
все внятно расписано в ветке что нужно, ну нет ответа и нет, сам найду его.

я один встроил в конфигурацию, прописал его как в (13)

второй сохранен на диск как внешний, при его открытии есть виды вариантов отчета но от не показывает данные, не формирует их

Источник

Не формируется внешний отчет, сохраненный из конфигурации

ЗУП 3.1.2.121, платформа 8.3.9.2033
Потребовалось сделать доработку отчета «Отчеты по сотрудникам» (вариант «Штатные сотрудники»). Отчет, сохраненный в файл, выдает пустой результат.
Были попытки:
— изменить имя отчета;
— изменить имя варианта;
— добавить сохраненный отчет в «Доп. отчеты и обработки»;
— в дереве конфигурации скопировать отчет с привязкой к подсистеме и функ. опциям (с обновлением идентификаторов метаданных в режиме 1С:Предприятия);
— создание нового внешнего отчета с переносом свойств, модулей, макетов из отчета конфигурации.

Читайте также:  Хонда цивик 2001 не работает электроусилитель руля

Все попытки приводят к пустому результату. Что нужно сделать, чтобы работал сохраненный отчет?

(6)и под тем же пользователем? может прав нету? Может из-за того что давно не можете решить вопрос уже не тот отрываете? Человеческий фактор

Это что-то с пользовательскими настройками и прочее. Сохраненный отчет (как внешний) всегда показывает данные если он в базе показывал данные
Ну или посмотрите через отладку, что и как

попробуйте под другим пользователем. Это что-то с настроек отчета не срабатывает

А если скопировать отчет в дерево конфигурации (скопировать отчет и будет Отчеты по сотрудникам1 ) работает?

Проверено на базе клиента и на демо-базе.

Столкнулся с такой же проблемой. Она происходит из-за того, что новый отчет неизвесен системе и программа не может получить схемуКД.

Решение подойдет только для внутреннего отчета.
В модуле «ЗарплатаКадрыОтчетыБазовый», в конце процедуры «НастроитьВариантыОтчетов» и добавить новый отчет в список.

Но сама процедура «ВариантыОтчетов.НастроитьОтчетВМодулеМенеджера(Настройки, Метаданные.Отчеты.ОтчетыПоСотрудникам)» по которой происходит переход, описывает отчет в модуле менеджера. Как вариант, проблема решится если описать внешний отчет, в модуле менеджера.

(15) Идея интересная, но — подскажите пожалуйста подробнее.
(я просто не нашёл — где ставить точку останова).

ЗУП 3.1 (3.1.4.171) .
Платформа — 8.3.10.2466.

Нужно в отчёте «Унифицированная форма Т-2» (Личная карточка (Т-2)) — добавить вывод Северной надбавки.
А именно — значения его.

Сейчас выводится — «Оклад: ХХХ ХХХ, Районн. коэфф.: 1,30; Северная надбавка».
Нужно выводить — «Оклад: ХХХ ХХХ, Районн. коэфф.: 1,30; Северная надбавка: 30%».

Само значение (30%, в данном примере) есть (в кадровых приказах).
Но почему-то в типовой конфигурации, оно нигде не выводится.

Печатные формы «Приём на работу» Т-1, «Кадровый перевод» Т-5 — уже исправил (добавил внешние).

А вот с Т-2 — встал в ступоре.

Подскажите пожалуйста — как этот отчёт реализовать?
Общую форму отчёта (основную из свойств конфигураци) нашёл, а вот точка останова — в ней не срабатывает.

Что/как нужно делать?
(В принципе — я буду благодарен и, если скажете, как сделать в типовой, вывод значения Сев.Надбавки, в типовых формах/отчётах/. )

где нашёл СКД (запрос его) в параметре —
ПараметрыФормированияОтчета.СхемаКД.НаборыДанных.Данные.Запрос — это и есть текст его.

Текст запроса получил, ок — Спасибо за это.
Нашёл вроде и сам Табличный документ как формируется («непрямолинейно»).

Похоже — придётся теерь сам Табличный Документ (результат) — СтрЗаменить() делать.

А как теперь сделать внешний отчёт?
(чтобы он работал как встроенный — и из формы Сотрудника, и из формы списка и. )

Можете показать пример?
(ссылке на скачивание — очень буду рад)

(22) Вобщем нашёл ссылку на создание внешних . —
Добавление дополнительных отчетов и обработок в тонком клиенте БП 3.0, ЗУП 3.0, УТ 11 » Внешние печатные формы, отчеты и обработки заполнения » FAQ » HelpF.pro
https://helpf.pro/faq/view/1864.html

но — както, это мало мне.

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

В результате внешний отчет должен давать тот же результат, что и типовой встроенный в конфигурацию отчет(после подключения такого отчета как внешнего).

Читайте также:  Реманга org не работает

Источник

Не выполняется внешний отчет

Коллеги, подскажите, пожалуйста!
У меня 1С:Предприятие 8.3 (8.3.6.2076)
Бухгалтерия предприятия, редакция 3.0 (3.0.43.263)

Из конфигурации сохраняю отчет ОСВ как внешний, а при загрузки отчета в БП (через Файл/Открыть), идет ошибка:

Ошибка при выполнении функции ОбщегоНазначения.ИдентификаторОбъектМетаданных()
Объект не найден по полному имени:
«ВнешнийОтчет.ОборотноСальдоваяВедомость»

Прочитала, что надо вставить в модуль объекта:
Функция СведенияОВнешнейОбработке() Экспорт
ПараметрыРегистрации = Новый Структура;
ПараметрыРегистрации.Вставить(«Вид», «ДополнительныйОтчет»);
ПараметрыРегистрации.Вставить(«Назначение», «»);
ПараметрыРегистрации.Вставить(«Наименование», «ОСВ»);
ПараметрыРегистрации.Вставить(«Версия», «1.0.1»);
ПараметрыРегистрации.Вставить(«БезопасныйРежим», Истина);
ПараметрыРегистрации.Вставить(«Информация», «ОСВ»);
ПараметрыРегистрации.Вставить(«ВерсияБСП», «1.2.1.4»);
ТаблицаКоманд = ПолучитьТаблицуКоманд();
ДобавитьКоманду(ТаблицаКоманд,
«ОСВ»,
«ОСВ»,
«ОткрытиеФормы»,
Ложь,
«»);
ПараметрыРегистрации.Вставить(«Команды», ТаблицаКоманд);
Возврат ПараметрыРегистрации;
КонецФункции

Функция ПолучитьТаблицуКоманд()
Команды = Новый ТаблицаЗначений;
Команды.Колонки.Добавить(«Представление», Новый ОписаниеТипов(«Строка»));
Команды.Колонки.Добавить(«Идентификатор», Новый ОписаниеТипов(«Строка»));
Команды.Колонки.Добавить(«Использование», Новый ОписаниеТипов(«Строка»));
Команды.Колонки.Добавить(«ПоказыватьОповещение», Новый ОписаниеТипов(«Булево»));
Команды.Колонки.Добавить(«Модификатор», Новый ОписаниеТипов(«Строка»));
Возврат Команды;
КонецФункции

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = «»)
НоваяКоманда = ТаблицаКоманд.Добавить();
НоваяКоманда.Представление = Представление;
НоваяКоманда.Идентификатор = Идентификатор;
НоваяКоманда.Использование = Использование;
НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
НоваяКоманда.Модификатор = Модификатор;
КонецПроцедуры

Но это не помогло.
Помогите, кто сталкивался.

Источник

Методика решения проблемы с открытием старой версии внешней обработки

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

В конфигураторе создается внешняя обработка. В режиме 1С:Предприятие (в режиме отладки или нет) она проверяется. В конфигураторе в обработку вносятся некоторые изменения. В режиме 1С:Предприятие обработка закрывается и открывается заново, для проверки внесенных изменений. Начиная с определенного момента вносимые изменения перестают появляться, то есть в режиме 1С:Предприятие открывается старая версия внешней обработки. Проблема решается только перегрузкой 1С:Предприятия.

Причина возникновения проблемы

Причина возникновения подобной проблемы заключается в самой обработке. Она возникает в том случае, если разработчик допустил возникновение циклических ссылок.

Рассмотрим ситуацию несколько подробнее. В режиме исполнения (1С:Предприятие) объект обработка существует в памяти в качестве реквизита формы обработки. При закрытии формы обработка прекращает свое существование.

Данная схема нарушается в двух случаях. На саму обработку возникла дополнительная ссылка, либо ссылка возникла на форму, в этом случае закрытие окна формы не означает уничтожение объекта — формы. Соответственно, остается в памяти и обработка.

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

Рекомендации по предотвращению возникновения проблемы

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

Если «обратная связь» между обработкой и формой все же необходима, следует явным образом позаботиться о ее разрыве. Это можно сделать, например, в обработчике закрытия формы.

Методика устранения проблемы

Даже следование всем рекомендациям не может застраховать от возникновения подобной проблемы.

В первую очередь следует проанализировать алгоритм исполнения обработки на предмет циклических ссылок. Иногда источник проблемы не очевиден. Циклы могут носить достаточно сложный характер, да и возникновение проблемы можно заметить не сразу.

В этом случае можно рекомендовать следующую методику. Сначала необходимо определить момент возникновения ошибки. Следует после перегрузки 1С:Предприятия (сразу заметим, что конфигуратор перегружать не надо) открыть обработку и сразу ее закрыть. Внести в конфигураторе видимые изменения в форму и открыть обработку в 1С:Предприятии.

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

Читайте также:  Не печатай свои деньги работай за деньги

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

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

Источник

Методика решения проблемы с открытием старой версии внешней обработки

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

В конфигураторе создается внешняя обработка. В режиме 1С:Предприятие (в режиме отладки или нет) она проверяется. В конфигураторе в обработку вносятся некоторые изменения. В режиме 1С:Предприятие обработка закрывается и открывается заново, для проверки внесенных изменений. Начиная с определенного момента вносимые изменения перестают появляться, то есть в режиме 1С:Предприятие открывается старая версия внешней обработки. Проблема решается только перегрузкой 1С:Предприятия.

Причина возникновения проблемы

Причина возникновения подобной проблемы заключается в самой обработке. Она возникает в том случае, если разработчик допустил возникновение циклических ссылок.

Рассмотрим ситуацию несколько подробнее. В режиме исполнения (1С:Предприятие) объект обработка существует в памяти в качестве реквизита формы обработки. При закрытии формы обработка прекращает свое существование.

Данная схема нарушается в двух случаях. На саму обработку возникла дополнительная ссылка, либо ссылка возникла на форму, в этом случае закрытие окна формы не означает уничтожение объекта — формы. Соответственно, остается в памяти и обработка.

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

Рекомендации по предотвращению возникновения проблемы

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

Если «обратная связь» между обработкой и формой все же необходима, следует явным образом позаботиться о ее разрыве. Это можно сделать, например, в обработчике закрытия формы.

Методика устранения проблемы

Даже следование всем рекомендациям не может застраховать от возникновения подобной проблемы.

В первую очередь следует проанализировать алгоритм исполнения обработки на предмет циклических ссылок. Иногда источник проблемы не очевиден. Циклы могут носить достаточно сложный характер, да и возникновение проблемы можно заметить не сразу.

В этом случае можно рекомендовать следующую методику. Сначала необходимо определить момент возникновения ошибки. Следует после перегрузки 1С:Предприятия (сразу заметим, что конфигуратор перегружать не надо) открыть обработку и сразу ее закрыть. Внести в конфигураторе видимые изменения в форму и открыть обработку в 1С:Предприятии.

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

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

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

Источник

Оцените статью