arefaste/1C_Forums huggingface dataset:
Доброе утро, знающие 1С люди!

У меня вопрос общего характера. Имеется запрос из нескольких временных таблиц. Есть результат запроса. А как вывести (с последующей обработкой) результат каждой временной таблицы для пользователя? Через консоль запросов я все вижу - меня интересует вопрос с точки зрения пользователя.
---
Присвоить менеджерВременныхТаблиц и через его Таблицы() получать
---
```1c
    Запрос = Новый Запрос;
    Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;

    Запрос.Текст = "Выбрать * Поместить ВТ ИЗ Таблица";
    Запрос.Выполнить();

    Запрос.Текст = "Выбрать * Поместить ВТ1 ИЗ Таблица";
    Запрос.Выполнить();

    Запрос.текст = "Выбрать * ИЗ Вт"
    ТЗ = Запрос.Выполнить().Выгрузить();

    Запрос.текст = "Выбрать * ИЗ Вт1"
    ТЗ = Запрос.Выполнить().Выгрузить();
```
---
```1c
    Запрос = Новый Запрос;
    Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;

    Запрос.Текст = "Выбрать * Поместить ВТ ИЗ Таблица";
    Запрос.Выполнить();

    Запрос.Текст = "Выбрать * Поместить ВТ1 ИЗ Таблица";
    Запрос.Выполнить();

    Запрос.текст = "Выбрать * ИЗ Вт"
    ТЗ = Запрос.Выполнить().Выгрузить();

    Запрос.текст = "Выбрать * ИЗ Вт1"
    ТЗ = Запрос.Выполнить().Выгрузить();
```
---
Присвоить менеджерВременныхТаблиц и через его Таблицы() получать
---
Спасибо, знающие люди! Это то что нужно!
---
если для отладки то можно воспользоваться
процедурой многих типовых конфигураций: ПоказатьВременнуюТаблицу(МенеджерВременныхТаблицИлиЗапрос, ИмяВременнойТаблицы)
в УТ точно есть

в БП3:
УчетЗатрат.ВыгрузитьВременнуюТаблицу(МенеджерВременныхТаблиц, ИмяВременнойТаблицы)

в ЗУПе 2,5 я сам добавлял в общие модули взял из УТ
---
Для отладки достаточно:
```1c
    Запрос.МенеджерВременныхТаблиц.Таблицы[ИмяВТ].ПолучитьДанные().Выгрузить()
```
---
Есть еще ВыполнитьПакетСПромежуточнымиРезультатами(). И никакого МВЗ не надо.
Добрый день. Случилась что случилось и был сломан план ПланОбмена.МобильноеПриложениеЗаказыКлиентов
Т.к. по умолчанию всегда есть стандартный - в нем были руками изменены данные. Вопрос - его можно как то востановить? Перезагрузить к примеру из другой базы или еще как.
---
Через универсальную обмен дfнными XML выгрузил из аналогичной конфигурации нужный узел. Загрузил в Базу где сломано, Универсальной обработкой снял признак ЭТОТУЗЕЛ = иcтина и поставил на удаление, удалили. Все стало ОК.
---
а бэкапы как же?
---
В бекапах уже данные по документам устарели.
---
Через универсальную обмен дfнными XML выгрузил из аналогичной конфигурации нужный узел. Загрузил в Базу где сломано, Универсальной обработкой снял признак ЭТОТУЗЕЛ = иcтина и поставил на удаление, удалили. Все стало ОК.
Добрый день!

У меня есть задача выгрузки нескольких отчетов в один многостраничный Excel-файл. Для этого предлагается использовать

```1c
    Пакет = Новый ПакетОтображаемыхДокументов;
```

Но возникает проблема с записью. Файл для каждого отчета создается, но при попытке записи возникает следующая ошибка:

При чем файл по этому пути есть.

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

```1c
    Функция СформироватьПакетДокументовПоОтветственным(ПутьОтдельныхТаблиц, ПутьОбщейТаблицы) Экспорт
    ТЗОтветственных = ПолучитьВсехОтветственных();
    Пакет = Новый ПакетОтображаемыхДокументов;
    Для каждого Ответственный из ТЗОтветственных Цикл
    Таб = СформироватьОтчет(Ответственный.Наименование);
    Таб.Записать(ПутьОтдельныхТаблиц+"\"+Ответственный.Наименование+".xlsx", ТипФайлаТабличногоДокумента.XLSX);
    ЭлементПакета = Пакет.Состав.Добавить();
    ЭлементПакета.Наименование = Ответственный.Наименование;
    ЭлементПакета.Данные = ПутьОтдельныхТаблиц+"\"+Ответственный.Наименование+".xlsx";
    КонецЦикла;
    Пакет.Записать(ПутьОбщейТаблицы, ТипФайлаПакетаОтображаемыхДокументов.XLSX);
    КонецФункции
```

```1c
    Функция СформироватьПакетДокументовПоОтветственнымЧерезВременныеФайл­ы(Путь) Экспорт
    ТЗОтветственных = ПолучитьВсехОтветственных();
    Пакет = Новый ПакетОтображаемыхДокументов;
    ВременныеФайлы = Новый Массив;
    Для каждого Ответственный из ТЗОтветственных Цикл
    Таб = СформироватьОтчет(Ответственный.Наименование);
    ВременныеФайлы.Добавить(ПолучитьИмяВременногоФайла("xlsx"));
    Таб.Записать(ВременныеФайлы.Получить(ВременныеФайлы.Количество()-1), ТипФайлаТабличногоДокумента.XLSX);
    ЭлементПакета = Пакет.Состав.Добавить();
    ЭлементПакета.Наименование = Ответственный.Наименование;
    ЭлементПакета.Данные = ВременныеФайлы.Получить(ВременныеФайлы.Количество()-1);
    КонецЦикла;
    Пакет.Записать(Путь, ТипФайлаПакетаОтображаемыхДокументов.XLSX);
    КонецФункции
```

Подскажите, пожалуйста, в чем может быть проблема? Версия 1С 8.3.18.1289
---
Подскажите, пожалуйста, в чем может быть проблема?
https://infostart.ru/1c/articles/979007/

```1c
    Элт = ОднаКнига.Состав.Добавить();
    Элт.Данные = ПоместитьВоВременноеХранилище(ТабличныйДокумент);
```

Если контекст выполнения меняется, то во временное хранилище надо помещать с указанием уникального идентификатора (см. комментарии к статье). Ну и если это сервер, то может и нет там никакого c:\майпатч\.
---
Подскажите, пожалуйста, в чем может быть проблема?
https://infostart.ru/1c/articles/979007/

```1c
    Элт = ОднаКнига.Состав.Добавить();
    Элт.Данные = ПоместитьВоВременноеХранилище(ТабличныйДокумент);
```

Если контекст выполнения меняется, то во временное хранилище надо помещать с указанием уникального идентификатора (см. комментарии к статье). Ну и если это сервер, то может и нет там никакого c:\майпатч\.
---
Спасибо. Действительно, помогло указание уникального идентификатора.

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

(3) Добавил группировку номер. Колонка добавилась, но она добавилась снизу.
Не так добавили. Нужно было не как подчиненную группировку, а к группировке Ссылка добавить. Дважды ЛКМ по группировке Ссылка и там добавить.
---
конфигурация какая?
Вот, для УТ 11.4 пример во вложении.

Смысл следующий:
1. убираем для Ссылка роль.
2. убираем все из ресурсы.
3. к группировке Ссылка добавляем группировку Номер. Группировка будет составной.
---
Конфигурация УТ.
Добавил группировку номер. Колонка добавилась, но она добавилась снизу. А можно ли сделать так, чтобы колонка добавилась сбоку?
Файл xml в вашем случае - это что? Настройки или результат отчёта?
---
Файл xml в вашем случае - это что? Настройки или результат отчёта?
Это схемаСКД. На закладке Наборы данных внизу есть две кнопки, загрузить и сохранить. Вот через загрузить можно загрузить схемуСКД.

(3) Добавил группировку номер. Колонка добавилась, но она добавилась снизу.
Не так добавили. Нужно было не как подчиненную группировку, а к группировке Ссылка добавить. Дважды ЛКМ по группировке Ссылка и там добавить.
---
Благодарю. Оказывается это поля группировки. И интересный у вас запрос получился - не по документам а по регистру. Всё работает, учту. Буду дальше изучать СКД.
---
И интересный у вас запрос получился - не по документам а по регистру.
Отчет по документам это моветон, применяется только в крайнем случае, когда по другому нельзя.
Здравствуйте. Подскажите, пожалуйста, как можно изменить данные в этом объекте (Приложение 1). Выдает ошибку при присваивании данных.
При попытке получения также выдает ошибку (Приложение 2).
---
ОформлениеСтроки получено явно в событии ПриПолученииДанных или ПриВыводеСтроки. В этих событиях нельзя менять объекты ИБ, если конечно вы не вредитель.
---
Код нужен.
---
В оформлении строки - нет, нельзя.
---
1. Вы заметили что у вас пустая ссылка?
2. В управляемых формах ПолучитьОбъект на клиенте нельзя. Что-то мне подсказывает что вы пытаетесь сделать это на клиенте
---
Там ОформлениеСтроки... Какие управляемые формы?
---
Ну значит 2 пункт можно не рассматривать.. Просто смотрим заполненность ссылки и убираем точку с запятой (;) после получитьОбъект() в отлаживаемом выражении
---
ОформлениеСтроки получено явно в событии ПриПолученииДанных или ПриВыводеСтроки. В этих событиях нельзя менять объекты ИБ, если конечно вы не вредитель.
---
Не рекомендуется. Но технически возможность есть
Здравствуйте, в конфигурации Управление торговлей, редакция 11.1 (11.1.1.11) имеется последовательность документов "ПроведениеПоРасчетамСКлиентами" , по определенным причинам мне нужно её сдвинуть на дату выбранного документа. Делаю так:

```1c
    Запрос = Новый Запрос();
    Запрос.УстановитьПараметр("Партнер",ЗаказКлиента.Партнер);
    Запрос.УстановитьПараметр("Организация",ЗаказКлиента.Организация);
    Запрос.УстановитьПараметр("Контрагент",ЗаказКлиента.Контрагент);
    Запрос.Текст = "ВЫБРАТЬ
    | КлючиАналитикиУчетаПоПартнерам.Ссылка
    |ИЗ
    | Справочник.КлючиАналитикиУчетаПоПартнерам КАК КлючиАналитикиУчетаПоПартнерам
    |ГДЕ
    | КлючиАналитикиУчетаПоПартнерам.Партнер = &Партнер
    | И КлючиАналитикиУчетаПоПартнерам.Организация = &Организация
    | И КлючиАналитикиУчетаПоПартнерам.Контрагент = &Контрагент";

    Результат = Запрос.Выполнить();
    Если не Результат.Пустой() Тогда
    Выборка = Результат.Выбрать();
    Пока Выборка.Следующий() Цикл

    ДокументМоментВремени = Новый МоментВремени(ЗаказКлиента.Дата, ЗаказКлиента);
    Последовательности.ПроведениеПоРасчетамСКлиентами.УстановитьГраницу(ДокументМоментВремени,Новый Структура("АналитикаУчетаПоПартнерам",Выборка.Ссылка));

    КонецЦикла;
    КонецЕсли;
```

Ошибок при выполнении кода нет, но и дата в разделе "Проведение документов"-> "Восстановление последовательностей" не меняется. Что я делаю не так?
---
https://program1s.com/posledovatelnost/
Там где вы смотрите отображается самая ранняя граница по всем измерениям.
Проверяйте границу методом ПолучитьГраницы и смотрите полученную таблицу
---
не меняется если Результат.Пустой() тогда ничего и не будет меняться.
---
Результат не пустой
---
а сдвинуть хотите ее вперед? Установить границу актуально для сдвигания границы назад. Для сдвигания вперед применяется восстановить границу. Иначе это уже не последовательность будет.
---
https://program1s.com/posledovatelnost/
Там где вы смотрите отображается самая ранняя граница по всем измерениям.
Проверяйте границу методом ПолучитьГраницы и смотрите полученную таблицу
---
Спасибо, я правильно понимаю, что если я хочу чтобы все документы в базе считались правильно проведенными в хронологическом порядке, то мне нужно просто установить последовательность для все имеющихся в базе ключей аналитики?
---
Попробуйте так:
Последовательности.ПроведениеПоРасчетамСКлиентами.УстановитьГраницу(ДокументМоментВремени);
то есть без указания измерения.

Если так не сработает, то можно по всем ключам, которые есть в последовательности
---
да, так не работает, спасибо!
Добрый вечер, хочу создать запрос к ресурсу регистра сведений, который является хранилищем значений. Запрос объединенный. 1С начинает ругаться.

```1c
    "ВЫБРАТЬ
    | 1 КАК Источник,
    | Период,
    | ВЫРАЗИТЬ(Фото КАК СТРОКА(500)) КАК Фото
    |ИЗ
    | РегистрСведений.В
    |ГДЕ
    | Аренда = &Аренда
    |ОБЪЕДИНИТЬ
    |ВЫБРАТЬ
    | 0 КАК Источник,
    | Период
    //| ВЫРАЗИТЬ(Фото КАК СТРОКА(500))
    |ИЗ
    | РегистрСведений.В2
    |ГДЕ
    | Аренда= &Аренда
    |УПОРЯДОЧИТЬ ПО
    | Период ВОЗР";
```

У моем случае Фото - это хранилище значений, которое хранит фото. Я в форме регистра сведений получаю картнику через навигациооную ссылку. А вот это же фото не могу отобразить в документе через запрос. Ясно, что "Фото КАК СТРОКА(500)", потому что хранилище значений нельзя представить как строку. А как получить ссылку на запись в регистре сведний через запрос?
---
Для получения навигационной ссылки тянуть хранилище запросом вовсе не нужно. Запросом получаете только значения ключевых полей регистра, обходите результат и на основании этих полей создаете ключ записи регистра, из которого и получаете навигационную ссылку на реквизит, содержащий данные картинки.
---
Напомните мне, как правильно получать то, что лежит в хранилище значений?
---
Для получения навигационной ссылки тянуть хранилище запросом вовсе не нужно. Запросом получаете только значения ключевых полей регистра, обходите результат и на основании этих полей создаете ключ записи регистра, из которого и получаете навигационную ссылку на реквизит, содержащий данные картинки.
---
Спасибо. Все оказывается просто через "СоздатьКлючЗаписи"
Здравствуйте! Возник вопрос. При сдаче спеца по платформе дистанционно, для экзаменаторов имеет значение, в какой среде решается задачка: в EDT или в Конфигураторе? Заранее благодарю!
---
задания делаются на удаленном рабочем месте, что то другое вам поставить врядли дадут
---
Вы подключаетесь по рдп к серверу 1с, на котором будете сдавать экзамен.
Я не видел там EDT, поэтому мой ответ Конфигуратор имеет значение. Единственное.
Я сомневаюсь, что вы хотите тратить время на создание проекта в едт
---
Вы подключаетесь по рдп к серверу 1с, на котором будете сдавать экзамен.
Я не видел там EDT, поэтому мой ответ Конфигуратор имеет значение. Единственное.
Я сомневаюсь, что вы хотите тратить время на создание проекта в едт
---
По каким учебникам готовились к Спецу?
---
Видеоуроки учебного центра №1 и сборник задач для подготовки к экзамену "1С: Специалист по платформе".
---
там пустышка конфы будет, не едт.
---
Сколько времени заняла подготовка к экзамену, если она еще не закончена?
---
Только начинаем, закладываем 4 месяца пока что.
---
задания делаются на удаленном рабочем месте, что то другое вам поставить врядли дадут
---
Понял, больше спасибо за информацию!
День добрый. За вопрос сильно не пинайте, еще новичок.
Суть: хочется сделать выбор даты в отчете на скд, используя стандартный период. УФ, платформа 8.3.14.
Делаю все как здесь(Использование стандартных периодов). https://its.1c.ru/db/metod8dev/content/1555/hdoc
Беру в СКД простейший запрос

```1c
    ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка КАК Ссылка,
    РеализацияТоваровУслуг.Дата КАК Дата
    ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ГДЕ
    РеализацияТоваровУслуг.Дата МЕЖДУ &НачалаПериода И &КонецПериода
```

настройки СКД в скриншотах. В итоге получается пустой отчет. Параметр Период на форме отчета появляется. Подскажите, пожалуйста, что еще не доделал?
Я в курсе, что можно спокойно сделать с указанием дат без стандартного периода, интересен сам факт, что не получается.
Заранее спасибо.
---
Да, именно так. Поэтому и написал, что весьма странно. Ладно, буду без стандартного периода обходится.
upd.
На другой платформе отчет запустился как надо без каких-либо манипуляций. Магия...
---
Делаю все как здесь
Еще там же
Для того чтобы введенные значения интерпретировалось в отчете как начало и конец дня следует в запросе использовать функции НачалоПериода() и КонецПериода().

```1c
    РегистрНакопления.Продажи.Обороты(
    {(НАЧАЛОПЕРИОДА(&ПериодНачало, ДЕНЬ))},
    {(КОНЕЦПЕРИОДА(&ПериодКонец, ДЕНЬ))}, , ) КАК ПродажиОбороты
```
---
Но это же не регистр, а документы. Вроде же так нельзя указывать?
---
Что касается периода отчета, то Вы все сделали правильно (за мелким исключением). Только уточните, пожалуйста, а третий снимок экрана соответствует уже сформированному отчету? Т.е. кнопка "Сформировать" нажата, а в результате белый лист? Если так, то ошибка точно не в стандартном отчете.
---
Да, именно так. Поэтому и написал, что весьма странно. Ладно, буду без стандартного периода обходится.
upd.
На другой платформе отчет запустился как надо без каких-либо манипуляций. Магия...
---
Vrdug esli problema eshio aktualino :)
Posmatri v SKD esli sovpadaet imea parametrov s stem shto napisana v zaprose
---
Ну а документы в этом интервале дат есть ?
---
Документы есть.
---
посмотри документы на эту дату, есть ли они вообще в базе?
---
да, есть, в консоли запросов запрос нормально отрабатывает
---
Еще смущает слово "Дата" в параметре отчета, должен быть "период". Покажи что у тебя в отборе и в параметра настроек.
---
1) проверить в конструкторе результат дает или нет.
2) если дает значит чего-то не то в настройках СКД
3) Если не дает консоль запросов результат значит проблема либо в запросе либо нет данных для выборки
---
если я правильно понял под конструктором - результата нет.
в консоле запросов результат есть(т.е. сам запрос рабочий)
---
для начала убрать использование стандартного периода и попробовать сформировать отчет указав именно параметры Начало и конецПериода. если отчет сформируется то да проблема где-то в Стандартном периоде.
Всем доброго времени суток!

У меня есть вот такой код:

```1c
    &НаКлиенте
    Процедура ВыборТипыОтгрузок(ВыбранныйЭлемент, ДополнительныеПараметры) Экспорт
    Тип = ВыбранныйЭлемент;

    Если Тип = ПредопределенноеЗначение("Перечисление.ТипыОтгрузок.СоСклада") Тогда

    Для Каждого Идентификатор Из Элементы.Товары.ВыделенныеСтроки Цикл
    СтрокаДляОбработки = Объект.Товары.НайтиПоИдентификатору(Идентификатор);
    СтрокаДляОбработки.ТипОтгрузки = ПредопределенноеЗначение("Перечисление.ТипыОтгрузок.СоСклада");

    КонецЦикла;
    Иначе
    Для Каждого Идентификатор Из Элементы.Товары.ВыделенныеСтроки Цикл
    СтрокаДляОбработки = Объект.Товары.НайтиПоИдентификатору(Идентификатор);
    СтрокаДляОбработки.ТипОтгрузки = ПредопределенноеЗначение("Перечисление.ТипыОтгрузок.СЗавода");

    КонецЦикла;
    КонецЕсли;

    КонецПроцедуры
```

Суть этого кода в том, что он меняет в выбранных строках значение в колонке ТипОтгрузки на выбранный пользователем. Выбор пользователя у меня это Тип = ВыбранныйЭлемент, где ВыбранныйЭлемент это ЭлементСпискаЗначений.

Проблема в том, что всегда (вне зависимости от выбора пользователя) Срабатывает вторая часть кода (та, что после Иначе). Как я понял это происходит из-за того, что строка

```1c
    Если Тип = ПредопределенноеЗначение("Перечисление.ТипыОтгрузок.СоСклада") Тогда
```
 не работает, то есть Выбранное пользователем значение не сравнивается с ПредопределенноеЗначение("Перечисление.ТипыОтгрузок.СоСклада") и ставится ложь.

Можете подсказать, как сделать так, чтобы получилось сравнение и всё работало?
---
Элемент списка значений - это еще не само значение. Правильно - ВыбранныйЭлемент.Значение
---
Элемент списка значений - это еще не само значение. Правильно - ВыбранныйЭлемент.Значение
---
Такая простая вещь, а я не заметил, спасибо!
Добрый день, умники и умницы!

Есть запрос с параметром. В запросе есть строковое поле, которое преобразуется с помощью ВЫРАЗИТЬ ([НАЗВАНИЕ ПОЛЯ] КАК СТРОКА(100)). Мне нужно сравнить это поле с параметром. Параметр строкового типа, но выходит сообщение: "Неверные параметры в операции сравнения. Нельзя сравнивать поля
 неограниченной длины и поля несовместимых типов". Типы совместимы. Остается привести сравниваемые поля к одинаковой длине. Как это сделать? Помогите, пожалуйста!
---
ГДЕ ВЫРАЗИТЬ(<НазваниеПоля> КАК СТРОКА(100)) = ВЫРАЗИТЬ(&Параметр КАК СТРОКА(100))
---
Приведите текст запроса и значение параметра. Если 1С ругается ""Неверные параметры в операции сравнения. Нельзя сравнивать поля неограниченной длины и поля несовместимых типов", то это значит, что идет сравнение поля неограниченной длины с каким-то значением или сравниваются несовместимые типы.
Сравниваемые поля не нужно приводить к одинаковой длине.
---
ГДЕ ВЫРАЗИТЬ(<НазваниеПоля> КАК СТРОКА(100)) = ВЫРАЗИТЬ(&Параметр КАК СТРОКА(100))
---
Ваше решение сработало - спасибо!
---
То есть "ГДЕ ВЫРАЗИТЬ(<НазваниеПоля> КАК СТРОКА(100)) = &Параметр" у вас не работает?
---
Видимо у вас тип значения параметра "параметр" не является строкой, может быть ссылка. Поэтому не удается произвести операцию сравнения. Мой вам совет - разберитесь в причине, а не лечите симптомы! Иначе через какое-то время код может сработать неверно и вы получите некорректные данные, а ошибок никаких 1с выдавать не будет.
---
Если тип значения параметра "параметр" не является строкой, тогда ВЫРАЗИТЬ(&Параметр КАК СТРОКА(100)) выдало бы ошибку.
---
Не понятно какую ошибку исправляет ВЫРАЗИТЬ(&Параметр КАК СТРОКА(100)).
---
Если сработало - значит, какую-то исправляет )))
Отсюда мне не видно, что там на входе...
---
Вероятно, когда &Параметр - строка неограниченной длины.
---
Понятие неограниченной длины имеет значение только для реквизита. Когда вы передаете значение в параметр, это просто переменная примитивного типа строка.
---
Извиняюсь, вы правы. Строка длиной выше 1024 считается неограниченной длины.
Добрый день, использую обработку, ни как не могу найти где можно поменять название у печатной формы ?
---
В данном случае поправить нужно было в сороке
```1c
    ТабличныйДокумент.Показать("Квитанция на оплату");
```

```1c
    ТабличныйДокумент=ПечатьПД4_20140101(КодКнопки, КодПлатежа, МассивОбъектов, ОбъектыПечати, "ПФ_MXL_ПД_4_20140101_QR");
    ТабличныйДокумент.АвтоМасштаб = Истина;
    ТабличныйДокумент.ОтображатьСетку = Ложь;
    ТабличныйДокумент.Защита = Ложь;
    ТабличныйДокумент.ТолькоПросмотр = Истина;
    ТабличныйДокумент.ОтображатьЗаголовки = Ложь;
    ТабличныйДокумент.ПолеСверху = 0;
    ТабличныйДокумент.ПолеСнизу = 0;
    ТабличныйДокумент.ПолеСлева = 0;
    ТабличныйДокумент.ПолеСправа = 0;
    ТабличныйДокумент.ИмяПараметровПечати = "Квитанция";
    ТабличныйДокумент.Показать("Квитанция на оплату");
```
---
Это скорее всего описание в функции Печать. Там есть http://joxi.ru/xAeZPNaUXvzq8r
---
Это внешняя обработка или внешняя печатная форма?
---
Да внешняя.
---
В модуле обработки:

```1c
    Функция СведенияОВнешнейОбработке() Экспорт
    ПараметрыРегистрации = Новый Структура;
    МассивНазначений = Новый Массив;
    ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма");
    МассивНазначений.Добавить("Документ.ХХХ");
    ПараметрыРегистрации.Вставить("Назначение", МассивНазначений );
    ПараметрыРегистрации.Вставить("Наименование", "НАШЕ НАИМЕНОВАНИИЕ");
    .........
    КонецФункции
```
---
В данном случае поправить нужно было в сороке
```1c
    ТабличныйДокумент.Показать("Квитанция на оплату");
```

```1c
    ТабличныйДокумент=ПечатьПД4_20140101(КодКнопки, КодПлатежа, МассивОбъектов, ОбъектыПечати, "ПФ_MXL_ПД_4_20140101_QR");
    ТабличныйДокумент.АвтоМасштаб = Истина;
    ТабличныйДокумент.ОтображатьСетку = Ложь;
    ТабличныйДокумент.Защита = Ложь;
    ТабличныйДокумент.ТолькоПросмотр = Истина;
    ТабличныйДокумент.ОтображатьЗаголовки = Ложь;
    ТабличныйДокумент.ПолеСверху = 0;
    ТабличныйДокумент.ПолеСнизу = 0;
    ТабличныйДокумент.ПолеСлева = 0;
    ТабличныйДокумент.ПолеСправа = 0;
    ТабличныйДокумент.ИмяПараметровПечати = "Квитанция";
    ТабличныйДокумент.Показать("Квитанция на оплату");
```