8.х Объединение запросов

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

  1. TopicStarter Overlay
    Joker_vad
    Offline

    Joker_vad

    Регистрация:
    17 сен 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Здравствуйте. Необходимо объединить два запроса, так чтобы сначала шли строки из первого запроса, а затем из второго, с сортировкой. Делал через ОБЪЕДИНИТЬ, при сортировке данных второго запроса, сортируются все записи(((
  2. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Показывайте запрос.
  3. TopicStarter Overlay
    Joker_vad
    Offline

    Joker_vad

    Регистрация:
    17 сен 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Если полит.Политика=Перечисления.УчетныеПолитики.Lifo тогда
    сорт="Убыв"
    иначе
    сорт="Возр";
    КонецЕсли;
    СтрЗапрос=Новый Запрос;
    стрЗапрос.Текст="ВЫБРАТЬ
    | ДвижениеТовараОстатки.Товар,
    | ДвижениеТовараОстатки.Партия,
    | ДвижениеТовараОстатки.КоличествоОстаток,
    | ДвижениеТовара.Период КАК Период,
    | ДвижениеТовара.Партия КАК Партия1,
    | ДвижениеТовара.Цена,
    | ДвижениеТовара.Регистратор.Ссылка
    |ИЗ
    | РегистрНакопления.ДвижениеТовара.Остатки КАК ДвижениеТовараОстатки
    | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ДвижениеТовара КАК ДвижениеТовара
    | ПО ДвижениеТовараОстатки.Товар = ДвижениеТовара.Товар
    | И ДвижениеТовараОстатки.Партия = ДвижениеТовара.Партия
    |ГДЕ
    | ДвижениеТовараОстатки.Товар = &Товар
    | И ДвижениеТовара.ВидДвижения = &ВидДвижения
    | И ДвижениеТовара.Регистратор.Ссылка = &Ссылка
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ДвижениеТовараОстатки.Товар,
    | ДвижениеТовараОстатки.Партия,
    | ДвижениеТовараОстатки.КоличествоОстаток,
    | ДвижениеТовара.Период,
    | ДвижениеТовара.Партия,
    | ДвижениеТовара.Цена,
    | ДвижениеТовара.Регистратор.Ссылка
    |ИЗ
    | РегистрНакопления.ДвижениеТовара.Остатки КАК ДвижениеТовараОстатки
    | ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ДвижениеТовара КАК ДвижениеТовара
    | ПО ДвижениеТовараОстатки.Товар = ДвижениеТовара.Товар
    | И ДвижениеТовараОстатки.Партия = ДвижениеТовара.Партия
    |ГДЕ
    | ДвижениеТовараОстатки.Товар = &Товар
    | И ДвижениеТовара.ВидДвижения = &ВидДвижения
    | И ДвижениеТовара.Регистратор.Ссылка <> &Ссылка
    |
    |УПОРЯДОЧИТЬ ПО
    | Период"+сорт;
  4. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Код:
    стрЗапрос.Текст="ВЫБРАТЬ
    | ДвижениеТовараОстатки.Товар,
    | ДвижениеТовараОстатки.Партия,
    | ДвижениеТовараОстатки.КоличествоОстаток,
    | ДвижениеТовара.Период КАК Период,
    | ДвижениеТовара.Партия КАК Партия1,
    | ДвижениеТовара.Цена,
    | ДвижениеТовара.Регистратор.Ссылка,
    | 1 КАК Порядок
    |ИЗ
    | РегистрНакопления.ДвижениеТовара.Остатки КАК ДвижениеТовараОстатки
    | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ДвижениеТовара КАК ДвижениеТовара
    | ПО ДвижениеТовараОстатки.Товар = ДвижениеТовара.Товар
    | И ДвижениеТовараОстатки.Партия = ДвижениеТовара.Партия
    |ГДЕ
    | ДвижениеТовараОстатки.Товар = &Товар
    | И ДвижениеТовара.ВидДвижения = &ВидДвижения
    | И ДвижениеТовара.Регистратор.Ссылка = &Ссылка
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ
    | ДвижениеТовараОстатки.Товар,
    | ДвижениеТовараОстатки.Партия,
    | ДвижениеТовараОстатки.КоличествоОстаток,
    | ДвижениеТовара.Период,
    | ДвижениеТовара.Партия,
    | ДвижениеТовара.Цена,
    | ДвижениеТовара.Регистратор.Ссылка,
    | 2
    |ИЗ
    | РегистрНакопления.ДвижениеТовара.Остатки КАК ДвижениеТовараОстатки
    | ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ДвижениеТовара КАК ДвижениеТовара
    | ПО ДвижениеТовараОстатки.Товар = ДвижениеТовара.Товар
    | И ДвижениеТовараОстатки.Партия = ДвижениеТовара.Партия
    |ГДЕ
    | ДвижениеТовараОстатки.Товар = &Товар
    | И ДвижениеТовара.ВидДвижения = &ВидДвижения
    | И ДвижениеТовара.Регистратор.Ссылка <> &Ссылка
    |
    |УПОРЯДОЧИТЬ ПО
    | Порядок,
    | Период"
    
  5. TopicStarter Overlay
    Joker_vad
    Offline

    Joker_vad

    Регистрация:
    17 сен 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    | 1 КАК Порядок
    что значит?
  6. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    То, что выбираем число 1 (число 2 во втором запросе). "Порядок" - просто название поля. Потом первоначально сортируем по этому полю (по этим числам), и потом по периоду.
    В запросах ведь можно выбирать не только данные из объектов, но и скажем так, какие-то константы.
  7. TopicStarter Overlay
    Joker_vad
    Offline

    Joker_vad

    Регистрация:
    17 сен 2010
    Сообщения:
    6
    Симпатии:
    0
    Баллы:
    1
    Спасибо, огромное за помощь и пояснения

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