Имя: Пароль:
1C
1С v8
Запрос с условием
0 Дмитрий95
 
22.11.17
13:03
Здравствуте. Сломал весь мозг с запросом и условием. Хочу вытянуть остатки по 002 счету. Пишу запрос вида:

"ВЫБРАТЬ
    |    ХозрасчетныйОстатки.Субконто1 КАК МЦ,
    |    СУММА(ХозрасчетныйОстатки.СуммаОстатокДт) КАК СуммаОстатокДт,
    |    СУММА(ХозрасчетныйОстатки.КоличествоОстатокДт) КАК КоличествоОстатокДт,
    |    ХозрасчетныйОстатки.Субконто1.Наименование КАК МЦНаименование,
    |    ХозрасчетныйОстатки.Субконто2,
    |    ХозрасчетныйОстатки.Субконто3
    |ИЗ
    |    РегистрБухгалтерии.Хозрасчетный.Остатки(&ДатаОстатков, Счет = ""002"", , Организация = &Организация) КАК ХозрасчетныйОстатки
    |ГДЕ
    |    ХозрасчетныйОстатки.Субконто2 В ИЕРАРХИИ(&Местонахождение)
    |
    |СГРУППИРОВАТЬ ПО
    |    ХозрасчетныйОстатки.Субконто1,
    |    ХозрасчетныйОстатки.Субконто1.Наименование,
    |    ХозрасчетныйОстатки.Субконто2,
    |    ХозрасчетныйОстатки.Субконто3
    |
    |УПОРЯДОЧИТЬ ПО
    |    МЦНаименование" ;


И нифига не работает :( Как выдернуть остаток?
1 Бычье сердце
 
22.11.17
13:05
(0)
Счет.код = ""002""
2 Бычье сердце
 
22.11.17
13:06
(0)
Или Счет = Значение(ПланСчетов.ХозРасчетный.ТМЦпринятыеНаОтветственноеХранение)
3 Denis_CFO
 
22.11.17
13:06
Или так:
Счет = &Счет002

В Запрос.УстановитьПараметр("Счет002", ПланыСчетов.ХР.НайтиПоКоду("002"))
4 Ненавижу 1С
 
гуру
22.11.17
13:07
Счет = ""002""

слева ссылка на запись плана счетов, справа строка - разные типы, значит неравны
5 Дмитрий95
 
22.11.17
13:21
Спасибо. Но что то ничего не получается:(
6 Denis_CFO
 
22.11.17
13:26
Это Бухгалтерия, судя по всему. Посмотри запрос, который формируется в обработке ПодбораНоменклатуры.
7 Дмитрий95
 
22.11.17
13:28
Запрос.УстановитьПараметр("Счет002", ПланыСчетов.Хозрасчетный.НайтиПоКоду("002"));
        
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ХозрасчетныйОстатки.Субконто1 КАК ТМЦ,
    |    СУММА(ХозрасчетныйОстатки.СуммаОстатокДт) КАК СуммаОстатокДт,
    |    СУММА(ХозрасчетныйОстатки.КоличествоОстатокДт) КАК КоличествоОстатокДт,
    |    ХозрасчетныйОстатки.Субконто1.Наименование КАК ТМЦНаименование,
    |    ХозрасчетныйОстатки.Субконто2,
    |    ХозрасчетныйОстатки.Субконто3
    |ИЗ
    |    РегистрБухгалтерии.Хозрасчетный.Остатки(&ДатаОстатков, Счет = &Счет002, , Организация = &Организация) КАК ХозрасчетныйОстатки
    |ГДЕ
    |    ХозрасчетныйОстатки.Субконто2 В ИЕРАРХИИ(&Местонахождение)
    |
    |СГРУППИРОВАТЬ ПО
    |    ХозрасчетныйОстатки.Субконто1,
    |    ХозрасчетныйОстатки.Субконто1.Наименование,
    |    ХозрасчетныйОстатки.Субконто2,
    |    ХозрасчетныйОстатки.Субконто3
    |
    |УПОРЯДОЧИТЬ ПО
    |    ТМЦНаименование" ;
    Результат=Запрос.Выполнить();
8 Дмитрий95
 
22.11.17
13:28
(6) УПП
9 Denis_CFO
 
22.11.17
13:30
Ну и что должно означать, то что ты выложил кусок кода?
10 catena
 
22.11.17
13:30
(7)А как устанавливаются остальные параметры?
11 Denis_CFO
 
22.11.17
13:32
+ (10), а Выбрать() там присутствует?
12 Гипервизор
 
22.11.17
13:33
ХозрасчетныйОстатки.Субконто2 В ИЕРАРХИИ(&Местонахождение) - здесь что пытаетесь фильтровать? Если склады, то для счета 002 это субконто № 3.
13 Дмитрий95
 
22.11.17
13:34
(10) На форме устанавливается подразделение и организация
14 Redkiy
 
22.11.17
13:35
(13) Запрос как про это узнает?
15 Дмитрий95
 
22.11.17
13:35
Смысл тот, что я даже в консоле запросов не могу просто остатки выгрузить
16 Дмитрий95
 
22.11.17
13:36
(14) ммм...
17 catena
 
22.11.17
13:38
(15)как конкретно выглядит "не могу".
18 catena
 
22.11.17
13:38
с таким стажем и такой партизан.
19 Дмитрий95
 
22.11.17
13:41
(17) ничего выгружается.
20 Дмитрий95
 
22.11.17
13:42
(12) СПАСИБО!!! Затупил я.
21 Redkiy
 
22.11.17
13:42
так работает в консоле?
ВЫБРАТЬ *
ИЗ   РегистрБухгалтерии.Хозрасчетный.Остатки(,,, Организация = &Организация)
22 ptiz
 
22.11.17
13:45
(0) &Организация - у тебя случайно не строка?
23 Дмитрий95
 
22.11.17
13:47
(22) не. Перепутал субконто просто