7.7 Проблемы с Запросом

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Black Cat, 24 авг 2010.

  1. TopicStarter Overlay
    Black Cat
    Offline

    Black Cat Опытный в 1С

    Регистрация:
    18 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Мне нужно получить остаток товара на ДатуТА. Пишу такой код. Некоторые строки написаны в целях эксперимента и для понимания работы Запроса. Конфа Тис933.
    Код:
    Процедура Сформировать()
    
    
    Запрос = СоздатьОбъект("Запрос");
    ТЗ = СоздатьОбъект("ТаблицаЗначений");
    ТекстЗапроса = 
    "//{{ЗАПРОС(Запрос)
    |Период с ДатаНач по ДатаКон;
    |Номенклатура	= Регистр.ОстаткиТМЦ.Номенклатура;
    |Количество		= Регистр.ОстаткиТМЦ.Количество;
    |БазоваяЕд = Регистр.ОстаткиТМЦ.Номенклатура.БазоваяЕдиница;
    |Группировка Номенклатура Без Групп;
    |Функция НОст = НачОст(Количество);
    |Функция Ост = КонОст(Количество);
    |Функция Прих = Приход(Количество);
    |Функция Расх = Расход(Количество);
    |";
    
    Если Запрос.Выполнить(ТекстЗапроса) = 1 Тогда
    Запрос.Выгрузить(ТЗ,3);
    ТЗ.ВыбратьСтроку();
    КонецЕсли;
    
    КонецПроцедуры
    
    ДатаНач = '01.07.10';
    ДатаКон = ПолучитьДатуТА();            //ПолучитьДатуТА();
    

    Проблема в следующем: некоторые позиции выдают правильный(?) результат, а некоторые нет. Взять например первую строку из ТЗ. Остаток на начало периода 2, приход 10, расход 12. Конечный остаток 0. Вроде бы все верно. Но почему количество 1 ? :unsure: И так по многим позициям. Чему верить ?

    Вложения:

  2. Бухгалтерский угодник
    Offline

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

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Количество - это переменная содержащая ПОСЛЕДНЕЕ движение по регистру. Вам же нужны функции. Так что все правильно.

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