8.х Выбрать запросом поля из регистра накопления

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

  1. TopicStarter Overlay
    Robix
    Offline

    Robix Опытный в 1С

    Регистрация:
    1 апр 2012
    Сообщения:
    107
    Симпатии:
    1
    Баллы:
    29
    Здравствуйте. Я новичок в запросах.
    Имеется запрос(конфигурация Управление торговлей, редакция 11.1):

    Код:
    ВЫБРАТЬ ПЕРВЫЕ 100
       РасчетыСКлиентамиПоДокументам.Регистратор КАК Регистратор,
       РасчетыСКлиентамиПоДокументам.КОтгрузке КАК Выручка
    ИЗ
       РегистрНакопления.РасчетыСКлиентамиПоДокументам КАК РасчетыСКлиентамиПоДокументам
    Если возможно?, помогите дополнить запрос, чтобы получилось следующее:

    1. В "Регистратор" попадали только документы типа "Реализация товаров и услуг"
    2. Добавлялась третья колонка, которая называется "Расчетный документ" в регистре накопления "Расчеты с клиентами по документам"
    и в нее попадали бы только документы типа "Поступление безналичных ДС", а если "Расчетный документ" иной, то такая строчка вообще бы не попадала
    в результат, (а попадали только пары, где регистратор "Реализация товаров и услуг", а расчетный документ "Поступление безналичных ДС")
  2. LordMaverick
    Offline

    LordMaverick Профессионал в 1С

    Регистрация:
    17 мар 2014
    Сообщения:
    3.431
    Симпатии:
    372
    Баллы:
    104
    релиз полностью указывайте
  3. XXL
    Offline

    XXL Опытный в 1С Команда форума

    Регистрация:
    22 янв 2007
    Сообщения:
    1.159
    Симпатии:
    19
    Баллы:
    29
    Конфу не знаю, но должно быть что-то вроде этого. И лучше взять виртуальную таблицу оборотов регстра

    Код:
    "ВЫБРАТЬ
    |    РасчётыСКлиентамиПоДокументамОбороты.Регистратор КАК Регистратор,
    |    РасчётыСКлиентамиПоДокументамОбороты.КОтгрузке КАК Выручка,
    |    РасчётыСКлиентамиПоДокументамОбороты.РасчётныйДокумент КАК РасчётныйДокумент
    |ИЗ
    |    РегистрНакопления.РасчётыСКлиентамиПоДокументам.Обороты(, , Регистратор, РасчётныйДокумент.Тип = &НужныйТипРасчётногоДокумента) КАК РасчётыСКлиентамиПоДокументамОбороты
    |ГДЕ
    |    РасчётыСКлиентамиПоДокументамОбороты.Регистратор.Тип = &НужныйТипРегистратора"
  4. TopicStarter Overlay
    Robix
    Offline

    Robix Опытный в 1С

    Регистрация:
    1 апр 2012
    Сообщения:
    107
    Симпатии:
    1
    Баллы:
    29
    Спасибо. Навели на мысль. В итоге то, что мне нужно это:
    Код:
    ВЫБРАТЬ ПЕРВЫЕ 100
        РасчетыСКлиентамиПоДокументам.Регистратор КАК Регистратор,
        РасчетыСКлиентамиПоДокументам.КОтгрузке КАК Выручка,
        РасчетыСКлиентамиПоДокументам.РасчетныйДокумент
    ИЗ
        РегистрНакопления.РасчетыСКлиентамиПоДокументам КАК РасчетыСКлиентамиПоДокументам
    ГДЕ
        РасчетыСКлиентамиПоДокументам.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
        И РасчетыСКлиентамиПоДокументам.РасчетныйДокумент ССЫЛКА Документ.ЗаказКлиента
    Единственное, не знаю насколько это правильно с точки зрения возможностей 1С, вроде как рекомендовали обращаться только к виртуальным таблицам.
    Если можено использовать для такого же результата виртуальную таблицу РасчетыСКлиентамиПоДокументамОбороты, то подскажите как, кто знает.
  5. XXL
    Offline

    XXL Опытный в 1С Команда форума

    Регистрация:
    22 янв 2007
    Сообщения:
    1.159
    Симпатии:
    19
    Баллы:
    29
    Читайте мой код внимательнее, там как раз про виртуальные таблицы
  6. saha25
    Offline

    saha25 Опытный в 1С

    Регистрация:
    30 окт 2007
    Сообщения:
    95
    Симпатии:
    3
    Баллы:
    29
    Для вашего случая нужно написать:

    РегистрНакопления.РасчётыСКлиентамиПоДокументам.Обороты(, , Регистратор, )

    И тогда можно накладывать условие на регистратор
  7. TopicStarter Overlay
    Robix
    Offline

    Robix Опытный в 1С

    Регистрация:
    1 апр 2012
    Сообщения:
    107
    Симпатии:
    1
    Баллы:
    29
    Спасибо большое за ответы. Еще есть вопрос. Если я ипользую не виртуальную таблицу, а отбираю данные из реальной таблицы
    РегистрНакопления.РасчетыСКлиентамиПоДокументам, где отбор по начальной и конечной дате документов, то это не сильно скажется на производительньсти по сравнению с виртуальной?
  8. nomad_irk
    Online

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.552
    Симпатии:
    716
    Баллы:
    204
    при прочих равных - не должно, т.к. по сути выбирались эти же данные.
  9. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    думаю, даже при прочих равных условиях виртуальные таблицы на больших объемах данных отработают быстрее... советую с ними работать...

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