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

Опубликовал SeiOkami в раздел Печать - Универсальные печатные формы

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

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

ВНИМАНИЕ: Это beta версия. Она на то и бета, чтобы работать через... в смысле плохо ^_^ Поэтому как только находите косяк (а вы его неприменно найдете ;) ), сообщайте, пожалуйста, в комментариях. И можно без нервов =)

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

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

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



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

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

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

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

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

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

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

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

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

 

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

Файлы

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

См. также

Лучшие комментарии

120. SeiOkami 01.04.2014 14:03
Прошу у всех прощения за то, что так давно не отзывался и не исправлял косяки обработки...
Думаю вернуться к разработке и построить все с нуля, но уже с заточенностью на последние релизы типовых и УФ. У меня такой вопрос. Есть ли кто-нить, кому бы пригодилось это? Стоит ли браться за разработку новой версии конструктора?
Ответили: (121) (122) (123) (125) (126) (133) (134) (148)
# Ответить
52. Zero_nv (файл скачал) 25.01.2013 11:49
Скачал, потратил Sm аобработка сразу выдает ошибку
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),"[\(\)\.\,\;\s=]"+имя+"[\(\)\.\,\;\s=]");
# Ответить
81. Yimaida (файл скачал) 11.09.2013 16:08
Виталий, пользуюсь Вашей обработкой как только появилась. Она мне реально помогает в разработке ВПФ. Укажите пожалуйста Ваш yandex кошелек, я бы хотел отблагодарить материально.
Ответили: (118)
# Ответить
84. dbolotin (файл скачал) 23.09.2013 15:56
Исправьте ошибку:
Форма.ОсновнаяФорма.Форма(62)}: Метод объекта не обнаружен (ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­)
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­(ВидОбработки);
Чтобы все работало корректно нужно прописать следующее:
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.НазначаемыеОбъектыМетаданныхПоВидуВнешнегоОбъекта(ЭлементОбъект.Вид);
Я это проверил на конфигурации Бухгалтерия предприятия 3.0.24.12. Открыл ВПФ сформированную вашей обработкой в конфигураторе и поменял. Очень хочу чтобы это делалось автоматом при формировании файла ВПФ.
Ответили: (89)
+ 2 [ pagiev; Abbra; ]
# Ответить
88. WolfKgn (файл скачал) 07.11.2013 23:08
(86) levante90, столкнулся с такой же проблемой. пока она решилась комментированием всех директив
&НаСервере

в модуле объекта
+ 2 [ alex5550; Lusha_28; ]
# Ответить

Комментарии

1. vertkov2010 (файл скачал) 19.11.2012 08:45
Идея очень хорошая. Но на версии 8.2.16.352 управляемое приложение не работает обработка
# Ответить
2. SeiOkami 19.11.2012 09:14
Забыл подписать, что НЕ ДЛЯ УФ
=)
Ну УФ я сделаю обработку, но позже. я еще не в курсах даже как там внешняя печатная устроена)
Ответили: (3) (37)
# Ответить
3. yku 19.11.2012 14:12
(2) На управляемых в большинстве случаев хватит одного шаблона ВПФ. Процедуры практически готовы для копирования-вставки. И наверное, создание конструктора имеет чисто спортивный интерес.
# Ответить
4. SeiOkami 19.11.2012 14:24
(3) Ну почему же. Так же будет полезна, как и для обычных типовых конфигураций.
К примеру для печати ЗаказаКлиенту в УТ 11 используются:

+ СформироватьПечатнуюФормуЗаказаКлиента
+ ПолучитьДанныеДляПечатнойФормыЗаказаКлиента
+ ЗаполнитьТабличныйДокументЗаказаКлиента
+ может чего то ещё =)

Легче же, когда обработка за тебя определит, какие функции и процедуры нужны, сама их вытянет, достанет макет, пропишет СведенияОВнешнейОбработке и прочую лабуду, да потом еще все в файл внешней печатной упакует и откроет в режиме предприятия для проверки =)
# Ответить
5. shatt (файл скачал) 19.11.2012 17:13
Огромное спасибо за обработку! Довольно часто встречающаяся задача.
Хотя ее знаючи и так можно сделать за пару минут, теперь можно сделать за пару секунд :)
Это здорово! +
# Ответить
6. Maxim2012 (файл скачал) 19.11.2012 23:58
(7) SeiOkami, интересно, а сколько уйдёт времени на создание конструктора ВПФ на УФ? Хотел для себя сделать наподобие этого, хотя, нет, лучше подожду...
# Ответить
7. SeiOkami 20.11.2012 09:17
Хорошенько подумав, я понял, что можно добавить пару мелочей в версию FINAL. как добавлю, обновлю публикацию (если вообще так делать можно, а то я не в курсах :) )
# Ответить
8. 26178@mail.ru (файл скачал) 20.11.2012 12:24
конструктор вещь интересная, надо попробовать,
# Ответить
9. vkr (файл скачал) 21.11.2012 12:51
Суровая штука... :)
В чем-то аналогична классическому Borland-овскому
Delphi/C++Builder-генератору собственных форм...
Жутко облегчает жизнь!
Спасибо!!!
Ответили: (36)
# Ответить
10. Lapitskiy (файл скачал) 21.11.2012 19:42
Мега-вещь!
Экономит время раз в 10!!!
Ответили: (33)
+ 1 [ Designer1C; ]
# Ответить
11. Isperator (файл скачал) 22.11.2012 00:21
Обработка вставляетв печатную форму печать организации?
Ответили: (12)
# Ответить
12. SeiOkami 22.11.2012 06:11
(11), она создана для переноса типовой печатной формы во внешнюю. Отредактировать макет, да и поработать с кодом можно и в конфигураторе. Я решил, что подобное будет лишним функционалом.
Ответили: (25)
# Ответить
13. chemezov (файл скачал) 22.11.2012 09:41
спасибо
# Ответить
14. Moll 23.11.2012 06:52
интересно будет попробовать, как натикают мани скачаю..
задача изменить печатную форму действительно часто встречается в работе, опробую, может и правда время "переделок" сократиться =]
благодарим за публикацию
# Ответить
15. SeiOkami 23.11.2012 23:02
Ну... Я говорил, что не буду больше развивать обработку... Но я солгал =)
Поэтому ждите новой версии, в которой будет много вкусностей ^_^
# Ответить
16. tehas (файл скачал) 26.11.2012 09:49
долгожданная финальная версия, сейчас обязательно за тестирую.
про управляемое приложение не забывай, будет вообще шикарно.
Спасибо!
Ответили: (17)
# Ответить
17. Новенький_2209 27.11.2012 21:58
(16) tehas, угу, очень интересно как там автор будет выкручиваться.

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

Я бы, на месте автора, сосредоточился не на рутинщине (это все рулится шаблонами), а на технологии отладки оных внешних обработок /печатных форм.
Ответили: (18)
# Ответить
18. SeiOkami 27.11.2012 22:06
(17) Новенький_2209,
В принципе можно разработать рабочую печатную и при помощи данной обработки, только для подключения к базе нужно прописать свои для УФ процедурки.

Я бы, на месте автора, сосредоточился не на рутинщине (это все рулится шаблонами), а на технологии отладки оных внешних обработок /печатных форм.

Вот этого я не сильно понял. Если отладка в режиме предприятия, то не зачем, ведь есть конфигуратор.
Ответили: (19)
# Ответить
19. Новенький_2209 27.11.2012 22:32
(18) ну дык вы внешнюю печатную форму то отладьте в конфигураторе. Любую возьмите внешнюю печатную форму, да поотлаживайте.

Потом расскажите, как там оно :)
Ответили: (20)
# Ответить
21. Новенький_2209 28.11.2012 09:30
(20) SeiOkami, я уже там писал, что к сожалению, не могу поставить минус за тот опус. Кстати, не сомневался, что именно эту ссылку вы и приведете. Т.е. отладить печатную форму нормальным способом, как это было в обычных формах, вы не знаете как. Именно поэтому я пишу:

Я бы, на месте автора, сосредоточился не на рутинщине (это все рулится шаблонами), а на технологии отладки оных внешних обработок /печатных форм.
# Ответить
22. KV1s (файл скачал) 28.11.2012 11:26
Спасибо.
Посмотрел на "Коллекция внешних печатных форм БП, УТ и ЗУП из 200шт" которая появилась в результате тестов.

я думаю в 1с так свои продукты не тестят.
Ответили: (23)
# Ответить
23. SeiOkami 28.11.2012 15:18
(22) А зря... =)
# Ответить
24. brrart (файл скачал) 29.11.2012 06:19
Плюсую ... полезная вещь!!!
# Ответить
25. Borisych (файл скачал) 29.11.2012 08:50
(12) SeiOkami, а обработка с авторегистрацией (для обычного режима)?
Ответили: (27)
# Ответить
27. SeiOkami 29.11.2012 12:16
(25) Borisych, не совсем понял вопрос )
(26) maxim305, а что хотите "подпилить" именно, если не секрет?) интересно, чего не хватает)
# Ответить
28. Maxis (файл скачал) 29.11.2012 12:29
Отличная работа! Особенно пригодится, когда нужна модифицированная форма, а конфигурацию при этом портить не хочется.
# Ответить
29. KliMich 02.12.2012 22:42
Однозначно плюс! Вот 1С-ники бы встроили что то подобное в 8.3 ...
# Ответить
30. SigmaMoscow (файл скачал) 04.12.2012 11:23
Добрый день. А как это работает? Может, я конечно совсем баран, ну не ругайте тогда...Скачал, открываю в УТ 10.3. Выбираю документ..ну пусть "реализация товаров". Ставлю "Основной режим". Никаких действий после этого не происходит..И что потом надо сделать? Пробовал и так и сяк..
Ответили: (31)
# Ответить
31. SeiOkami 04.12.2012 11:51
(30) SigmaMoscow, =)
Не настолько обработка крута) Необходимо скопировать модуль объекта документа из конфигуратора и вставить в обработку. Далее, выбрав "основную" функцию (которая получает таб.док, либо "Печать" ), действовать по ситуации )
Ответили: (35)
# Ответить
32. SigmaMoscow (файл скачал) 04.12.2012 11:54
Во, теперь понял. Внимательнее читать надо, прочитал через строчку - нажать три кнопки, и все будет..
Ща попробую..
Спасибо..
# Ответить
33. Zas1402 05.12.2012 18:56
(10) Lapitskiy,
# Ответить
34. Zas1402 05.12.2012 18:58
Мега-вещь!
Экономит время раз в 10!!! 

Согласен
# Ответить
35. AlexO 10.12.2012 23:30
(31) SeiOkami,
Необходимо скопировать модуль объекта документа из конфигуратора

вот и я задался вопросом, смотря картинки - каким образом автор выдирает код из конфы?
Оказалось, никаким :)
А... тогда также вручную все сделать? нельзя? :)
# Ответить
36. AlexO 10.12.2012 23:31
(9) vkr,
а чем она вам жизнь-то облегчила? :)
Вы не умели делать ВПФ? :)
Ответили: (40)
# Ответить
37. AlexO 10.12.2012 23:34
(2) SeiOkami,
так ради чего столько труда затрачено впустую? :)
Ответили: (38)
# Ответить
38. SeiOkami 10.12.2012 23:52
(37), обьяснять не имеет смысла. Коли она вам не пригодится - проходите мимо
Ответили: (39) (44)
# Ответить
39. AlexO 11.12.2012 00:03
(38) SeiOkami,
вы затратили усилий не меньше (в эквиваленте выделенного тепла), чем на создание правильного партионного учета, но создали отнюдь не обработку и исправление партионного учета :)
# Ответить
40. vkr (файл скачал) 12.12.2012 07:34
(36) Не надо было, потому и не занимался. Потом научился... Что тут странного? :)
Вот, к слову, еще меня 1С-овский обмен данными достал в свое время.
Пришлось свой (через DBF) написать - и сам не жалею, и коллегам - польза... :)
Сейчас доделываю версию обмена для 8.2 - тоже нормальненько получается.
Поэтому Вы зря удивляетесь... :)
+ 1 [ chemezov; ]
# Ответить
41. oxana1 (файл скачал) 19.12.2012 14:12
написано, что платформа любая, а в 8.1 не открывается(
Ответили: (42)
# Ответить
42. elenko1 (файл скачал) 20.12.2012 22:48
(41) oxana1, да, если обработка сделана на платформе 8.2, то на 8.1 не сконвертируется.
# Ответить
43. Yimaida (файл скачал) 21.12.2012 13:59
Вещь полезная. Я с ходу создал шаблон ВПФ, которую потом допилил. На создание шаблона ушло 5 минут. Огромное спасибо. Польза очевидна. В создании ВПФ много мороки, а тут почти все делает обработка. Еще раз +
# Ответить
44. Maxim2012 (файл скачал) 27.12.2012 00:29
(38) SeiOkami, когда будет готова обработка для управляемого приложения?
# Ответить
45. SeiOkami 02.01.2013 15:50
Почти готов Конструктор ВПФ с поддержкой УФ. Переписывал обработку заново (в который раз) и сильно помучился с заточкой модуля под управляемую форму (никогда не работал с УФ). Обработка уже формирует файл ВПФ, вот только может кто нить подсказать статейку про структуру ВПФ для подключения? Выходной файл сейчас работает, но не подключается. Буду копаться и искать, но может кто ссылку кинет =)
# Ответить
46. SeiOkami 05.01.2013 23:31
Вышла новая версия с поддержкой УФ. Надеюсь, что понравится =)
Ответили: (47)
# Ответить
47. Yimaida (файл скачал) 11.01.2013 21:27
(46) SeiOkami, Опробовал я новую версию. Сделал ВПФ для заказа в УТ 11. Одна просьба, добавить опционально вариант размещения макета. Сейчас он тянется из документа. А хотелось бы иметь возможность править его в обработке.
Спасибо за развитие проекта.
# Ответить
48. GerHard (файл скачал) 16.01.2013 02:00
Вот очень красиво. Хорошая штука. Но интуитивна не до конца.
Ещё бы чуть чуть подсказочек и кусочек описания под F1...
# Ответить
49. necus 16.01.2013 02:15
да вещь нужная но хелпп бы не помешал.
# Ответить
50. zharkov.ss 17.01.2013 00:43
Автору огромный респект! Сам я внешние формы пока не научился делать, а с Конструктор внешних печатных форм сразу получилась готовая обработка, которую чуть-чуть допилю и в работу! Для начинающих и администраторов в самый раз! Большое спасибо! Обязательно ждем продолжения проекта.
# Ответить
51. Andry.Boris (файл скачал) 21.01.2013 01:37
Хорошая работа, но нужна ХОРОШАЯ ИНСТРУКЦИЯ!!!
Попробовал использовать не получилось... к сожалению...
Воспользовался ссылкой на "шаблоны для создания внешних печатных форм с авторегистрацией (3.0.1.1)"
через 2 мин была готова ВПФ...
вот так...
# Ответить
52. Zero_nv (файл скачал) 25.01.2013 11:49
Скачал, потратил Sm аобработка сразу выдает ошибку
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),"[\(\)\.\,\;\s=]"+имя+"[\(\)\.\,\;\s=]");
# Ответить
53. SeiOkami 25.01.2013 12:29
гляну, однако впервые слышу. Ни у кого такого еще не было
# Ответить
54. Zero_nv (файл скачал) 25.01.2013 12:36
Ошибка возникает если запускаешь в клиент-серверном варианте. Если база файловая, то все нормально
# Ответить
55. glorx (файл скачал) 31.01.2013 14:38
А где бы инструкцию глянуть? А то была, ты видно перезалил
# Ответить
56. Alister (файл скачал) 09.02.2013 22:09
Большое спасибо за обработку - очень помогает в работе.
# Ответить
57. SeiOkami 09.02.2013 22:20
Как будет время - возьмусь за переработку работы в УФ и напишу инструкцию... как будет время )
# Ответить
58. Alister (файл скачал) 10.02.2013 00:26
В принципе, кроме первоначальной вставки текста модуля объекта, все остальное достаточно понятно и прозрачно :)
# Ответить
59. iov (файл скачал) 25.02.2013 18:12
(0) сразу выдает ошибку
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),"[\(\)\.\,\;\s=]"+имя+"[\(\)\.\,\;\s=]");
Ответили: (60)
# Ответить
60. SeiOkami 25.02.2013 18:17
(59) iov, да, уже об этом косяке слышал... Обработка не тестилась в клиент-серверном режиме. у меня все базы файловые. извиняюсь, никак руки не дойдут =)
Ответили: (61)
# Ответить
61. iov (файл скачал) 25.02.2013 18:21
(60) Да ну ты брось - тебе спасибо такая помогалка... Вот только справку бы. А то вот определения параметров передаваемых в процедуру - под конец дня не могу понять что это ...
Ответили: (62)
# Ответить
62. SeiOkami 25.02.2013 18:26
(61) iov, смотри, когда ты выбрал основную функцию, то, если в она требует передачу в нее параметра, то его значение нужно указать там.

К примеру, функция "ПечатьАкта(ТипМакета)".
В таблице параметров появится ТипМакета. Что туда передать - это уже нужно смотреть по процедуре. К примеру "Акт".
Ответили: (63) (70) (84) (97)
# Ответить
63. iov (файл скачал) 25.02.2013 18:31
(62) Да спасиб я немного разобрался... справочка не помешала бы все равно... в любом случае плюс в карму...
Ответили: (64)
# Ответить
64. iov (файл скачал) 25.02.2013 18:34
(63) НЕ ОШИБКА ОБРАБОТКИ.

{ВнешняяОбработка.СчетФактураВыданный_ВнешняяПечатная.МодульОбъекта(100)}: Ошибка при вызове метода контекста (ЗадатьОбластьПечатиДокумента)
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабДокумент, НомерСтрокиНачало, ОбъектыПечати, Ссылка);
по причине:
Попытка передачи с клиента на сервер мутабельного значения 1-го параметра метода ЗадатьОбластьПечатиДокумента ().

Это вот так в конфе КА счет фактура выданная формируется.
# Ответить
65. cmd_vasec (файл скачал) 01.03.2013 12:16
Где можно посмотреть инструкцию?
# Ответить
66. AndrewUs (файл скачал) 01.03.2013 12:44
Обработка, безусловно хороша, но когда я ею воспользовался, возникла проблема и пришлось дописывать недостающую функцию. Может я что-то не так сделал? Инструкция была бы кстати :)
# Ответить
67. elenko1 (файл скачал) 05.03.2013 11:24
А я тоже ищу инструкцию, и что-то пока не обнаружила %) пошла умыла глаза - не помогло))))))))
Мне кажется, раньше было объяснение, как пользоваться. А пока приспичило сделать - уже не могу найти, что же там откуда куда копировать... %)
# Ответить
68. MrDemo 10.03.2013 23:48
вроде тут есть не знаю Ваш или нет http://1clancer.ru/article/sozdanie_vpf_za_5_minut_684§ion=1
Ответили: (69)
# Ответить
69. SeiOkami 12.03.2013 12:57
(68), спасибо за ссыль. Нет, не моя) поговорил с автором статьи - размещу ее в публикации )
# Ответить
70. I2020 (файл скачал) 13.05.2013 18:36
{Форма.ОсновнаяФорма.Форма(62)}: Метод объекта не обнаружен (ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­)
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­(ВидОбработки);
# Ответить
71. alekseies 22.05.2013 09:19
та жеошибка
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),"[\(\)\.\,\;\s=]"+имя+"[\(\)\.\,\;\s=]");
Ответили: (75)
# Ответить
72. Светлый ум (файл скачал) 31.05.2013 04:52
Еще бы аналогичный механизм по созданию "внешних обработок заполнения ТЧ", вообще красота была бы. Не было идей или набросков как реализовать?
# Ответить
73. POLGA (файл скачал) 17.06.2013 12:29
Спасибо! Работает! Очень пригодилась.
# Ответить
74. GerHard (файл скачал) 25.06.2013 18:59
Ну вот и я эту штуку проверил. Комплексная 1.1.33.3 - работает.
Управляется почти интуитивно... В новой версии то помощь по кнопке Ф1 есть?
Спасибо автору за избавление от муторной работы.
# Ответить
75. Franchiser (файл скачал) 12.07.2013 15:38
(71) Если запускаешь в толстом клиенте то убери все директивы компиляции &НаКлиенте и &НаСервере. Это кажется произошло из-за того что 1с изменила режим совместимости в типовых конфигурациях.
# Ответить
76. makas (файл скачал) 22.07.2013 12:10
Ошибка в БП 2.0.49

{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),"[\(\)\.\,\;\s=]"+имя+"[\(\)\.\,\;\s=]");
# Ответить
77. logdog 24.07.2013 19:02
Не думал, что будет так просто.
Благодарю!!!
# Ответить
78. veluga (файл скачал) 02.08.2013 11:56
Идея хорошая, пока не совсем разобрался как работает, и что надо сделать, но автору респект!

Однако не создаются((
При попытке добавить как внешнюю (конфигурация УТ 11.1) ругается что не определена переменная ПараметрыПечати
Буду признателен, если подскажите где копать
# Ответить
79. Aleksey81 (файл скачал) 16.08.2013 19:51
Спасибо. Добротно сделал!
# Ответить
80. Strannik99 22.08.2013 21:12
Огромное Вам Виталий человеческое спасибо!!!
ручками сделанная ВПФ работала, но вот не задача никак не мог добиться что бы при просмотре была возможность редактирования даты документа,защиту с ячейки в шаблоне снимал, но бес толку. Так и осталось загадкой для меня.
Сделанная вашим конструктором ВПФ без проблем всё редактируется.
# Ответить
81. Yimaida (файл скачал) 11.09.2013 16:08
Виталий, пользуюсь Вашей обработкой как только появилась. Она мне реально помогает в разработке ВПФ. Укажите пожалуйста Ваш yandex кошелек, я бы хотел отблагодарить материально.
Ответили: (118)
# Ответить
82. BTRVODKA (файл скачал) 15.09.2013 04:47
Спасибо автору за публикацию!
# Ответить
83. AnryMc (файл скачал) 19.09.2013 08:12
Может стоит добавить в сгенерированную ВПФ "защиту от дурака"
Если ЗначениеЗаполнено(СсылкаНаОбъект) Тогда
...


а то в форме, если не выбрана ссылка и нажать кнопки действий - "ругань" сыпется...
# Ответить
84. dbolotin (файл скачал) 23.09.2013 15:56
Исправьте ошибку:
Форма.ОсновнаяФорма.Форма(62)}: Метод объекта не обнаружен (ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­)
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­(ВидОбработки);
Чтобы все работало корректно нужно прописать следующее:
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.НазначаемыеОбъектыМетаданныхПоВидуВнешнегоОбъекта(ЭлементОбъект.Вид);
Я это проверил на конфигурации Бухгалтерия предприятия 3.0.24.12. Открыл ВПФ сформированную вашей обработкой в конфигураторе и поменял. Очень хочу чтобы это делалось автоматом при формировании файла ВПФ.
Ответили: (89)
+ 2 [ pagiev; Abbra; ]
# Ответить
85. ArBus 25.10.2013 19:07
Мне очень понравилась данная обработка! Виталий, дальнейшее развитие данной темы предусмотрено? Доработкой вашего детища будете заниматься???
# Ответить
86. levante90 (файл скачал) 01.11.2013 07:28
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
				рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),"[\(\)\.\,\;\s=]"+имя+"[\(\)\.\,\;\s=]");


При открытии в УПП
Ответили: (88)
# Ответить
87. kovaleks78 01.11.2013 07:31
Обработка супер! Спасибо!
# Ответить
88. WolfKgn (файл скачал) 07.11.2013 23:08
(86) levante90, столкнулся с такой же проблемой. пока она решилась комментированием всех директив
&НаСервере

в модуле объекта
+ 2 [ alex5550; Lusha_28; ]
# Ответить
89. Alex_E (файл скачал) 11.11.2013 13:55
(84) Столкнулся с такой же ошибкой, исправил правда так:
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьВидОбработкиПоСтроковомуПредставлениюВида(РегистрационныеДанные.Вид);

но суть дела это не меняет.

Пришлось закомментарить (строка 75)
//Если ПолноеНазначениеЗначение.НайтиСтроки(Новый Структура("ПолноеИмяОбъектаМетаданных", ЭлементЗаданноеНазначение)).Количество() > 0 Тогда 
     СписокОграниченияТипа.Добавить(ЭлементЗаданноеНазначение);
//КонецЕсли;              

выдает ошибку.

А так автору ПОЛНЫЙ РЕСПЕКТ И УВАЖУХА - красиво сделано и экономит кучу времени.

(тренировался на БГУ 2.0, три ВПФ за 10 минут)

Досадно, что автомат не получается для "хитрых" ВПФ, например на раз сделать УПД для БП 3.0 не получилось...
Ответили: (95)
# Ответить
90. antosha (файл скачал) 20.11.2013 15:29
оното всё интересно но как с ней работать где брать инструкцию - нахрапом взять не получилось - валит неимоверное количество ошибок на каждом шаге...видимо я чтото не так делаю...
# Ответить
91. xenia_b 29.11.2013 15:16
Большое спасибо за обработку. Очень облегчает работу над внешними печатными формами.
# Ответить
92. NittenRenegade (файл скачал) 18.12.2013 08:42
Шикартная штука! Автор, респектос за обработку.
# Ответить
93. Alex1Cnic (файл скачал) 27.12.2013 09:08
Мега респект!
# Ответить
94. Alex1Cnic (файл скачал) 27.12.2013 10:04
Проверил на УПП и нашел баг: проблема с макетами на закладке "Макеты" в колонке "имя макета" пишет "мяМакет" а вколонке Расположение - "Документы.СправкаОЗаработкеДляРасчетаПособий.ПолучитьМакет("мяМакет")"
# Ответить
95. 1cmax (файл скачал) 08.01.2014 17:24
(89) Alex_E, 1c переименовали метод
НазначаемыеОбъектыМетаданныхПоВидуВнешнегоОбъекта
и другие изменения были

например

Процедура УстановитьОграниченияТипа()
	
	Попытка
		РегистрационныеДанные = ЭтотОбъект().СведенияОВнешнейОбработке();
	Исключение
		ОбщегоНазначенияКлиентСервер.СообщитьПользователю(
				НСтр("ru = 'Возможно, обработка (отчет) устарела или не является дополнительной:'")
					+ КраткоеПредставлениеОшибки(ИнформацияОбОшибке()));
		Возврат;
	КонецПопытки;
	
	//Установим заголовок формы
	ЭтаФорма.Заголовок = "Отладка внешних печатных форм: " + РегистрационныеДанные.Наименование;
	
	ВидОбработки = Перечисления.ВидыДополнительныхОтчетовИОбработок[РегистрационныеДанные.Вид];
	//Изменено: maxval 08.01.2014
	//ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.НазначаемыеОбъектыМетаданныхПоВидуВнешнегоОбъекта(ВидОбработки);
	//---- Заменено на: ----
	Если Объект.СтараяВерсия Тогда   
		ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­(ВидОбработки);
	Иначе
		ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.НазначаемыеОбъектыМетаданныхПоВидуВнешнегоОбъекта(ВидОбработки);			
	КонецЕсли;  
	/// maxval 08.01.2014
...Показать Скрыть



и

Функция ЗарегистрироватьОбработкуВИнформационнойБазеНаСервере(РежимИспользования = "", СсылкаНаЭлемент = Неопределено)

	//Регистрируем обработку в информационной базе
	.......
	
	//{{Начало изменений: maxval:
	СтараяВерсия = Объект.СтараяВерсия;
	//}}Конец изменений: maxval.
	
	
	// Если новая обработка или не заполнено назначение - устанавливаем назначение из обработки
	Если (ЭлементОбъект.Ссылка = Справочники.ДополнительныеОтчетыИОбработки.ПустаяСсылка()
		 ИЛИ ЭлементОбъект.Назначение.Количество() = 0)
		И (ЭлементОбъект.Вид = Перечисления.ВидыДополнительныхОтчетовИОбработок.ЗаполнениеОбъекта
			ИЛИ ЭлементОбъект.Вид = Перечисления.ВидыДополнительныхОтчетовИОбработок.Отчет
			ИЛИ ЭлементОбъект.Вид = Перечисления.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма
			ИЛИ ЭлементОбъект.Вид = Перечисления.ВидыДополнительныхОтчетовИОбработок.СозданиеСвязанныхОбъектов)
		 ТОГДА
		
		ЭлементОбъект.ИспользоватьДляФормыОбъекта = Истина;
		ЭлементОбъект.ИспользоватьДляФормыСписка = Истина;
		
		//{{Начало изменений: maxval:
		Если СтараяВерсия Тогда   
			ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­(ЭлементОбъект.Вид);
		Иначе
			ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.НазначаемыеОбъектыМетаданныхПоВидуВнешнегоОбъекта(ЭлементОбъект.Вид);			
		КонецЕсли;  
		//}}Конец изменений: maxval.
		
		
		Если РегистрационныеДанные.Свойство("Назначение") Тогда
			
			Для Каждого ЭлементЗаданноеНазначение Из РегистрационныеДанные.Назначение Цикл
				
				РазделеннаяСтрока = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ЭлементЗаданноеНазначение, ".");
				
				Если РазделеннаяСтрока[1] = "*" Тогда
					
					НайденныеНазначения = ПолноеНазначениеЗначение.НайтиСтроки(Новый Структура("Класс", РазделеннаяСтрока[0]));
					
					Для Каждого ЭлементНайденноеНазначение Из НайденныеНазначения Цикл
						НоваяСтрока = ЭлементОбъект.Назначение.Добавить();
						НоваяСтрока.ПолноеИмяОбъектаМетаданных = ЭлементНайденноеНазначение.ПолноеИмяОбъектаМетаданных;
					КонецЦикла;
					
				Иначе  					
						Если ПолноеНазначениеЗначение.НайтиСтроки(Новый Структура("ПолноеИмяОбъектаМетаданных", ЭлементЗаданноеНазначение)).Количество() > 0 Тогда
							НоваяСтрока = ЭлементОбъект.Назначение.Добавить();
							//{{Начало изменений: maxval:
							Если СтараяВерсия Тогда
								НоваяСтрока.ПолноеИмяОбъектаМетаданных = ЭлементЗаданноеНазначение;  
							Иначе
								ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ЭлементЗаданноеНазначение);
								Если ОбъектМетаданных = Неопределено Тогда
									Продолжить;
								КонецЕсли;		
								НоваяСтрока.ОбъектНазначения = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ОбъектМетаданных);
							КонецЕсли; 								
							//}}Конец изменений: maxval. 
						КонецЕсли;					
				КонецЕсли;
				
			КонецЦикла;
		КонецЕсли;
		
		//Изменено: maxval 08.01.2014
		//ЭлементОбъект.Назначение.Свернуть("ПолноеИмяОбъектаМетаданных", "");
		//---- Заменено на: ----
		Если СтараяВерсия Тогда
			ЭлементОбъект.Назначение.Свернуть("ПолноеИмяОбъектаМетаданных", "");
		Иначе
			ЭлементОбъект.Назначение.Свернуть("ОбъектНазначения", "");
		КонецЕсли;  
		/// maxval 08.01.2014
		
	КонецЕсли;
...Показать Скрыть
# Ответить
96. popov_i 03.02.2014 00:37
Обработка очень актуальна на данный момент. Очень жду развитие данной темы и функционала обработки.
# Ответить
97. TorLink (файл скачал) 03.02.2014 19:06
Идея конечно зачет, Спасибо. Но пользоваться не получается. Инструкцию бы коротенькую. Нужна доверенность сделать, открыл, выбрал док, понажимал по очереди на кнопочки, потом в конфигураторе добавил макет. При открытии в предприятии ругается
{Форма.ОсновнаяФорма.Форма(62)}: Метод объекта не обнаружен (ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки)
	ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки­(ВидОбработки);
Ответили: (102)
# Ответить
98. sword444 04.02.2014 20:53
Вываливается такая ошибка, в чем косяк
{ВнешняяОбработка.Счет_ВнешняяПечатная.МодульОбъекта(22,14)}: Переменная не определена (Счет)
ИмяМакета = <<?>>Счет; (Проверка: Толстый клиент (обычное приложение))
Ответили: (100)
# Ответить
99. treblinka (файл скачал) 19.02.2014 13:18
при создании ВПФ "ЗаказКлиента"

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

куда копать? откуда берётся "ПараметрыПечати"
Ответили: (101)
# Ответить
100. treblinka (файл скачал) 19.02.2014 13:20
(98) sword444,
попробуй из-под управляемого запустить
# Ответить
101. Bukaska 19.02.2014 13:28
(99) treblinka, Где открывали? В обычном приложении или в Управляемом приложении? Откройте в последнем
Ответили: (103)
# Ответить
102. treblinka (файл скачал) 19.02.2014 13:29
(97) TorLink,

ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьВидОбработкиПоСтроковомуПредставлениюВида(ВидОбработки);
# Ответить
103. treblinka (файл скачал) 19.02.2014 13:32
(101) Bukaska,
при автоматическом формировании вместо
"Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт"
получается
"Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт"
добавил "ПараметрыПечати", вроде проскочило, но дальше отлавливаю стопы
Ответили: (104)
# Ответить
104. Bukaska 19.02.2014 13:50
(103) treblinka, По мне так если вам не нужны параметры печати, можно убрать их из процедуры, и будет работать без них...
Самые как воздух нужные(это как раз остальные четверо)
А так у вас наверное функция формирования печатной формы идет с параметрами печати, вот и функция печать - тоже их требует.. все взаимосвязано))))
Ответили: (105)
# Ответить
105. treblinka (файл скачал) 19.02.2014 14:09
(104) Bukaska,
логично, это я понял уже, спасибо
# Ответить
106. alxarz (файл скачал) 20.02.2014 12:22
выдает ошибку при открытии

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

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

Выдаёт при запуске!!!
Ответили: (111)
# Ответить
110. Bortkevich (файл скачал) 04.03.2014 07:42
Спасибо конечно, но я не понял как её пользоваться. Открываю БП 2.0.54.1 Открываю обработку, выбираю документ "Реализация т и У" И что дальше. Активны только кнопка вставить и построить дерево. Нажимаем вставить, ничего не происходит, нажимаем построить дерево говорит вставьте текст.
Ответили: (111)
# Ответить
111. Cartman 12.03.2014 08:15
(109), открывайте обработку в файловой базе. В клиентсерверном варианте такая бяка. Выше писали уже.

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

А я вот продолбался с формой универсальный передаточный документ для УТ 10.3, но так и не смог сделать ее внешней.
У кого получилось - поделитесь опытом. Ну или формой в личку.
Ответили: (112) (113)
# Ответить
112. arteast (файл скачал) 18.03.2014 22:47
(111) Cartman, а в чём собственно возникла проблема?
Ответили: (114)
# Ответить
113. Alex_E (файл скачал) 19.03.2014 23:27
(111) Cartman,
надо вставить туда текст модуля документа
- уточню - модуль менеджера, а не документа (объекта).
Ответили: (114)
# Ответить
114. Cartman 20.03.2014 09:43
(112) arteast, детально не разбирался. Судя по всему из за того что его печать почти полностью вынесена в общий модуль.

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

P.S. Написал первый пост потому что как то не довелось использовать эту обработку в обычном приложении.....
Ответили: (116)
+ 1 [ Cartman; ]
# Ответить
116. Cartman 20.03.2014 18:19
(115) Alex_E, а, вот оно что :)
Я как раз только под обычные формы ее пользовал и вот собирался под управляемые попробовать.
Спасибо за уточнения.
# Ответить
117. AlexKoso (файл скачал) 21.03.2014 08:52
Автор! Есть подозрения что ты не предусмотрел данную траблу: http://infostart.ru/public/263289/
из-за которой в последних релизах Бухгалтерии 3.0 выскакивает ошибка при запуске.

"...в новой версии конфигурации убрана совместимость с 8.2. А реквизит управляемой формы "ЭтотОбъект" появился как раз в 8.3. Так что советую все переменные "ЭтотОбъект" в модулях форм своих обработок переименовать..."
# Ответить
118. NOVOHUDONOSO (файл скачал) 27.03.2014 17:40
Классная идея.Хотелось бы чтобы довели ее до конца.
При попытке компиляции выдает ошибку:
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(81)}: Ошибка при вызове метода контекста (Run)
WshShell.Run(СтрокаЗапуска, 0, Истина);
по причине:
Произошла исключительная ситуация (0x80070005)

БП 3.0.30.16
# Ответить
119. DuplexAlex (файл скачал) 31.03.2014 18:10
Ну управляемом приложении УТ 11 не запускается?
# Ответить
120. SeiOkami 01.04.2014 14:03
Прошу у всех прощения за то, что так давно не отзывался и не исправлял косяки обработки...
Думаю вернуться к разработке и построить все с нуля, но уже с заточенностью на последние релизы типовых и УФ. У меня такой вопрос. Есть ли кто-нить, кому бы пригодилось это? Стоит ли браться за разработку новой версии конструктора?
Ответили: (121) (122) (123) (125) (126) (133) (134) (148)
# Ответить
121. Alex_E (файл скачал) 01.04.2014 14:04
(120) SeiOkami, ДАААААА!!!!!
# Ответить
122. Cartman 01.04.2014 14:50
(120) SeiOkami, да конечно. И есть уже пожелание.
Хотелось бы чтобы печатную форму одного документа можно было использовать в другом. Ну, понятно, я не про авторегистрацию.
Ну и это, можно грабить корованы :)
# Ответить
123. AlexKoso (файл скачал) 16.04.2014 20:29
(120) SeiOkami, чувак, ты с ума сошел, такое спрашивать :) я кому показывал - все в шоке. Пусть сколь угодно скорострельные кодеры говорят о том что они и так делают минут за 5, незнаю. Бывают моменты когда уходит минут по 20, 30. С заменой всех переменных, отладкой и прочего.
P.S. И как феерично я на спор сделал с помощью нее ВПФ для управляемой БП 3.0, за минуту, незная на тот момент управляемого интерфейса.
# Ответить
125. the1 (файл скачал) 30.04.2014 10:54
(120) SeiOkami, Конечно! Обработка очень полезная!
# Ответить
126. БизнесРешение (файл скачал) 15.05.2014 10:45
(120) SeiOkami, Да!!!! Одна из лучших обработок!!! Допилить под УФ и будет просто шикааарно!!!!!! Ты молодец!!!
# Ответить
127. evg_m 26.05.2014 15:04
Не создается код внешней печатной формы. В древе процедур выходит только процедура _РазделОператоров_!! и все!
# Ответить
128. Algiz 29.05.2014 01:20
Спасибо, потестим
# Ответить
129. sypata1 (файл скачал) 09.09.2014 18:39
Управление торговлей, редакция 11.1 (11.1.5.16)
Ответили: (130)
# Ответить
130. AnryMc (файл скачал) 11.09.2014 17:25
(129) sypata1,
Управление торговлей, редакция 11.1 (11.1.5.16)


А это к чему?
# Ответить
131. Quasar09 (файл скачал) 23.12.2014 11:23
При попытке сохранить файл выдает ошибку:

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

Что с этим делать?
# Ответить
132. Alex1Cnic (файл скачал) 22.01.2015 09:57
Буду очень рад новым версиям под УФ!!!!!
# Ответить
133. craftytigra 04.02.2015 11:36
(120) SeiOkami, БП ред 3.0.37.37 открывается только в обычном приложении. И когда создаю внешнюю не добавляет её. Не открывается макет. А так очень хорошая.
# Ответить
134. AlexO 04.02.2015 15:31
(120) SeiOkami, Я вот не понял -
Версия NEW beta=)
(это с 2012-го года).
Ну ладно. Бета и бета, человек бросил заниматься.
Но это-то что такое?
Думаю вернуться к разработке и построить все с нуля, но уже с заточенностью на последние релизы типовых и УФ.
Т.е. недопиленное ломаем и заново переделывать? ))
И почему "с заточенностью на последние релизы типовых и УФ" - уж делать, так универсальный, что ли.
В общем, и сейчас много непонятного ))
# Ответить
135. craftytigra 26.03.2015 10:06
При загрузке на 1С:Предприятие 8.3 (8.3.5.1460) Бухгалтерия предприятия, редакция 3.0 (3.0.39.50) Выходит Ошибка "{Форма.ФормаУправляемая.Форма(320)}: Поле объекта недоступно для записи (ЭтотОбъект)
ЭтотОбъект = РеквизитФормыВЗначение("Объект");"
Ответили: (137)

Прикрепленные файлы:

2015-03-26 12_16_57-Демонстрационная база _ Любимов Валерий Юрьевич _ Бухгалтерия предприятия, редак.jpg
2015-03-26 12_17_25-Демонстрационная база _ Любимов Валерий Юрьевич _ Бухгалтерия предприятия, редак.jpg
# Ответить
136. Agema 07.05.2015 02:43
Спасибо огромное!!!
Первый раз делал ВПФ. Сначала по шагам из статей, но в конфигурации ЗиКБУ не было типовой формы, а встроенная в документ, да еще и с кучей параметров передаваемых.
Помучился пару часов, но получилось так как требовалось.
# Ответить
137. NittenRenegade (файл скачал) 28.05.2015 14:05
(135) craftytigra, поправил обработку немного, пробовал только в Бухгалтерия предприятия, редакция 3.0 (3.0.39.58). Кому нужно - пишите в личку, если обработку вы качали - отправлю правленую версию
Ответили: (145)
# Ответить
138. ughunter 11.06.2015 22:35
ТП 8.3.6.2014 ERP 2.0.10.145
сразу же при открытии - Поле объекта недоступно для записи (ЭтотОбъект)
# Ответить
139. hanio (файл скачал) 22.06.2015 23:07
У меня такая же ошибка в БП 3.0 что у 138 поста
Ответили: (140)
# Ответить
140. Alex_E (файл скачал) 23.06.2015 00:41
138. ughunter, (139) hanio, Уже неколько раз говорили - переименуйте "ЭтотОбъект" во что то другое - назовите "ОбработкаОбъект" или ЭтаХрень. После этого увидите вторую ошибку - полистайте топик назад - там всё описано и ошибки и исправления...

Или просто зарегистрируйте ВПФ в базе и пробуйте штатно. Не работает форма для отлападки, сама печатаная форма должна работать...
Ответили: (143)
+ 1 [ NittenRenegade; ]
# Ответить
141. NittenRenegade (файл скачал) 23.06.2015 15:02
Учитесь пользоваться отладчиком, господа!
# Ответить
142. ewmarisha (файл скачал) 04.07.2015 16:21
Не могу открыть обработку. Сразу выдает ошибку и не открывается.
{Форма.ФормаУправляемая.Форма(320)}: Поле объекта недоступно для записи (ЭтотОбъект)
ЭтотОбъект = РеквизитФормыВЗначение("Объект");
Ответили: (143)
# Ответить
143. Alex_E (файл скачал) 04.07.2015 22:00
(142) ewmarisha, Вот прикол, только что спрашивали, причём с стотыщьдвацатьтретий раз, посмотрите (140)
# Ответить
144. progr-2008 04.07.2015 22:27
Для УПП 1.3 и БП 3.0 работает без проблем?
# Ответить
145. ewmarisha (файл скачал) 05.07.2015 07:35
(137) NittenRenegade, Можно мне исправленную версию. Сама я не исправлю, я не программист.
# Ответить
146. progr-2008 05.07.2015 10:04
Может, кто уже поработал с этим конструктором, выложит свою исправленную версию?
Было бы очень полезно многим.
# Ответить
147. Designer1C (файл скачал) 12.10.2015 13:47
Удобная вещь ! Спасибо за помощь !
# Ответить
148. DimD2 14.12.2015 07:42
Огромный респект ТС
Дальнейшая заточка под УФ, будет принята с восторгом!(120) SeiOkami,
# Ответить
149. mort64ram (файл скачал) 12.01.2016 04:23
Не смог проверить, на управляемых формах в УТ при открытии
{Форма.ФормаУправляемая.Форма(320)}: Поле объекта недоступно для записи (ЭтотОбъект)
ЭтотОбъект = РеквизитФормыВЗначение("Объект");

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

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

Пытаюсь сделать внешнюю форму счета на оплату для Бух.3,0, свежую
Здесь поискал, многие не работают из за изменений фирмы 1С
Ответили: (157) (158)
# Ответить
157. Alex_E (файл скачал) 30.03.2016 17:12
(156) Adoms, Этот бблок для регистрации ВПФ кнопкой на форме, если не впротык совсем - комментарьте всё нафиг - и регистрируйте вручную
Ответили: (158) (159)
# Ответить
158. Alex_E (файл скачал) 30.03.2016 17:15
(156) Adoms, + к (157), а так, исправленный полный код функции вот:
&НаСервере
Функция ЗарегистрироватьОбработкуВИнформационнойБазеНаСервере(РежимИспользования = "", СсылкаНаЭлемент = Неопределено)

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

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

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

вот это вроде работает...
Ответили: (161)
+ 1 [ Adoms; ]
# Ответить
161. Adoms (файл скачал) 31.03.2016 09:16
(160) Alex_E, Да, все работает!
Ребята, если делаете внешний счет на оплату для Бух.3.0 меняйте две процедуры на те, которые опубликовал Alex_E и рабочая внешняя форма счета у Вас. Спасибо!
# Ответить
Внимание! За постинг в данном форуме $m не начисляются.
Внимание! Для написания сообщения необходимо авторизоваться
Текст сообщения*
Прикрепить файл