Имя: Пароль:
1C
Как страшно жить
Вычисляемая колонка в динамическом списке. Получение цены согласно курса.
,
0 GhostAnton
 
09.02.13
16:07
Прошу вас о помощи с динамическим списком справочника на платформе 8.2, Задача у меня такая: Получить перечень имеющегося товара в список справочника управляемого приложения, при этом необходимо цены на товар отобразить с учетом курса и типа выбранной цены. С помощью произвольного запроса у меня получается получать цены согласно вида цены (розница, закупка), но никак не получается сделать пересчет цен по курсу выбранной валюты для отображения. В 8.1 это реализовывал с помощью ПриВыводеСтроки() один из вариантов решения, а сдесь не понимаю как это сделать. В запросе формулы использовать как я понимаю нельзя, а тогда как быть? Помогите пожалуйста.
Текст моего запроса:
ВЫБРАТЬ
   СправочникТМЦ.Ссылка,
   СправочникТМЦ.ВерсияДанных,
   СправочникТМЦ.ПометкаУдаления,
   СправочникТМЦ.Предопределенный,
   СправочникТМЦ.Родитель,
   СправочникТМЦ.ЭтоГруппа,
   СправочникТМЦ.Код,
   СправочникТМЦ.Наименование,
   СправочникТМЦ.ПолнНаименование,
   СправочникТМЦ.Автор,
   СправочникТМЦ.Издательство,
   СправочникТМЦ.Рубрика,
   СправочникТМЦ.Серия,
   СправочникТМЦ.ШтрихКоды.(
       Ссылка,
       НомерСтроки,
       ШтрихКод
   ),
   ЦеныТМЦСрезПоследних.ВидЦены,
   ЦеныТМЦСрезПоследних.Цена
ИЗ
    Справочник.ТМЦ КАК СправочникТМЦ
ЛЕВОЕ СОЕДИНЕНИЕ
   РегистрСведений.ЦеныТМЦ.СрезПоследних КАК ЦеныТМЦСрезПоследних
1 GhostAnton
 
09.02.13
16:08
ПО СправочникТМЦ.Ссылка=ЦеныТМЦСрезПоследних.ТМЦ
       И
           ЦеныТМЦСрезПоследних.ВидЦены = &ВидЦены
2 DrShad
 
09.02.13
16:17
можно использовать формулы в запросе умножай цену на курс и будет тебе счастие
3 GhostAnton
 
09.02.13
16:20
Если не трудно покажите, курс передеам
Курс = &Курс

а как именно применить формулу? Буду признателен. Спасибо за то что откликнулись.
4 GhostAnton
 
09.02.13
16:23
и как правильно передать в запрос курс

Ошибка в запросе набора данных
по причине:
{(30, 8)}: Поле не найдено "Курс"
ГДЕ <<?>>Курс = &Курс
5 DrShad
 
09.02.13
16:28
соединяй со срезом последних по регистру сведений Курсы валют и будет у тебя курс
6 GhostAnton
 
09.02.13
16:29
Спасибо, все получилось. Огромное спасибо за помощь
Вот конечный текст запроса:
ВЫБРАТЬ
   СправочникТМЦ.Ссылка,
   СправочникТМЦ.ВерсияДанных,
   СправочникТМЦ.ПометкаУдаления,
   СправочникТМЦ.Предопределенный,
   СправочникТМЦ.Родитель,
   СправочникТМЦ.ЭтоГруппа,
   СправочникТМЦ.Код,
   СправочникТМЦ.Наименование,
   СправочникТМЦ.ПолнНаименование,
   СправочникТМЦ.Автор,
   СправочникТМЦ.Издательство,
   СправочникТМЦ.Рубрика,
   СправочникТМЦ.Серия,
   СправочникТМЦ.ШтрихКоды.(
       Ссылка,
       НомерСтроки,
       ШтрихКод
   ),
   ЦеныТМЦСрезПоследних.ВидЦены,
   ЦеныТМЦСрезПоследних.Цена*&Курс КАК Цена
ИЗ
    Справочник.ТМЦ КАК СправочникТМЦ
ЛЕВОЕ СОЕДИНЕНИЕ
   РегистрСведений.ЦеныТМЦ.СрезПоследних КАК ЦеныТМЦСрезПоследних
       
       ПО СправочникТМЦ.Ссылка=ЦеныТМЦСрезПоследних.ТМЦ
       И
           ЦеныТМЦСрезПоследних.ВидЦены = &ВидЦены
           

а в моделу при создании на сервере передача параметров и при изменении вида цены и валюты следующее:

   Список.Параметры.УстановитьЗначениеПараметра("ВидЦены",  ВидЦены);
   Список.Параметры.УстановитьЗначениеПараметра("Курс",  Курс);

и дальше обновляю список:

Элементы.Список.Обновить();
7 GhostAnton
 
09.02.13
16:31
Если делать как в (5) будет работать быстрее чем я реализовал?
8 DrShad
 
09.02.13
16:39
(7) будет правильней, там еще по валюте цены можно соединить
9 servs
 
09.02.13
16:42
Быстрее будет, если перенесешь вид цены в параметр виртуальной таблицы:
СрезПоследних(, ВидЦены = &ВидЦены)
и поубирай все лишние поля из запроса
10 GhostAnton
 
09.02.13
17:25
Все супер конечно, только теперь возникла из-за этого проблема, не отображает командную панел и не получается открыть для редактирования двойным кликом элемент справочника. Что не так я сделал? почему это исчезло?
11 DrShad
 
09.02.13
17:27
ОСновнаяТаблица демонического списка
12 GhostAnton
 
09.02.13
17:34
Спасибо, :) это действительно какой-то "демонический список" Все подправил и стало нормально работать. Еще раз огромное вас спасибо.
13 GhostAnton
 
09.02.13
20:33
Очень понравилось что можно так реализовать в управляемых формах, база работает на порядок быстрее чем в 8.1, да и красивее получается. Еще раз огромное спасибо за помощь.
14 DrShad
 
09.02.13
21:00
(13) сильно не обольщайся :))) там нельзя использовать ВТ, а это сильно огорчает