Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

УТ 10.3 Печать чека из ПКО. При предоплате количество в чеке приравнивается в единице.

УТ 10.3 Печать чека из ПКО. При предоплате количество в чеке приравнивается в единице.
Я
   Румата
 
29.01.20 - 08:40
УТ 10.3.57.2 При печати чека из ПКО, если это предоплата в процедуре ПривестиДанныеКТребуемомуФормату общего модуля ФорматноЛогическийКонтрольКлиентСервер количество приравнивается к "1". Почему ?



Вот условие, которое значение переменной "БезПередачиТовара" устанавливает в Истину :

ИначеЕсли ПозицияЧека.ПризнакСпособаРасчета = ПредопределенноеЗначение("Перечисление.ПризнакиСпособаРасчета.Аванс")
                ИЛИ ПозицияЧека.ПризнакСпособаРасчета = ПредопределенноеЗначение("Перечисление.ПризнакиСпособаРасчета.ПредоплатаПолная") Тогда
                БезПередачиТовара = Истина;

=================================

Вот дальше код, который при истином значении переменной "БезПередачиТовара" количество в чеке ставит 1, цену приравнивает к сумме :

Если БезПередачиТовара Тогда
                
                Если ПозицияЧека.Свойство("ЕдиницаИзмерения") Тогда
                    ПозицияЧека.ЕдиницаИзмерения = "Платеж";
                КонецЕсли;
                
                Если ПозицияЧека.Свойство("Количество") Тогда
                    ПозицияЧека.Количество = 1;
                КонецЕсли;
                
                Если ПозицияЧека.Свойство("Цена") Тогда
                    ПозицияЧека.Цена = ПозицияЧека.Сумма;
                КонецЕсли;
                
                Если ПозицияЧека.Свойство("ЦенаСоСкидками") Тогда
                    ПозицияЧека.ЦенаСоСкидками = ПозицияЧека.Сумма;
                КонецЕсли;
                
                Если ПозицияЧека.Свойство("СуммаСкидок") Тогда
                    ПозицияЧека.СуммаСкидок = 0;
                КонецЕсли;
                
                ПозицияЧека.Вставить("ПризнакПредметаРасчета", ПредопределенноеЗначение("Перечисление.ПризнакиПредметаРасчета.ПлатежВыплата"));
                ИсправленыОсновныеПараметры = Истина;
            КонецЕсли;

====================


Зачем это сделали, объясните пожалуйста...
   Масянька
 
1 - 29.01.20 - 08:43
(0) При предоплате товара нет. Поэтому и кол-ва нет. Поэтому - 1 предоплата.
   unbred
 
2 - 29.01.20 - 08:44
это типовая конфа?))
   Румата
 
3 - 29.01.20 - 08:46
(1) Товар в чеке присутствует, берется из счета, на основании которого сделан ПКО, количество зачем к "1" приравнивает ?
В счете Кабель 5 метров по 20 рублей, итого 100 рублей.
В Чеке печатается Кабель 1 метр по 100 рублей, итого 100 рублей.
   Румата
 
4 - 29.01.20 - 08:48
(2) Да, типовая, общий модуль ФорматноЛогическийКонтрольКлиентСервер наверное недавно прикрутили, я такого не помню )
   Масянька
 
5 - 29.01.20 - 08:49
(3) Я могу тебе сказать только "предоплата". Других различий я не вижу.
А что в голове у разрабов, а тем более у того, кто придумал онлайн кассы - без понятия.
   Сияющий в темноте
 
6 - 29.01.20 - 08:50
просто,вместо единицы измерения нужно было менять наименование,а этот код его не меняет.
но,с учетом единицы будет:
кабель,единица:платеж,количество:1
просто,не все кассы умеют единицу печатать-об этом 1с не подумала.
   Румата
 
7 - 29.01.20 - 08:58
В этом же модуле, комментарии разработчиков :

// Нужен ли этот кусман?

    Если ОсновныеПараметры.Свойство("СпособФорматноЛогическогоКонтроля", СпособФорматноЛогическогоКонтроля) Тогда
        Если НЕ (СпособФорматноЛогическогоКонтроля = ПредопределенноеЗначение("Перечисление.СпособыФорматноЛогическогоКонтроля.РазделятьСтроки")
            ИЛИ СпособФорматноЛогическогоКонтроля = ПредопределенноеЗначение("Перечисление.СпособыФорматноЛогическогоКонтроля.ЗачитыватьСуммы")) Тогда
            Возврат;
        КонецЕсли;
    Иначе
        Возврат;
    КонецЕсли;
    // /Нужен ли этот кусман?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.