Вводная: На кассире 5 установлено 2 ФР на разные фирмы (товары по секциям). Эквайринги у этих фирм на разных банках.
Задача: подключить в кассире 2 эквайринга по разным фирмам.
Решение:
нужно создать два вида оплаты, к каждому привязать свой процессинг,
чтобы руками не вводить суммы и контролировалась сумма по организации надо:
1. задать всем товарам одной секции (ООО или ИП) скидочную группу
2. задать виду оплат по этой секции (из п.1) применимость оплаты, в которой указать реквизит «Группа товаров для расчета» = группа из п.1.
В реквизите «Значение» указать «100».
Это необходимо для того, чтобы вид оплаты не разбивался по обоим ККМ, а применялся только к одному ККМ.
3.добавить кнопку для закрытия чека безналом с автоматической подстановкой сумм по секциям.
код функции для раскладки клавиатуры:
Сдача = 0;
Если НЕ ЭтоВозвратПоНомеру И НЕ ЧекЧастичноОплачен() И НЕ ЧекЧастичноЗакрыт() Тогда
ВидОплаты_ООО = 2; // код вида оплаты для ООО
ВидОплаты_ИП = 3; // код вида оплаты для ИП
НомерККМ_ООО = 1; // номер ККМ ООО
НомерККМ_ИП = 2; // номер ККМ ИП
СтрокаККМ = Кассир5_DataAccess.ПолучитьККМ(НомерККМ_ООО);
Если СтрокаККМ.ВидыОплаты <> Неопределено Тогда
СтрокаККМ.ВидыОплаты.Очистить();
КонецЕсли;
Сумма_ООО = СтрокаККМ.СуммаБезСкидки - СтрокаККМ.СуммаСкидки - СтрокаККМ.СуммаСкидкиПокупок;
СтрокаККМ = Кассир5_DataAccess.ПолучитьККМ(НомерККМ_ИП);
Если СтрокаККМ.ВидыОплаты <> Неопределено Тогда
СтрокаККМ.ВидыОплаты.Очистить();
КонецЕсли;
Сумма_ИП = СтрокаККМ.СуммаБезСкидки - СтрокаККМ.СуммаСкидки - СтрокаККМ.СуммаСкидкиПокупок;
ВидыОплаты.Очистить();
УстановитьСуммуВидаОплаты(ВидОплаты_ООО, Сумма_ООО);
УстановитьСуммуВидаОплаты(ВидОплаты_ИП, Сумма_ИП);
Если Кассир5_DataAccess.ВсегдаОткрыватьФормуРасчета Тогда
Сдача = МенеджерОбъектов.ПолучитьОбщийОбъект("Регистрация.ФормаРасчета").ПолучитьСдачу(ВидыОплаты, Сертификаты, Истина, Неопределено, ЭтаФорма);
КонецЕсли;
КонецЕсли;
Если Сдача <> Неопределено Тогда
СуммаСдачи = Сдача;
ЗакрытьЧек();
КонецЕсли;