Погода: −8 °C
27.11−13...−5небольшая облачность, без осадков
28.11−15...−7ясная погода, без осадков
  • Немного изменил стандартный отчет в ТиСе. Вместо
    конечной даты отчета сдело возможным выбор периода отчета (С ... по ...).
    Но почему то запрос работает неправильно, т.е выдает все вплоть до конечной даты. Я не могу понять где собака зарыта. Вот текст запроса.

    Запрос = СоздатьОбъект("Запрос");
    Если ВидЗаявок.ТекущаяСтрока() = 4 Тогда
    СтрПериод = "Период с ДатаНачала по ДатаКонца;";
    Иначе
    СтрПериод = ?(ДатаКонца>= ПолучитьДатуТА(),"",
    "Период с ДатаКонца по ДатаКонца;");
    КонецЕсли;
    ТекстЗапроса =
    "//{{ЗАПРОС(Сформировать)
    |" + СтрПериод +
    "
    |Фирма = Регистр.Заявки. Фирма,
    | Регистр.ЗаказыЗаявки.ЗаявкаПокупателя.Фирма,
    | Регистр.РезервыТМЦ. Фирма;
    |ЮрЛицо = Регистр.Заявки. Фирма.ЮрЛицо,
    | Регистр.ЗаказыЗаявки.ЗаявкаПокупателя.Фирма.ЮрЛицо ,
    | Регистр.РезервыТМЦ. Фирма.ЮрЛицо;
    |УпрАналитика = Регистр.Заявки. Фирма.УпрАналитика,
    | Регистр.ЗаказыЗаявки.ЗаявкаПокупателя.Фирма.УпрАна литика,
    | Регистр.РезервыТМЦ. Фирма.УпрАналитика;
    |Заявка = Регистр.Заявки. ЗаявкаПокупателя,
    | Регистр.ЗаказыЗаявки.ЗаявкаПокупателя,
    | Регистр.РезервыТМЦ. ЗаявкаПокупателя;
    |Проект = Регистр.Заявки. ЗаявкаПокупателя.Проект,
    | Регистр.ЗаказыЗаявки.ЗаявкаПокупателя.Проект,
    | Регистр.РезервыТМЦ. ЗаявкаПокупателя.Проект;
    |ОперацияЗаявка = Регистр.Заявки. ЗаявкаПокупателя.ВидОперации,
    | Регистр.ЗаказыЗаявки.ЗаявкаПокупателя.ВидОперации,
    | Регистр.РезервыТМЦ. ЗаявкаПокупателя.ВидОперации;
    |ДатаОтгрузкиЗаявка= Регистр.Заявки. ЗаявкаПокупателя.ДатаОтгрузки,
    | Регистр.ЗаказыЗаявки.ЗаявкаПокупателя.ДатаОтгрузки ,
    | Регистр.РезервыТМЦ. ЗаявкаПокупателя.ДатаОтгрузки;
    |Номенклатура = Регистр.Заявки. Номенклатура,
    | Регистр.ЗаказыЗаявки.Номенклатура,
    | Регистр.РезервыТМЦ. Номенклатура;
    |ВидНоменклатура = Регистр.Заявки. Номенклатура.ВидНоменклатуры,
    | Регистр.ЗаказыЗаявки.Номенклатура.ВидНоменклатуры,
    | Регистр.РезервыТМЦ. Номенклатура.ВидНоменклатуры;
    |Покупатель = Регистр.Заявки. ДоговорПокупателя.Владелец,
    | Регистр.ЗаказыЗаявки.ЗаявкаПокупателя.Контрагент,
    | Регистр.РезервыТМЦ. ДоговорПокупателя.Владелец;
    |Договор = Регистр.Заявки. ДоговорПокупателя,
    | Регистр.ЗаказыЗаявки.ЗаявкаПокупателя.Договор,
    | Регистр.РезервыТМЦ. ДоговорПокупателя;
    |КолЗаявки = Регистр.Заявки. КоличествоРасход;
    |КолРезерва = Регистр.РезервыТМЦ. Количество;
    |КолЗаказа = Регистр.ЗаказыЗаявки.Количество;
    |СумЗаявки = Регистр.Заявки. СтоимостьРасход;";

    ТекстЗапроса = ТекстЗапроса +
    "Функция КонОстЗаявкаК = КонОст(КолЗаявки);
    |Функция КонОстЗаявкаС = КонОст(СумЗаявки);
    |Функция КонОстЗаказК = КонОст(КолЗаказа);
    |Функция КонОстРезерв = КонОст(КолРезерва);";

    В отладчике :
    СтрПериод = "Период с ДатаНачала по ДатаКонца;"

    ТекстЗапроса = "//{{ЗАПРОС(Сформировать)Период с ДатаНачала по ДатаКонца;Фирма = Регистр.Заявки. Фирма, Регистр.ЗаказыЗаявки.ЗаявкаПокупателя.Фирма, Регистр.РезервыТМЦ. Фирма;ЮрЛицо "

    Какие еще догадки есть? Может быть в самом запросе что-то изменить надо ?

  • Конечную дату в запросе сделай переменной КонДата, чтобы в тексте запроса ее не менять, а менять в самой программе.
    и до текстат запроса ей присваивай нужное зачение
    КонДата=?(...)

    Осторожнее с травой!
    Если хапнешь много дряни
    Увезут тебя с собой
    Злые инопланетяне

  • Нет, тут дело не в конечной дате.
    И начальная и конечная даты указаны в запросе и они там есть (это видно в отладчике). Но в результат работы запроса включены все доки по конечную дату. Т.е запрос почему то игнорирует начальную дату. Я вот этого понять не могу.

  • началодня(ДатаНач)и будет тебе счастье

    п.3

  • Пробовал конкретные даты начала и конца явно указывать в тексте запроса. Результат тот же (

  • А какое влияние может оказать в этом запросе начальная дата, если единственная агрегирующая функция в запросе КонОст. Может вы обороты регистров посчитать хотели?

Записей на странице:

Перейти в форум

Модератор: