Имя: Пароль:
1C
1С v8
Запрос. Выразить.
0 polkin
 
28.11.14
21:38
ЗаказПоставщику.СостояниеЗаказа имеет 4 состояния.
Заказано
Оплачено
Выслано
Получено

Как в запросе выразить состояние?

ВЫБОР
    КОГДА ЗНАЧЕНИЕ(ЗаказПоставщику.СостояниеЗаказа) = Выслано
        ТОГДА ЗаказыПоставщикамОстатки.КоличествоОстаток
    ИНАЧЕ 0
КОНЕЦ

так ругается....
1 ДенисЧ
 
28.11.14
21:40
КОГДА ЗаказПоставщику.СостояниеЗаказа = ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказа.Выслано)
2 polkin
 
28.11.14
21:54
там не перечисления а справочник
СостоянияЗаказовПоставщикам
3 ДенисЧ
 
28.11.14
21:56
КОГДА ЗаказПоставщику.СостояниеЗаказа = &ПараметрВыслано

Тогда так, если не предопределенное.
Если же да - тогда (1) с заменой типа.
4 polkin
 
28.11.14
21:59
КОГДА ЗаказПоставщику.СостояниеЗаказа = ЗНАЧЕНИЕ(СостоянияЗаказовПоставщикам.Наименование.Выслано)

тоже ругается
5 ДенисЧ
 
28.11.14
22:03
(4) Омайгод.
КОГДА ЗаказПоставщику.СостояниеЗаказа = ЗНАЧЕНИЕ(Справочник.СостоянияЗаказовПоставщикам.Выслано)

Может, послать тебя? Книжки там почитать?
Или вообще, в путешествие? Пешее?

Когда же вы научитесь учебники и документацию читать...
6 polkin
 
28.11.14
22:10
(5)
Не работает...

Может не нужно?
7 ДенисЧ
 
28.11.14
22:13
(6) У меня работает.
У тебя состояния заказов предопределены?
8 polkin
 
28.11.14
22:15
да. 4 состояния.
9 Bigcalm
 
28.11.14
22:17
(8) КОГДА ЗаказПоставщику.СостояниеЗаказа = ЗНАЧЕНИЕ(Справочник.СостоянияЗаказовПоставщикам.Выслано)
попробуй так
10 mehfk
 
28.11.14
22:17
(5) Лучше в магазин ручного инструмена за напильником для подточки клюва.
11 polkin
 
28.11.14
22:20
(9) в (5) то же - не работает. Ошибка в значении...
12 Bigcalm
 
28.11.14
22:23
(11) А это зачем: ЗНАЧЕНИЕ(ЗаказПоставщику.СостояниеЗаказа) ?
Попробуй так:
ВЫБОР
    КОГДА ЗаказПоставщику.СостояниеЗаказа  =      ЗНАЧЕНИЕ(Справочник.СостоянияЗаказовПоставщикам.Выслано)
        ТОГДА ЗаказыПоставщикамОстатки.КоличествоОстаток
    ИНАЧЕ 0
КОНЕЦ
13 mehfk
 
28.11.14
22:24
А вот так ?
ВЫБРАТЬ ЗНАЧЕНИЕ(Справочник.СостоянияЗаказовПоставщикам.Выслано)
14 polkin
 
28.11.14
22:29
(12)(13) не работает
перед Справочник вопросы....
15 Bigcalm
 
28.11.14
22:35
(14) Попробуй так:

ВЫБОР
    КОГДА ЗаказПоставщику.СостояниеЗаказа  Ссылка Справочник.СостояниеЗаказа ТОГДА ЗаказыПоставщикамОстатки.КоличествоОстатокЗаказПоставщику.СостояниеЗаказа = ЗНАЧЕНИЕ(Справочник.СостоянияЗаказовПоставщикам.Выслано)
        
Иначе "Реквизит не справочник"    
ИНАЧЕ 0
КОНЕЦ
16 mehfk
 
28.11.14
22:35
Предоставь скрин чтобы видно было запросом из (13) и ошибку
17 ДенисЧ
 
28.11.14
22:35
(14) Регистр проверь. Букв который.
18 Bigcalm
 
28.11.14
22:37
(15) Пардон, что-то не то получилось.
Смысл в том чтобы проверить какого типа у тебя реквизит, и потом уже принимать решение))
19 Bigcalm
 
28.11.14
22:39
Эта, гуру, скажите а что вернет такая штука:
20 Bigcalm
 
28.11.14
22:40
ЗНАЧЕНИЕ(ЗаказПоставщику.СостояниеЗаказа)  ?
21 polkin
 
28.11.14
22:50
(20)
    КОГДА ЗаказПоставщику.СостояниеЗаказа  =      ЗНАЧЕНИЕ(ЗаказПоставщику.СостояниеЗаказа.Выполнено)

не работает
после ЗНАЧЕНИЕ вопросы
22 ДенисЧ
 
28.11.14
22:52
(19) (20) ошибку
23 polkin
 
28.11.14
22:53
Может не там копаю?
ЗаказПоставщику.СостояниеЗаказа имеет 4 состояния.
Заказано
Оплачено
Выслано
Получено

Нужно получить таблицу номенклатуры по 3 состояниям
Заказано
Оплачено
Выслано
24 ДенисЧ
 
28.11.14
22:56
(23) выбери всё, сгруппируй и по состоянию.
25 ДенисЧ
 
28.11.14
22:56
И вообще - судя по (14) у тебя состояния не предопределённые.
26 mehfk
 
28.11.14
22:58
Судя по (14) он слово "справочник" не смог написать без ошибки
27 mehfk
 
28.11.14
22:59
А судя по (21) слово "Справочник" так и не было написано
28 ДенисЧ
 
28.11.14
23:01
(26) (27) Жаль, метла уже занята...
Ну, могу предложить ТС совковую лопату...
29 mehfk
 
28.11.14
23:02
Совковая лопата - это уголек, песочек, щебеночка. Вилы предлагай. Вилы - это навоз.
30 ДенисЧ
 
28.11.14
23:06
(29) А как же из сортира-то вычерпывать? Только совковая. Ну ещё ведро...
31 Bigcalm
 
28.11.14
23:08
Выбор когда Заказ.Поставщику.СостояниеЗаказа  Ссылка Справочник.СостояниеЗаказа тогда ЗаказыПоставщикамОстатки.КоличествоОстаток
Иначе "Это не ссылка на справочник Состояние заказов" Иначе 0 конец
32 HEKPOH
 
28.11.14
23:09
походу, ТС прикалывается))))
33 polkin
 
28.11.14
23:11
(24) Тогда на одну номенклатуру несколько строк в зависимости от состояния получится....
34 Bigcalm
 
28.11.14
23:28
Номенклатура1 Заказ Выслано 100
Номенклатура1 Заказ Выслано 200
Номенклатура1 Заказ Провал  50

Группируем, получаем:
Номенклатура1 Заказ Выслано 300
Номенклатура1 Заказ Провал  50

В итоге что получить-то надо?
35 polkin
 
28.11.14
23:37
Номенклатура в ЗаказПоставщику1 СостояниеЗаказа ЗАКАЗАНО 50
Номенклатура в ЗаказПоставщику2 СостояниеЗаказа ОПЛАЧЕНО 150
Номенклатура в ЗаказПоставщику3 СостояниеЗаказа ВЫСЛАНО 500

Нужно получить таблицу Номенклатуры
ЗАКАЗАНО   ОПЛАЧЕНО   ВЫСЛАНО
50          150         500
36 ДенисЧ
 
28.11.14
23:42
(35) СГРУППИРОВАТЬ ПО СостояниеЗаказа
37 Bigcalm
 
28.11.14
23:44
(35) Если отчет на СКД, то при открытии, или при формировании компоновки, передавай Список значений, в котором перечислишь все твои значения состояния заказа.
А в запросе напиши так:
КОГДА ЗаказПоставщику.СостояниеЗаказа  В (&СписокСтатусов)
38 vicof
 
28.11.14
23:59
не думал, что пятница настолько черная
39 Bigcalm
 
29.11.14
00:09
(38) А каков ответ на вопрос-то?
40 vicof
 
29.11.14
00:53
(39) да уже 20 раз ответили, все варианты показали
41 Web00001
 
29.11.14
07:26
(39)Ответ - Если предопределенное значение определено используй (5). Если ты ориентируешься по наименованию, либо передавай через параметр в запрос, либо найди заранее и помести в ВТ. Все работает. А если не работает используй (10)
42 polkin
 
29.11.14
12:44
Вот полный запрос. Все равно ничего не выходит.
Не вставляется ни один вариант.


ВЫБРАТЬ
    |    0 КАК Продать,
    |    0 КАК Цена,
    |    ВложенныйЗапрос.Номенклатура КАК Номенклатура,
    |    ВложенныйЗапрос.Описание,
    |    ВложенныйЗапрос.ФайлКартинки,
    |    ВложенныйЗапрос.Характеристика КАК Характеристика,
    |    ВложенныйЗапрос.Заказано,
    |    ВложенныйЗапрос.Количество,
    |    ВложенныйЗапрос.ЕдиницаИзмерения,
    |    0 КАК Потребность
    |ИЗ
    |    (ВЫБРАТЬ
    |        ВложенныйЗапрос.Номенклатура КАК Номенклатура,
    |        ВложенныйЗапрос.Описание КАК Описание,
    |        ВложенныйЗапрос.ФайлКартинки КАК ФайлКартинки,
    |        ЗапасыНаСкладахОстатки.КоличествоОстаток КАК Количество,
    |        ВложенныйЗапрос.Характеристика КАК Характеристика,
    |        ЗаказыПоставщикамОстатки.КоличествоОстаток КАК Заказано,
    |        ВложенныйЗапрос.ЕдиницаИзмерения КАК ЕдиницаИзмерения
    |    ИЗ
    |        (ВЫБРАТЬ
    |            ВложенныйЗапрос.Номенклатура КАК Номенклатура,
    |            ВложенныйЗапрос.Описание КАК Описание,
    |            ВложенныйЗапрос.ФайлКартинки КАК ФайлКартинки,
    |            ХарактеристикиНоменклатуры.Ссылка КАК Характеристика,
    |            ВложенныйЗапрос.ЕдиницаИзмерения КАК ЕдиницаИзмерения
    |        ИЗ
    |            (ВЫБРАТЬ
    |                Номенклатура.Ссылка КАК Номенклатура,
    |                Номенклатура.НаименованиеПолное КАК Описание,
    |                Номенклатура.ФайлКартинки КАК ФайлКартинки,
    |                Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения
    |            ИЗ
    |                Справочник.Номенклатура КАК Номенклатура
    |            ГДЕ
    |                Номенклатура.Родитель = &Родитель) КАК ВложенныйЗапрос
    |                ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ХарактеристикиНоменклатуры КАК ХарактеристикиНоменклатуры
    |                ПО ВложенныйЗапрос.Номенклатура = ХарактеристикиНоменклатуры.Владелец) КАК ВложенныйЗапрос
    |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗапасыНаСкладах.Остатки КАК ЗапасыНаСкладахОстатки
    |            ПО ВложенныйЗапрос.Номенклатура = ЗапасыНаСкладахОстатки.Номенклатура
    |                И ВложенныйЗапрос.Характеристика = ЗапасыНаСкладахОстатки.Характеристика
    |            ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПоставщикам.Остатки КАК ЗаказыПоставщикамОстатки
    |            ПО ВложенныйЗапрос.Номенклатура = ЗаказыПоставщикамОстатки.Номенклатура
    |                И ВложенныйЗапрос.Характеристика = ЗаказыПоставщикамОстатки.Характеристика
    |    
    |    ОБЪЕДИНИТЬ ВСЕ
    |    
    |    ВЫБРАТЬ
    |        ВложенныйЗапрос.Номенклатура,
    |        ВложенныйЗапрос.Описание,
    |        ВложенныйЗапрос.ФайлКартинки,
    |        ВложенныйЗапрос.Количество,
    |        NULL,
    |        ВложенныйЗапрос.Заказано,
    |        ВложенныйЗапрос.ЕдиницаИзмерения
    |    ИЗ
    |        (ВЫБРАТЬ
    |            ВложенныйЗапрос.Номенклатура КАК Номенклатура,
    |            ВложенныйЗапрос.Описание КАК Описание,
    |            ВложенныйЗапрос.ФайлКартинки КАК ФайлКартинки,
    |            ЗаказыПоставщикамОстатки.КоличествоОстаток КАК Заказано,
    |            ЗапасыНаСкладахОстатки.КоличествоОстаток КАК Количество,
    |            ВложенныйЗапрос.ЕдиницаИзмерения КАК ЕдиницаИзмерения
    |        ИЗ
    |            (ВЫБРАТЬ
    |                Номенклатура.Ссылка КАК Номенклатура,
    |                Номенклатура.НаименованиеПолное КАК Описание,
    |                Номенклатура.ФайлКартинки КАК ФайлКартинки,
    |                Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения
    |            ИЗ
    |                Справочник.Номенклатура КАК Номенклатура
    |            ГДЕ
    |                Номенклатура.Родитель = &Родитель) КАК ВложенныйЗапрос
    |                ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПоставщикам.Остатки КАК ЗаказыПоставщикамОстатки
    |                ПО ВложенныйЗапрос.Номенклатура = ЗаказыПоставщикамОстатки.Номенклатура
    |                ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗапасыНаСкладах.Остатки КАК ЗапасыНаСкладахОстатки
    |                ПО ВложенныйЗапрос.Номенклатура = ЗапасыНаСкладахОстатки.Номенклатура) КАК ВложенныйЗапрос) КАК ВложенныйЗапрос
    |
    |УПОРЯДОЧИТЬ ПО
    |    Номенклатура,
    |    Характеристика
    |АВТОУПОРЯДОЧИВАНИЕ
43 YFedor
 
29.11.14
13:05
(42) ПринтСкрин формы списка справочника состояний в которой видны эти элементы + ПринтСкрин списка предопределенных элементов справочника состояний из конфигуратора
44 Wobland
 
29.11.14
13:18
ВЫБРАТЬ
    |    0 КАК Продать,
    |    0 КАК Цена,
|    ОБЪЕДИНИТЬ ВСЕ
    |    
    |    ВЫБРАТЬ
    |        ВложенныйЗапрос.Номенклатура,
    |        ВложенныйЗапрос.Описание,

неплохо
45 polkin
 
29.11.14
16:12
решил вопрос через наименование

ВЫБОР
    КОГДА СостоянияЗаказовПоставщикам.Наименование = "Выслано"
        ТОГДА ЗаказПоставщикуЗапасы.Количество
    ИНАЧЕ 0
КОНЕЦ


всем, кто пытался помочь, спасибо!!!!