Как попасть отладчиком в модуль внешней печатной формы?

1. borro 14.09.11 09:33 Сейчас в теме
Как можно попасть в отладчиком в код внешней печатной формы, т.е. поставить там точку останова?
В окне регистрация внешней печатной формы указано наименование файла обработки "АктНаПередачуПрав.epf
размер:19 865 байт; изменен:06.11.2009 11:26:57; сохранен в ИБ:06.11.2009 11:27:14."
но поиск файла АктНаПередачуПрав.epf на дисках компьютера ничего не дает.
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. anig99 2843 14.09.11 09:39 Сейчас в теме
(1) каждый раз формируется временный файл со случайным названием. Дебажить печатную форму можно 2 способами:
1. (правильный) Добавить в обработку форму с полем СсылкаНаОбъект и кнопкой, которая вызывает процедуру с вызовом Печать(). Тогда обработку можно отлаживать как обычную сохранив её на диск и открывая через Файл-Открыть
2. (ленивый) Если обработка выдает ошибку, то достаточно в режиме отладки включить Останавливаться на ошибке. В этом случае конфигуратор сам откроет временную обработку. Но в этом случае это будет ВРЕМЕННЫЙ файл и в нём можно только посмотреть ошибку, но не исправить (точнее исправить можно, но потом надо будет искать обработку на диске).
Если обработка без ошибок, то можно в начало процедуры печать() добавить заведомо ошибочную команду через Попытка Исключение. В этом случае обработка отрабатывает нормально, но отладчик ошибку увидит.
jobkostya1c_ERP; 1yh1; mutoc@mail.ru; Vellosity; Vida; eact; Gasilin; Мах; MarinaLed; wauri; Krick777; +11 Ответить
6. Поручик 4674 14.09.11 11:13 Сейчас в теме
(2)
(1)
(3)
(4)
Всё уже украдено до вас.

Для 8.1. и 8.2. обычное приложение
Классика жанра
Обработка для тестирования внешних печатных форм в восьмерке (приложение к статье "Внешние печатные формы в восьмерке")
http://infostart.ru/public/14686/

Отладка и автоматическая регистрация внешней печатной формы
http://infostart.ru/public/73418/

8.2. управляемое приложение
Обработка для тестирования внешних печатных форм для конфигураций 1С: Предприятия 8.2 с использованием БСП
http://infostart.ru/public/73691/


Воспользуйтесь и не имейте мозг
Bukaska; fzt; +2 Ответить
3. katrineKA 14.09.11 10:47 Сейчас в теме
(1)
"но поиск файла АктНаПередачуПрав.epf на дисках компьютера ничего не дает" - файл печатных форм, кажется на сервере сохраняется.
Что бы выудить именно эту форму, над таблицей, напротив надписи "Исходный файл: и т.д.", есть "Сохранить файл внешней обработки на диск". Нажимаете сохраняете, куда вам нужно и отлаживаете, если на форме создана форма с полем СсылкаНаОбъект, иначе действуете, как в ответе выше "anig99 (1)".
4. borro 14.09.11 10:53 Сейчас в теме
Глупый вопрос, как говорит мой шеф. Скажите, СсылканаОбъект как работает? Это просто название поля или это метод(процедура, функция)..?
5. cdb 26 14.09.11 11:12 Сейчас в теме
1. Откройте Обработку в конфигураторе.
2. Добавить реквизит с наименованием "СсылканаОбъект" и типом "ЛюбаяСсылка" (хотя можно указать конкретный тип принимаемый ссылкой).
Таким образом СсылкаНаОбъект - это реквизит обработки.
7. cdb 26 14.09.11 12:42 Сейчас в теме
Как вариант. Пишем внешнюю обработку, подключаем.
Данная обработка вызывает внешнюю обработку (прямо прописан путь расположения внешней обработки) передавая ей параметры.
8. Поручик 4674 14.09.11 12:46 Сейчас в теме
(7) Слепнем:
Классика жанра
Обработка для тестирования внешних печатных форм в восьмерке (приложение к статье "Внешние печатные формы в восьмерке")
http://infostart.ru/public/14686/


Именно это она и делает.
9. Rus52 27.02.12 16:10 Сейчас в теме
10. yokko 56 27.02.12 21:52 Сейчас в теме
я обычно иду другим путем, я к каждой своей обработке внешних печатных форм создаю осноную форму и на ней распологаю реквизит СсылаНаОбъект, а в модуле формы
Процедура КнопкаВыполнитьНажатие(Кнопка)
Печать();
КонецПроцедуры
Затем просто открываю свою обработку через открыть файл, выбираю любой документ, который надо распечатать и спокойно отлаживаю.
Vida; skillful; denis83; Stivens; YanTsys; demart-omsk; Tommy82; alex-l19041; Kom-off; kot26rus; zes; +11 Ответить
12. timothy 13.02.14 18:12 Сейчас в теме
(10) yokko,А для управляемых форм как?
13. fzt 27.02.14 09:45 Сейчас в теме
(10) yokko, не стоит так делать. Старайтесь пользоваться правильно, правильным инструментом что Поручик советует. Пригодится.
21. un2qum 6 19.06.19 07:25 Сейчас в теме
(13) как вы определили что способ правильный? пруфы?
unknown181538; +1 Ответить
11. vip_ufo 31.07.12 07:59 Сейчас в теме
Возникла необходимость выполнить отладку загруженной в базу БП Внешней обработки (печатной формы). Чтобы отладчиком попасть в модуль внешней обработки (печатной формы) надо поставить точку останова на строку
ТабДокумент = Обработка.Печать();
в общем модуле «Универсальные механизмы».
В момент интерактивного запуска процедуры вы окажетесь в отладчике на данной строке. Далее следует только нажать F11 (шагнуть в), после чего вы попадете в модуль необходимой обработки.
Важно помнить, что если вы хотите дописать модуль внешней обработки (печатной формы), то надо делать эти правки в файл который лежит вне базы, а после сохранения снова загружать файл обработки в справочник «Внешние обработки».
SotNick; ni032mas; rustork; +3 Ответить
20. olbir 20.07.18 10:14 Сейчас в теме
(11)Для управляемого приложения это не работает
AloneWolf; Vida; +2 Ответить
14. EvilDoc 176 19.06.14 17:07 Сейчас в теме
http://infostart.ru/public/204306/ - простой способ без обработок и геммороя
15. Bazh 19.06.14 17:38 Сейчас в теме
Поручик, все правильно постоянное подключение и отключение формы сильно напрягает. добрые люди сделали придлуду для тестирования форм, пользуйтесь и радуйтесь
16. DJDUH 17 19.06.14 18:49 Сейчас в теме
Всегда ищи ответ в вопросе! В модуль формы, а у тебя форма то есть?
17. santa56 6 19.02.16 12:10 Сейчас в теме
ребят вопрос как в управляемой форме
создал форму на ней реквизит ссылка на обьект затем кнопка печати
а обработку передать немогу в модуль обьекта

код формы


&НаСервере
Функция ПечатьНаСервере()
	МассивОбъектов = Новый Массив;
	МассивОбъектов.Добавить(Объект.СсылкаНаОбъект);
	ОбработкаОбъект = РеквизитФормыВЗначение("Объект");
	 Возврат ОбработкаОбъект.Печать(МассивОбъектов);
	 

КонецФункции

&НаКлиенте
Процедура КнопкаВыполнитьНажатие(Кнопка)
    Таб = ПечатьНаСервере();
    Таб.Показать();
КонецПроцедуры

Показать



Код модуля обьекта
Функция СведенияОВнешнейОбработке() Экспорт
	
	
	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2.1");
	
	ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма();
	ПараметрыРегистрации.Версия = "1.0";
	ПараметрыРегистрации.Назначение.Добавить("Документ.РеализацияТоваровУслуг");
	
	НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	НоваяКоманда.Представление = "Печатная форма Портал";
	НоваяКоманда.Идентификатор = "ПечатнаяФормаПортал";
	НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
	НоваяКоманда.ПоказыватьОповещение = Истина;
	НоваяКоманда.Модификатор = "ПечатьMXL";
	
	Возврат ПараметрыРегистрации;
	
	
КонецФункции



//КонецПроцедуры
//	 
// Интерфейс для выполнения команд обработки.
Функция Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
	
	
	ПараметрыВывода.ДоступнаПечатьПоКомплектно = Истина;
	
	ТабДокумент = Новый ТабличныйДокумент;

Показать
18. cool_sneg 22.09.16 14:24 Сейчас в теме
согласен с (17) не получается
19. Heckfy78 11.10.16 14:30 Сейчас в теме
(18) cool_sneg,

&НаСервере
Функция ПечатьНаСервере()
    МассивОбъектов = Новый Массив;
    МассивОбъектов.Добавить(Объект.СсылкаНаОбъект);
    ОбработкаОбъект = РеквизитФормыВЗначение("Объект");

 //   Возврат ОбработкаОбъект.Печать(МассивОбъектов);

    ЭтаФорма.ТабДокумент.Вывести(ОбработкаОбъект.Печать(МассивОбъектов)); // где  ТабДокумент - реквизит формы с типом ТабличныйДокумент

КонецФункции
Показать
22. progr-2008 118 28.12.20 22:56 Сейчас в теме
(19)После 8.3.5 - не работает.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот