2 года назад
#1С #1C Текст запроса по полям таблицы значений // // Параметры: // Поля - КоллекцияКолонокТаблицыЗначений - Коллекция колонок таблицы значений для формирования текста запроса // // Возвращаемое значение: // Строка - Строка с текстом запроса или пустая строка. // Функция ТекстЗапросаПоПолямТЗ(Поля) Экспорт Если ТипЗнч(Поля) <> Тип("КоллекцияКолонокТаблицыЗначений") Тогда Возврат Строка(""); КонецЕсли; ТекстЗапроса = "ВЫБРАТЬ" + Символы.ПС; Для каждого Поле Из Поля Цикл ТекстЗапроса = ТекстЗапроса + Символы.Таб + "ТЗ." + Поле.Имя + " КАК " + Поле.Имя + "," + Символы.ПС; КонецЦикла; ТекстЗапроса = Лев(ТекстЗапроса, СтрДлина(ТекстЗапроса) - 2) + Символы.ПС; ТекстЗапроса = ТекстЗапроса + "ПОМЕСТИТЬ ТЗ" + Символы.ПС; ТекстЗапроса = ТекстЗапроса + "ИЗ" + Символы.ПС; ТекстЗапроса = ТекстЗапроса + Символы.Таб + "&ТЗ КАК ТЗ" + Символы.ПС; ТекстЗапроса = ТекстЗапроса + "; | |////////////////////////////////////////////////////////////////////////////////" + Символы.ПС; Возврат ТекстЗапроса; КонецФункции // ТекстЗапросаПолямТЗ()