7.7 Неверные остатке в результате запроса 1С 7.7 ред.8

Тема в разделе "Отчеты и обработки для "1С:Предприятие 7.7"", создана пользователем ls01, 28 май 2013.

  1. TopicStarter Overlay
    ls01
    Offline

    ls01

    Регистрация:
    28 май 2013
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Добрый день!
    Торговля и склад, ред.8
    Есть вот такой запрос, выводит остатки товара на складе (ВыбСклад), с условием, что такой товар есть на другом складе (Константа.СкладОсновной).

    Код:
    |Период с ВыбНачПериода по ВыбКонПериода;
    |Обрабатывать НеПомеченныеНаУдаление;
    |Без итогов;
    |Номенклатура = Справочник.Номенклатура.ТекущийЭлемент, Регистр.ОстаткиТоваров.Товар;
    |Склад = Регистр.ОстаткиТоваров.Склад;
    |Количество = Регистр.ОстаткиТоваров.ОстатокТовара;
    |Функция КоличествоКонОст = КонОст(Количество);
    |Группировка Номенклатура упорядочить по Номенклатура.Наименование без групп все;
    |Группировка Склад упорядочить по Склад.Наименование;
    |Условие(Склад = ВыбСклад);
    |Условие(Регистр.ОстаткиТоваров.Остаток(Константа.ОсновнаяФирма,Номенклатура,Константа.СкладОсновной,""ОстатокТовара"") > 0);
    
    Проблема заключается в следующем - вместо нуля на рассмативаемом складе запрос выводит остаток 23.
    Пожалуйста помогите разобраться
  2. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    лучше использовать когда
  3. TopicStarter Overlay
    ls01
    Offline

    ls01

    Регистрация:
    28 май 2013
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Спасибо, пробовали.. к сожалению тот же результат
  4. Herby
    Offline

    Herby Опытный в 1С

    Регистрация:
    21 фев 2013
    Сообщения:
    95
    Симпатии:
    0
    Баллы:
    26
    |Условие(Регистр.ОстаткиТоваров.Остаток(Константа.ОсновнаяФирма,Номенклатура,Константа.СкладОсновной,""ОстатокТовара"") > 0)
    а это условие в ошибку не валится?

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

    Я бы ничего тут не выдумывал бы, сделал бы запрос с одним условием Склад=ВыбСклад, а дальше внутри цикла по группировкам уже сделал бы проверку на второе условие.
  5. GlukAl
    Offline

    GlukAl Опытный в 1С

    Регистрация:
    4 окт 2012
    Сообщения:
    187
    Симпатии:
    7
    Баллы:
    29
    Код:
    |Период с ВыбКонПериода по ВыбКонПериода;
    |Обрабатывать НеПомеченныеНаУдаление;
    |Без итогов;
    |Номенклатура = Регистр.ОстаткиТоваров.Товар;
    |Склад = Регистр.ОстаткиТоваров.Склад;
    |КоличествоКонОст = Регистр.ОстаткиТоваров.ОстатокТовара;
    
    |Группировка Номенклатура упорядочить по Номенклатура.Наименование без групп все;
    |Группировка Склад упорядочить по Склад.Наименование;
    |Условие(Склад = ВыбСклад);
    |Условие(Регистр.ОстаткиТоваров.Остаток(Константа.ОсновнаяФирма,Номенклатура,Константа.СкладОсновной,""ОстатокТовара"") > 0);
    может так ??
  6. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    1) Я бы вместо Остаток использовал СводныйОстаток.
    2) Смущает то, что конструкция
    Код:
    Регистр.ОстаткиТоваров.Остаток
    вернет остаток на ТА. В данном случае запрос за период теряет всякий смысл. Нужно использовать созданный объект Регистр + расчет на нужную дату
  7. TopicStarter Overlay
    ls01
    Offline

    ls01

    Регистрация:
    28 май 2013
    Сообщения:
    3
    Симпатии:
    0
    Баллы:
    1
    Ошибки нет, если на него проверять в цикле - страшно тормозит, т.к. много номенклатуры, да и остатки все равно неверные выдает

    Остаток на ТА и нужен, лишнее уберу, спасибо
  8. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Грузить результат запроса в ТЗ и там фильтровать (в запросе склады ВыбСклад и основной). Так намного быстрее

Поделиться этой страницей