Конструктор внешних печатных форм NEW beta (обычные и управляемые приложения!)

03.04.23

Разработка - Инструментарий разработчика

Версия NEW beta=) "Конструктор внешних печатных форм" максимально автоматизирует процесс создания внешних печатных форм на основе типовых. Создание внешней печатной формы займет от секунд до пары минут! Теперь и на управляемых приложениях =)

Скачать файлы

Наименование Файл Версия Размер
КонструкторВнешнихПечатныхФорм_NEW_beta.epf
.epf 178,06Kb
1994
.epf 178,06Kb 1994 Скачать

Это новая версия Конструктора ВПФ. В ней исправлены старые косяки и добавлены новые =)

ВНИМАНИЕ: ПРОЕКТ ДАВНО ЗАБРОШЕН! ОБРАБОТКА БУДЕТ РАБОТАТЬ, НО С ДОПИЛАМИ
ВОЗМОЖНО, КОГДА-ТО ВЫЙДЕТ СОВЕРШЕННО НОВАЯ ВЕРСИЯ, НО ПОКА ТЕКУЩАЯ ОСТАЁТСЯ ДЛЯ ИСТОРИИ


Новое в версии NEW beta (05\01\2013):

Обычное приложение:
+ Немного переработан интерфейс и оптимизирован код
+ Добавлена возможность вручную выбрать нужна ли определенная функция или нет
+ Удобная работа с макетами... редактировать пока нельзя, но в планах
+ Переработан шаблон ВПФ. За основу взят шаблон из публикации //infostart.ru/public/67060/ от alexk-is
+ Добавлена возможность передачи во ВПФ СсылкиНаОбъект прямо из конструктора
+ Может чего-то ещё =)

Управляемое приложение:
+ Реализована работа, но ОЧЕНЬ не оптимизиованная. Всё будет переписываться, когда соберется список косяков =)
+ Не требуется выбор оновной процедуры печати. Она по умолчанию Печать(). Обработка сама определяет команды печати - пользователю остаётся только отметить нужную галочкой. Всё остальное обработка сделает сама... Наверное)
+ Все параметры прописываются в конструкторе. Вообще работа переноса печатной формы заметно легче, чем в обычном режиме, однако, пока плохо проработанная.
- Пока есть минус - обработка в УФ не вытягивает макеты. Это делать нужно вручную.
- И еще... я заколебался с неким "Безопасным режимом", ошибка о котором постоянно высвечивается при тесте ВПФ... И после нескольких "переоткрываний" пропадает... Если кто понял в чем дело, сообщите, плиз, в комментариях ^_^



//Описание изменений предыдущей версии
Исправленные ошибки:

+ Исправленна проверка зависимых процедур. Спасибо Жолтокнижнику за его обработку Редактор внешних печатных форм из которой я взял парочку функций :)

+ Исправлена мелкая ошибка замены строки "Печать" на "СтандартнаяПроцедураПечать"

+ МоментВремени() раньше выдавал ошибку, теперь все норм :)

+ присвоение переменных теперь происходит два раза. При открытии обработки и при вызове Печать(). Это, конечно, не есть красиво, однако исключает некоторые ошибки.

+ добавлена страница с таблицей всех процедур и функций модуля

+ теперь, перед тем как создать файл внешней печатной, обработка запрашивает название этой самой внешней печатной и прописывает название как синоним готового файла (для нормального добавления в базу)

+ после сохранения результата обработка может открыть готовую внешнюю печатную для проверки

+ Не закрывающиеся #Если теперь... комментируются )

 

Надеюсь, что кому-нить моя обработка будет полезна =)

См. также

SALE! 20%

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

13000 10400 руб.

02.09.2020    122112    670    389    

714

SALE! 25%

Infostart PrintWizard

Пакетная печать Печатные формы Инструментарий разработчика Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

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

18000 15300 руб.

06.10.2023    7285    21    6    

39

SALE! 20%

Infostart УДиФ: Управление данными и формами

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 8000 руб.

10.11.2023    3524    11    1    

34

SALE! 30%

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2520 руб.

14.01.2013    177737    1073    0    

849

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    99344    239    97    

296

[ЕХТ] Фреймворк для Расширений 1С

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платные (руб)

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    18108    6    8    

39

1С HTML Шаблоны / HTML Templates

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Быстрая и удобная обработка для работы с шаблонами HTML. Позволяет легко и быстро формировать код HTML.

2040 руб.

27.12.2017    28107    3    10    

15

Выполнение произвольного кода или запроса с параметрами через Web-сервис (замена COM-подключений)

Инструментарий разработчика Обмен между базами 1C Платформа 1С v8.3 Платные (руб)

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

2400 руб.

24.09.2019    23601    15    15    

32
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
86. levante90 01.11.13 07:28 Сейчас в теме
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
				рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),"[\(\)\.\,\;\s=]"+имя+"[\(\)\.\,\;\s=]");


При открытии в УПП
88. WolfKgn 07.11.13 23:08 Сейчас в теме
(86) levante90, столкнулся с такой же проблемой. пока она решилась комментированием всех директив
&НаСервере

в модуле объекта
alex5550; Lusha_28; +2 Ответить
87. kovaleks78 4 01.11.13 07:31 Сейчас в теме
Обработка супер! Спасибо!
90. antosha 20.11.13 15:29 Сейчас в теме
оното всё интересно но как с ней работать где брать инструкцию - нахрапом взять не получилось - валит неимоверное количество ошибок на каждом шаге...видимо я чтото не так делаю...
91. xenia_b 29.11.13 15:16 Сейчас в теме
Большое спасибо за обработку. Очень облегчает работу над внешними печатными формами.
92. NittenRenegade 108 18.12.13 08:42 Сейчас в теме
Шикартная штука! Автор, респектос за обработку.
93. Alex1Cnic 148 27.12.13 09:08 Сейчас в теме
94. Alex1Cnic 148 27.12.13 10:04 Сейчас в теме
Проверил на УПП и нашел баг: проблема с макетами на закладке "Макеты" в колонке "имя макета" пишет "мяМакет" а вколонке Расположение - "Документы.СправкаОЗаработкеДляРасчетаПособий.ПолучитьМакет("мяМакет")"
96. popov_i 5 03.02.14 00:37 Сейчас в теме
Обработка очень актуальна на данный момент. Очень жду развитие данной темы и функционала обработки.
98. sword444 153 04.02.14 20:53 Сейчас в теме
Вываливается такая ошибка, в чем косяк
{ВнешняяОбработка.Счет_ВнешняяПечатная.МодульОбъекта(22,14)}: Переменная не определена (Счет)
ИмяМакета = <<?>>Счет; (Проверка: Толстый клиент (обычное приложение))
100. Tommy82 65 19.02.14 13:20 Сейчас в теме
(98) sword444,
попробуй из-под управляемого запустить
99. Tommy82 65 19.02.14 13:18 Сейчас в теме
при создании ВПФ "ЗаказКлиента"

Ошибка инициализации модуля: ВнешняяОбработка.ЗаказКлиента_ВнешняяПечатная.МодульОбъекта
по причине:
{ВнешняяОбработка.ЗаказКлиента_ВнешняяПечатная.МодульОбъекта(16,196)}: Переменная не определена (ПараметрыПечати)
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ЗаказКлиента", "Заказ клиента", СформироватьПечатнуюФормуЗаказаКлиента(МассивОбъектов, ОбъектыПечати, Неопределено, <<?>>ПараметрыПечати));
{ВнешняяОбработка.ЗаказКлиента_ВнешняяПечатная.МодульОбъекта(23,52)}: Переменная не определена (ПараметрыПечати)
СформироватьКомплектПечатныхФорм(МассивОбъектов, <<?>>ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати);

куда копать? откуда берётся "ПараметрыПечати"
101. Bukaska 140 19.02.14 13:28 Сейчас в теме
(99) treblinka, Где открывали? В обычном приложении или в Управляемом приложении? Откройте в последнем
103. Tommy82 65 19.02.14 13:32 Сейчас в теме
(101) Bukaska,
при автоматическом формировании вместо
"Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт"
получается
"Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт"
добавил "ПараметрыПечати", вроде проскочило, но дальше отлавливаю стопы
104. Bukaska 140 19.02.14 13:50 Сейчас в теме
(103) treblinka, По мне так если вам не нужны параметры печати, можно убрать их из процедуры, и будет работать без них...
Самые как воздух нужные(это как раз остальные четверо)
А так у вас наверное функция формирования печатной формы идет с параметрами печати, вот и функция печать - тоже их требует.. все взаимосвязано))))
105. Tommy82 65 19.02.14 14:09 Сейчас в теме
(104) Bukaska,
логично, это я понял уже, спасибо
106. alxarz 31 20.02.14 12:22 Сейчас в теме
выдает ошибку при открытии

{Форма.ФормаУправляемая.Форма(320)}: Поле объекта недоступно для записи (ЭтотОбъект)
ЭтотОбъект = РеквизитФормыВЗначение("Объект");

Бухгалтерия предприятия, редакция 3.0 (3.0.29.6)
107. Alex_E 2353 23.02.14 13:19 Сейчас в теме
(106) alxarz, На платформе 8.3 Переменная ЭтотОбъект - не катит, надо заменить ЭтотОбъект - на любую другую "свою", хоть ЭтотОбъек везде где она используется - всё работает. После появления .3 уже несколько обработок отсюда таким образом заставлял работать :-)
108. 13jaguar 94 23.02.14 21:18 Сейчас в теме
При запуске в тонком клиенте УФ (БП 3.0) вываливается с ошибкой:
{Форма.ФормаУправляемая.Форма(320)}: Поле объекта недоступно для записи (ЭтотОбъект)
ЭтотОбъект = РеквизитФормыВЗначение("Объект");
В модуле формы везде заменил "ЭтотОбъект" на "ОбработкаОбъект". Заработало. Разбираюсь дальше.
109. DeniNikitin 36 24.02.14 11:27 Сейчас в теме
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),"[\(\)\.\,\;\s=]"+имя+"[\(\)\.\,\;\s=]");

Выдаёт при запуске!!!
111. Cartman 12.03.14 08:15 Сейчас в теме
(109), открывайте обработку в файловой базе. В клиентсерверном варианте такая бяка. Выше писали уже.

(110), надо вставить туда текст модуля документа (открыть в конфигураторе и скопировать). Дальше понятно вроде бы все.

А я вот продолбался с формой универсальный передаточный документ для УТ 10.3, но так и не смог сделать ее внешней.
У кого получилось - поделитесь опытом. Ну или формой в личку.
112. arteast 100 18.03.14 22:47 Сейчас в теме
(111) Cartman, а в чём собственно возникла проблема?
114. Cartman 20.03.14 09:43 Сейчас в теме
(112) arteast, детально не разбирался. Судя по всему из за того что его печать почти полностью вынесена в общий модуль.

(113) Alex_E, ну не всегда. Например у документа счет-фактура выданный модуль менеджера вообще пустой (УТ). В УПП да там.
Почти все кадровые документы (УПП, ЗУП) печатаются из модуля документа.
Так что не все так однозначно :)
115. Alex_E 2353 20.03.14 18:05 Сейчас в теме
(114) Cartman, Точно! Уточню уточнение :-) :
В конфигурациях на обычном приложении модуль менеджера не использовался, процедуры печати в модуле объекта.
В Управляемом приложении - в модуле менеджера, но в последних релизах БП 3.0 например, в нем не полностью всё заполнение табличного документа - получение данных вынесено в общие модули, так что можно из модуля менеджера выдрать во внешнюю форму и сформировать файл, но если надо получить отличные от типовых данные придется "вынимать" из общих модулей запросы и переписывать под себя. Или в самой форме что то "дополучать" - тут уже надо смотреть как это в типовой реализовано.

P.S. Написал первый пост потому что как то не довелось использовать эту обработку в обычном приложении.....
116. Cartman 20.03.14 18:19 Сейчас в теме
(115) Alex_E, а, вот оно что :)
Я как раз только под обычные формы ее пользовал и вот собирался под управляемые попробовать.
Спасибо за уточнения.
113. Alex_E 2353 19.03.14 23:27 Сейчас в теме
(111) Cartman,
надо вставить туда текст модуля документа
- уточню - модуль менеджера, а не документа (объекта).
110. Bortkevich 69 04.03.14 07:42 Сейчас в теме
Спасибо конечно, но я не понял как её пользоваться. Открываю БП 2.0.54.1 Открываю обработку, выбираю документ "Реализация т и У" И что дальше. Активны только кнопка вставить и построить дерево. Нажимаем вставить, ничего не происходит, нажимаем построить дерево говорит вставьте текст.
117. AlexKoso 20 21.03.14 08:52 Сейчас в теме
Автор! Есть подозрения что ты не предусмотрел данную траблу: http://infostart.ru/public/263289/
из-за которой в последних релизах Бухгалтерии 3.0 выскакивает ошибка при запуске.

"...в новой версии конфигурации убрана совместимость с 8.2. А реквизит управляемой формы "ЭтотОбъект" появился как раз в 8.3. Так что советую все переменные "ЭтотОбъект" в модулях форм своих обработок переименовать..."
119. DuplexAlex 31.03.14 18:10 Сейчас в теме
Ну управляемом приложении УТ 11 не запускается?
120. SeiOkami 3423 01.04.14 14:03 Сейчас в теме
Прошу у всех прощения за то, что так давно не отзывался и не исправлял косяки обработки...
Думаю вернуться к разработке и построить все с нуля, но уже с заточенностью на последние релизы типовых и УФ. У меня такой вопрос. Есть ли кто-нить, кому бы пригодилось это? Стоит ли браться за разработку новой версии конструктора?
Brook; svbel85; Diamante; librefx; asterisk; kevlar; NittenRenegade; Wum; maXon777; Светлый ум; enotik; nick_189; Frosja; +13 Ответить
121. Alex_E 2353 01.04.14 14:04 Сейчас в теме
122. Cartman 01.04.14 14:50 Сейчас в теме
(120) да конечно. И есть уже пожелание.
Хотелось бы чтобы печатную форму одного документа можно было использовать в другом. Ну, понятно, я не про авторегистрацию.
Ну и это, можно грабить корованы :)
123. AlexKoso 20 16.04.14 20:29 Сейчас в теме
(120) чувак, ты с ума сошел, такое спрашивать :) я кому показывал - все в шоке. Пусть сколь угодно скорострельные кодеры говорят о том что они и так делают минут за 5, незнаю. Бывают моменты когда уходит минут по 20, 30. С заменой всех переменных, отладкой и прочего.
P.S. И как феерично я на спор сделал с помощью нее ВПФ для управляемой БП 3.0, за минуту, незная на тот момент управляемого интерфейса.
125. ixijixi 1775 30.04.14 10:54 Сейчас в теме
(120) Конечно! Обработка очень полезная!
126. БизнесРешение 15.05.14 10:45 Сейчас в теме
(120) Да!!!! Одна из лучших обработок!!! Допилить под УФ и будет просто шикааарно!!!!!! Ты молодец!!!
133. craftytigra 04.02.15 11:36 Сейчас в теме
(120) БП ред 3.0.37.37 открывается только в обычном приложении. И когда создаю внешнюю не добавляет её. Не открывается макет. А так очень хорошая.
134. AlexO 135 04.02.15 15:31 Сейчас в теме
(120) Я вот не понял -
Версия NEW beta=)
(это с 2012-го года).
Ну ладно. Бета и бета, человек бросил заниматься.
Но это-то что такое?
Думаю вернуться к разработке и построить все с нуля, но уже с заточенностью на последние релизы типовых и УФ.
Т.е. недопиленное ломаем и заново переделывать? ))
И почему "с заточенностью на последние релизы типовых и УФ" - уж делать, так универсальный, что ли.
В общем, и сейчас много непонятного ))
148. DimD2 14.12.15 07:42 Сейчас в теме
Огромный респект ТС
Дальнейшая заточка под УФ, будет принята с восторгом!(120)
Светлый ум; +1 Ответить
124. пользователь 22.04.14 09:33
Сообщение было скрыто модератором.
...
127. evg_m 9 26.05.14 15:04 Сейчас в теме
Не создается код внешней печатной формы. В древе процедур выходит только процедура _РазделОператоров_!! и все!
128. Algiz 29.05.14 01:20 Сейчас в теме
129. sypata1 09.09.14 18:39 Сейчас в теме
Управление торговлей, редакция 11.1 (11.1.5.16)
130. AnryMc 849 11.09.14 17:25 Сейчас в теме
(129) sypata1,
Управление торговлей, редакция 11.1 (11.1.5.16)


А это к чему?
131. Quasar 23.12.14 11:23 Сейчас в теме
При попытке сохранить файл выдает ошибку:

{Форма.ФормаУправляемая.Форма(157)}: Ошибка при вызове конструктора (ДвоичныеДанные)
ДвоичныеДанныеОбработки = Новый ДвоичныеДанные(Объект.ИмяГотовогоФайла);
по причине:
Каталог не обнаружен 'C:\Users\Administrator.VVK\AppData\Local\Temp\SeiOkami\Temp\EPF\OK.epf'

Что с этим делать?
132. Alex1Cnic 148 22.01.15 09:57 Сейчас в теме
Буду очень рад новым версиям под УФ!!!!!
135. craftytigra 26.03.15 10:06 Сейчас в теме
При загрузке на 1С:Предприятие 8.3 (8.3.5.1460) Бухгалтерия предприятия, редакция 3.0 (3.0.39.50) Выходит Ошибка "{Форма.ФормаУправляемая.Форма(320)}: Поле объекта недоступно для записи (ЭтотОбъект)
ЭтотОбъект = РеквизитФормыВЗначение("Объект");"

Прикрепленные файлы:
137. NittenRenegade 108 28.05.15 14:05 Сейчас в теме
(135) craftytigra, поправил обработку немного, пробовал только в Бухгалтерия предприятия, редакция 3.0 (3.0.39.58). Кому нужно - пишите в личку, если обработку вы качали - отправлю правленую версию
145. ewmarisha 37 05.07.15 07:35 Сейчас в теме
(137) NittenRenegade, Можно мне исправленную версию. Сама я не исправлю, я не программист.
136. Agema 07.05.15 02:43 Сейчас в теме
Спасибо огромное!!!
Первый раз делал ВПФ. Сначала по шагам из статей, но в конфигурации ЗиКБУ не было типовой формы, а встроенная в документ, да еще и с кучей параметров передаваемых.
Помучился пару часов, но получилось так как требовалось.
138. ughunter 11.06.15 22:35 Сейчас в теме
ТП 8.3.6.2014 ERP 2.0.10.145
сразу же при открытии - Поле объекта недоступно для записи (ЭтотОбъект)
139. hanio 54 22.06.15 23:07 Сейчас в теме
У меня такая же ошибка в БП 3.0 что у 138 поста
140. Alex_E 2353 23.06.15 00:41 Сейчас в теме
138. ughunter, (139) hanio, Уже неколько раз говорили - переименуйте "ЭтотОбъект" во что то другое - назовите "ОбработкаОбъект" или ЭтаХрень. После этого увидите вторую ошибку - полистайте топик назад - там всё описано и ошибки и исправления...

Или просто зарегистрируйте ВПФ в базе и пробуйте штатно. Не работает форма для отлападки, сама печатаная форма должна работать...
NittenRenegade; +1 Ответить
141. NittenRenegade 108 23.06.15 15:02 Сейчас в теме
Учитесь пользоваться отладчиком, господа!
142. ewmarisha 37 04.07.15 16:21 Сейчас в теме
Не могу открыть обработку. Сразу выдает ошибку и не открывается.
{Форма.ФормаУправляемая.Форма(320)}: Поле объекта недоступно для записи (ЭтотОбъект)
ЭтотОбъект = РеквизитФормыВЗначение("Объект");
143. Alex_E 2353 04.07.15 22:00 Сейчас в теме
(142) ewmarisha, Вот прикол, только что спрашивали, причём с стотыщьдвацатьтретий раз, посмотрите (140)
144. progr-2008 118 04.07.15 22:27 Сейчас в теме
Для УПП 1.3 и БП 3.0 работает без проблем?
146. progr-2008 118 05.07.15 10:04 Сейчас в теме
Может, кто уже поработал с этим конструктором, выложит свою исправленную версию?
Было бы очень полезно многим.

147. Designer1C 447 12.10.15 13:47 Сейчас в теме
Удобная вещь ! Спасибо за помощь !
149. mort64ram 24 12.01.16 04:23 Сейчас в теме
Не смог проверить, на управляемых формах в УТ при открытии
{Форма.ФормаУправляемая.Форма(320)}: Поле объекта недоступно для записи (ЭтотОбъект)
ЭтотОбъект = РеквизитФормыВЗначение("Объект");

В обычных формах не заработала полученная ВПФ.
В общем проверить не удалось.
150. Night_Trap 25.01.16 18:33 Сейчас в теме
В БП 3.0 при открытии выдает ошибку:
{Форма.ФормаУправляемая.Форма(320)}: Поле объекта недоступно для записи (ЭтотОбъект)
ЭтотОбъект = РеквизитФормыВЗначение("Объект");

Как быть !?
151. Alex_E 2353 25.01.16 18:39 Сейчас в теме
(150) tdkintel, Вместо ЭтотОбъект написать ЭО или ещё что нибудь, только и потом на эту же переменную заменить все вхождения
Дмитрий74Чел; +1 Ответить
152. Night_Trap 25.01.16 18:42 Сейчас в теме
(151) Alex_E, Все понял. Спасибо за оперативность.
153. Alex_E 2353 25.01.16 18:44 Сейчас в теме
154. Adoms 152 30.03.16 13:30 Сейчас в теме
Метод объекта не обнаружен (ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­) Ребят, как эту ошибку поправить (Бух.3,0)? Обработка замечательная!!!
155. Alex_E 2353 30.03.16 13:44 Сейчас в теме
(154) Adoms,
	Попытка
        ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПодключенныеОбъектыМетаданных(ЭлементОбъект.Вид); //более свежие версии БСП
    Исключение
        ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.НазначаемыеОбъектыМетаданныхПоВидуВнешнегоОбъекта(ЭлементОбъект.Вид);//более старые версии БСП //ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработ­ки(дво.Вид);
    КонецПопытки;
156. Adoms 152 30.03.16 16:52 Сейчас в теме
(155) Alex_E, Спасибо большое!
Но всеравно бъет ошибку, на этой строчке затыкается
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­(ВидОбработки);

Пытаюсь сделать внешнюю форму счета на оплату для Бух.3,0, свежую
Здесь поискал, многие не работают из за изменений фирмы 1С
157. Alex_E 2353 30.03.16 17:12 Сейчас в теме
(156) Adoms, Этот бблок для регистрации ВПФ кнопкой на форме, если не впротык совсем - комментарьте всё нафиг - и регистрируйте вручную
159. Adoms 152 31.03.16 08:24 Сейчас в теме
(157) Alex_E, Спасибо Огромное!!! Закоментировал все нафик и заработало!!!
Еще в форме вот эту процедуру тоже закоментировал Процедура УстановитьОграниченияТипа() тоже там спотыкалось
160. Alex_E 2353 31.03.16 08:30 Сейчас в теме
(159) Adoms, Про ограничения типа - я уже давно исправил конструктор, просто уже не помню, что там пришлось исправлять...
Процедура УстановитьОграниченияТипа()
	
	Попытка
		РегистрационныеДанные = ЭтотОбъект().СведенияОВнешнейОбработке();
	Исключение
		ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
				НСтр("ru = 'Возможно, обработка (отчет) устарела или не является дополнительной:'")
					+ КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
		Возврат;
	КонецПопытки;
	
	//Установим заголовок формы
	ЭтаФорма.Заголовок = "Отладка внешних печатных форм: " + РегистрационныеДанные.Наименование;
	
	ВидОбработки = Перечисления.ВидыДополнительныхОтчетовИОбработок[РегистрационныеДанные.Вид];
	ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьВидОбработкиПоСтроковомуПредставлениюВида(РегистрационныеДанные.Вид);
	
	СписокОграниченияТипа = Новый Массив;
	
	Если РегистрационныеДанные.Свойство("Назначение") Тогда
		Для Каждого ЭлементЗаданноеНазначение Из РегистрационныеДанные.Назначение Цикл
			РазделеннаяСтрока = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ЭлементЗаданноеНазначение, ".");
			Если РазделеннаяСтрока[1] = "*" Тогда
				НайденныеНазначения = ПолноеНазначениеЗначение.НайтиСтроки(Новый Структура("Класс", РазделеннаяСтрока[0]));
				Для Каждого ЭлементНайденноеНазначение Из НайденныеНазначения Цикл
					СписокОграниченияТипа.Добавить(ЭлементНайденноеНазначение.ПолноеИмяОбъектаМетаданных);
				КонецЦикла;
			Иначе
				СписокОграниченияТипа.Добавить(ЭлементЗаданноеНазначение);
			КонецЕсли;
		КонецЦикла;
	КонецЕсли;
	
	Если СписокОграниченияТипа.Количество() > 0 Тогда
		Для А = 0 По СписокОграниченияТипа.Количество() - 1 Цикл
			ЭлементМассива = СписокОграниченияТипа[А];
			ПозицияРазделителя = Найти(ЭлементМассива, ".");
			Если Лев(ЭлементМассива, ПозицияРазделителя - 1) = "Документ" Тогда
				ТипДокумента = Документы[Сред(ЭлементМассива, ПозицияРазделителя + 1)].ПустаяСсылка();
				ЭлементМассива = ТипЗнч(ТипДокумента);
			ИначеЕсли Лев(ЭлементМассива, ПозицияРазделителя - 1) = "Справочник" Тогда
				ТипСправочника = Справочники[Сред(ЭлементМассива, ПозицияРазделителя + 1)].ПустаяСсылка();
				ЭлементМассива = ТипЗнч(ТипСправочника);
			КонецЕсли;
			СписокОграниченияТипа[А] = ЭлементМассива;
		КонецЦикла;
		Элементы.СсылкаНаОбъект.ОграничениеТипа = Новый ОписаниеТипов(СписокОграниченияТипа);
	КонецЕсли; 
	
КонецПроцедуры
Показать

вот это вроде работает...
161. Adoms 152 31.03.16 09:16 Сейчас в теме
(160) Alex_E, Да, все работает!
Ребята, если делаете внешний счет на оплату для Бух.3.0 меняйте две процедуры на те, которые опубликовал Alex_E и рабочая внешняя форма счета у Вас. Спасибо!
158. Alex_E 2353 30.03.16 17:15 Сейчас в теме
(156) Adoms, + к (157), а так, исправленный полный код функции вот:
&НаСервере
Функция ЗарегистрироватьОбработкуВИнформационнойБазеНаСервере(РежимИспользования = "", СсылкаНаЭлемент = Неопределено)

	//Регистрируем обработку в информационной базе
	ОбъектЗн = РеквизитФормыВЗначение("Объект");
	
	Если НЕ ПравоДоступа("Изменение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда 
		Возврат Ложь;
	КонецЕсли;
	
	РегистрационныеДанные = ОбъектЗн.СведенияОВнешнейОбработке();
	
	Если СсылкаНаЭлемент = Неопределено Тогда
		Запрос = Новый Запрос;
		Запрос.Текст = 
			"ВЫБРАТЬ
			|	ДополнительныеОтчетыИОбработки.Версия,
			|	ДополнительныеОтчетыИОбработки.Ссылка
			|ИЗ
			|	Справочник.ДополнительныеОтчетыИОбработки КАК ДополнительныеОтчетыИОбработки
			|ГДЕ
			|	ДополнительныеОтчетыИОбработки.Наименование = &Наименование
			|	И ДополнительныеОтчетыИОбработки.Вид = &Вид
			|";

		Запрос.УстановитьПараметр("Наименование", РегистрационныеДанные.Наименование);
		Запрос.УстановитьПараметр("Вид", Перечисления.ВидыДополнительныхОтчетовИОбработок[РегистрационныеДанные.Вид]);
		Результат = Запрос.Выполнить();
		Выборка = Результат.Выбрать();

		Если Выборка.Следующий() Тогда
			СсылкаНаЭлемент = Выборка.Ссылка; 
		Иначе
			СсылкаНаЭлемент = Справочники.ДополнительныеОтчетыИОбработки.ПустаяСсылка(); 
		КонецЕсли;
	КонецЕсли; 
	
	Если РежимИспользования = "Поиск" Тогда
		Если СсылкаНаЭлемент = Справочники.ДополнительныеОтчетыИОбработки.ПустаяСсылка() Тогда 
			РежимИспользования = "Обновить"; 
		Иначе
			Возврат РегистрационныеДанные.Наименование; 
		КонецЕсли;
	КонецЕсли;
	
	Если РежимИспользования = "Обновить" Тогда
		Если СсылкаНаЭлемент = Справочники.ДополнительныеОтчетыИОбработки.ПустаяСсылка() Тогда
			ЭлементОбъект = Справочники.ДополнительныеОтчетыИОбработки.СоздатьЭлемент();
		Иначе
			ЭлементОбъект = СсылкаНаЭлемент.ПолучитьОбъект(); 
		КонецЕсли; 
	КонецЕсли;
	
	ПолноеИмяИмяФайла = ОбъектЗн.ИспользуемоеИмяФайла;
	////////////////////////////////////////////////////////////­////////////////////////////////////////////////////////////­///////////
	НаименованиеДВО = РегистрационныеДанные.Наименование;
	СсылкаНаЭлемент = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию(НаименованиеДВО, Истина);
	МассивПодстрок = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ПолноеИмяИмяФайла, "\");
	ИмяФайла = МассивПодстрок.Получить(МассивПодстрок.ВГраница());
	РасширениеФайла = Прав(ИмяФайла, 3);
	РеквизитТипХранилище = Новый ХранилищеЗначения(Новый ДвоичныеДанные(ПолноеИмяИмяФайла));
	ЭлементОбъект.ХранилищеОбработки = РеквизитТипХранилище;
	
	ЭлементОбъект.Назначение.Очистить();
	
	// Инициализация сведений об обработке
	ЭлементОбъект.Вид = Перечисления.ВидыДополнительныхОтчетовИОбработок[РегистрационныеДанные.Вид];
	ЭлементОбъект.Наименование		= РегистрационныеДанные.Наименование;
	ЭлементОбъект.Версия			= РегистрационныеДанные.Версия;
	ЭлементОбъект.БезопасныйРежим	= РегистрационныеДанные.БезопасныйРежим;
	ЭлементОбъект.Информация		= РегистрационныеДанные.Информация;
	
	// Устанавливаем имя файла обработки
	ЭлементОбъект.ИмяФайла = ИмяФайла;
	
	ЭлементОбъект.ИспользоватьДляФормыОбъекта = Истина;
	ЭлементОбъект.ИспользоватьДляФормыСписка = Истина;
		
	Попытка
        ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПодключенныеОбъектыМетаданных(ЭлементОбъект.Вид); //более свежие версии БСП
    Исключение
        ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.НазначаемыеОбъектыМетаданныхПоВидуВнешнегоОбъекта(ЭлементОбъект.Вид);//более старые версии БСП //ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработ­ки(дво.Вид);
    КонецПопытки;
		
	Если РегистрационныеДанные.Свойство("Назначение") Тогда
			
		Для Каждого ЭлементЗаданноеНазначение Из РегистрационныеДанные.Назначение Цикл
				
			РазделеннаяСтрока = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ЭлементЗаданноеНазначение, ".");
				
			Если РазделеннаяСтрока[1] = "*" Тогда
				
				НайденныеНазначения = ПолноеНазначениеЗначение.НайтиСтроки(Новый Структура("Класс", РазделеннаяСтрока[0]));
					
				Для Каждого ЭлементНайденноеНазначение Из НайденныеНазначения Цикл
					НоваяСтрока = ЭлементОбъект.Назначение.Добавить();
					НоваяСтрока.ПолноеИмяОбъектаМетаданных = ЭлементНайденноеНазначение.ПолноеИмяОбъектаМетаданных;
				КонецЦикла;
					
			Иначе
					
                Попытка
                    усл = ПолноеНазначениеЗначение.НайтиСтроки(Новый Структура("ПолноеИмя", ЭлементЗаданноеНазначение)).Количество() > 0 //более свежие версии БСП
                Исключение
                    усл = ПолноеНазначениеЗначение.НайтиСтроки(Новый Структура("ПолноеИмяОбъектаМетаданных", ЭлементЗаданноеНазначение)).Количество() > 0; //более старые версии БСП
                КонецПопытки;
                Если усл Тогда
					НоваяСтрока = ЭлементОбъект.Назначение.Добавить();
					НоваяСтрока.ОбъектНазначения = Справочники.ИдентификаторыОбъектовМетаданных.НайтиПоРеквизиту("ПолноеИмя", ЭлементЗаданноеНазначение);
                КонецЕсли;
					
			КонецЕсли;
				
		КонецЦикла;
	КонецЕсли;
		
	ЭлементОбъект.Назначение.Свернуть("ОбъектНазначения");
	
	КомандыСохраненные = ЭлементОбъект.Команды.Выгрузить();
	
	ЭлементОбъект.Команды.Очистить();
	
	// Инициализация команд
	
	Для Каждого ЭлементОписаниеКоманды Из РегистрационныеДанные.Команды Цикл
		
		НоваяСтрока = ЭлементОбъект.Команды.Добавить();
		НоваяСтрока.Идентификатор	= ЭлементОписаниеКоманды.Идентификатор;
		НоваяСтрока.Представление	= ЭлементОписаниеКоманды.Представление;
		НоваяСтрока.Модификатор		= ЭлементОписаниеКоманды.Модификатор;
		НоваяСтрока.ПоказыватьОповещение = ЭлементОписаниеКоманды.ПоказыватьОповещение;
		
		Если ЭлементОписаниеКоманды.Использование = "ОткрытиеФормы" Тогда
			НоваяСтрока.ВариантЗапуска = Перечисления.СпособыВызоваДополнительныхОбработок.ОткрытиеФормы;
		ИначеЕсли ЭлементОписаниеКоманды.Использование = "ВызовКлиентскогоМетода" Тогда
			НоваяСтрока.ВариантЗапуска = Перечисления.СпособыВызоваДополнительныхОбработок.ВызовКлиентскогоМетода;
		ИначеЕсли ЭлементОписаниеКоманды.Использование = "ВызовСерверногоМетода" Тогда
			НоваяСтрока.ВариантЗапуска = Перечисления.СпособыВызоваДополнительныхОбработок.ВызовСерверногоМетода;
		Иначе
			ТекстСообщения = НСтр("ru = 'Для команды %1 не определен способ запуска.'");
			ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ЭлементОписаниеКоманды.Представление);
			ВызватьИсключение ТекстСообщения;
		КонецЕсли;
		
	КонецЦикла;
	Попытка
		ЭлементОбъект.Ответственный = ОбщегоНазначения.ТекущийПользователь();
	ИСключение
		ЭлементОбъект.Ответственный = Пользователи.ТекущийПользователь();
	КонецПопытки;
	
	ЭлементОбъект.Публикация = Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Используется;
	
	Попытка
		ЭлементОбъект.Записать();
		СсылкаНаЭлемент = ЭлементОбъект.Ссылка;
	Исключение
		НСтрока = НСтр("ru = 'Произошла ошибка при записи обработки.
							|Подробное описание ошибки: %1'");
		ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтрока,
								КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
		ВызватьИсключение ТекстСообщения;
		Возврат Ложь;
	КонецПопытки;
	
	Возврат Истина;
	
КонецФункции
Показать
162. maks_20 164 22.06.16 14:07 Сейчас в теме
По поводу ошибки безопасного режима. Если используется конструкция типа ВнешниеОбработки.Подключить(мАдресХранилища), то нужно изменить на ВнешниеОбработки.Подключить(мАдресХранилища,,ложь); - тогда ошибка уйдет.
163. medved577 1 06.07.16 15:56 Сейчас в теме
Ошибка инициализации модуля: ВнешняяОбработка.РеализацияТоваровУслуг_ВнешняяПечатная.МодульОбъекта
по причине:
{ВнешняяОбработка.РеализацияТоваровУслуг_ВнешняяПечатная.МодульОбъекта(784,2)}: Пропущен оператор препроцессора Область (Region)
#<<?>>КонецОбласти

Конфигурация УТ 11.1.10.185
164. Alex_E 2353 06.07.16 19:03 Сейчас в теме
Вот блин, если автор позволит, выложу рабочую версию конструктора в этом варианте...
165. medved577 1 06.07.16 19:57 Сейчас в теме
(164) Alex_E, а что нужно поменять? Автор походу забросил совсем обработку
166. Agema 06.07.16 22:28 Сейчас в теме
(164) Alex_E, выкладывайте, думаю, автор не будет против.
167. Alex_E 2353 07.07.16 04:18 Сейчас в теме
(166) Agema,
выкладывайте, думаю, автор не будет против.
- думаю лучше получть разрешение от автора))) Мало ли что мы можем думать...
169. Agema 07.07.16 21:49 Сейчас в теме
(167) Alex_E, поделитесь на почту, если не трудно, на agema2010_mail.ru
170. SeiOkami 3423 09.07.16 11:32 Сейчас в теме
(167) Alex_E, буду рад, если выложите версию, потому что я, к сожалению, закопан (
171. Alex_E 2353 09.07.16 11:57 Сейчас в теме
(170) раз Вы не против - конечно выложу...
168. medved577 1 07.07.16 11:53 Сейчас в теме
Ну или хотя бы блоками

С ошибкой разобрался, теперь бы понять как свой макет подцепить
172. Alex_E 2353 10.07.16 09:59 Сейчас в теме
174. German_Tagil 42 22.08.16 14:12 Сейчас в теме
Вопрос можно - данный конструктор будет работать на 1С КА 1.1?
а то тыкаюсь тыкаюсь и ничего .....
175. Alex_E 2353 22.08.16 17:59 Сейчас в теме
(174) German_Tagil, можно - файл прилагаю. КА 1.1.58.4 платформа 8.2.19.130. Но сделал http://infostart.ru/public/535969/
Прикрепленные файлы:
АвансовыйОтчет КА1.1(внешняя).epf
182. Muhin555 24 02.10.18 16:26 Сейчас в теме
Идея хорошая. Несколько раз пробывал, не получалось сразу - откладывал, в очередной раз наткнулся и все же решил разобраться. Не с первого раза получилось, но разобрался в обработке. И сразу же нашел недостатки..... Конфигурация "Комплексная автоматизация, редакция 1.1" не совсем похожа на бухгалтерию и в ней встречаются моменты, пример документ "УвольнениеИзОрганизаций":

Функция ПолучитьСтруктуруПечатныхФорм() Экспорт
СтруктураМакетов = Новый Структура;
СтруктураМакетов.Вставить("Т8а_от_5_1_2004", "Форма Т-8а");
СтруктураМакетов.Вставить("Т8_от_5_1_2004", "Форма Т-8");
Возврат СтруктураМакетов;
КонецФункции // ПолучитьСтруктуруПечатныхФорм()

Функция Печать(ИмяМакета, КоличествоЭкземпляров = 1, НаПринтер = Ложь) Экспорт
// Получить экземпляр документа на печать
Если Лев(ИмяМакета,3) = "Т8_" Тогда
ТабДокумент = ПечатьТ8(ИмяМакета);
ИначеЕсли Лев(ИмяМакета,3) = "Т8а" тогда
ТабДокумент = ПечатьТ8а(ИмяМакета);
КонецЕсли;
Возврат УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер, ОбщегоНазначения.СформироватьЗаголовокДокумента(ЭтотОбъект,"Увольнение из организации "));
КонецФункции // Печать()
Показать

Исходя из этого куска текста модуля обработка никак не сможет получить доступные макеты для печати при помощи
Координата = Найти(ОбрабатываемыйТекст, "ПолучитьМакет(");
и добавить их в ТЗ_ВыбранныеМакеты.
Думаю что для поиска макетов документа лучше использовать более стандартные методы типа
ДеревоМакетовПечати = УниверсальныеМеханизмы.ПолучитьДеревоМакетовПечати(Объект.Ссылка, СтруктураВнутреннихПечатныхФорм);
и не искать по модулю "ПолучитьМакет("
183. JohnConnor 64 30.10.18 06:19 Сейчас в теме
для УФ выдает кучу ошибок исправлять которые нет желания. Вот то же самое только без ошибок https://infostart.ru/public/535969/
184. kodblack 14 25.05.20 14:55 Сейчас в теме
проект работает?

Ни каких обновлений в вопросах.
Макеты шаблонов где будут храниться?
185. Kaspirovsky 215 02.04.21 14:20 Сейчас в теме
(184)
Ни каких обновлений в вопросах.

сейчас многие пф и отчеты обрабатываются в общих модулях, поэтому эти доработки придется латать вручную
188. apic 13 04.01.23 09:53 Сейчас в теме
Как этим пользоваться? Хоть бы инструкцию краткую написали. Судя по скриншотам, там только разбираться нужно несколько дней, а после того как разобрался, явно 5-10 минут будет не достаточно
Оставьте свое сообщение