Имя: Пароль:
1C
1С v8
Подсветка разницы цен номенклатуры
0 WhiteDragon93
 
05.08.13
12:15
Есть задача: подсветить в документе установки цен номенклатуры строки в которых цена отличается от текущей, красным/зеленым для больше/меньше. Была бы в этом документе ТЧ, можно бы было пробежаться по строкам и делать запрос, потом сравнить и все. Но там табличное поле, плюс поля с ценами выглядят, как цена0, цена1 и т.д. И совсем непонятно, как это сделать, есть у кого мысли? Или может это реализовано уже и зря изобретаю велосипед? КА 1.1
1 Asmody
 
05.08.13
12:19
форма управляемая?
2 WhiteDragon93
 
05.08.13
12:24
(1) нет
3 WhiteDragon93
 
05.08.13
12:25
(1) комплексную еще не перевели на управляемые формы
4 Сти
 
05.08.13
12:29
(0)
вариант 1) Текущие цены в ТЗ, в ПриВыводеСтроки поиск по ТЗ,сравнение, подсветка

вариант 2) Раз не ТЧ, то источник данных для табличного поля источник данных ТЗ. Тогда ТЗ в запрос параметром, и дальше точно так же, как и с ТЧ.

ВЫБРАТЬ    ТЗ.Поле1,
    ТЗ.Поле2,
    ТЗ.Поле3
ПОМЕСТИТЬ ТЧ
ИЗ
    &ТЗ КАК ТЗ
;

ВЫБРАТЬ
    ТЧ.Поле1,
    ТЧ.Поле2,
    ТЧ.Поле3
ИЗ
    ТЧ КАК ТЧ
ЛЕВОЕ СОЕДИНЕНИЕ ТекущиеЦены и т.д.
5 alexiv79
 
05.08.13
12:29
(3)Не знаю за КА, но в УПП нет выделения отличающихся цен. Вообщеэто реализовывается через процедуру ПриПолученииДанных() табличного поля. Найди документ в КА, в котором это процедура используется и посмотри что и как
6 alexiv79
 
05.08.13
12:38
+(5) будет типа такого
Процедура ТоварыПриПолученииДанных(Элемент, ОформленияСтрок)
    Для Каждого ОформлениеСтроки Из ОформленияСтрок Цикл
        ДанныеСтроки = ОформлениеСтроки.ДанныеСтроки;
        Если ДанныеСтроки=Неопределено Тогда
            Продолжить;
        КонецЕсли;

        ЦенаСтарая = ПолучитьСтаруюЦену(ДанныеСтроки); // здесь получаем цену
                
    // покрасим строку
    Если ЦенаСтарая <ДанныеСтроки.Цена Тогда
                       ОформлениеСтроки.ЦветТекста=Новый Цвет(0,0,150);
            КонецЕсли;
КонецПроцедуры
7 Asmody
 
05.08.13
12:42
(3) [Редакция 1.1 конфигурации "Комплексная автоматизация" наглядно демонстрирует преимущества новой версии 8.2 платформы "1С:Предприятие". В новой редакции реализована возможность использования в режиме тонкого клиента и веб-клиента следующей функционал…] http://v8.1c.ru/ka/index.htm
врут, значит?
8 WhiteDragon93
 
05.08.13
12:57
(7) он есть, но не весь, коряво как-то
9 WhiteDragon93
 
05.08.13
12:58
(7) сам не видел, но знакомый говорил, что 1С собирается позже выпустить полностью новую КА на управляемых формах
10 WhiteDragon93
 
05.08.13
15:15
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
               |    ЦеныНоменклатурыСрезПоследних.Цена
               |ИЗ
               |    РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
               |ГДЕ
               |    ЦеныНоменклатурыСрезПоследних.Номенклатура = &Номенклатура
               |    И ЦеныНоменклатурыСрезПоследних.ТипЦен = &ТипЦен";
              
Запрос.УстановитьПараметр("Номенклатура",Номенклатура);
Запрос.УстановитьПараметр("ТипЦен",Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("Розничная"));

Не работает вот такой простенький запрос для получения старой цены О.0