8.х Объединение 2 таблиц значений

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

  1. Катюфка
    Offline

    Катюфка Профессионал в 1С

    Регистрация:
    3 июн 2013
    Сообщения:
    405
    Симпатии:
    71
    Баллы:
    54
    А как это же будет запросом? Красивее мне не важно, а вот если быстрее, то это критично.
  2. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.634
    Симпатии:
    946
    Баллы:
    204
    Ну как и писали создаете менеджер временных таблиц, создаете две временные таблицы а потом объеденяете их

    Что то типа

    "Выбрать
    номеклатура,
    Количество
    ПОМЕСТИТь в ТЗ
    ИЗ &Табл1"

    Запрос.УстановитьПараметр(&Табл1,ВашаТЗ)

    Аналогично ТЗ2, а потом объединение ТЗ1 и ТЗ2
  3. Катюфка
    Offline

    Катюфка Профессионал в 1С

    Регистрация:
    3 июн 2013
    Сообщения:
    405
    Симпатии:
    71
    Баллы:
    54
    Простите, но где же тут "красивей"? Запрос, временные таблицы...
    С циклом требуется всего один проход, и вся табличка заполнена.
  4. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.634
    Симпатии:
    946
    Баллы:
    204
    У что тут некрасивого.

    У Вас будет конструкция типа

    Запрос.текс="тут текст запроса";
    Запрос.Установитьпараметры(&Табл1,ВашаТЗ1),
    Запрос.Установитьпараметры(&Табл2,ВашаТЗ2),

    Результат = Запрос.Выполнить.Выгрузить(),

    Текст то запроса один, он же пакетный
  5. Катюфка
    Offline

    Катюфка Профессионал в 1С

    Регистрация:
    3 июн 2013
    Сообщения:
    405
    Симпатии:
    71
    Баллы:
    54
    Я начинаю понимать, но еще не до конца. Что у нас вернется в Результат? Сразу обе таблицы или надо запрос делать дважды?
  6. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.634
    Симпатии:
    946
    Баллы:
    204
    Код:
    Запрос.текс="ВЫБРАТЬ
        ТЗ.Номенклатура,
        ТЗ.Количество
    ПОМЕСТИТЬ ТЗ1
    ИЗ
        &Табл1 КАК ТЗ
    ;
    
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
        ТЗ.Номенклатура,
        ТЗ.Количество
    ПОМЕСТИТЬ ТЗ2
    ИЗ
        &Табл1 КАК ТЗ
    ;
    
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
        ТЗ1.Номенклатура,
        ТЗ1.Количество
    ИЗ
        ТЗ1 КАК ТЗ1
    
    ОБЪЕДИНИТЬ ВСЕ
    
    ВЫБРАТЬ
        ТЗ2.Номенклатура,
        ТЗ2.Количество
    ИЗ
        ТЗ2 КАК ТЗ2";
    Запрос.Установитьпараметры(&Табл1,ВашаТЗ1),
    Запрос.Установитьпараметры(&Табл2,ВашаТЗ2),
    
    Результат = Запрос.Выполнить.Выгрузить(),
    Что то вроде этого
  7. Катюфка
    Offline

    Катюфка Профессионал в 1С

    Регистрация:
    3 июн 2013
    Сообщения:
    405
    Симпатии:
    71
    Баллы:
    54
    Не обижайтесь, но программисты в восьмерке мне напоминают магов из фэнтезийных книжек: у каждого в запасе какое-то витиеватое заклинание, которое знает только он, и позволяющее с легкостью преодолевать трудности, которые для простых смертных являются непреодолимыми.)
    Я сохраню себе этот пример, но, боюсь, воспользуюсь им только если уж мой простенький цикл будет заметно тормозить на больших таблицах.
  8. st88
    Offline

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

    Регистрация:
    18 окт 2012
    Сообщения:
    1.725
    Симпатии:
    28
    Баллы:
    54
    Только ошибку во втором пакете не забудьте исправить:
    ПОМЕСТИТЬ ТЗ2
    ИЗ
    &Табл2 КАК ТЗ
  9. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.634
    Симпатии:
    946
    Баллы:
    204
    На коленке копипастил, так что ссори. Главное смысл
  10. st88
    Offline

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

    Регистрация:
    18 окт 2012
    Сообщения:
    1.725
    Симпатии:
    28
    Баллы:
    54
    ну ты ж знаешь их, тупо скопируют, а потом будут вапить, почему не работает:))
  11. Draco
    Offline

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

    Регистрация:
    28 окт 2009
    Сообщения:
    13.634
    Симпатии:
    946
    Баллы:
    204
    А он заругается, что нет такого параметра и до них дойдет. Я в них все же верю :) Они все знают, просто скрывают это в себе :)
  12. Катюфка
    Offline

    Катюфка Профессионал в 1С

    Регистрация:
    3 июн 2013
    Сообщения:
    405
    Симпатии:
    71
    Баллы:
    54
    Вы нас явно переоцениваете.)
    Теперь буду знать, что в примерах может скрываться какой-то подвох в виде неверного параметра или запятых вместо точки с запятой. Так даже интересней. Код Да Винчи, числа Фибоначчи, пляшущие человечки, форум 1С... ))
    Я говорю всем спасибо. Надеюсь, и топикстартер получил ответ на свой вопрос.
  13. Tiger86
    Offline

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

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    вы наверное книгу радченко не смотрели (по крайней мере для 8.0) были траблы в примерах

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