8.х Объединить запросы на закладке Объединения/Псевдонимы

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем AlenkaInt, 20 авг 2012.

  1. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Подскажите пожалуйста, как это сделать? Я на этой закладке умею только переименовывать поля. Спасибо.
  2. Максим
    Offline

    Максим Опытный в 1С

    Регистрация:
    28 фев 2008
    Сообщения:
    688
    Симпатии:
    8
    Баллы:
    29
    А что вы об этом прочитали?
  3. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.949
    Симпатии:
    149
    Баллы:
    104
    Fart, я нигде не встречал подробное описание конструктора запросов. Конечно, сильно и не искал :)
    Но если таковое имеется, дай знать :)

    AlenkaInt, слева в "маленьком" поле видите "Запрос1"? Добавьте туда еще строку. Появится "Запрос2". При этом окно конструктора запросов разделится на два. Переход между ними осуществляется по закладкам справа. Эти два запроса в тексте будут объединены выражением языка запросов "ОБЪЕДИНИТЬ ВСЕ".
    При объединении запросов в результате поля (колонки) должны сопоставляться. Вот это сопоставление настраивается на той же закладке ("Объединения/Псевдонимы") в правом "большом" поле.

    _http://1cexpo.ru/obuchenie-1s-predpriyatie/23-prakticheskoe-ispolzovanie-zaprosov-v-1s-8/40-konstruktor-zaprosov-1c.html
  4. Максим
    Offline

    Максим Опытный в 1С

    Регистрация:
    28 фев 2008
    Сообщения:
    688
    Симпатии:
    8
    Баллы:
    29
    1cUserAndrew не вижу смысла в подробном описания именно конструктора, и сомневаюсь, что оно есть. А не подробное описание ты и сам нашел. Там, вроде, все вполне понятно
  5. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.949
    Симпатии:
    149
    Баллы:
    104
    Да, мне-то, может, и нет смысла.
    Но для начинающих было бы неплохо.
    Я вот методом тыка многое изучал :)
  6. Максим
    Offline

    Максим Опытный в 1С

    Регистрация:
    28 фев 2008
    Сообщения:
    688
    Симпатии:
    8
    Баллы:
    29
    Я так же :(
  7. mialord
    Offline

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

    Регистрация:
    31 июл 2009
    Сообщения:
    5.400
    Симпатии:
    40
    Баллы:
    54
    Научный метод тыка никто не отменял. Конструктор описать довольно таки тяжело, вариаций работы масса, можно конечно странички описать, но это не поможет. Странички описаны в справке к 1С. Кого удивляет конструктор запросов, поработайте со скульными конструкторами, 1С полюбите :D
  8. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Спасибо. Скажите, а результат какой будет запроса? Я сделала, но получилось сверху одна таблица, снизу другая. Но это же получается не наглядно.. Сверху номенклатура с оборотами, а внизу та же самая номенклатура с остатками. Или я что то не так сделала?
  9. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    У меня было соединение на закладке связи, преподаватель сказал, что оптимальнее получить отчет объединив на закладке объединения/псевдонимы. Связываю 2 таблицы. В одной номенклатура и остаток, в другой номенклатура, приход, расход, период.
  10. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    Проще было бы если бы Вы выложили свой запрос, и пример таблицы, который Вы хотите получить
  11. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Код:
    ВЫБРАТЬ
    КОЛИЧЕСТВО(ТоварыНаСкладах.Период) КАК Период,
    ТоварыНаСкладах.Номенклатура КАК Товар,
    СУММА(ВЫБОР
    КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
    ТОГДА ТоварыНаСкладах.ВНаличии
    ИНАЧЕ 0
    КОНЕЦ) КАК Приход,
    СУММА(ВЫБОР
    КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
    ТОГДА ТоварыНаСкладах.ВНаличии
    ИНАЧЕ 0
    КОНЕЦ) КАК Расход
    ПОМЕСТИТЬ Обороты
    ИЗ
    РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
    СГРУППИРОВАТЬ ПО
    ТоварыНаСкладах.Номенклатура
    ;
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    ТоварыНаСкладах.Номенклатура КАК Товар,
    СУММА(ВЫБОР
    КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
    ТОГДА ТоварыНаСкладах.ВНаличии
    ИНАЧЕ 0
    КОНЕЦ - ВЫБОР
    КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
    ТОГДА ТоварыНаСкладах.ВНаличии
    ИНАЧЕ 0
    КОНЕЦ) КАК Остаток
    ПОМЕСТИТЬ НачальныеОстатки
    ИЗ
    РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
    СГРУППИРОВАТЬ ПО
    ТоварыНаСкладах.Номенклатура
    ;
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    Номенклатура.Наименование КАК Наименование,
    ЕСТЬNULL(НачальныеОстатки.Остаток, 0) КАК НачОстаток,
    ЕСТЬNULL(Обороты.Приход, 0) КАК Приход,
    ЕСТЬNULL(НачальныеОстатки.Остаток, 0) + ЕСТЬNULL(Обороты.Приход, 0) - ЕСТЬNULL(Обороты.Расход, 0) КАК КонОстаток,
    ЕСТЬNULL(Обороты.Расход, 0) КАК Расход
    ИЗ
    Справочник.Номенклатура КАК Номенклатура
    ЛЕВОЕ СОЕДИНЕНИЕ НачальныеОстатки КАК НачальныеОстатки
    ПО Номенклатура.Ссылка = НачальныеОстатки.Товар
    ЛЕВОЕ СОЕДИНЕНИЕ Обороты КАК Обороты
    ПО Номенклатура.Ссылка = Обороты.Товар
    УПОРЯДОЧИТЬ ПО
    Наименование
    Это получается таблица с полями Номенклатура, Приход, Расход, КонечныйОстаток, НачальныйОстаток. Я ее показала, мне преподаватель сказал, что оптимальнее таблицы объединить на закладке Объединения/Псевдонимы. Я сейчас нахожусь на начальном уровне, поэтому когда мне озвучивают задание для меня уже здорово, если все слова понимаю, поэтому расспросить поподробнее не могу :) Вот так и учусь.
  12. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Оформляйте код тегом
    Код:
    .[/color][/b]
  13. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Ок. Это до кода и после надо помещать
    Код:
     [/color][/b]?
  14. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Код обрамляется тегом
    Код:
    , соответственно открывающим и закрывающим, со знаком "/"
  15. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    НУ Вы сейчас делаете через менеджер виртуальных таблиц, а преподователь говорит, что быстрее будет через обединение
    В конструкторе запроса на вкладке Об\Псевдонимы добавите 3 запроса (файл 1), у вас появиться 3 вкалдки с запросами Рис 2. Там размещаете на каждой свою таблица, а в конце на вкладке Псевдонимов указываете связь полей

    Вложения:

    • 1.JPG
      1.JPG
      Размер файла:
      104,3 КБ
      Просмотров:
      51
    • 2.JPG
      2.JPG
      Размер файла:
      29,9 КБ
      Просмотров:
      53
  16. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Я так и сделала. Только мне хватило 2 запроса. Первый Номенклатура и Остаток, а вторая Номенклатура, Приход, Расход, Конечный остаток. Но результат не читаемый. Вот какой запрос получился.
    Код:
    ВЫБРАТЬ
    ТоварыНаСкладах.Номенклатура КАК Товар,
    СУММА(ВЫБОР
    КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
    ТОГДА ТоварыНаСкладах.ВНаличии
    ИНАЧЕ 0
    КОНЕЦ - ВЫБОР
    КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
    ТОГДА ТоварыНаСкладах.ВНаличии
    ИНАЧЕ 0
    КОНЕЦ) КАК Остаток,
    NULL КАК Период,
    NULL КАК Приход,
    NULL КАК Расход
    ИЗ
    РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
    СГРУППИРОВАТЬ ПО
    ТоварыНаСкладах.Номенклатура
    ОБЪЕДИНИТЬ ВСЕ
    ВЫБРАТЬ
    ТоварыНаСкладах.Номенклатура,
    NULL,
    КОЛИЧЕСТВО(ТоварыНаСкладах.Период),
    СУММА(ВЫБОР
    КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
    ТОГДА ТоварыНаСкладах.ВНаличии
    ИНАЧЕ 0
    КОНЕЦ),
    СУММА(ВЫБОР
    КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
    ТОГДА ТоварыНаСкладах.ВНаличии
    ИНАЧЕ 0
    КОНЕЦ)
    {ВЫБРАТЬ
    Товар.*,
    Период,
    Остаток,
    Приход,
    Расход}
    ИЗ
    РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
    СГРУППИРОВАТЬ ПО
    ТоварыНаСкладах.Номенклатура
    УПОРЯДОЧИТЬ ПО
    Товар
    В результате получается наращивание таблиц снизу, но это получается не наглядно..
    Уважаемый alexburn, оформила как вы просили код. Надеюсь результат Вас удовлетворит.
  17. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Вполне:)))))
  18. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    Что значит результат - "нечитаемый". Это же скорее всего вопрос к тому, как вы его выводите.
  19. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29
    Я имела в ввиду, что не удобно анализировать результат. Вот например надо вам посмотреть Остаток и Расход конфет Белочка. Вам надо сначало смотреть в одной таблице Остаток, а потом мотать вниз и искать эти конфеты и смотреть Расход. Не знаю как еще объяснить, вверху таблица Номенклатура и НачальныйОстаток, а внизу Номенклатура, Приход, Расход, Конечный остаток. Где нет данных там пустое значение в ячейке. Надо уже научиться катринку мне вставлять..
  20. TopicStarter Overlay
    AlenkaInt
    Offline

    AlenkaInt Опытный в 1С

    Регистрация:
    26 фев 2012
    Сообщения:
    1.008
    Симпатии:
    4
    Баллы:
    29

    Вложения:

    • Фото1.jpg
      Фото1.jpg
      Размер файла:
      99,2 КБ
      Просмотров:
      38
    • Фото2.jpg
      Фото2.jpg
      Размер файла:
      107,1 КБ
      Просмотров:
      36
Похожие темы
  1. Geek
    Ответов:
    2
    Просмотров:
    876
Загрузка...

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