8.х Запрос в 1с

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

  1. TopicStarter Overlay
    Max.Irkut
    Offline

    Max.Irkut

    Регистрация:
    27 фев 2015
    Сообщения:
    35
    Симпатии:
    0
    Баллы:
    1
    Добрый день, вопрос у меня в следующем:

    Есть 2 таблицы:

    1-я
    ФИО1 | Должность1 | Часы1
    ФИО1 | Должность2 | Часы2
    ФИО2 | Должность3 | Часы3
    ФИО3 | Должность4 | Часы4

    2-я
    ФИО1 | Данные1
    ФИО2 | Данные2

    Можно ли запросом получить таблицу??

    ФИО1 | Должность1 | Часы1 | Данные1
    ФИО1 | Должность2 | Часы1 | NULL
    ФИО2 | Должность3 | Часы3 | Данные2
    ФИО3 | Должность4 | Часы4 | NULL

    Просто Левое соединение на помагает, Ну и конечно надо учесть, что кол-во строк может быть Любым.
  2. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Что значит "Просто Левое соединение на помагает"?
  3. TopicStarter Overlay
    Max.Irkut
    Offline

    Max.Irkut

    Регистрация:
    27 фев 2015
    Сообщения:
    35
    Симпатии:
    0
    Баллы:
    1
    ФИО1 | Должность1 | Часы1 | Данные1
    ФИО1 | Должность2 | Часы1 | Данные1
    ФИО2 | Должность3 | Часы3 | Данные2
    ФИО3 | Должность4 | Часы4 | NULL

    Потому, что она получится вот такая
  4. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Вторая таблица так же должна содержать данные по Часам и Должностям

    Либо так:
    ФИО1 | Должность1 | Часы1 | Данные1
    ФИО1 | Должность2 | Часы1 | NULL

    Либо так:
    ФИО1 | Должность1 | Часы1 | Данные1
  5. TopicStarter Overlay
    Max.Irkut
    Offline

    Max.Irkut

    Регистрация:
    27 фев 2015
    Сообщения:
    35
    Симпатии:
    0
    Баллы:
    1
    Но она их не содержит и не может содержать
  6. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    Так на вскидку быстро - наврят ли.
    Либо ка то надо думать мутить что нить через временные
  7. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    Насколько понимаю, если в одной таблице есть данные по должностям и часам, то ко второй это же самое прилепить по ФИО не составит труда, а дальше уже соединять то, что получится.

    Либо я не совсем понимаю, что требуется....
  8. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    Ну как я думаю
    есть таблицы

    1-я
    ФИО1 | Должность1 | Часы1
    ФИО1 | Должность2 | Часы2
    ФИО2 | Должность3 | Часы3
    ФИО3 | Должность4 | Часы4

    2-я
    ФИО1 | Данные1
    ФИО2 | Данные2

    Берем их помещаем в ВТ1 и ВТ2

    затем берем ВТ1
    и делаем группировку по фио, а должность и часы,допустим по МАКСИМУМ(Должность), Должность(Часы) и помещаем в ВТ3
    В итоге ВТ3 у нас будет только одно фио и одно значенеи Максимум

    ФИО1 | Должность1 | Часы1
    ФИО2 | Должность3 | Часы3
    ФИО3 | Должность4 | Часы4

    Затем берем ВТ2 и левым соединениме подтягиваем ВТ3 получаем

    ФИО1 | Данные1| Должность1 | Часы1
    ФИО2 | Данные2| Должность3 | Часы3

    Помещаем в ВТ4

    В итоге получаем ВТ1 и ВТ4

    ФИО1 | Должность1 | Часы1
    ФИО1 | Должность2 | Часы2
    ФИО2 | Должность3 | Часы3
    ФИО3 | Должность4 | Часы4


    ФИО1 | Данные1| Должность1 | Часы1
    ФИО2 | Данные2| Должность3 | Часы3

    если соединеяем по ФИО Должность и Часы - получаем что Вам надо

    Единственный вопрос Что Вам сделает МАКСИМУМ()
    вот тут
    ФИО1 | Должность1 | Часы1
    ФИО1 | Должность2 | Часы2

    Возьмет как максимум должность 1 или Должность 2

    ну а так алгоритм такой
  9. TopicStarter Overlay
    Max.Irkut
    Offline

    Max.Irkut

    Регистрация:
    27 фев 2015
    Сообщения:
    35
    Симпатии:
    0
    Баллы:
    1
    Ок, спасибо, попробую прикрутить завтра это.

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