helpf.pro
Регистрация

v8: Создать запрос

Bell
13.09.2012 19:12Прочитано: 1942
Здравствуйте
Подскажите как создать (заменить запросом) наиболее оптимальный запрос
Код 1C v 8.х
 [Процедура ААА()

ТЗ=Новый ТаблицаЗначений;
ТЗ.Колонки.Добавить("ДокументПоступления");
ТЗ.Колонки.Добавить("ВидЦенности");
ТЗ.Колонки.Добавить("МХ");
ТЗ.Колонки.Добавить("Контрагент");
ТЗ.Колонки.Добавить("Договор");
ТЗ.Колонки.Добавить("Валюта");
ТЗ.Колонки.Добавить("СтавкаНДС");
ТЗ.Колонки.Добавить("Сумма");
ТЗ.Колонки.Добавить("НДС");
//ЭлементыФормы.ТЗ.СоздатьКолонки();

Для каждого ТЧ Из Метаданные().ТабличныеЧасти Цикл
ИмяТЧ = ТЧ.Имя;
Для каждого СтрокаТЧ Из ЭтотОбъект[ИмяТЧ] Цикл

НВС=ТЗ.Добавить(); // Добавляем в Таблицу значений
НВС.ДокументПоступления = Ссылка;
НВС.МХ = МХкуда;
НВС.Контрагент = Контрагент;
НВС.Договор = Договор;
НВС.Валюта = Валюта;
НВС.СтавкаНДС = СтрокаТЧ.СтавкаНДС;
НВС.Сумма = СтрокаТЧ.Сумма;
НВС.НДС = СтрокаТЧ.НДС;

Если ИмяТЧ = "Товары" Тогда
НВС.ВидЦенности = Перечисления.ТМЦ_Статус.Товар;
ИначеЕсли ИмяТЧ = "Материалы" Тогда
НВС.ВидЦенности = Перечисления.ТМЦ_Статус.Материал;
ИначеЕсли ИмяТЧ = "БСО" Тогда
НВС.ВидЦенности = Перечисления.ТМЦ_Статус.Материал;
ИначеЕсли ИмяТЧ = "Комиссия" Тогда
НВС.ВидЦенности = Перечисления.ТМЦ_Статус.НаКомиссии;
ИначеЕсли ИмяТЧ = "Тара" Тогда
НВС.ВидЦенности = Перечисления.ТМЦ_Статус.Тара;
ИначеЕсли ИмяТЧ = "Оборудование" Тогда
НВС.ВидЦенности = Перечисления.ТМЦ_Статус.Оборудование;
ИначеЕсли ИмяТЧ = "ОС" Тогда
НВС.ВидЦенности = Перечисления.ТМЦ_Статус.ОС;
ИначеЕсли ИмяТЧ = "НМА" Тогда
НВС.ВидЦенности = Перечисления.ТМЦ_Статус.НМА;
КонецЕсли;

КонецЦикла;
КонецЦикла;

КонецПроцедуры

Изменено 13.09.12 19:17:04
Yandex
Возможно, вас также заинтересует
Реклама на портале
Persempre
13.09.2012 21:15Ответ № 1
А что нужно сделать и акая конфигурация?
Bell
14.09.2012 09:55Ответ № 2
Самописка конфигурация
Эту процедуру сделать запросом, Что то у меня слишком громоздкая получается.
E_Migachev
16.09.2012 23:03Ответ № 3
(2) Bell, выборка каждой ТЧ и ОБЪЕДИНИТЬ
Bell
17.09.2012 11:06Ответ № 4
ОбЪединением я и сделал, а можно ли сделать еще как нибудь. Через метаданные самый малый получается здесь скорость выполнения (в разумных пределах )не нужна,
Bell
18.09.2012 10:53Ответ № 5
Вопрос закрыт!
Подсказка: Вы получили ответ на свой вопрос - закройте вопрос!
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.