Имя: Пароль:
1C
 
1С УТ 10.3 Печать чека из ПКО Почему могут не печататься товары в чеке?
0 evorle145
 
05.02.21
10:55
Отладчиком смотрю, в ПараметрыФискализацииЧека.ПозицииЧека массив заполнен. Указаны конкретные номенклатуры, количество, цена, сумма, но в чеке просто написано "Принято от частное лицо Основание и сумма" и все.. а детализации нет...
1 ColonelAp4u
 
05.02.21
11:05
(0) потому что нет реализации.
2 ColonelAp4u
 
05.02.21
11:06
и у Вас заполняется фиктивная строка с признаком расчета аванс или предоплата.
3 evorle145
 
05.02.21
11:13
(1) реализация есть. Указана как документ расчета. Ну вот тут заполняется:

    РезультатЗапроса = Запрос.ВыполнитьПакет();
    
    Выборка = РезультатЗапроса[РезультатЗапроса.ВГраница()].Выбрать();
    Пока Выборка.Следующий() Цикл
        
        СтрокаПозицииЧека = МенеджерОборудованияКлиентСервер.ПараметрыФискальнойСтрокиЧека();
        СтрокаПозицииЧека.ПризнакПредметаРасчета = Перечисления.ПризнакиПредметаРасчета.ПлатежВыплата;
        
        ЗаполнитьЗначенияСвойств(СтрокаПозицииЧека, Выборка);
        
        СтрокаПозицииЧека.Сумма = Окр(СтрокаПозицииЧека.Сумма, 2);
        
        СтрокаПозицииЧека.Наименование = НоменклатураКлиентСервер.ПредставлениеНоменклатурыДляПечати(
            Выборка.НоменклатураНаименование,
            Выборка.ХарактеристикаНаименование,
            Выборка.УпаковкаНаименование);
        
        СтрокаПозицииЧека.СтавкаНДС = РозничныеПродажиКлиентСервер.СтавкаНДСФискальнойОперации(Выборка.СтавкаНДС);
        СтрокаПозицииЧека.НомерСекции = 1;
        
        Если СтрокаПозицииЧека.Количество <> 0 Тогда
            СтрокаПозицииЧека.ЦенаСоСкидками = Окр(СтрокаПозицииЧека.Сумма / СтрокаПозицииЧека.Количество, 2);
        КонецЕсли;
        
        ПозицииЧека.Добавить(СтрокаПозицииЧека);
        ИтогоСуммаЧека = ИтогоСуммаЧека + СтрокаПозицииЧека.Сумма;
        
    КонецЦикла;
    
    ПараметрыФискализацииЧека.ПозицииЧека = ПозицииЧека;



Признак предмета расчета: СтрокаПозицииЧека.ПризнакПредметаРасчета = Перечисления.ПризнакиПредметаРасчета.ПлатежВыплата;
4 evorle145
 
05.02.21
11:37
ЭтоТоварныйДокумент = ТипЗнч(Ссылка) = Тип("ДокументСсылка.РеализацияТоваровУслуг") ИЛИ
        ТипЗнч(Ссылка) = Тип("ДокументСсылка.ВозвратТоваровОтПокупателя");
        
    Если ЭтоТоварныйДокумент Тогда
        
        Если Ссылка.ВалютаДокумента = глЗначениеПеременной("ВалютаРегламентированногоУчета") Тогда
            КурсОплаты = 1;
        Иначе
            КурсОплаты = Ссылка.КурсВзаиморасчетов / Ссылка.КратностьВзаиморасчетов;
        КонецЕсли;
        
        ЗаполнитьОплатыДляТоварногоДокумента(Ссылка, ОбщиеПараметры, КурсОплаты);
        
        ЗаполнитьТоварныеПозицииДляТоварногоДокумента(Ссылка, ОбщиеПараметры, КурсОплаты);
        
    Иначе
        
        ЗаполнитьОплатыДляПлатежногоДокумента(Ссылка, ОбщиеПараметры);
        
        РасчетыСПокупателем = (ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПКО.ОплатаПокупателя"))
            ИЛИ (ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийРКО.ВозвратДенежныхСредствПокупателю"))
            ИЛИ (ТипЗнч(Ссылка) = Тип("ДокументСсылка.ОплатаОтПокупателяПлатежнойКартой"))
            Или (ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийПоступлениеБезналичныхДенежныхСредств.ОплатаПокупателя"));
        ЭтоВозврат = (ВидОперации = ПредопределенноеЗначение("Перечисление.ВидыОперацийОплатаОтПокупателяПлатежнойКартой.ВозвратДенежныхСредствПокупателю"))
            ИЛИ (ТипЗнч(Ссылка) = Тип("ДокументСсылка.РасходныйКассовыйОрдер")) ИЛИ (ТипЗнч(Ссылка) = Тип("ДокументСсылка.ПлатежноеПоручениеИсходящее"));
        
        ЗаполнитьТоварныеПозицииДляПлатежногоДокумента(Ссылка, ОбщиеПараметры,
            РасчетыСПокупателем, ЭтоВозврат, КомуОтКого, Основание);
        
    КонецЕсли;
5 evorle145
 
05.02.21
11:37
ЭтоТоварныйДокумент  у меня ложь... то есть ссылка у меня получается ПКО ... а надо видимо чтобы в этот кусок кода попадала РТУ
6 Ненавижу 1С
 
гуру
05.02.21
11:39
Вид операции ПКО какой?
7 evorle145
 
05.02.21
11:44
(6) оплата от покупателя
8 ColonelAp4u
 
05.02.21
13:54
(4) посмотри в 11 ут если есть возможность, там когда бьется чек из пко 1С проверяет, если есть реализация то пко по товарный, иначе предоплата/аванс.
9 evorle145
 
05.02.21
21:47
(8) в ут 10.3 развилка: или это товарный документ или нет. Если товарный то выводить детелизацию, если нет, то выводить общую строку..
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший