Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
23 фев 2026, 23:49

как вклиниться в код

Автор sali, Сегодня в 14:09

0 Пользователей и 1 гость просматривают эту тему.

sali

есть код который пробивает чек, а потом показывает его. мне нужно вклиниться в момент, когда программа всё сделала - пробили чек на сервере , вернул ответ, создал документ с чеком, заполнил данными печатный документ (предпросмотр, с кнопками "печать", "отправить на email")
но проблема в том что я не знаю как в него впихнуть своё.

вот идут последние строки кода процедуры (находятся в середине её)


ПараметрыПечатиЧека = ПродажиКлиент.ПараметрыПечатиЧека();
ПараметрыПечатиЧека.СсылкаНаЧек = ЧекДляПробития.КассовыйЧек;   

ПродажиКлиент.РаспечататьНефискальныйЧек(ПараметрыПечатиЧека, Истина);

РезультатПечатиЧека.Успешно = Истина;

ПродажиКлиент.ПечатьЧекаПродажи(ЧекДляПробития.КассовыйЧек,
СтруктураПараметровДляПечати, РезультатПечатиЧека);

ПробитьЧекНаККТПродолжение(РезультатПечатиЧека, ЧекДляПробития); // здесь проходит в процедуру которая закрывает форму и открывает готовую печатную форму, + заходит в общий модуль в процедуру "РаспечататьНефискальныйЧек"

 в общем модуле открывается обработка , где формируется эта печатная форма. сюда она заходит дважды, сначала собрать, а потом показать. как я понял
Процедура РаспечататьНефискальныйЧек(Параметры, ВывестиЧекНаЭкран = Ложь) Экспорт

ДанныеДляПечатиЧека = ПродажиВызовСервера.ПолучитьДанныеДляПечатиЧека(Параметры.СсылкаНаЧек);

Если ВывестиЧекНаЭкран Тогда
ПараметрыФормы = Новый Структура();
ПараметрыФормы.Вставить("ВходныеПараметры", ДанныеДляПечатиЧека);
ПараметрыФормы.Вставить("ВыходныеПараметры", Неопределено);
ОткрытьФорму("Обработка.Отчеты.Форма.Чек", ПараметрыФормы);
// закрывается форма (в которой нужно добавить две команды), открывается эта форма, делаются все дела(сборка данных, заполнение печатной формы,
// вывод её)
Иначе

вот при открытии чека
&НаКлиенте
Процедура ПриОткрытии(Отказ)

ПодключенноеУстройство = МенеджерОборудованияКлиент.ПолучитьПодключенноеУстройство(ПодключаемоеОборудованиеКлиент.ИдентификаторКлиентаОборудования());

Если ПодключенноеУстройство <> Неопределено Тогда
ВходныеПараметры.Вставить("ПараметрыПодключения", ПодключенноеУстройство.ПараметрыПодключения);
КонецЕсли;

СформироватьНаСервере(ВходныеПараметры);
//Если НЕ ПросмотрЧекаПослеПечати И ЗначениеЗаполнено(ПодключенноеУстройство) Тогда
ПодключаемоеОборудованиеH62P = ПолучитьОборудованиеПечати();
ПараметрыПечатиЧека = ПродажиКлиент.ПараметрыПечатиЧека();
ПараметрыПечатиЧека.СсылкаНаЧек = ВходныеПараметры.ДокументОснование;
ПараметрыПечатиЧека.Вставить("ПодключаемоеОборудованиеH62P", ПодключаемоеОборудованиеH62P);
ПродажиКлиент.РаспечататьНефискальныйЧек(ПараметрыПечатиЧека);
Если НЕ ПросмотрЧекаПослеПечати Тогда
ЭтаФорма.Закрыть();
КонецЕсли;

как уловить момент , чтобы и форму не закрыть и чек показать или распечатать?

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск