"Конструктор внешних печатных форм" максимально автоматизирует процесс создания внешних печатных форм на основе типовых. Создание внешней печатной формы займет от секунд до пары минут!
Теперь и на управляемых приложениях =)
Это новая версия Конструктора ВПФ. В ней исправлены старые косяки и добавлены новые =)
ВНИМАНИЕ: Это beta версия. Она на то и бета, чтобы работать через… в смысле плохо #k8SjZc9Dxk_#k8SjZc9Dxk Поэтому как только находите косяк (а вы его неприменно найдете 😉 ), сообщайте, пожалуйста, в комментариях. И можно без нервов =)
Новое в версии NEW beta (05 12013):
Обычное приложение:
+ Немного переработан интерфейс и оптимизирован код
+ Добавлена возможность вручную выбрать нужна ли определенная функция или нет
+ Удобная работа с макетами… редактировать пока нельзя, но в планах
+ Переработан шаблон ВПФ. За основу взят шаблон из публикации //infostart.ru/public/67060/ от alexk-is
+ Добавлена возможность передачи во ВПФ СсылкиНаОбъект прямо из конструктора
+ Может чего-то ещё =)
Управляемое приложение:
+ Реализована работа, но ОЧЕНЬ не оптимизиованная. Всё будет переписываться, когда соберется список косяков =)
+ Не требуется выбор оновной процедуры печати. Она по умолчанию Печать(). Обработка сама определяет команды печати — пользователю остаётся только отметить нужную галочкой. Всё остальное обработка сделает сама… Наверное)
+ Все параметры прописываются в конструкторе. Вообще работа переноса печатной формы заметно легче, чем в обычном режиме, однако, пока плохо проработанная.
— Пока есть минус — обработка в УФ не вытягивает макеты. Это делать нужно вручную.
— И еще… я заколебался с неким «Безопасным режимом», ошибка о котором постоянно высвечивается при тесте ВПФ… И после нескольких «переоткрываний» пропадает… Если кто понял в чем дело, сообщите, плиз, в комментариях #k8SjZc9Dxk_#k8SjZc9Dxk
//Описание изменений предыдущей версии
Исправленные ошибки:
+ Исправленна проверка зависимых процедур. Спасибо Жолтокнижнику за его обработку Редактор внешних печатных форм из которой я взял парочку функций 🙂
+ Исправлена мелкая ошибка замены строки «Печать» на «СтандартнаяПроцедураПечать»
+ МоментВремени() раньше выдавал ошибку, теперь все норм 🙂
+ присвоение переменных теперь происходит два раза. При открытии обработки и при вызове Печать(). Это, конечно, не есть красиво, однако исключает некоторые ошибки.
+ добавлена страница с таблицей всех процедур и функций модуля
+ теперь, перед тем как создать файл внешней печатной, обработка запрашивает название этой самой внешней печатной и прописывает название как синоним готового файла (для нормального добавления в базу)
+ после сохранения результата обработка может открыть готовую внешнюю печатную для проверки
+ Не закрывающиеся #Если теперь… комментируются )
Надеюсь, что кому-нить моя обработка будет полезна =)
Идея очень хорошая. Но на версии 8.2.16.352 управляемое приложение не работает обработка
Забыл подписать, что НЕ ДЛЯ УФ
=)
Ну УФ я сделаю обработку, но позже. я еще не в курсах даже как там внешняя печатная устроена)
(2) На управляемых в большинстве случаев хватит одного шаблона ВПФ. Процедуры практически готовы для копирования-вставки. И наверное, создание конструктора имеет чисто спортивный интерес.
(3) Ну почему же. Так же будет полезна, как и для обычных типовых конфигураций.
К примеру для печати ЗаказаКлиенту в УТ 11 используются:
+ СформироватьПечатнуюФормуЗаказаКлиента
+ ПолучитьДанныеДляПечатнойФормыЗаказаКлиента
+ ЗаполнитьТабличныйДокументЗаказаКлиента
+ может чего то ещё =)
Легче же, когда обработка за тебя определит, какие функции и процедуры нужны, сама их вытянет, достанет макет, пропишет СведенияОВнешнейОбработке и прочую лабуду, да потом еще все в файл внешней печатной упакует и откроет в режиме предприятия для проверки =)
Огромное спасибо за обработку! Довольно часто встречающаяся задача.
Хотя ее знаючи и так можно сделать за пару минут, теперь можно сделать за пару секунд 🙂
Это здорово! +
(7) интересно, а сколько уйдёт времени на создание конструктора ВПФ на УФ? Хотел для себя сделать наподобие этого, хотя, нет, лучше подожду…
Хорошенько подумав, я понял, что можно добавить пару мелочей в версию FINAL. как добавлю, обновлю публикацию (если вообще так делать можно, а то я не в курсах 🙂 )
конструктор вещь интересная, надо попробовать,
Суровая штука… 🙂
В чем-то аналогична классическому Borland-овскому
Delphi/C++Builder-генератору собственных форм…
Жутко облегчает жизнь!
Спасибо!!!
Мега-вещь!
Экономит время раз в 10!!!
Обработка вставляетв печатную форму печать организации?
(11), она создана для переноса типовой печатной формы во внешнюю. Отредактировать макет, да и поработать с кодом можно и в конфигураторе. Я решил, что подобное будет лишним функционалом.
спасибо
интересно будет попробовать, как натикают мани скачаю..
задача изменить печатную форму действительно часто встречается в работе, опробую, может и правда время «переделок» сократиться =]
благодарим за публикацию
Ну… Я говорил, что не буду больше развивать обработку… Но я солгал =)
Поэтому ждите новой версии, в которой будет много вкусностей #k8SjZc9Dxk_#k8SjZc9Dxk
долгожданная финальная версия, сейчас обязательно за тестирую.
про управляемое приложение не забывай, будет вообще шикарно.
Спасибо!
(16) tehas, угу, очень интересно как там автор будет выкручиваться.
По собственному опыту могу сказать, чтобы раскурить под «0» тему подключения печатных форм на БСП весьма и весьма трудозатратно. Особенно в свете того, что следует очень аккуратно, в зависимости от режима запуска обработки поработать с потрашками.
Я бы, на месте автора, сосредоточился не на рутинщине (это все рулится шаблонами), а на технологии отладки оных внешних обработок /печатных форм.
(17) Новенький_2209,
В принципе можно разработать рабочую печатную и при помощи данной обработки, только для подключения к базе нужно прописать свои для УФ процедурки.
Вот этого я не сильно понял. Если отладка в режиме предприятия, то не зачем, ведь есть конфигуратор.
(18) ну дык вы внешнюю печатную форму то отладьте в конфигураторе. Любую возьмите внешнюю печатную форму, да поотлаживайте.
Потом расскажите, как там оно 🙂
(19)http://infostart.ru/public/158860/
(20) я уже там писал, что к сожалению, не могу поставить минус за тот опус. Кстати, не сомневался, что именно эту ссылку вы и приведете. Т.е. отладить печатную форму нормальным способом, как это было в обычных формах, вы не знаете как. Именно поэтому я пишу:
Спасибо.
Посмотрел на «Коллекция внешних печатных форм БП, УТ и ЗУП из 200шт» которая появилась в результате тестов.
я думаю в 1с так свои продукты не тестят.
(22) А зря… =)
Плюсую … полезная вещь!!!
(12) а обработка с авторегистрацией (для обычного режима)?
(25) Borisych, не совсем понял вопрос )
(26) maxim305, а что хотите «подпилить» именно, если не секрет?) интересно, чего не хватает)
Отличная работа! Особенно пригодится, когда нужна модифицированная форма, а конфигурацию при этом портить не хочется.
Однозначно плюс! Вот 1С-ники бы встроили что то подобное в 8.3 …
Добрый день. А как это работает? Может, я конечно совсем баран, ну не ругайте тогда…Скачал, открываю в УТ 10.3. Выбираю документ..ну пусть «реализация товаров». Ставлю «Основной режим». Никаких действий после этого не происходит..И что потом надо сделать? Пробовал и так и сяк..
(30) SigmaMoscow, =)
Не настолько обработка крута) Необходимо скопировать модуль объекта документа из конфигуратора и вставить в обработку. Далее, выбрав «основную» функцию (которая получает таб.док, либо «Печать» ), действовать по ситуации )
Во, теперь понял. Внимательнее читать надо, прочитал через строчку — нажать три кнопки, и все будет..
Ща попробую..
Спасибо..
(10) Lapitskiy,
Согласен
(31)
вот и я задался вопросом, смотря картинки — каким образом автор выдирает код из конфы?
Оказалось, никаким 🙂
А… тогда также вручную все сделать? нельзя? 🙂
(9) vkr,
а чем она вам жизнь-то облегчила? 🙂
Вы не умели делать ВПФ? 🙂
(2)
так ради чего столько труда затрачено впустую? 🙂
(37), обьяснять не имеет смысла. Коли она вам не пригодится — проходите мимо
(38)
вы затратили усилий не меньше (в эквиваленте выделенного тепла), чем на создание правильного партионного учета, но создали отнюдь не обработку и исправление партионного учета 🙂
(36) Не надо было, потому и не занимался. Потом научился… Что тут странного? 🙂
Вот, к слову, еще меня 1С-овский обмен данными достал в свое время.
Пришлось свой (через DBF) написать — и сам не жалею, и коллегам — польза… 🙂
Сейчас доделываю версию обмена для 8.2 — тоже нормальненько получается.
Поэтому Вы зря удивляетесь… 🙂
написано, что платформа любая, а в 8.1 не открывается(
(41) oxana1, да, если обработка сделана на платформе 8.2, то на 8.1 не сконвертируется.
Вещь полезная. Я с ходу создал шаблон ВПФ, которую потом допилил. На создание шаблона ушло 5 минут. Огромное спасибо. Польза очевидна. В создании ВПФ много мороки, а тут почти все делает обработка. Еще раз +
(38) когда будет готова обработка для управляемого приложения?
Почти готов Конструктор ВПФ с поддержкой УФ. Переписывал обработку заново (в который раз) и сильно помучился с заточкой модуля под управляемую форму (никогда не работал с УФ). Обработка уже формирует файл ВПФ, вот только может кто нить подсказать статейку про структуру ВПФ для подключения? Выходной файл сейчас работает, но не подключается. Буду копаться и искать, но может кто ссылку кинет =)
Вышла новая версия с поддержкой УФ. Надеюсь, что понравится =)
(46) Опробовал я новую версию. Сделал ВПФ для заказа в УТ 11. Одна просьба, добавить опционально вариант размещения макета. Сейчас он тянется из документа. А хотелось бы иметь возможность править его в обработке.
Спасибо за развитие проекта.
Вот очень красиво. Хорошая штука. Но интуитивна не до конца.
Ещё бы чуть чуть подсказочек и кусочек описания под F1…
да вещь нужная но хелпп бы не помешал.
Автору огромный респект! Сам я внешние формы пока не научился делать, а с Конструктор внешних печатных форм сразу получилась готовая обработка, которую чуть-чуть допилю и в работу! Для начинающих и администраторов в самый раз! Большое спасибо! Обязательно ждем продолжения проекта.
Хорошая работа, но нужна ХОРОШАЯ ИНСТРУКЦИЯ!!!
Попробовал использовать не получилось… к сожалению…
Воспользовался ссылкой на «шаблоны для создания внешних печатных форм с авторегистрацией (3.0.1.1)»
через 2 мин была готова ВПФ…
вот так…
Скачал, потратил Sm аобработка сразу выдает ошибку
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),»[().,;s=]»+имя+»[().,;s=]»);
гляну, однако впервые слышу. Ни у кого такого еще не было
Ошибка возникает если запускаешь в клиент-серверном варианте. Если база файловая, то все нормально
А где бы инструкцию глянуть? А то была, ты видно перезалил
Большое спасибо за обработку — очень помогает в работе.
Как будет время — возьмусь за переработку работы в УФ и напишу инструкцию… как будет время )
В принципе, кроме первоначальной вставки текста модуля объекта, все остальное достаточно понятно и прозрачно 🙂
(0) сразу выдает ошибку
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),»[().,;s=]»+имя+»[().,;s=]»);
(59) iov, да, уже об этом косяке слышал… Обработка не тестилась в клиент-серверном режиме. у меня все базы файловые. извиняюсь, никак руки не дойдут =)
(60) Да ну ты брось — тебе спасибо такая помогалка… Вот только справку бы. А то вот определения параметров передаваемых в процедуру — под конец дня не могу понять что это …
(61) iov, смотри, когда ты выбрал основную функцию, то, если в она требует передачу в нее параметра, то его значение нужно указать там.
К примеру, функция «ПечатьАкта(ТипМакета)».
В таблице параметров появится ТипМакета. Что туда передать — это уже нужно смотреть по процедуре. К примеру «Акт».
(62) Да спасиб я немного разобрался… справочка не помешала бы все равно… в любом случае плюс в карму…
(63) НЕ ОШИБКА ОБРАБОТКИ.
{ВнешняяОбработка.СчетФактураВыданный_ВнешняяПечатная.МодульОбъекта(100)}: Ошибка при вызове метода контекста (ЗадатьОбластьПечатиДокумента)
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабДокумент, НомерСтрокиНачало, ОбъектыПечати, Ссылка);
по причине:
Попытка передачи с клиента на сервер мутабельного значения 1-го параметра метода ЗадатьОбластьПечатиДокумента ().
Это вот так в конфе КА счет фактура выданная формируется.
Где можно посмотреть инструкцию?
Обработка, безусловно хороша, но когда я ею воспользовался, возникла проблема и пришлось дописывать недостающую функцию. Может я что-то не так сделал? Инструкция была бы кстати 🙂
А я тоже ищу инструкцию, и что-то пока не обнаружила %) пошла умыла глаза — не помогло))))))))
Мне кажется, раньше было объяснение, как пользоваться. А пока приспичило сделать — уже не могу найти, что же там откуда куда копировать… %)
вроде тут есть не знаю Ваш или нетhttp://1clancer.ru/article/sozdanie_vpf_za_5_minut_684§ion=1
(68), спасибо за ссыль. Нет, не моя) поговорил с автором статьи — размещу ее в публикации )
{Форма.ОсновнаяФорма.Форма(62)}: Метод объекта не обнаружен (ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки )
(ВидОбработки);
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки
та жеошибка
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(1314,9)}: Процедура или функция с указанным именем не определена (РазобратьСтрокуRegEx)
рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),»[().,;s=]»+имя+»[().,;s=]»);
Еще бы аналогичный механизм по созданию «внешних обработок заполнения ТЧ», вообще красота была бы. Не было идей или набросков как реализовать?
Спасибо! Работает! Очень пригодилась.
Ну вот и я эту штуку проверил. Комплексная 1.1.33.3 — работает.
Управляется почти интуитивно… В новой версии то помощь по кнопке Ф1 есть?
Спасибо автору за избавление от муторной работы.
(71) Если запускаешь в толстом клиенте то убери все директивы компиляции &НаКлиенте и &НаСервере. Это кажется произошло из-за того что 1с изменила режим совместимости в типовых конфигурациях.
Ошибка в БП 2.0.49
рез=<<?>>РазобратьСтрокуRegEx(НРег(ОбрабатываемаяПроцедураФункция.ТекстПроцедуры),»[().,;s=]»+имя+»[().,;s=]»);
Не думал, что будет так просто.
Благодарю!!!
Идея хорошая, пока не совсем разобрался как работает, и что надо сделать, но автору респект!
Однако не создаются((
При попытке добавить как внешнюю (конфигурация УТ 11.1) ругается что не определена переменная ПараметрыПечати
Буду признателен, если подскажите где копать
Спасибо. Добротно сделал!
Огромное Вам Виталий человеческое спасибо!!!
ручками сделанная ВПФ работала, но вот не задача никак не мог добиться что бы при просмотре была возможность редактирования даты документа,защиту с ячейки в шаблоне снимал, но бес толку. Так и осталось загадкой для меня.
Сделанная вашим конструктором ВПФ без проблем всё редактируется.
Виталий, пользуюсь Вашей обработкой как только появилась. Она мне реально помогает в разработке ВПФ. Укажите пожалуйста Ваш yandex кошелек, я бы хотел отблагодарить материально.
Спасибо автору за публикацию!
Может стоит добавить в сгенерированную ВПФ «защиту от дурака»
а то в форме, если не выбрана ссылка и нажать кнопки действий — «ругань» сыпется…
Исправьте ошибку:
)
(ВидОбработки);
Форма.ОсновнаяФорма.Форма(62)}: Метод объекта не обнаружен (ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьПолноеНазначениеПоВидуДополнительнойВнешнейОбработки
Чтобы все работало корректно нужно прописать следующее:
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.НазначаемыеОбъектыМетаданныхПоВидуВнешнегоОбъекта(ЭлементОбъект.Вид);
Я это проверил на конфигурации Бухгалтерия предприятия 3.0.24.12. Открыл ВПФ сформированную вашей обработкой в конфигураторе и поменял. Очень хочу чтобы это делалось автоматом при формировании файла ВПФ.
Мне очень понравилась данная обработка! Виталий, дальнейшее развитие данной темы предусмотрено? Доработкой вашего детища будете заниматься???
При открытии в УПП
Обработка супер! Спасибо!
(86) levante90, столкнулся с такой же проблемой. пока она решилась комментированием всех директив
в модуле объекта
(84) Столкнулся с такой же ошибкой, исправил правда так:
но суть дела это не меняет.
Пришлось закомментарить (строка 75)
выдает ошибку.
А так автору ПОЛНЫЙ РЕСПЕКТ И УВАЖУХА — красиво сделано и экономит кучу времени.
(тренировался на БГУ 2.0, три ВПФ за 10 минут)
Досадно, что автомат не получается для «хитрых» ВПФ, например на раз сделать УПД для БП 3.0 не получилось…
Идея конечно зачет, Спасибо. Но пользоваться не получается. Инструкцию бы коротенькую. Нужна доверенность сделать, открыл, выбрал док, понажимал по очереди на кнопочки, потом в конфигураторе добавил макет. При открытии в предприятии ругается
(97) TorLink,
ПолноеНазначениеЗначение = ДополнительныеОтчетыИОбработки.ПолучитьВидОбработкиПоСтроковомуПредставлениюВида(ВидОбработки);
Классная идея.Хотелось бы чтобы довели ее до конца.
При попытке компиляции выдает ошибку:
{ВнешняяОбработка.КонструкторВнешнихПечатныхФорм.МодульОбъекта(81)}: Ошибка при вызове метода контекста (Run)
WshShell.Run(СтрокаЗапуска, 0, Истина);
по причине:
Произошла исключительная ситуация (0x80070005)
БП 3.0.30.16
(52) Zero_nv, откройте обработку в конфигураторе и в модуле объекта закомментируйте все «&НаСервере» (для обычного приложения).
(3)
(2) На управляемых в большинстве случаев хватит одного шаблона ВПФ. Процедуры практически готовы для копирования-вставки. И наверное, создание конструктора имеет чисто спортивный интерес.
Как же вы жутко ошибались в далеком 12-м году ))
Сейчас под каждую версию — нужно писать свою ВПФ, плюс — периодически актуализировать старые ВПФ под непрерывно меняющийся код БСП.
(9)Вы не путайте — генератор экранных форм, и макеты-таблицы у 1С.
Здесь ничего не «генерируется», лишь берется и копируется готовое. И то — актуально только для ОФ, на БСП такое уже не пройдет по нескольким причинам.
(17)
А никак не будет, под БСП и 8.3 теперь невозможно создавать ни универсальные обработки, ни универсальные ВПФ. Даже между версиями одной конфы — огромные разницы в коде, плюс — все вынесено и постоянно меняется в общих модулях.
(16)»про управляемое приложение не забывай, будет вообще шикарно. » забудьте, шикарно в УФ не было и не будет, это не про 1С.
(72) если вы хотите программно создавать обработчик ТЧ — в 1С это невозможно было никогда. Так что забудьте.
А отладчик ТЧ — для ОФ есть хороший у Poppy.
В УФ такой отладчик создать нельзя по тем же причинам, что и отладчик ВПФ — БСП и переход на хранение темпа образа обработки в хранилище, отказ от временных файлов на диске.
(176) В далёком 12-м году я был прав. А вот сейчас те слова потеряли актуальность 🙂
Да, порой смотришь на изменения в типовых и думаешь, это они специально усложняют использование всего нетипового.
(180) как раз усложняют использование типового кода, если речь о повторно используемом коде (типа БСП) )
И в 12-м году Вы были уже неправы, т.к. уже тогда было ясно, что из затеи сделать БСП и «модульный подход в коде» у 1С выйдет еще большая свалка и неразбериха 🙂
Потому как достаточно взять любую серьезную «нетленку», работающую годами, и сравнить с типовыми.
Ничего общего ни в подходе, ни в написании кода, ни в структуре объектов.