y"> І Товари [ПоследняяСтрока] .Штріхкод=ШтрихКод
Тоді
СтрокаТаблічнойЧасті=Товари [ПоследняяСтрока];
//Знайшли, збільшуємо кількість в першій знайденої рядку.
Якщо Номенклатура lt; gt; Справочнікі.Номенклатура.Сертіфікат тоді//AG
СтрокаТаблічнойЧасті.Колічество=СтрокаТаблічнойЧасті.Колічество + Кількість;
КонецЕсли;
...
КонецПроцедури//ОбработкаПодбора ()
//Виробляє закриття чека на фіскальному реєстраторі і друк товарного чека.
//
//Параметри:
//Друк - булево, ознака необхідності печатки товарного чека.
//
Процедура ЗакритьЧек (Друк=Брехня)
Перем Відповідь;
Перем Паніка;
Якщо ТолькоПросмотр Тоді
Закрити ();
Інакше
Якщо ВідОпераціі=Перечісленія.ВідиОпераційЧекККМ.Продажа Тоді
Якщо Чи не ЧекПробітНаККМ І СуммаІтогоПослеПерерасчета gt; 0 Тоді
//AG -
Якщо Сертіфікати.Колічество () gt; 0 Тоді
Оплата.Очістіть ();
ОплатаНал=Оплата.Добавіть ();
ОплатаНал.ВидОплаты=Справочники.ВидыОплатЧекаККМ.Наличные;
СуммаНаличными=СуммаИтогоПослеПерерасчета;
Для кожного Сертифікат з Сертифікати Цикл
ОплатаСертіфікатом=Оплата.Добавіть ();
ОплатаСертификатом.ВидОплаты=Справочники.ВидыОплатЧекаККМ.Сертификат;
ОплатаСертификатом.Сумма=ПолучитьНоминалСертификата(ТекущаяДата(),Сертификат.Сертификат);
//СуммаНаличными=СуммаНаличными-ОплатаСертификатом.Сумма;
КонецЦікла;
Якщо СуммаНалічнимі lt; 1 Тоді
Попередження ( Сума товарів повинна бути більше суми сертифікатів! );
Повернення;
Інакше
//СуммаІтогоПослеПерерасчета=СуммаНалічнимі;
КонецЕсли;
КонецЕсли;
//- AG
...
КонецПроцедури//ЗакритьЧек ()
//Процедура - обробник події прочинене форми
//
Процедура відкриття ()
...
//AG
НоміналСертіфікатовВсего=0;
СуммаДоПерерасчета=0;
ИспользуемыйСертификат=Справочники.ИнформационныеКарты.ПустаяСсылка();
Сертіфікати.Очістіть ();
предСерт=Справочники.ИнформационныеКарты.ПустаяСсылка();
//AG
...
КонецПроцедури//відкриття ()
//Функція здійснює обробку зчитування штрихкоду інформаційної картки
//
//Параметри:
//Карта - lt; СправочнікСсилка.ІнформаціонниеКарти gt;
//- Відсканована інформаційна карта.
//
//СШК - lt; Рядок gt;
//- Ідентифікатор сканера штрихкоду, з яким пов'язана дана
//подія.
//
//повертається:
// lt; Булево gt;- Дана ситуація оброблена.
//
Функція СШКІнформаціоннаяКарта (Карта, СШК) Експорт
Результат=Істина;
Якщо РаботаСТорговымОборудованием.ПроверитьСообщитьЧтоКартаНеДисконтная(Карта) Тоді
Повернення Результат;
КонецЕсли;
//AG
Якщо Карта.Сертіфікат тоді
НоминалСертификата=ПолучитьНоминалСертификата(ТекущаяДата(), Карта);
Статус=ПолучітьСтатусСертіфіката (ТекущаяДата (), Карта);
Якщо Статус=Перечисления.СтатусДвиженияСертификатов.ПустаяСсылка() тоді
Попередження ( Даний сертифікат не був прийнятий до обліку !!! );
ІначеЕслі Статус=Перечисления.СтатусДвиженияСертификатов.ВМагазине тоді
//Якщо ІспользуемийСертіфікат.Сертіфікат тоді
Якщо Сертіфікати.Найті (Карта) lt; gt; Не визначено Тоді
//вже вибраний сертифікат клієнта і к...