Имя: Пароль:
1C
1С v8
запрос. отбор по счету и без
0 dadka
 
14.02.22
13:07
Добрый день.
в запросе:

ВЫБРАТЬ
ХозрасчетныйОстаткиИОбороты.Счет КАК Счет,
ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Субконто1,
ХозрасчетныйОстаткиИОбороты.Субконто2 КАК Субконто2,
ХозрасчетныйОстаткиИОбороты.Субконто3 КАК Субконто3,
ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт КАК УПП_СуммаНачОстатокДт,
ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокКт КАК УПП_СуммаНачОстатокКт,
ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстатокДт * 1 КАК УПП_КоличествоНачОстатокДт,
ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстатокКт * 1 КАК УПП_КоличествоНачОстатокКт,
ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК УПП_СуммаОборотДт,
ХозрасчетныйОстаткиИОбороты.СуммаОборотКт КАК УПП_СуммаОборотКт,
ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт * 1 КАК УПП_КоличествоОборотДт,
ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт * 1 КАК УПП_КоличествоОборотКт,
ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт КАК УПП_СуммаКонОстатокДт,
ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт КАК УПП_СуммаКонОстатокКт,
ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт * 1 КАК УПП_КоличествоКонОстатокДт,
ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокКт * 1 КАК УПП_КоличествоКонОстатокКт,
ХозрасчетныйОстаткиИОбороты.Счет.Код КАК СчетКод,
ХозрасчетныйОстаткиИОбороты.Субконто1.Код КАК Субконто1_КодНомер,
ХозрасчетныйОстаткиИОбороты.Субконто2.Код КАК Субконто2_КодНомер
ИЗ
РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
&НачалоПериода,
&КонецПериода,
,
,
ВЫБОР
КОГДА &Счет В (Счет)
ТОГДА ИСТИНА
ИНАЧЕ ЛОЖЬ
КОНЕЦ,
,
) КАК ХозрасчетныйОстаткиИОбороты

если параметр &Счет заполнено
то получаю результат

иначе результат пустой.

подскажите пож-та, как написать верно, чтоб запрос выводил результат по всем счетам, если параметр &Счет не заполнен?
1 Жан Пердежон
 
14.02.22
13:10
Счет = &Счет ИЛИ &Счет = ЗНАЧЕНИЕ(ПС.хозрасчетный.пустаяссылка)
2 dadka
 
14.02.22
13:25
(1) спасибо
вот так сделал

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



заработало
3 dadka
 
14.02.22
13:40
(2) заработало только в консоли
если обработкой выгружаю, то получаю ошибку
Ошибка выполнения в бух: {ДоработкиТиповойКонфигурации WebСервис.АРН_СравнениеДанныхУПП.Модуль(408)}: Ошибка при вызове метода контекста (Выполнить): {(27, 17)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
ИНАЧЕ &Счет <<?>>= ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ПустаяСсылка)
4 Галахад
 
гуру
14.02.22
13:44
Ну, наверное стоит заполнить параметр "Счет".
5 dadka
 
14.02.22
14:01
(4) если заполнить - результат выводится только по заполненному счету.
а нужно выводить по условию - если Счет не заполнен, то вывожу результат по всем счетам. иначе только по заполненному счету.
6 Галахад
 
гуру
14.02.22
14:09
Запрос.УстановитьПараметр("Счет", ?(Счет = Неопределелено, ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ПустаяСсылка), Счет)
7 Dmitrii
 
гуру
14.02.22
15:55
(3) Счет = &Счет ИЛИ &Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ПустаяСсылка) ИЛИ &Счет = НЕОПРЕДЕЛЕНО
8 1Сергей
 
14.02.22
15:56
//КОГДА &Счет В (Счет)
КОГДА Счет В (&Счет)
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.