gifts2017

Отладка обработок заполнения или создания связанных объектов для конфигураций 1С: Предприятия 8.2/8.3 на БСП (Управляемое приложение). Версия 1.2.6

Опубликовал Сергей Ожерельев (Поручик) в раздел Программирование - Инструментарий

Позволяет упростить процесс отладки и тестирования внешних обработок заполнения или создания связанных объектов (ввода на основании) для конфигураций 1С: Предприятия 8.2/8.3, основанных на БСП

Позволяет упростить процесс отладки и тестирования внешних обработок заполнения или создания связанных объектов (ввода на основании) для конфигураций 1С: Предприятия 8.2/8.3, разработанных с использованием Библиотеки стандартных подсистем (БСП), работающих в режиме управляемого приложения или тонком клиенте.

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

Поддерживаются четыре метода выполнения команд внешних обработок: Открытие формы, вызов серверного метода, вызов клиентского метода, заполнение формы (для конфигураций на основе БСП 2.1.6 и позднее).

Использование обработки:

  1. Открыть 1С: Предприятие в режиме конфигуратора.
  2. Открыть тестируемую обработку заполнения/создания объектов.
  3. Проставить точки останова.
  4. Запустить из конфигуратора 1С: Предприятие в режиме отладки.
  5. Открыть эту обработку.
  6. Указать имя файла обработки  заполнения/создания связанных объектов, команду, ссылку на объект для отладки.
  7. Кнопка "Выполнить", переход в конфигуратор при достижении точки останова, отладка.

В клиент-серверном варианте базы данных следует использовать сервер 1С Предприятия, работающий в режиме отладки (запущенный с ключом -debug), и папку, доступную для учетной записи пользователя сервера 1С:Предприятия, иначе возможность отладки будет недоступна.


Дополнительные материалы:
Управляемое приложение. Внешняя обработка. Создание связанных объектов
Управляемое приложение. Внешняя обработка. Заполнение объекта 
Обработка для тестирования внешних печатных форм 

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

Наименование Файл Версия Размер
Отладка создания или заполнения объектов 82.epf 810
.epf 27,46Kb
12.10.16
810
.epf 1.2.6 27,46Kb Скачать
Пример обработки с методом "ОткрытиеФормы". Создание связанных документов (ввод на основании) универсальное. Позволяет ввести любой документ на основании текущего. 154
.epf 17,58Kb
26.10.16
154
.epf 17,58Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Юрий Зайцев (Yury1001) 17.07.12 11:37
А в чём отладка то заключается? На точку останова не реагирует.
2. Сергей Ожерельев (Поручик) 17.07.12 11:45
(1) Закрой базу, открой конфигуратор. Там какой-то глюк платформенный, у меня тоже иногда не останавливается. И проверь, запускается ли у тебя 1С Предприятия в режиме отладки из конфигуратора.
3. Юрий Зайцев (Yury1001) 17.07.12 14:50
(2) Да нет всё нормально, если где то в общем модуле ошибка можно остановиться посмотреть, а текст самой обработки не отлаживается.
4. Сергей Ожерельев (Поручик) 17.07.12 15:01
(3) Тогда не знаю, сам разбирайся, как хочешь. Это обработку http://infostart.ru/public/141777/ я с помощью неё отлаживал.
5. Александр Романов (alexandr1972_1) 20.07.12 01:41
(3) Очистите кэш базы, и попробуйте запустите базу под админской учёткой пользователя операционной системы. Там действительно глюк или фича платформы, потому что обработка котороую отлаживаете помещается во временное хранилище. Наверное с этим связано.
6. Сергей Ожерельев (Поручик) 20.07.12 08:36
(5)(3) Под ограниченной системной учёткой отладка тоже происходит.
7. Сергей Ожерельев (Поручик) 02.09.12 12:33
Обработка адаптирована для Библиотеки стандартных подсистем последних релизов
8. Александр (МимохожийОднако) 12.09.12 09:53
Недавно столкнулся с отладкой кода внешней обработки печати в УТ11. Подобной обработки под рукой не было. Что я сделал:
1. Вставил в то место, где надо было посмотреть код в отладчике, заведомо ошибочную конструкцию, которую проглатывает синтаксический помощник.
2. Загрузил эту обработку через Администрирование обработок. Запустил. Получил ошибку.
3. Вошел по ссылка в режиме Конфигуратор и увидел название временного файла во временном каталоге пользователя.
4. Поставил в этом месте точку останова и вновь запустил обработку.
5. Отладчик послушно остановился в указанном месте, а у меня появилась возможность посмотреть результаты запроса и другие места в обработке.
6. Дальше всё просто...Скопировал из временной обработки то, что нужно в рабочую обработку и скорректировал код.
При этом есть возможность открыть обработку из конфигуратора во временной папке с ней работать.
При повторных запусках платформа продолжает работать с этим временным файлом.
...
Моё сообщение как еще один вариант отладки.
Zhilyakovdr; POLGA; steqi; GigaBit; director04; Ibrogim; +6 Ответить
9. Владислав Игнатенко (fuser) 16.01.13 02:13
Ошибка при вызове серверного метода.
Вы запускаете обработку вызовом:
ВнешняяОбработка.ВыполнитьКоманду(ИдентификаторКомандыОбработки, ОбъектыНазначения);


Но если посмотреть общий модуль БСП ДополнительныеОтчетыИОбработки.ВыполнитьОбработкуНепосредственно, то увидите в ней проверку: Если структура сведений о внешней обработке содержит параметр "ВерсияБСП", то все вызовы дополняются еще 1 параметром ПараметрыВыполненияКоманды:
	Если ТипОбработки = Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительнаяОбработка
		ИЛИ ТипОбработки = Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет Тогда
		
		Если ПередаватьПараметрыВыполненияКоманды Тогда
			ВнешняяОбработка.ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыВыполненияКоманды);
		Иначе
			ВнешняяОбработка.ВыполнитьКоманду(ИдентификаторКоманды);
		КонецЕсли;
		
	ИначеЕсли ТипОбработки = Перечисления.ВидыДополнительныхОтчетовИОбработок.СозданиеСвязанныхОбъектов Тогда
		
		СозданныеОбъекты = Новый Массив;
		
		Если ПередаватьПараметрыВыполненияКоманды Тогда
			ВнешняяОбработка.ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, СозданныеОбъекты, ПараметрыВыполненияКоманды);
		Иначе
			ВнешняяОбработка.ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, СозданныеОбъекты);
		КонецЕсли;
...Показать Скрыть


Рекомендую добавить аналогичный код в вашей обработке
10. Сергей Ожерельев (Поручик) 16.01.13 02:19
11. Сергей Ожерельев (Поручик) 16.01.13 09:12
Добавлен учет версии БСП и параметр выполнения команды.
12. Сергей Ожерельев (Поручик) 23.03.13 20:12
Обновление. Текущая версия 1.1.0
[+] обработка адаптирована для использования с релизами БСП линии 2.1.3
13. Сергей Ожерельев (Поручик) 29.03.13 00:38
Обновление. Текущая версия 1.1.1
[+] обработка адаптирована для использования в клиент-серверных базах.
14. Сергей Ожерельев (Поручик) 01.04.13 22:34
Вернул всё назад.
Для отладки в клиент-серверном варианте следует использовать папку, доступную для учетной записи пользователя сервера 1С:Предприятия.
15. Сергей Ожерельев (Поручик) 13.04.13 19:45
Обновления нет. Отредактировано описание.
16. Татьяна Цымбал (citana) 31.05.13 02:26
очень помогла обработочка)) спасибо большое))
17. Сергей Ожерельев (Поручик) 03.06.13 15:32
Исправлена незамеченная ошибка. Тоже никто не сообщил. Всем ..., как всегда, всё равно.
18. Евгений worker (worker1c) 13.06.13 10:05
(17) Поручик,
Спасибо, так гораздо лучше!
19. Alister (Alister) 09.09.13 13:28
Большое спасибо автору за обработку, только начинаю УФ делать и без нее с отладкой беда.
20. Wlad Gorbenko (XiPyPg) 19.09.13 10:29
Здраствуйте подскажите что делаю не так....скачал вашу обработку по отладке внешних обработок на заполнения. открываю 1с конф + режим отладки, там через открыть открываю вашу обработку, в ней выбираю свою, команду и документ выполняю а он не заходит в точки останова хотя результат по ним выводит. комнаду выполняю на клиенте, да и вобще 1с-ка целиком открыта на сервере
21. Сергей Ожерельев (Поручик) 19.09.13 10:33
(20) Не знаю, что вы там делаете. 500 рублей и займусь вашей проблемой.
22. Игорь Фелькер (Brawler) 14.10.13 10:13
берем обработку из ДЕМО БСП

_ДемоДополнительнаяОбработкаСозданияСвязанныхОбъектовНазнача­емая.epf

меняем в ней Справочник._ДемоКонтрагенты на Справочник.Контрагенты

запускаем
выбираем команду "Создать копию и заполнить наименование (открытие формы)..."
выбираем любой элемент справочника
выполняем
ловим ошибку

{Форма.Форма.Форма(15)}: Поле объекта не обнаружено (ИмяФормы)
ИмяФормыВладельца = Параметры.ИмяФормы;

не робит обработка даже с примерами из БСП
23. Сергей Ожерельев (Поручик) 14.10.13 10:37
(22) Да плевать. Деньги никто не хочет платить.
24. Игорь Фелькер (Brawler) 14.10.13 12:23
(23) Поручик, не понимаю чего ноешь ты.
Ты или заяви, что хочешь денег за скачивание, прислушивайся к жалобам или удаляй публикацию нафиг.
25. Сергей Ожерельев (Поручик) 14.10.13 12:26
26. Сергей Ожерельев (Поручик) 14.10.13 12:44
Обновление. Текущая версия 1.1.4
[+] исправление некоторых ошибок при работе с БСП 2.1.3 и выше
27. Людмила Вальская (Вальская Людмила) 17.10.13 11:58
Как "проголосовать за", в новом оформлении не нашла, говорю "Спасибо" так.
29. Алексей (Alex) 26.11.13 10:42
Не работает. Не останавливается в точке останова...
30. Сергей Ожерельев (Поручик) 26.11.13 10:49
(29) Печально. Вкурись в описание, может дойдёт. Если не получится, выбрось её.
31. Алексей (Alex) 26.11.13 11:27
Вот по тому ты и поручик.. не быть тебе генералом :)
baracuda; +1 Ответить
32. Максим Анпилов (Mx00) 16.01.14 02:05
пробую заполнять табличную часть, строго по инструкции не получилось :-)
думаю нужно добавить пункт перед "выполнить" - открыть форму документа на котором тестируем обработку
+++
Разобрался, это у меня обработка такая досталась, которая определяет обрабатываемый документ через открытые окна и если такого окна нет, то и обрабатывать ей нечего...
33. Максим Анпилов (Mx00) 17.01.14 02:25
А на точке останова не останавливается никак :-(
тестирую вот эту обработку http://infostart.ru/public/238394/
там две формы, вторая предназначена для визуальных настроек, вот в ней не срабатывает точка останова
34. Сергей Ожерельев (Поручик) 17.01.14 02:40
(33) С той обработкой только за деньги займусь.
35. Максим Анпилов (Mx00) 17.01.14 06:39
(34) если деньги разумные, то можем обсудить
на самом деле точка останова не срабатывает ещё безо всяких заморочек той формы, т.е. при открытии формы тоже не срабатывает
работаю в БП 3.0 на платформе 8.3.4.389
36. Сергей Ожерельев (Поручик) 17.01.14 07:40
(35) Прежде чем обсуждать финансовый вопрос, почитать очень внимательно описание тоже не помогло?
37. zhuravlik (unichkin) 16.02.14 00:47
46. Павел Алексеенко (qwinter) 28.05.14 10:57
Не останавливается при отладке, хоть что делай. Тестировал на стандартной БСПшной обработке _ДемоДополнительнаяОбработкаЗаполненияНазначаемая.

P.S. Протестировал еще одну свою, остановился...
47. Павел Алексеенко (qwinter) 28.05.14 11:27
Почему то отладка работает только если установить в "ПараметрыРегистрации" внешней обработки БезопасныйРежим = Истина.
TMV; active-it; +2 Ответить 2
48. Сергей Ожерельев (Поручик) 29.05.14 14:41
(47) Ну я как-то не задумывался. Нет у меня таких обработок.
49. Сергей Ожерельев (Поручик) 01.06.14 02:45
Обновление. Текущая версия 1.1.8
[+] добавлена отладка обработок с методом "Заполнение формы" ("ЗаполнениеФормы") без записи объекта.
50. Кирилл Трофимов (biz-intel) 14.10.14 18:20
В вашей обработке проблемы с модальностью. Планируете рефакторинг?
51. Сергей Ожерельев (Поручик) 14.10.14 20:35
52. Александр (МимохожийОднако) 19.10.14 11:01
(22) Brawler, вероятно забыл обновить справочник идентификаторов объектов конфигурации.
53. Дмитрий К (ll13) 18.02.15 15:53
Я использую другой подход к отладке внешних обработок БСП...
http://www.obrabotki.com/otladka-bsp-1s/
54. Максим Жохов (ZhokhovM) 20.04.15 12:53
Поручик, добрый день. Есть вопрос, почему нельзя подключиться ни к одной из ваших обработок с методом ДополнительныйОтчет или ДополнительнаяОбработка? Как их отладить?
55. Максим Жохов (ZhokhovM) 20.04.15 12:53
56. Сергей Ожерельев (Поручик) 20.04.15 14:07
(54) (146) Обычно, в конфигураторе отладчиком.
57. Владимир Иванов (ogre2007) 20.05.15 13:49
Сделал по инструкции, не работает. Ошибок не выдает, обработку выполняет частично. Отлаживал обработку заполнения табличной части документов.
Файловый режим.
Платформа: 8.3.6.1977
Конфа: ут 11.1.9.66
58. Василий Пупкин (Cyberhawk) 02.09.15 10:32
Не работает (отладчик в точках останова не останавливается) на УНФ 1.5 и обработке заполнения объекта, подключаемой не в безопасном режиме.
59. Максим Сухов (MaxS) 30.09.15 15:41
БП 3.0.41.57
Платформа 8.3.6.2299
Версия обработки 1.2.0

{(1)}: Метод объекта не обнаружен (НовыйРезультатВыполнения)
СтандартныеПодсистемыКлиентСервер.НовыйРезультатВыполнения()
60. Сергей Ожерельев (Поручик) 30.09.15 17:03
(59) Залил новый файл. Попробуй.
63. Павел Алексеенко (qwinter) 16.11.15 11:01
Здравствуйте. А модальностью так и не занимались?
64. Сергей Ожерельев (Поручик) 16.11.15 11:16
(63) Не помню. Что-то сделал.
65. Андрей Почукаев (RodinMax) 11.12.15 05:20
66. Олег Дмитров (baracuda) 28.01.16 11:55
Отличная обработка! Выручила. Лайк поручику!
67. Александр Чернышов (HEKPOH) 08.04.16 09:08
Спасибо за обработку! Использую в работе
70. Игорь Фелькер (Brawler) 18.05.16 09:09
И снова 1С подосрало...

В ЗУП 3.1 с БСП 2.3.3
такая бяка вылезла

{(1)}: Метод объекта не обнаружен (НовыйРезультатВыполнения)
СтандартныеПодсистемыКлиентСервер.НовыйРезультатВыполнения()

Тонны обработок по всей стране придется людям переделывать...
71. Сергей Ожерельев (Поручик) 18.05.16 09:19
(70) Если вы про мою обработку, то исправлено ещё в сентябре прошлого года.

	Если СравнитьВерсии(ВерсияБСП, "2.1.6") >= 0 Тогда
		Попытка      
			НовыйРезультатВыполнения = Вычислить("СтандартныеПодсистемыКлиентСервер.ОписаниеРезультатаВыполнения()");
		Исключение
			НовыйРезультатВыполнения = Вычислить("СтандартныеПодсистемыКлиентСервер.НовыйРезультатВыполнения()");
		КонецПопытки; 
		ПараметрыВыполненияКоманды.Вставить("РезультатВыполнения", НовыйРезультатВыполнения);
	КонецЕсли; 
...Показать Скрыть
72. BAZIL BAZIL (wbazil) 05.08.16 11:21
хорошая обработка, в отладку попадает, спасибо
небольшой минус, если открывается дополнительная форма из внешней обработки, то данные ЭтаФорма.ВладелецФормы не коректны, хотя может у меня обработка так написана
73. Дмитрий Конаков (dkonakov) 12.10.16 09:43
в БП 3.0.44 похоже надо переписывать, СтандартныеПодсистемыКлиентСервер.НовыйРезультатВыполнения() - эта функция всё.
74. Сергей Ожерельев (Поручик) 12.10.16 12:58
75. Дмитрий Конаков (dkonakov) 12.10.16 14:46
(74) Вижу, что уже исправлено. Спасибо!
76. Pavel Defula (veyron21) 25.10.16 14:46
Не работает((( Уже озвученная выше проблема появляется:
{(1)}: Метод объекта не обнаружен (НовыйРезультатВыполнения)
СтандартныеПодсистемыКлиентСервер.НовыйРезультатВыполнения()

Идея обработки очень классная, помогает сэкономить кучу времени.

Версия БСП 2.3.3.77
Версия обработки 2.1.5. скачивал отсюда 24.10.2016
77. Сергей Ожерельев (Поручик) 25.10.16 15:54
(76) Исправил. Там надо было в двух местах, а я второе пропустил.