Имя: Пароль:
1C
 
как правильно написать запрос?
,
0 YamEgor
 
01.03.20
16:26
ДОбрый день! Бухгалтерия для Казахстана 3.0 из Регистра бухгалтерии Типовой запросом получаю данные по счету СебестоимостьРеализованнойПродукцииИОказанныхУслуг, на этом счете два субконто СтатьиЗатрат и НоменклатурныеГруппы
]

    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ТиповойОстатки.СуммаОстатокДт КАК РеалТоваров_7010
        |ИЗ
        |    РегистрБухгалтерии.Типовой.Остатки(&Дата, Счет = &Счет,&Суб_7010 , ) КАК ТиповойОстатки";
    
    Запрос.УстановитьПараметр("Дата", Дата);
    Запрос.УстановитьПараметр("Счет", ПланыСчетов.Типовой.СебестоимостьРеализованнойПродукцииИОказанныхУслуг);
    
    Суб_7010 = Новый Массив;
    Суб_7010.Добавить(ПланыВидовХарактеристик.ВидыСубконтоТиповые.СтатьиЗатрат);
    Суб_7010.Добавить(ПланыВидовХарактеристик.ВидыСубконтоТиповые.НоменклатурныеГруппы);
    
    Запрос.УстановитьПараметр("Суб_7010", Суб_7010);          
    
    РезультатЗапроса = Запрос.Выполнить();    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        РеалТоваров_7010=ВыборкаДетальныеЗаписи.РеалТоваров_7010;
    КонецЦикла;

и сейчас сумма выбирается, но я хочу получить результат по определенной номенклатурной группе которая была указана в документе и для этого я попробовал ставить условие на это субконто

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

    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        РеалТоваров_7010=ВыборкаДетальныеЗаписи.РеалТоваров_7010;
    КонецЦикла;


и тогда ничего не выбирается, как можно правильно поставить условие?
1 hhhh
 
01.03.20
19:42
(0) может

   Суб_7010 = Новый Массив;
    Суб_7010.Добавить(ПланыВидовХарактеристик.ВидыСубконтоТиповые.НоменклатурныеГруппы);

и НоменклатурныеГруппы сделать субконто1
2 YamEgor
 
02.03.20
10:16
(1) нет так не получается тоже
3 cons24
 
02.03.20
11:48
так что засунуто в НоменклатурнаяГруппа_РеалТоваров?
4 YamEgor
 
02.03.20
12:01
(3) ну это реквизит на форме который соответствует Субконто2, в данном случае это справочник НоменклатурныеГруппы, и я выбираю необходимую группу на форме и хочу получить по этой группе данные из регистра. Просто это отчет где по одному счету, но по разным субконто, скажем по разным номенклатурным группам, надо получать значение из регистра
5 catena
 
02.03.20
12:27
(2)Что значит "не получается". Берешь консоль запросов и строишь там рабочий запрос. Вариант (1) корректный.
6 Ns33
 
02.03.20
12:31
Собственно да, смотришь код в консоли, и если там пусто, начинаешь с отключения условия на сравнение с конкретными значениями субконто. Общий алгоритм - постепенно отключать условия.
7 YamEgor
 
02.03.20
12:36
(5) "не получается" - это значит не выбираются значение по этому субконто из регистра
8 s_newbi
 
02.03.20
12:39
Номенклатурные группы тонго в субконто2 сидят?
Суммовой учет у субконто включен?
9 s_newbi
 
02.03.20
12:40
Имелось ввиду не стоит ли галка "только обороты"?
10 catena
 
02.03.20
12:41
(7)У меня выбираются. Совет тот же: берешь консоль и проверяешь.
11 YamEgor
 
02.03.20
12:47
(8) да сейчас посмотрел у Номенклатурных групп есть признак ТолькоОбороты, Суммовой, Валютный, Количественный. это значит надо брать не виртуальную таблицу Остатки, а ОстаткиИОбороты?
12 s_newbi
 
02.03.20
12:50
(11) Признак "(об)" в названии отдельных субконто означает, что это субконто является оборотным для этого счета (флажок "Только обороты" в признаках счета). В разрезе аналитических статей по этому субконто во всех стандартных отчетах (оборотно-сальдовая ведомость, анализ счета, карточка счета и др.) можно анализировать только обороты (остатки хранятся в целом по счету без привязки к аналитике).
13 s_newbi
 
02.03.20
12:53
По сути СуммаОстатокДт там и нет тогда. Можно узнать только ОборотДт за период
14 1Сергей
 
02.03.20
12:54
(12) + и не нужны остатки, значит
15 YamEgor
 
02.03.20
13:01
(13) тогда можете подсказать, если это обороты то тогда надо за период  дата начала и дата окончания а у меня на форме сейчас только дата на которую строится отчет, это надо добавить еще одну дату начала,а дату использовать как дата Окончания? или как то еще?
Независимо от того, куда вы едете — это в гору и против ветра!