Запрос По Регистру Продажи Возвращает Пустую Дату

Тема в разделе "1C и всё что с ней связано", создана пользователем KiR, 11 ноя 2013.

  1. KiR

    KiR НЕ шибка опытный програмер)
    1C Team

    Регистрация:
    11 сен 2007
    Сообщения:
    1.581
    Симпатии:
    0
    Добрый день, уважаемые знатоки!!!
    Давненько не обращался за помощью, но возникла реально удивительная ситуация - запрос по регисту Продажи в скульной базе отрабатывает нормально, а в файловой - возвращает пустую дату.
    Вот кусочек запроса:
    Код ( (Unknown Language)):
        "//{{ЗАПРОС(Запрос)
    |Период с ВыбНачПериода по ВыбКонПериода;
    |Без итогов;
    |Товар = Регистр.Продажи.Номенклатура;
    |СебеС = Регистр.Продажи.Себестоимость;
    |ПродС = Регистр.Продажи.ПродСтоимость;
    |Количество = Регистр.Продажи.Количество;
    |Покупатель = Регистр.Продажи.Покупатель;
    |ДатаДок = Регистр.Продажи.ТекущийДокумент.датадок;
    |Функция СуммаК = Сумма(Количество);
    |Функция Себестоимость = Сумма(СебеС);
    |Функция ПродСтоимость = Сумма(ПродС);
    |Группировка Товар без групп;
    |Группировка ДатаДок;
    |Группировка Покупатель Без Групп;
    |Условие(Покупатель в ВыбПокупатель);
    |"//}}ЗАПРОС
    Проверить можно в любой файловой базе ТиС. В прикрепленном файле обработка полностью Посмотреть вложение ПродажиПоПериодам.zip
     
  2. Дайнеко

    Дайнеко Well-Known Member
    1C Team

    Регистрация:
    19 ноя 2009
    Сообщения:
    951
    Симпатии:
    0
    Я смотрел отчет.
    И сказал бы так: может и глюкануть.
    Лучше бы сделать:
    1) вместо "Группировка ДатаДок" используйте "Группировка День" - это предопределенная группировка.
    2) уберите "Без итогов". И устройте ручной перебор результата. Пусть это будет медленнее, но вряд-ли существенно
    Код ( (Unknown Language)):
        Пока Запрос.Группировка("Товар") = 1 Цикл
    Пока Запрос.Группировка("День") = 1 Цикл
    // вот здесь железно будет дата
    И прочее замечание: в отчете текст
    ТекстЗапроса = ?(Чекбокс=1,
    "куча строк запроса"
    , // в смысле иначе
    "куча строк запроса, такая-же большая и точно такие-же"
    );
    только отличается второй текст меньше на 1 строку. Так просто некрасиво.
    У нас пацаны во дворе делают так:
    Код ( (Unknown Language)):
    ТекстЗапроса = "шурум-бурум";
    Если (ЗапросСложнее = 1) Тогда
    ТекстЗапроса = ТекстЗапроса + " Группировка Покупатель;";
    КонецЕсли;
     
  3. vbs

    vbs Well-Known Member

    Регистрация:
    18 фев 2007
    Сообщения:
    1.708
    Симпатии:
    3
    KiR, хочешь, подарю отчет "Динамика продаж" для ТиС ? Маленько адаптируешь под себя - и вот оно, скупое программерское счастье...
     
  4. KiR

    KiR НЕ шибка опытный програмер)
    1C Team

    Регистрация:
    11 сен 2007
    Сообщения:
    1.581
    Симпатии:
    0
    Второй отличается группировкой и условием. сделал так чтобы оба текста читались проще. знаю что и не очень красиво.

    А вот за совет с группировками по дням - отдельное спасибо. Может тогда можно красивее сделать - по неделям сразу и по месяцам...
     
Загрузка...

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