Имя: Пароль:
1C
1С v8
v8: Условие на свойство в запросе
,
0 Татьяна211287
 
10.06.12
16:40
Нужна помощь!
Как правильно в запросе написать условие, чтобы было верноее соответвтвие - свойствах документа "Заказ покупателя" задаю новое свойство "Срок выполнения", а при выполнении запроса вывыдотся последнее записанное свойство, а не то которое надо
Запрос.Текст =
  "ВЫБРАТЬ
  |    ЗначенияСвойствОбъектов.Значение,
  |    ЗначенияСвойствОбъектов.Свойство.Код,
  |    ЗначенияСвойствОбъектов.Свойство.Представление
  |ИЗ
  |    Документ.ЗаказПокупателя КАК ЗаказПокупателя
  |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
  |            ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.СвойстваОбъектов КАК СвойстваОбъектов
  |            ПО ЗначенияСвойствОбъектов.Свойство = СвойстваОбъектов.Ссылка
  |        ПО (ЗначенияСвойствОбъектов.Объект = ЗаказПокупателя.Ссылка)
  |ГДЕ
  |    ЗаказПокупателя.Ссылка = &Ссылка";    
   Выборка = Запрос.Выполнить().Выбрать();
1 vicof
 
10.06.12
16:43
|ГДЕ
  |    ЗаказПокупателя.Ссылка = &Ссылка
|И ЗначенияСвойствОбъектов.Свойство = &Свойство
2 Татьяна211287
 
10.06.12
16:58
не работает(
3 Rie
 
10.06.12
17:00
(2) Как именно не работает? Как задаёшь свойство? Что имеется в виду в (0) под "последнее записанное"?
4 Agent ООЗ
 
10.06.12
17:00
долго название темы придумывала?
5 Zeldan
 
10.06.12
17:01
Ну наверное свойств может быть много для одного дока, тогда нужно "В" ?
6 Татьяна211287
 
10.06.12
17:03
да, у документа много свойтсв, и как рах в макет выводится значение последнего заданного свойства
7 Пеппи
 
10.06.12
17:06
здесь нужно внутреннее соединение а не левое
8 Адинэснег
 
10.06.12
17:06
а почему соединение к ПВХ, а не к регистру сведений?
9 Rie
 
10.06.12
17:07
(6) Как именно указываешь, какое свойство тебе требуется (в запросе из (0) с учётом (1))?
10 Пеппи
 
10.06.12
17:12
(8) Ну неужели непонятно :) учится человек.
11 Татьяна211287
 
10.06.12
17:13
(12) вот и не знаю как задать это условие , чтоб было то свойтво, которое мне надо
12 Татьяна211287
 
10.06.12
17:24
нужна помощь новичку
13 Rie
 
10.06.12
17:30
(11)
Запрос.Текст = "..."; // тут текст запроса, что в (0) с поправкой (1)
Запрос.УстановитьПараметр("Ссылка",...); // тут у тебя что написано?
Запрос.УстановитьПараметр("Свойство",...);
// а вот тут либо у тебя "Срок выполнения" - предопределённый вид характеристики, и тогда так и пишешь
// ПланыВидовХарактеристик.СвойстваОбъектов.СрокВыполнения
// либо его как-то надо найти (по наименованию или ещё как-то).
14 Татьяна211287
 
10.06.12
17:36
Запрос.УстановитьПараметр("Свойство",ПланыВидовХарактеристик.СвойствОбъектов.Свойство);
Запрос.Текст =
  "ВЫБРАТЬ
  |    ЗначенияСвойствОбъектов.Значение,
  |    ЗначенияСвойствОбъектов.Свойство.Код,
  |    ЗначенияСвойствОбъектов.Свойство.Представление
  |ИЗ
  |    Документ.ЗаказПокупателя КАК ЗаказПокупателя
  |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
  |            ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.СвойстваОбъектов КАК СвойстваОбъектов
  |            ПО ЗначенияСвойствОбъектов.Свойство = СвойстваОбъектов.Ссылка
  |        ПО (ЗначенияСвойствОбъектов.Объект = ЗаказПокупателя.Ссылка)
  |ГДЕ
  |    ЗаказПокупателя.Ссылка = &Ссылка
  |И ЗначенияСвойствОбъектов.Свойство = &Ссылка";    
   Выборка = Запрос.Выполнить().Выбрать();
   Пока Выборка.Следующий() Цикл
//Вот если задать ПВХ предопределенный, то как по коду сформировать отбор этого значения
КонецЦикла;
15 Rie
 
10.06.12
17:40
(14) См. (1) - там правильно написано.