8.х Разобраться с виртуальными табл и запросами

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем desintegrer, 10 янв 2013.

  1. TopicStarter Overlay
    desintegrer
    Offline

    desintegrer Опытный в 1С

    Регистрация:
    11 май 2011
    Сообщения:
    377
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте.

    Хотелось бы разобраться с запросами.

    Есть ситуация когда нужно получить данные из 2х объектов конфигурации :

    например :справочник и регистр сведений
    в справочнике 3 записи свекла/морковь картошка
    а в регистре 1 запись относящаяся к картошке - например дата её оприходования.

    Когда я делаю запрос то в колонке номенклатура у меня три значения что правильно - а в колонке дата поступления должно быть одно значение т.к. поступала только картошка , но у меня 3 значения т.е. дата относящаяся к картошке присутствует и в других полях.

    Прошу у вас помочь разобраться в этом .
    Спасибо.
  2. La Navidad
    Offline

    La Navidad Опытный в 1С

    Регистрация:
    25 дек 2012
    Сообщения:
    203
    Симпатии:
    1
    Баллы:
    26
    нужно устанавливать соединения таблиц в запросе по номенклатуре
  3. TopicStarter Overlay
    desintegrer
    Offline

    desintegrer Опытный в 1С

    Регистрация:
    11 май 2011
    Сообщения:
    377
    Симпатии:
    0
    Баллы:
    26
    соединение есть - но результат не радует - левое соединение ?
  4. La Navidad
    Offline

    La Navidad Опытный в 1С

    Регистрация:
    25 дек 2012
    Сообщения:
    203
    Симпатии:
    1
    Баллы:
    26
    покажите запрос
  5. nbIpKuH_BaH9I
    Online

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.991
    Симпатии:
    399
    Баллы:
    104
  6. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    в данных точно уверены, а то может при просмотре в регистре какой-нить отбор стоит?
  7. TopicStarter Overlay
    desintegrer
    Offline

    desintegrer Опытный в 1С

    Регистрация:
    11 май 2011
    Сообщения:
    377
    Симпатии:
    0
    Баллы:
    26
    nblpkuh_bah9l - спасибо - познавательно- сейчас изучаю этот текст.

    тигеру 86 - хотелось бы в принципе понимать как такое получается и как этого избежать - я получаю такой результат уже не первый раз .
    В примере описанном выше честно признаюсь я допустил ошибку из-за того что в конфигурации были 2 справочникка с одинковым началом наименования , ну тут понятно что результат в таком случае мало предсказуем.
  8. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    ту так чтоб помочь вам надо видеть запрос, которым вы такие данные получаете... гадать и запутывать вас нет смысла
  9. TopicStarter Overlay
    desintegrer
    Offline

    desintegrer Опытный в 1С

    Регистрация:
    11 май 2011
    Сообщения:
    377
    Симпатии:
    0
    Баллы:
    26
    я завтра уточню по поводу запроса .
    а можно ссылку на материал про виртуальные таблицы - только не про таблицы регистров
    а таблицы которые можно создать самостоятельно ?
  10. nbIpKuH_BaH9I
    Online

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.991
    Симпатии:
    399
    Баллы:
    104
    Найдите в инете книжку. "Запросы для простых смертных". Там все очень подробно написано. Удачи
  11. TopicStarter Overlay
    desintegrer
    Offline

    desintegrer Опытный в 1С

    Регистрация:
    11 май 2011
    Сообщения:
    377
    Симпатии:
    0
    Баллы:
    26
    запросы для простых смертных книжка как я понял по эскуэль - а меня интересует конкретно виртуальные таблицы в 1с
  12. TopicStarter Overlay
    desintegrer
    Offline

    desintegrer Опытный в 1С

    Регистрация:
    11 май 2011
    Сообщения:
    377
    Симпатии:
    0
    Баллы:
    26
    В данном случае есть запрос который выводит всех неуволенных контактных лиц .
    нужно что бы он выводил так же доп свойство Планируемая дата увольнения
    запрос который выводит значение свойства

    Код:
    ВЫБРАТЬ
    История.ДатаУвольнения,
    История.КонтактноеЛицоКонтрагента,
    ЗначенияСвойствОбъектов.Значение
    ИЗ
    РегистрСведений.ИсторияКонтактныхЛицКонтрагентов.СрезПоследних КАК История
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ПО История.КонтактноеЛицоКонтрагента.Ссылка = ЗначенияСвойствОбъектов.Объект.Ссылка
    ГДЕ
    История.ДатаУвольнения <> ДАТАВРЕМЯ(1, 1, 1)
    

    итоговый запрос который нужно как-то отредактировать :

    Код:
    ВЫБРАТЬ
    История.ДатаУвольнения,
    История.КонтактноеЛицоКонтрагента
    ПОМЕСТИТЬ ТочноУволенные
    ИЗ
    РегистрСведений.ИсторияКонтактныхЛицКонтрагентов.СрезПоследних КАК История
    ГДЕ
    История.ДатаУвольнения <> ДАТАВРЕМЯ(1, 1, 1)
    ;
    
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    ЛОЖЬ КАК Увольнять,
    Лица.Ссылка КАК ФИО,
    Лица.РольКонтактногоЛица КАК Должность,
    Лица.Владелец КАК Предприятие,
    ТочноУволенные.ДатаУвольнения
    ИЗ
    Справочник.КонтактныеЛицаКонтрагентов КАК Лица
    ЛЕВОЕ СОЕДИНЕНИЕ ТочноУволенные КАК ТочноУволенные
    ПО (ТочноУволенные.КонтактноеЛицоКонтрагента = Лица.Ссылка)
    ГДЕ
    Лица.ПометкаУдаления
    И ВЫБОР
    КОГДА ЕСТЬNULL(ТочноУволенные.ДатаУвольнения, ИСТИНА)
    ТОГДА ИСТИНА
    ИНАЧЕ ЛОЖЬ
    КОНЕЦ";
    
  13. TopicStarter Overlay
    desintegrer
    Offline

    desintegrer Опытный в 1С

    Регистрация:
    11 май 2011
    Сообщения:
    377
    Симпатии:
    0
    Баллы:
    26
    Спасибо всем ! Вопрос решен .
  14. nbIpKuH_BaH9I
    Online

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

    Регистрация:
    16 сен 2009
    Сообщения:
    6.991
    Симпатии:
    399
    Баллы:
    104
    Запросы в 1С и вообще запросы. Это запросы SQL. В 1С они достаточно урезана. Так что если изучите SQL, то с 1С проблем не будет.

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