7.7 КАк добавить цену в ценник?

Тема в разделе "Типовые решения "1С:Предприятие 7.7"", создана пользователем Renta, 5 окт 2009.

  1. TopicStarter Overlay
    Renta
    Offline

    Renta

    Регистрация:
    5 окт 2009
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Появилась такая задача: в ценник нужно добавить цену товара с 20-ти % скидкой. Отпускную цену необходимо оставить, но сделать менее "заметной" :unsure: .
    Печать ценника происходит по обработке ("Печать ценников").

    Код:
    //******************************************************************************
    // ДобавитьЦенник(Таб, ПечФирма, ПечНаименование, ПечЕдиница, ПечРозн, Столбик, Ряд)
    //
    // Параметры:
    //  Таб             - таблица, в которую выполняется вывод ценника
    //  ПечНаименование - наименование товара
    //  ПечЕдиница      - единица измерения товара
    //  ПечРозн         - цена товара
    //  Столбик         - номер столбика.
    //  Ряд             - номер ряда
    //
    // Возвращаемое значение:
    //  Нет.
    //
    // Описание:
    //  Добавляет ценник в таблицу.
    //
    Процедура ДобавитьЦенник(Таб, ПечФирма, ПечНаименование, ПечЕдиница, ПечРозн, Столбик, Ряд)
    
    Столбик    = ?(Столбик = 0, 1      , 0  );
    Ряд        = ?(Столбик = 0, Ряд + 1, Ряд);
    
    Если Ряд > 3 Тогда
    Таб.НоваяСтраница();
    Ряд = 1;
    КонецЕсли;
    
    Если Столбик = 0 Тогда
    Таб.ВывестиСекцию("Товар|Ценник");
    Иначе
    Таб.ПрисоединитьСекцию("Товар|Ценник");
    КонецЕсли;
    
    КонецПроцедуры // ДобавитьЦенник()
    
    //******************************************************************************
    // Сформировать(ТаблицаТоваров, ПечФирма)
    //
    // Параметры:
    //  ТаблицаТоваров    - таблица значений, содержащая информацию о цене товара
    //  ПечФирма        - наименование фирмы, которое будет выводиться вверху ценника
    //
    // Возвращаемое значение:
    //  Нет.
    //
    // Описание:
    //  Формирует таблицу с ценниками.
    //
    Процедура Сформировать(ТаблицаТоваров,ПечФирма)
    
    //  Создание Таблицы для выходного отчета
    Таб = СоздатьОбъект("Таблица");
    Таб.ИсходнаяТаблица("Таблица");
    
    Столбик = 1;
    Ряд     = 0;
    
    ТаблицаТоваров.ВыбратьСтроки();
    Пока ТаблицаТоваров.ПолучитьСтроку() = 1 Цикл
    ПечРозн    = глФРМ(ТаблицаТоваров.Цена, ТаблицаТоваров.Валюта);
    ПечНаименование    = ТаблицаТоваров.Товар;
    ДобавитьЦенник(Таб, ПечФирма, ТаблицаТоваров.Товар, ТаблицаТоваров.Единица, ПечРозн, Столбик, Ряд);
    глОживить(1);
    КонецЦикла;
    
    //Вызов выходного отчета в окно просмотра и редактирования.
    Таб.Опции(0,0,0,0,"ПечатьЦенников","ПечатьЦенников");
    Таб.ТолькоПросмотр(1);
    Таб.Показать("Товарные ценники","");
    
    КонецПроцедуры
    
    //******************************************************************************
    // Предопределенная процедура
    //
    Процедура ПриОткрытии()
    
    СтатусВозврата(0);
    ДанныеДляПечати = Форма.Параметр;
    
    Если ТипЗначенияСтр(ДанныеДляПечати) <> "СписокЗначений" Тогда
    Возврат;
    КонецЕсли;
    
    ПечФирма       = ДанныеДляПечати.Получить("Фирма");
    ТаблицаТоваров = ДанныеДляПечати.Получить("Таблица");
    
    Сформировать(ТаблицаТоваров, ПечФирма);
    
    КонецПроцедуры // ПриОткрытии()
    
    
    Я пытался ввести новую переменную (под "ПечРозн"), которая бы высчитывала цену со скидкой. Затем эту переменную прописывал в печатной форме (в ячейке над основной ценой). Но результата вообще никакого: ни плохого, ни хорошего. Подскажите, как лучше получить эту цену в ценнике!
    Заранее спасибо.
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Код:
    Перем  ПечСоСкидкой;
    
    ////.............
    
    
    Процедура Сформировать(ТаблицаТоваров,ПечФирма)
    //...................
    Пока ТаблицаТоваров.ПолучитьСтроку() = 1 Цикл        
    ПечРозн    = глФРМ(ТаблицаТоваров.Цена, ТаблицаТоваров.Валюта);    
    ПечСоСкидкой=глФРМ(Окр(ТаблицаТоваров.Цена*0.8, ТаблицаТоваров.Валюта));    ;    
    ПечНаименование    = ТаблицаТоваров.Товар;        
    ДобавитьЦенник(Таб, ПечФирма, ТаблицаТоваров.Товар, ТаблицаТоваров.Единица, ПечРозн, Столбик, Ряд);         
    глОживить(1);    
    КонецЦикла;
    ////.............
    КонецПроцедуры
    
    
    ////.............
    
    
    
    Ну а шаблон ты уже изменил
  3. TopicStarter Overlay
    Renta
    Offline

    Renta

    Регистрация:
    5 окт 2009
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    2 Бухгалтерский угодник

    "ПечСоСкидкой" нужно вставлять в печатную форму и в "ДобавитьЦенник"?
  4. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    В "ДобавитьЦенник" не нужно - описал переменную в начале модуля. Она доступна во всех процедурах. Достаточно только в шаблоне.

Поделиться этой страницей