Розница 1.0 + подарочные сертификаты. Поделитесь опытом пожалуйста.

1. b-k-v 14.08.14 12:40 Сейчас в теме
Добрый день.
Розница 1.0
Подскажите пожалуйста как правильно вести учет подарочных сертификатов.

1. День
Продаем сертификаты как обычный товар. 1000 руб.
2. День
Продаем товар 1000 руб. Вид оплаты "Подарочный сертификат"
Вроде все ок. Для нас вроде все ок, для бухгалтерии нет(

При закрытии смены в обоих днях в z-отчет попадает 1000 руб. Итого 2000 руб.

У нас кассовый метод признания доходов.
Прочитал статью: http://buh.ru/articles/documents/17812/
В ней написано "При оплате товара подарочным сертификатом также необходимо пробивать чек ККТ, но по отдельной секции"

Вопрос как сделать на практике пробивание чека по отдельной секции? Используем ШТРИХ-МИНИ-ФР-К
Спасибо большое.
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Saint64Rus 14.08.14 13:07 Сейчас в теме
Исключительно допиливая, 1с бьёт по умолчанию на 2 секции(нал, безнал). Первое, пилим пробитие чека по секциям. Второе, правила обмена РТ-БП. Когда делали это для одного клиента это дорого ему обошлось, очень много нюансов там.
3. b-k-v 14.08.14 14:25 Сейчас в теме
То есть я правильно понял.
Сейчас в фискальнике используется две секции(нал,безнал). Надо сделать 3 секцию чтобы туда записывать оплату сертификатом.
Ну обмена у нас с бухгалтерией нет, слава богу.
4. Saint64Rus 14.08.14 15:21 Сейчас в теме
Ну точней в фискальнике то есть 4 секции,а сама 1С использует только две. Соответственно надо научить 1С бить по третьей секции.
5. b-k-v 15.08.14 09:38 Сейчас в теме
Добрый день.
Нашел функцию

Объект.Драйвер.ЗакрытьЧек(Объект.ИДУстройства, СуммаНал, СуммаБезнал, 0)


Немного доработал алгоритм получения сумм. И функция приобрела вид.

Объект.Драйвер.ЗакрытьЧек(Объект.ИДУстройства, СуммаНал, СуммаБезнал, СуммаСертификат)


Вроде все работает. Но в инструкции по программированию к фискальнику написано что всего в методе ЗакрытьЧек есть четыре параметра: сумма1, сумма2, сумма3. сумма4
Смотрите рисунок. В наименовании типов оплат в фискальнике тоже 4 строки.

Если в функцию добавить еще сумму:
Объект.Драйвер.ЗакрытьЧек(Объект.ИДУстройства, СуммаНал, СуммаБезнал, СуммаСертификат, ДопСумма)
то при работе выскакивает соответствующая ошибка: Слишком много фактических параметров

Подскажите в чем может быть проблема? Спасибо.
6. dmitzin 13 15.08.14 13:40 Сейчас в теме
(5) b-k-v, в 2.0 допилил конфу до второй секции.

Функция ПробитьЧекВыполнить(ОбъектЧекККМ, ТекстСообщения)

добавил код

Если СтрокаТЧ.Номенклатура.видНоменклатуры.ТипНоменклатуры=Перечисления.ТипыНоменклатуры.ПодарочныйСертификат Тогда
НомерСекции = 2;
Иначе
НомерСекции = 1;
КонецЕсли;

Ну и допилил функцию печать чека.


Функция ПечатьЧека(ОбщийМодульОборудования, ОбъектДрайвера, Параметры, ПараметрыПодключения, ВходныеПараметры, ВыходныеПараметры, ВывестиСообщениеПользователю = Ложь) Экспорт

ТаблицаНоменклатуры = ВходныеПараметры[0];
ТаблицаОплат = ВходныеПараметры[1];
ОбщиеПараметры = ВходныеПараметры[2];
ПараметрыШаблонаЧека = ОбщиеПараметры[17];

Результат = Истина;
ПараметрыПодключения.Вставить("СтрокаЛога", "");

// Открываем чек
Результат = ОбщийМодульОборудования.ОткрытьЧек(ОбъектДрайвера, Параметры, ПараметрыПодключения,
ОбщиеПараметры[0] = 1, ОбщиеПараметры[1], ВыходныеПараметры);

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

// Печать шапки чека
Для Каждого СтрокаШапки Из МассивШакаЧека Цикл
Если НЕ ОбщийМодульОборудования.НапечататьНефискальнуюСтроку(ОбъектДрайвера, Параметры, ПараметрыПодключения,
СтрокаШапки, ВыходныеПараметры) Тогда
Прервать;
КонецЕсли;
КонецЦикла;
ИтогПоЧеку = 0.00;
ПроцентСкидки = 0.00;

Для ИндексМассива = 0 По ТаблицаНоменклатуры.Количество() - 1 Цикл
// Печать шапки строки
Для Каждого СтрокаШапки Из МассивТекстаСтрокиШапки[ИндексМассива] Цикл
Если НЕ ОбщийМодульОборудования.НапечататьНефискальнуюСтроку(ОбъектДрайвера, Параметры, ПараметрыПодключения,
СтрокаШапки, ВыходныеПараметры) Тогда
Прервать;
КонецЕсли;
КонецЦикла;

Если НЕ ОднаФискальнаяСтрока Тогда
Если НЕ ФискальнаяСтрокабезПечати Тогда
Наименование = ТаблицаНоменклатуры[ИндексМассива][0].Значение;
Иначе
Наименование = "";
КонецЕсли;
Количество = ТаблицаНоменклатуры[ИндексМассива][5].Значение;
Цена = ТаблицаНоменклатуры[ИндексМассива][4].Значение;
ПроцентСкидки = ТаблицаНоменклатуры[ИндексМассива][8].Значение;
Сумма = ТаблицаНоменклатуры[ИндексМассива][9].Значение;
НомерСекции = ТаблицаНоменклатуры[ИндексМассива][3].Значение;
СтавкаНДС = ТаблицаНоменклатуры[ИндексМассива][12].Значение;

Если НЕ ОбщийМодульОборудования.НапечататьФискальнуюСтроку(ОбъектДрайвера, Параметры, ПараметрыПодключения,
Наименование, Количество, Цена, ПроцентСкидки, Сумма,
НомерСекции, СтавкаНДС, ВыходныеПараметры) Тогда
Прервать;
КонецЕсли;
Иначе
ИтогПоЧеку = ИтогПоЧеку + ТаблицаНоменклатуры[ИндексМассива][9].Значение; // Сумма строки
ПроцентСкидки = ПроцентСкидки + ТаблицаНоменклатуры[ИндексМассива][8].Значение; // Процент скидки по строке
НомерСекции = ТаблицаНоменклатуры[ИндексМассива][3].Значение;

КонецЕсли;
// Печать подвала строки
Для Каждого СтрокаШапки Из МассивТекстаСтрокиПодвал[ИндексМассива] Цикл
Если НЕ ОбщийМодульОборудования.НапечататьНефискальнуюСтроку(ОбъектДрайвера, Параметры, ПараметрыПодключения,
СтрокаШапки, ВыходныеПараметры) Тогда
Прервать;
КонецЕсли;
КонецЦикла;
КонецЦикла;
Если ОднаФискальнаяСтрока Тогда
Наименование = "Всего:";
Количество = 1.00;
Цена = ИтогПоЧеку;
ПроцентСкидки = ПроцентСкидки;
Сумма = ИтогПоЧеку;
НомерСекции = НомерСекции;
СтавкаНДС = 0.00;

// Печать фискальных строк
Если НЕ ОбщийМодульОборудования.НапечататьФискальнуюСтроку(ОбъектДрайвера, Параметры, ПараметрыПодключения,
Наименование, Количество, Цена, ПроцентСкидки, Сумма,
НомерСекции, СтавкаНДС, ВыходныеПараметры) Тогда
КонецЕсли;
КонецЕсли;
// Печать подвала чека
Для Каждого СтрокаШапки Из МассивПодвалЧека Цикл
Если НЕ ОбщийМодульОборудования.НапечататьНефискальнуюСтроку(ОбъектДрайвера, Параметры, ПараметрыПодключения,
СтрокаШапки, ВыходныеПараметры) Тогда
Прервать;
КонецЕсли;
КонецЦикла;
КонецЕсли;

//DIMA
СуммаНаличнойОплаты = 0;
СуммаБезналичнойОплаты1 = 0;
СуммаБезналичнойОплаты2 = 0;

Для ИндексОплаты = 0 По ТаблицаОплат.Количество() - 1 Цикл
Если ТаблицаОплат[ИндексОплаты][1].Значение=0 тогда продолжить конецесли;
Если ТаблицаОплат[ИндексОплаты][0].Значение = 0 Тогда
СуммаНаличнойОплаты = ("Наличными = "+ТаблицаОплат[ИндексОплаты][1].Значение+" руб.");
ОбщийМодульОборудования.НапечататьНефискальнуюСтроку(ОбъектДрайвера, Параметры, ПараметрыПодключения,СуммаНаличнойОплаты, ВыходныеПараметры);
ИначеЕсли ТаблицаОплат[ИндексОплаты][0].Значение = 1 Тогда
СуммаБезналичнойОплаты1 = ("Безналичными = " + ТаблицаОплат[ИндексОплаты][1].Значение+" руб.");
ОбщийМодульОборудования.НапечататьНефискальнуюСтроку(ОбъектДрайвера, Параметры, ПараметрыПодключения,СуммаБезналичнойОплаты1, ВыходныеПараметры);
ИначеЕсли ТаблицаОплат[ИндексОплаты][0].Значение = 2 Тогда
СуммаБезналичнойОплаты2 = ("Подарочным сертификатом = " + ТаблицаОплат[ИндексОплаты][1].Значение+" руб.");
ОбщийМодульОборудования.НапечататьНефискальнуюСтроку(ОбъектДрайвера, Параметры, ПараметрыПодключения,СуммаБезналичнойОплаты2, ВыходныеПараметры);

КонецЕсли;
КонецЦикла;

///DIMA

// Закрываем чек
Если Результат Тогда
Результат = ОбщийМодульОборудования.ЗакрытьЧек(ОбъектДрайвера, Параметры, ПараметрыПодключения, ТаблицаОплат, ВыходныеПараметры);
КонецЕсли;

Если ВывестиСообщениеПользователю Тогда
ОбщийМодульОборудования.СообщитьПользователю(ПараметрыПодключения.СтрокаЛога);
КонецЕсли;

Возврат Результат;

КонецФункции




Все работает прекрасно. Подарочные карты выводит в отдельную секцию Z отчета.
7. Veika 25 30.09.14 21:02 Сейчас в теме
b-k-v, у меня подобная проблема, используется оплата и подарочными сертификатами и банковскими кредитами. В самом ФР можно настроить еще 2 секции: кредит банка и подарочный сертификат, но вот в рознице я тоже не увидела как это можно исправить..
А как Вы разобрались с этой проблемой?
8. b-k-v 21.10.14 06:36 Сейчас в теме
Добрый день.
Ну третью секция я без особого труда сделал.

Смотрите на примере этой функции.

Объект.Драйвер.ЗакрытьЧек(Объект.ИДУстройства, СуммаНал, СуммаБезнал, 0)

В конце есть нулевой параметр.
Перепишите процедуру которая считает параметр: СуммаБезнал
То есть исключите из него оплату по сертификату. Ну и добавьте параметр в котором будет содержаться сумма оплаты по сертификату.
Получится примерно следующее.
Только в этом случае не только необходимо будет изменть розницу но и обработку обслуживания торгового оборудования.
Объект.Драйвер.ЗакрытьЧек(Объект.ИДУстройства, СуммаНал, СуммаБезнал, СуммаПоСертификату)
А вот четвертую секцию я сколько не старался фискальный регистратор ругался.
Так и не получилось.
9. ZLENKO 398 22.10.14 16:35 Сейчас в теме
Я полностью переписывал работу с подарочными сертификатами в Розница 1.0. У меня есть даже "Подарочный сертификат на произвольную сумму" (сумма определяется стоимостью сертификата при его продаже покупателю) :-) Про то что надо их по отдельному виду оплаты через фискальный аппарат проводить это правда, иначе невозможно разобраться где оплата картой, где сертификатом. По учету продажа ПС - получение предоплаты, использование ПС - использование предоплаты. Соответственно учитываем в налоговом учете продажу ПС и использование.
10. Sandmansss 28 17.12.19 19:06 Сейчас в теме
Понимаю что я в данной ситуации некропостер, но ваша доработка для розницы про подарочные сертификаты очень заинтересовала. Возможно ли приобрести?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот