Запись выбранных значений в отдельные таблицы
По теме из базы знаний
- Всякие полезности
- Быстрый поиск дублей в 1С с четким/нечетким поиском по любому сочетанию реквизитов/реквизитов таб. частей с отбором и быстрой заменой значений в ЛЮБЫХ базах 8.1-8.3 (УТ 10.3, БП 2, ЗУП 2.5, КА 1.1, УТ 11, БП 3, УНФ 1.6/3.0, КА 2, ЗУП 3 и т.д.)
- 50+ советов для успешной сдачи 1С: Специалист по платформе
- Конфигурация Flowcon: Набор инструментов для управления задачами, проектами и бизнесом в 1С
- Автоматизация труда программиста. Библиотека прикладных функций
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
Делаете вложенный запрос, потом - два раза используете полученный подзапрос (запрос1: получаете данные Таблица1, запрос2: получаете данные Таблица2). Выгружаете в ТЗ, используете далее.
И зачем столько реквизитов получаете - они все нужны?
Есть несколько справочников, из которых выбранные в коде данные будут записываться в Таблицу 1. Тоже самое происходит и с другими данными, которые записываются в Таблицу 2. Как это проще всего сделать? Что посоветуете использовать ?
Делаете вложенный запрос, потом - два раза используете полученный подзапрос (запрос1: получаете данные Таблица1, запрос2: получаете данные Таблица2). Выгружаете в ТЗ, используете далее.
И зачем столько реквизитов получаете - они все нужны?
Обе таблицы находятся на общей форме.
В данном случае это значение не имеет - все равно будете заполнять на сервере (это во-первых), а во-вторых - это будет при заполнении формы, т.е. к заданному вопросу не относится. Хотя вам как раз по этому ненужному дополнению начали давать советы...
Сформулируйте более конкретно задачу. Тк не понятно каким способом формируются данные, запросом, либо объектно. От этого зависят способы передачи информации в нужное место. Так же где формируются данные, на клиенте либо на сервере
(4) Можете сформировать запрос, а при его обработке использовать метод Выгрузить(), Таблица1ИзЗапроса=ВашЗапрос.Выполнить().Выгрузить(). При чем советую сразу в запросе все поля называть так, как называются колонки в вашей Таблица1, можно будет использовать удобное автозаполнение для каждой строки при обходе путем использования процедуры ЗаполнитьЗначенияСвойств(СтрокаИзТаблица1,СтрокаИзТаблица1ИзЗапроса)
(7) Это запрос для таблицы 1. И я пока что программно не задал колонки.
ВЫБРАТЬ
ВыборЭлектродвигателя.hбуф КАК hбуф,
ВыборЭлектродвигателя.hг КАК hг,
ВыборЭлектродвигателя.hгл КАК hгл,
ВыборЭлектродвигателя.hст КАК hст,
ВыборЭлектродвигателя.I КАК I,
ВыборЭлектродвигателя.K КАК K,
ВыборЭлектродвигателя.nн КАК nн,
ВыборЭлектродвигателя.nн2 КАК nн2,
ВыборЭлектродвигателя.Q КАК Q,
ВыборЭлектродвигателя.Qк КАК Qк,
ВыборЭлектродвигателя.pж КАК pж,
ВыборЭлектродвигателя.Pс КАК Pс,
ВыборЭлектродвигателя.s КАК s,
ВыборЭлектродвигателя.v КАК v,
ВыборЭлектродвигателя.Vcp КАК Vcp,
ВыборЭлектродвигателя.z КАК z,
ВыборЭлектродвигателя.Ближайшийdвн КАК Ближайшийdвн,
ВыборЭлектродвигателя.Де КАК Де,
ВыборЭлектродвигателя.Hcc1 КАК Hcc1,
ГлубинаПогруженияЭЦНПодДинамическийУровень.aн КАК aн,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Be КАК Be,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Bнн КАК Bнн,
ГлубинаПогруженияЭЦНПодДинамическийУровень.d КАК d,
ГлубинаПогруженияЭЦНПодДинамическийУровень.hд КАК hд,
ГлубинаПогруженияЭЦНПодДинамическийУровень.n КАК n,
ГлубинаПогруженияЭЦНПодДинамическийУровень.P0 КАК P0,
ГлубинаПогруженияЭЦНПодДинамическийУровень.P01 КАК P01,
ГлубинаПогруженияЭЦНПодДинамическийУровень.p20н КАК p20н,
ГлубинаПогруженияЭЦНПодДинамическийУровень.pв КАК pв,
ГлубинаПогруженияЭЦНПодДинамическийУровень.pвоз КАК pвоз,
ГлубинаПогруженияЭЦНПодДинамическийУровень.pг КАК pг,
ГлубинаПогруженияЭЦНПодДинамическийУровень.pж КАК pж1,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Pз КАК Pз,
ГлубинаПогруженияЭЦНПодДинамическийУровень.pн КАК pн,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Pнас КАК Pнас,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Pпк КАК Pпк,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Pпл КАК Pпл,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Pпред КАК Pпред,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Pпрк КАК Pпрк,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Pу КАК Pу,
ГлубинаПогруженияЭЦНПодДинамическийУровень.T КАК T,
ГлубинаПогруженияЭЦНПодДинамическийУровень.T0 КАК T0,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Tпк КАК Tпк,
ГлубинаПогруженияЭЦНПодДинамическийУровень.tпл КАК tпл,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Vрг КАК Vрг,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Z КАК Z1,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Г КАК Г,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Коэффициент КАК Коэффициент,
ГлубинаПогруженияЭЦНПодДинамическийУровень.КПДгн КАК КПДгн,
ГлубинаПогруженияЭЦНПодДинамическийУровень.КСГ КАК КСГ,
ГлубинаПогруженияЭЦНПодДинамическийУровень.Ннс КАК Ннс,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.dк КАК dк,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Dн КАК Dн,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Dн1 КАК Dн1,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Dэд КАК Dэд,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Dэд1 КАК Dэд1,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.hк КАК hк,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.i КАК i1,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Iн КАК Iн,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Iр КАК Iр,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.L КАК L,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.lрем КАК lрем,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.lскступр КАК lскступр,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.nэд КАК nэд,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Pэд КАК Pэд,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Q КАК Q1,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Sпс КАК Sпс,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Sх КАК Sх,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.t20 КАК t20,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.t3 КАК t3,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Uэд КАК Uэд,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.ал КАК ал,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.ал1 КАК ал1,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.ам КАК ам,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Вндэк КАК Вндэк,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Впжид КАК Впжид,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.НКПД КАК НКПД,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.ТрансКПД КАК ТрансКПД,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.ТрКПД КАК ТрКПД,
ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Х0 КАК Х0,
ИЗ
Справочник.ВыборЭлектродвигателя КАК ВыборЭлектродвигателя,
Справочник.ГлубинаПогруженияЭЦНПодДинамическийУровень КАК ГлубинаПогруженияЭЦНПодДинамическийУровень,
Справочник.ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН КАК ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН
Показать
(12)
Другое дело, что, как написали выше - Имена реквизитам справочника нужно давать информативные, а не несколько букв.
Иначе потом сами не разберетесь, что и где хранится. И нужно будет каждый раз открытый справочник с полями и данными держать перед глазами.
наименование реквизитов справочника точно такое же как и наименование заданных реквизитов в запросе
А по-другому и не получится.
Другое дело, что, как написали выше - Имена реквизитам справочника нужно давать информативные, а не несколько букв.
Иначе потом сами не разберетесь, что и где хранится. И нужно будет каждый раз открытый справочник с полями и данными держать перед глазами.
(8)
"Программно задавать колонки" - это уже работа с формой. Это уже ТабличныеПоля (ТП). А сейчас вы еще пытаетесь получить ТаблицыЗначений (ТЗ). ТЗ и ТП - это разные объекты, ТП относится к Элементам управления формы.
Сама форма (КЛИЕНТ, директива "НаКлиенте") никаким образом не связана с полями вашего запроса, и с полями ТЗ, которые вы получите. Эти ТЗ еще надо будет передать тем или иным образом на форму, и там уже - заполните ТП формы.
Это запрос для таблицы 1. И я пока что программно не задал колонки.
Запрос вы будете выполнять на СЕРВЕРЕ (директива "НаСервере").
"Программно задавать колонки" - это уже работа с формой. Это уже ТабличныеПоля (ТП). А сейчас вы еще пытаетесь получить ТаблицыЗначений (ТЗ). ТЗ и ТП - это разные объекты, ТП относится к Элементам управления формы.
Сама форма (КЛИЕНТ, директива "НаКлиенте") никаким образом не связана с полями вашего запроса, и с полями ТЗ, которые вы получите. Эти ТЗ еще надо будет передать тем или иным образом на форму, и там уже - заполните ТП формы.
(6)
Получать вы их будете не на форме (клиенте), а на сервере, а потом уже - передавать на форму (это если заполнение по кнопке), либо - заполянтьПриСозданииНаСервере (это если форма заполняется этими данными изначально при открытии).
Заполнение на форме - это уже следующий этап (и, возможно, отдельный вопрос), вы сначала данные получите.
Думаю придётся вручную на форме все эти колонки задать ?
Или лучше программно добавить, но исключая ненужные мне реквизиты из справочника ?
Это все относится к заполнению на форме, а тут - вам сначала нужно еще данные получить.
Или лучше программно добавить, но исключая ненужные мне реквизиты из справочника ?
Получать вы их будете не на форме (клиенте), а на сервере, а потом уже - передавать на форму (это если заполнение по кнопке), либо - заполянтьПриСозданииНаСервере (это если форма заполняется этими данными изначально при открытии).
Заполнение на форме - это уже следующий этап (и, возможно, отдельный вопрос), вы сначала данные получите.
(5)
Не нашёл данную процедуру поэтому пишу в кнопку:
ходе путем использования процедуры ЗаполнитьЗначенияСвойств
Не нашёл данную процедуру поэтому пишу в кнопку:
&НаСервере
Процедура ЗаполнитьИсториюРасчётов(Команда)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ВыборЭлектродвигателя.hбуф КАК hбуф,
| ВыборЭлектродвигателя.hг КАК hг,
| ВыборЭлектродвигателя.hгл КАК hгл,
| ВыборЭлектродвигателя.hст КАК hст,
| ВыборЭлектродвигателя.I КАК I,
| ВыборЭлектродвигателя.K КАК K,
| ВыборЭлектродвигателя.nн КАК nн,
| ВыборЭлектродвигателя.nн2 КАК nн2,
| ВыборЭлектродвигателя.Q КАК Q,
| ВыборЭлектродвигателя.Qк КАК Qк,
| ВыборЭлектродвигателя.pж КАК pж,
| ВыборЭлектродвигателя.Pс КАК Pс,
| ВыборЭлектродвигателя.s КАК s,
| ВыборЭлектродвигателя.v КАК v,
| ВыборЭлектродвигателя.Vcp КАК Vcp,
| ВыборЭлектродвигателя.z КАК z,
| ВыборЭлектродвигателя.Ближайшийdвн КАК Ближайшийdвн,
| ВыборЭлектродвигателя.Де КАК Де,
| ВыборЭлектродвигателя.Hcc1 КАК Hcc1,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.aн КАК aн,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Be КАК Be,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Bнн КАК Bнн,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.d КАК d,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.hд КАК hд,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.n КАК n,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.P0 КАК P0,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.P01 КАК P01,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.p20н КАК p20н,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.pв КАК pв,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.pвоз КАК pвоз,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.pг КАК pг,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.pж КАК pж1,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Pз КАК Pз,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.pн КАК pн,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Pнас КАК Pнас,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Pпк КАК Pпк,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Pпл КАК Pпл,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Pпред КАК Pпред,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Pпрк КАК Pпрк,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Pу КАК Pу,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.T КАК T,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.T0 КАК T0,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Tпк КАК Tпк,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.tпл КАК tпл,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Vрг КАК Vрг,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Z КАК Z1,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Г КАК Г,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Коэффициент КАК Коэффициент,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.КПДгн КАК КПДгн,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.КСГ КАК КСГ,
| ГлубинаПогруженияЭЦНПодДинамическийУровень.Ннс КАК Ннс,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.dк КАК dк,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Dн КАК Dн,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Dн1 КАК Dн1,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Dэд КАК Dэд,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Dэд1 КАК Dэд1,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.hк КАК hк,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.i КАК i1,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Iн КАК Iн,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Iр КАК Iр,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.L КАК L,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.lрем КАК lрем,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.lскступр КАК lскступр,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.nэд КАК nэд,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Pэд КАК Pэд,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Q КАК Q1,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Sпс КАК Sпс,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Sх КАК Sх,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.t20 КАК t20,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.t3 КАК t3,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Uэд КАК Uэд,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.ал КАК ал,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.ал1 КАК ал1,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.ам КАК ам,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Вндэк КАК Вндэк,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Впжид КАК Впжид,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.НКПД КАК НКПД,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.ТрансКПД КАК ТрансКПД,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.ТрКПД КАК ТрКПД,
| ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН.Х0 КАК Х0
|ИЗ
| Справочник.ВыборЭлектродвигателя КАК ВыборЭлектродвигателя,
| Справочник.ГлубинаПогруженияЭЦНПодДинамическийУровень КАК ГлубинаПогруженияЭЦНПодДинамическийУровень,
| Справочник.ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН КАК ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН";
ВходныеДанные = Запрос.Выполнить().Выгрузить()
КонецПроцедуры
Показать
(14)
Про директивы клиента и сервера
Вы ему то форму советуете (которую он необдуманно назвал "общей"), то - "про директивы клиента и сервера" разобраться.
почитать про запросы.
Так если прочитали про запросы - что ж советы даете не про запросы, а про формы и разделение?
(13)и еще, обратите внимание:
Вот не надо так делать. Тем более - вы столько реквизитов тянете.
Вы понимаете, что соединяете все три таблицы "все-ко-всем" по "все поля-ко-всему", и только потом - будет выборка из этой гигантской каши? Работать будет, но уже если по несколько сотен элементов в каждом справочнике - тормозить будет существенно.
Сделайте три подзапроса (по каждому справочнику - отдельно), а в итоговых запросах просто обратитесь к нужным виртуальным таблицам (результатам подзапросов), и выберете окончательно что нужно - поля для таблиц 1 и 2.
А соединять несколько таблиц в условиях без крайней нужды в 1С - строго не рекомендуется, там и так разъименований по каждой таблице хватит, а тут еще усложняете на порядок (в вашем случае - даже на пару порядков) работу для сервера.
|ИЗ
| Справочник.ВыборЭлектродвигателя КАК ВыборЭлектродвигателя,
| Справочник.ГлубинаПогруженияЭЦНПодДинамическийУровень КАК ГлубинаПогруженияЭЦНПодДинамическийУровень,
| Справочник.ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН КАК ВыборКабеляТрансформатораИОпределениеЭксплуатационныхПарамет ровЭЦН";
Вот не надо так делать. Тем более - вы столько реквизитов тянете.
Вы понимаете, что соединяете все три таблицы "все-ко-всем" по "все поля-ко-всему", и только потом - будет выборка из этой гигантской каши? Работать будет, но уже если по несколько сотен элементов в каждом справочнике - тормозить будет существенно.
Сделайте три подзапроса (по каждому справочнику - отдельно), а в итоговых запросах просто обратитесь к нужным виртуальным таблицам (результатам подзапросов), и выберете окончательно что нужно - поля для таблиц 1 и 2.
А соединять несколько таблиц в условиях без крайней нужды в 1С - строго не рекомендуется, там и так разъименований по каждой таблице хватит, а тут еще усложняете на порядок (в вашем случае - даже на пару порядков) работу для сервера.
(5)
Выгрузка в ТЗ результата запроса:
- выгрузит готовое ТЗ со всеми полями итогового запроса. Никакое дополнительное заполнение не требуется.
ТЗ по команде "ВЫГРУЗИТЬ()" формируется автоматически, со всеми нужными полями, автотипизацией полей (по типам поля в запросе), названия полей берутся из запроса.
При чем советую сразу в запросе все поля называть так, как называются колонки в вашей Таблица1
В данном случае это совершенно не обязательно.
Выгрузка в ТЗ результата запроса:
Запрос.Выполнить().Выгрузить()
ТЗ по команде "ВЫГРУЗИТЬ()" формируется автоматически, со всеми нужными полями, автотипизацией полей (по типам поля в запросе), названия полей берутся из запроса.
можно будет использовать удобное автозаполнение для каждой строки при обходе путем использования процедуры ЗаполнитьЗначенияСвойств(СтрокаИзТаблица1,СтрокаИзТаблица1ИзЗапроса)
Зачем еще раз использовать ЗаполнитьЗначенияСвойств?? У него не готовое ТЗ на основании другого готового ТЗ заполняется.
(5)
А в результате - вы бы таким образом просто создали копии "Таблица1ИзЗапроса" и "Таблица2ИзЗапроса" (уже готовые ТЗ) в "Таблица1" и "Таблица2". Зачем-то.
В общем, нагромождено у вас много чего, но все - не ответ на заданный вопрос.
ЗаполнитьЗначенияСвойств(СтрокаИзТаблица1,СтрокаИзТаблица1ИзЗапроса)
и да, если бы был подобный вариант (а его можно исключить), то тут еще нужно было бы циклами "ДЛЯ КАЖДОГО ИЗ" обходить оба запроса, выбирать строки, и их уже заполнять.
А в результате - вы бы таким образом просто создали копии "Таблица1ИзЗапроса" и "Таблица2ИзЗапроса" (уже готовые ТЗ) в "Таблица1" и "Таблица2". Зачем-то.
В общем, нагромождено у вас много чего, но все - не ответ на заданный вопрос.
(4)
Другое дело, что нужно сначала запрос правильно составить, а потом - еще и оптимизировать его (ваш исходный - это ужас что будет в итоге, и отрабатывать будет очень долго).
Я пока что пробую сформировать запросом
И правильно делаете. В 1С все, что можно - нужно получать запросом. Так и быстрее, и качественнее. И возможностей больше.
Другое дело, что нужно сначала запрос правильно составить, а потом - еще и оптимизировать его (ваш исходный - это ужас что будет в итоге, и отрабатывать будет очень долго).
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот