[РЕШЕНО] Несколько таблиц в запросе без связей

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

  1. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.978
    Симпатии:
    397
    Баллы:
    104
    Это я прекрасно знаю.
    Да потому что сопоставлять не с чем. Что тут не понятного то?
  2. TopicStarter Overlay
    rSlayer
    Offline

    rSlayer Опытный в 1С

    Регистрация:
    31 мар 2009
    Сообщения:
    251
    Симпатии:
    0
    Баллы:
    26
    Ну я о том, что если вторая таблица все таки будет пустая, а не Ира 45, то итог запроса будет пустым, вместо выведения Васи и Пети.
    Это реально проверенный факт. Вопрос - почему?
  3. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.978
    Симпатии:
    397
    Баллы:
    104
    Я еще раз повторяю фразу почему. Потому что без связей поля из первой таблицы ищут сопоставления по полям из второй таблицы. А если полей во второй таблице нет, то и сопоставить программа ничего не может. Вот и возвращает пустой результат.
  4. alexburn
    Offline

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

    Регистрация:
    5 янв 2009
    Сообщения:
    14.735
    Симпатии:
    508
    Баллы:
    204
    Никогда не задумывался над такими вещами, честно:D
  5. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.978
    Симпатии:
    397
    Баллы:
    104
    :D. Бывает.
  6. TopicStarter Overlay
    rSlayer
    Offline

    rSlayer Опытный в 1С

    Регистрация:
    31 мар 2009
    Сообщения:
    251
    Симпатии:
    0
    Баллы:
    26
    Ок . Тогда если 4 таблицы.

    1. Вася 11
    2. Петя 12
    3. Маша 13
    4. пустая

    Выводим все без связей.

    Снова пустота, если 4я таблица пуста.
    Сопоставлять вроде есть с чем, но 4я пустая таблица приводить к пустому запросу.
  7. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.978
    Симпатии:
    397
    Баллы:
    104
    да, потому что она сопоставляет все поля из всех таблиц. Если хотя бы в одной записей нет, то и результат будет пустым. На это были придуманы связи и соединения. Если поставите левое, то все записи из первой таблицы появятся.
    --- Объединение сообщений, 18 июн 2014 ---
    По мне все логично и просто.
  8. TopicStarter Overlay
    rSlayer
    Offline

    rSlayer Опытный в 1С

    Регистрация:
    31 мар 2009
    Сообщения:
    251
    Симпатии:
    0
    Баллы:
    26
    Ок. Ув.товарищ nbIpKuH_BaH9I, спасибо большое.
    Кстати, в первом , моем примере, который меня запутал, так получалось потому что, видимо когда я вывожу только поле Остаток, то остаток по регистру 0 и поэтому сопоставление есть.
    А во втором моем примере, я добавил Объект учета, а вот по объекту учета уже остаток не ноль, а NULL и сопоставления нет. Поэтому в первом случае у меня была одна строчка,а во втором пустой запрос был.
  9. nbIpKuH_BaH9I
    Offline

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.978
    Симпатии:
    397
    Баллы:
    104
    Ну вот и разобрался))). Не за что.
    rSlayer нравится это.

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