Имя: Пароль:
1C
1С v8
БП 3.0 ошибка арифметической опереции с дополнительным реквизитом в запросе
0 belas
 
08.03.14
12:38
Коллеги подскажите!

В БП 3.0 Создал дополнительный  реквизит Номенклатуры  - "Оплата"  Тип Число.
Запросом получаю список номенклатуры с этим свойством, и в  запросе значение свойства нужно умножить на число.. например 100 :)

ВЫБРАТЬ
    Номенклатура.Ссылка,
    НоменклатураДополнительныеРеквизиты.Значение КАК Значение
ПОМЕСТИТЬ втНоменклатураОплата
ИЗ
    Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
        ПО НоменклатураДополнительныеРеквизиты.Ссылка = Номенклатура.Ссылка
ГДЕ
    НоменклатураДополнительныеРеквизиты.Свойство = &СвойствоНоменклатураОплата

СГРУППИРОВАТЬ ПО
    НоменклатураДополнительныеРеквизиты.Значение,
    Номенклатура.Ссылка
;

X
ВЫБРАТЬ
    Номенклатура.Ссылка,
    втНоменклатураОплата.Значение Как НужноеЗначение
ИЗ
    Справочник.Номенклатура КАК Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ втНоменклатураОплата КАК втНоменклатураОплата
        ПО (втНоменклатураОплата.Ссылка = Номенклатура.Ссылка)

Если в  запросе в  описании поля написать - втНоменклатураОплата.Значение * 100 Как НужноеЗначение, конструктор запросов, и сам менеджер при выполнении  ругается на эту строку  запроса - <Неверные параметры "*">
Если вместо умножения , например сложение, то ошибка  будет выглядеть - <Неверные параметры "+"> и т.д.
1 NcSteel
 
08.03.14
12:39
Выразить(втНоменклатураОплата.Значение как Число) * 100
2 belas
 
08.03.14
12:42
(1) В запросе пишу ТИПЗНАЧЕНИЯ(втНоменклатураОплата.Значение) Как ТипСвойства

Результат выполнения - Число
3 NcSteel
 
08.03.14
12:46
(2) Ну и что, реквизит составной поэтому нужно обязательно использовать выразить, что бы подсказать системе какой тип ты ожидаешь
Основная теорема систематики: Новые системы плодят новые проблемы.