Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

РОзница 2.2 Печать цен

РОзница 2.2 Печать цен
Я
   opus70
 
30.10.18 - 12:56
Знатоки розницы подскажите, хочу сделать печать 2-х цен
но чтобы вторая цена рассчитывалась так как нужного
 
для этого в Обработку.ПечатьЭтикетокИЦенников в таблицу 
Товары добавил поле ЦенаХХ все отлично считается только 
никак не пойму как ее в макет ценника добавить

просмотрел весь макет Обработку.ПечатьЭтикетокИЦенников.Макеты.ПоляШаблона
такое впечатление что 
из таблицы Товары Цена никак переедается в это макет для печати а все выбирается из текущей базы

подскажите в какую сторону капать нужно
 
 
   opus70
 
1 - 30.10.18 - 12:59
т.е где та связь Обработка.ПечатьЭтикетокИЦенников.Товары
поле "Цена" и как она передается в макет шаблона для печати
   opus70
 
2 - 30.10.18 - 13:07
Нашел в этой ветке дельную 
Гуру-тест: печать остатков на ценнике в Розница 2


пост (82) от   Maniac ТОЛЬКО НЕ ЧЕГО НЕ ПОНЯЛ ПОКА КТО ОБЪЯСНИТ  

В обработке табличная часть Товары. В ней все данные (детально и характеристики и остатки).
Можно добавить колонку с типом строка.

Свернуть эту ТЗ, свернув по товарам, а все характеристики и остатки в одну строку.

В макете ячейка с параметром строковой колонки.
Вуаля получаем печать ценников по товарам, на каждом ценнике все характеристики и их остатки.

Естественно это вмешательство в типовую обработку.

Делаем расширение. подключаем. Получаем модернизированную типовую обработку печати ценников.
   lenochka-semicova
 
3 - 30.10.18 - 13:13
(2) Есть такой макет - ценник акционный. На его примере можно посмотреть, как сделать вывод доп.полей.

если в двух словах - надо поле добавить в текст запроса, выбрать это после в выбранных полях СКД, тогда его можно будет выбрать в самом ценнике.
Для редактирования СКД запускать толстый клиент управляемое приложение.

В большинстве случаев для таких задач никаких "гуру-тестов" решать не надо.
   opus70
 
4 - 30.10.18 - 13:16
(3)да там есть это поле я видел только беда в том что там тоже все рассчитывается т.е. в запросе берется предыдущая реальная цена и нет обращения к таблице Товары идетзапрос в РегиструСведений.ЦеныНоменклатуры и так далее
   opus70
 
5 - 30.10.18 - 13:18
но если использовать ценник акционныймне тогда нужно перед печать  делать Ценообразование хитрое так далее чего не хочется делать
хочется проще и на один раз рассчитал распечатал и отдал пусть клеят
   lenochka-semicova
 
6 - 30.10.18 - 13:30
(4) Тогда в обычном ценнике достаточно дописать
после поля цена
МАКСИМУМ(ЦеныНоменклатуры.Цена * 2) КАК ЦенаБезСкидки50Процентов,

потом после скобочки { после поля Цена, поставить

    ЦенаБезСкидки50Процентов,

Потом выбрать ЦенаБезСкидки50Процентов в макете в раздел "Старая цена"

Ну или типа того.
   opus70
 
7 - 30.10.18 - 14:29
все решил УРА спасибо всем кто помог "Maniac"c его Гуру-тест: печать остатков на ценнике в Розница 2 за идею ну и остальным тоже за поддержку


1. Делаем общий реквизит называем его "ЦенаХХ"  
2. Делаем макет ценника вставляем в него поле "ЦенаХХ"
3. Делаем расширение и в него экспортируем обработку "ПечатьЭтикетокИЦенников затем основную форму 
на форме добавляем в таблицу поле ЦенаХХ
ну и соответствующие расчету кому нужно
4. На кнопку печать вешаем процедуру которая пропишет в Номенклатуру нужное нам дополнительное поле "ЦенаХХ"

все профит минимальными усилиями максимальный результат

код кнопки прилаживаю

&НаКлиенте
Процедура ОстЦена_ПечатьПеред(Команда)
    ОстЦена_ПечатьПередНаСервере();
КонецПроцедуры

&НаСервере
Процедура ОстЦена_ПечатьПередНаСервере()
    Свойство = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ЦенаХХ (Доп. свойства справочника ""Номенклатура"" (Общие))", Истина);
    Для каждого Стр Из Объект.Товары Цикл
        
        если Стр.ЦенаХХ <> 0 ТОгда
            Об = Стр.Номенклатура.Ссылка.ПолучитьОбъект();
            НайденнаяСтрока = Об.ДополнительныеРеквизиты.Найти(Свойство,"Свойство");
            Если НайденнаяСтрока = Неопределено Тогда
                НоваяСтрока = Об. ДополнительныеРеквизиты.Добавить();
                НоваяСтрока.значение = Стр.ЦенаХХ;
                НоваяСтрока.Свойство = Свойство;
                Об.Записать();
            Иначе
                Если НайденнаяСтрока.Значение <> Стр.ЦенаХХ ТОгда
                    НайденнаяСтрока.Значение = Стр.ЦенаХХ;
                Конецесли;
                Об.Записать();
            КонецЕсли;
        КонецЕсли;
    Конеццикла;
КонецПроцедуры
   opus70
 
8 - 30.10.18 - 14:35
Если НайденнаяСтрока.Значение <> Стр.ЦенаХХ ТОгда
                    НайденнаяСтрока.Значение = Стр.ЦенаХХ;
                    Об.Записать();
                Конецесли;

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