на форме рмк при выборе маркированного товара, должна выходить форма чтобы отсканировать марку и в дальнейшем после пробития чека записать в отдельную тч. алгоритм таков:
маркированный товар - выдается форма - сканируешь марку - нажимаешь окей или закрыть (как кнопку назовешь) - продолжаешь чек - пробиваешь чек .
в документе чека есть 3 тч: товары, марки серии номенклатуры, вид оплаты.
и я запнулся на моменте записи данных марки. получается написал оповещение, создал форму для скана, но результат кода выглядит так: когда пишу в поле на форме марки что-то( потому как сканера рядом нет, и считать нечего) и нажимаю Ок, пробиваю чек в документе вижу в колонке Код Марки написано Ок
на главной форме
на форме скана
маркированный товар - выдается форма - сканируешь марку - нажимаешь окей или закрыть (как кнопку назовешь) - продолжаешь чек - пробиваешь чек .
в документе чека есть 3 тч: товары, марки серии номенклатуры, вид оплаты.
и я запнулся на моменте записи данных марки. получается написал оповещение, создал форму для скана, но результат кода выглядит так: когда пишу в поле на форме марки что-то( потому как сканера рядом нет, и считать нечего) и нажимаю Ок, пробиваю чек в документе вижу в колонке Код Марки написано Ок
на главной форме
&НаКлиенте
Процедура ПодборЗаверщение(Результат, ДополнительныеПараметры) Экспорт
Если Результат = Неопределено Тогда
Возврат;
КонецЕсли;
СтруктураПараметров = ЗаполнитьСвойстваНоменклатуры(Результат.Номенклатура, ВидЦен);
СтруктураПараметров.Вставить("Количество", 1);
Если СтруктураПараметров.ТипМаркировки = ПРЕДОПРЕДЕЛЕННОЕЗНАЧЕНИЕ("Перечисление.ТипыМаркировкиККТ.МаркированныйТовар") Тогда
Оповещение = Новый ОписаниеОповещения("ОповещениеОткрытьФормуВводаАкцизнойМарки", ЭтотОбъект);
ОткрытьФорму("Обработка.РабочееМестоКассира.Форма.ФормаМарка",, ЭтаФорма,,,, Оповещение, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
ДобавитьПозициюНоменклатуры(СтруктураПараметров);
КонецЕсли;
ПересчитатьДокументНаКлиенте();
КонецПроцедуры
&НаКлиенте
Процедура ОповещениеОткрытьФормуВводаАкцизнойМарки (Результат, ДополнительныеПараметры) Экспорт
Если рЕзультат = неопределено тогда
возврат;
КонецЕсли;
строка = объект.МаркиНоменклатуры.Добавить();
строка.кодмарки = результат;
сообщить(результат);
КонецПроцедуры
Показатьна форме скана
&НаКлиенте
Процедура Очистить(Команда)
МаркаСерии.Очистить();
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
Если Источник = "ПодключаемоеОборудование" и ВводДоступен() Тогда
Если ИмяСобытия = "ScanData" Тогда
Если Параметр[1] = Неопределено Тогда
новаястрока = маркасерии.Добавить();
НоваяСтрока.КассаККМ = объект.КассаККМ;
новаястрока.КодМарки = Параметр[0];
Иначе
новаястрока = маркасерии.Добавить();
НоваяСтрока.КассаККМ = объект.КассаККМ;
новаястрока.КодМарки = Параметр[1][1];
КонецЕсли;
//ОбработатьШтрихкодНаСервере(ТекКод);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
//&НаСервере
//Процедура ОбработатьШтрихкодНаСервере(ТекКод)
// Если стрДлина(ТекКод) > 14 Тогда
// Номенклатура = РегистрыСведений.ШтрихкодыНоменклатуры.ПолучитьНоменклатуруПоШтрихкоду(Сред(ТекКод,7,8));
// Иначе
// Номенклатура = РегистрыСведений.ШтрихкодыНоменклатуры.ПолучитьНоменклатуруПоШтрихкоду(ТекКод);
// КонецЕсли;
//
// СтрокаТч = Объект.МаркиНоменклатуры.Добавить();
// СтрокаТч.Номенклатура = Номенклатура;
// СтрокаТч.НоменклатураГУИД = СтрокаТч.Номенклатура.УникальныйИдентификатор();
// //СтрокаТч.КодМарки = ТекКод;
// //СтрокаТч.КлючСвязи = КлючСвязи;
//КонецПроцедуры
&НаКлиенте
Процедура Ок(Команда, Параметр)
АдресВХранилище = АдресМарокВХранилище();
СтруктураВозврата = Новый Структура;
СтруктураВозврата.Вставить("АдресВХранилище", АдресВХранилище);
Если Не Модифицированность Тогда
Закрыть(СтруктураВозврата);
КонецЕсли;
сообщить(параметр);
КонецПроцедуры
&НаСервере
Функция АдресМарокВХранилище()
ТаблицаМарок = Объект.МаркиНоменклатуры.Выгрузить();
АдресМарок = ПоместитьВоВременноеХранилище(ТаблицаМарок, Новый УникальныйИдентификатор);
Возврат АдресМарок;
КонецФункции
ПоказатьПо теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот