|
Как подружить документ Комплектация номенклатуры и сканер штрихкодов, БП 3.0? | ☑ | ||
---|---|---|---|---|
0
Oblako486
29.10.20
✎
18:27
|
Бухгалтерия предприятия, редакция 3.0 (3.0.79.11)
В табличной части не работает, выдает цифры вместо номенклатуры. В подборе в поиске не ищет по штрихкоду. |
|||
1
kubik_live
29.10.20
✎
18:42
|
Нвстроить сканер
|
|||
2
Oblako486
29.10.20
✎
18:44
|
(1) В поступлении товаров и инвентаризации товаров, работает в табличной части как надо. Получается сканер настроен?
|
|||
3
Oblako486
30.10.20
✎
11:03
|
Сделал расширением. Добавил реквизиты на форму
ИспользоватьПодключаемоеОборудование Булево ПоддерживаемыеТипыПодключаемогоОборудования Строка Добавил код в модуль формы. &НаКлиенте &ИзменениеИКонтроль("ОбработкаОповещения") Процедура Р_ОбработкаОповещения(ИмяСобытия, Параметр, Источник) Если Источник = "ПодключаемоеОборудование" И ВводДоступен() Тогда Если ИмяСобытия = "ScanData" Тогда Если Параметр[1] = Неопределено Тогда ТекущийКод = Параметр[0]; Иначе ТекущийКод = Параметр[1][1]; КонецЕсли; ДобавитьПоШтрихкодуНаСервере(ТекущийКод); КонецЕсли; ИначеЕсли ИмяСобытия = "ДанныеСкопированыВБуферОбмена" Тогда УстановитьДоступностьКомандыВставки(ЭтотОбъект, Истина); Иначе ОбщегоНазначенияБПКлиент.ОбработкаОповещенияФормыДокумента(ЭтотОбъект, Объект.Ссылка, ИмяСобытия, Параметр, Источник); КонецЕсли; КонецПроцедуры &НаСервере Функция ДобавитьПоШтрихкодуНаСервере(Штрихкод) ТаблицаНоменклатурыПоШтрихкоду = РегистрыСведений.ШтрихкодыНоменклатуры.НоменклатураПоШтрихкоду(Штрихкод); Если ТаблицаНоменклатурыПоШтрихкоду.Количество() = 1 Тогда ДобавитьНоменклатуруНаСервере(ТаблицаНоменклатурыПоШтрихкоду[0].Номенклатура); Иначе ДобавитьНоменклатуруНаСервере(Справочники.Номенклатура.ПустаяСсылка()); КонецЕсли; КонецФункции &НаСервере Процедура ДобавитьНоменклатуруНаСервере(Номенклатура) ТаблицаТовары = Новый ТаблицаЗначений; ТаблицаТовары.Колонки.Добавить("Номенклатура"); ТаблицаТовары.Колонки.Добавить("Количество"); ТаблицаТовары.Колонки.Добавить("Цена"); ДанныеОбъекта = Новый Структура("Дата, Организация, СуммаВключаетНДС"); ЗаполнитьЗначенияСвойств(ДанныеОбъекта, Объект); Если ЗначениеЗаполнено(Номенклатура) Тогда СведенияОНоменклатуре = БухгалтерскийУчетПереопределяемый.ПолучитьСведенияОНоменклатуре(Номенклатура, ДанныеОбъекта, Ложь, Истина); Иначе СведенияОНоменклатуре = Неопределено; КонецЕсли; СтрокаТаблицаТовары = ТаблицаТовары.Добавить(); СтрокаТаблицаТовары.Номенклатура = Номенклатура; СтрокаТаблицаТовары.Количество = 1; СтрокаТаблицаТовары.Цена = ?(СведенияОНоменклатуре = Неопределено, 0, СведенияОНоменклатуре.Цена); Значение = Новый Структура("АдресПодобраннойНоменклатурыВХранилище, КоличествоДобавленныхСтрок", ПоместитьВоВременноеХранилище(ТаблицаТовары, УникальныйИдентификатор)); ОбработкаВыбораПодборВставкаИзБуфераНаСервере(Значение, "Комплектующие"); КонецПроцедуры &НаКлиенте Процедура Р_ПриЗакрытииПосле(ЗавершениеРаботы) // ПодключаемоеОборудование МенеджерОборудованияКлиентПереопределяемый.НачатьОтключениеОборудованиеПриЗакрытииФормы(ЭтаФорма); // Конец ПодключаемоеОборудование КонецПроцедуры &НаКлиенте &После("ПриОткрытии") Процедура Р_ПриОткрытии(Отказ) ИспользоватьПодключаемоеОборудование = истина; Если НЕ ТолькоПросмотр и ИспользоватьПодключаемоеОборудование Тогда // Попробуем подключить сканер штрихкода МенеджерОборудованияКлиентПереопределяемый.НачатьПодключениеОборудованиеПриОткрытииФормы(ЭтотОбъект, "СканерШтрихкода"); КонецЕсли; КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |