Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Помогите с функцией
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
1Cv77
Скачал один отчетик, написано что работает под ТиС
однако при запуске выдал ошибку!
нет функции: глФильтрПоПеременнойЗапроса(,,,,,);
Кто знает где ее можна найти (в какой конфе)
или дайте листинг функции!

Заранее спасибо!
MATEVI
Цитата(1Cv77 @ 09.05.10, 14:58) необходимо зарегистрироваться для просмотра ссылки
Скачал один отчетик, написано что работает под ТиС
однако при запуске выдал ошибку!
нет функции: глФильтрПоПеременнойЗапроса(,,,,,);
Кто знает где ее можна найти (в какой конфе)
или дайте листинг функции!

Заранее спасибо!


ПУБ.


// ===============================
// глФильтрПоПеременнойЗапроса(...)
//
// Параметры:
// ТаблицаМФ - таблица значений множественного фильтра (не обязательный параметр),
// ИмяПеремЗапроса - название переменной запроса, к которой применить фильтр
// ПолеЕФ - значение элемента диалога, в котором вводится значение фильтра
// ИмяПоляЕФ - название элемента диалога, в котором вводится значение фильтра
// ТекстЗапроса - переменная, в которой содержится текст формируемого запроса
// ТекстЗаголовка - переменная, в которой содержится заголовок отчета
// Язык - язык, на котором будет формироваться заголовок
// ВидСправочникаКатегорий - название справочника категорий
//
// Возвращаемое значение:
// 0 - ошибка, 1 - успешно
//
// Описание:
// Дополняет текст запроса и заголовок отчета по переданному фильтру.
//
Функция глФильтрПоПеременнойЗапроса(ТаблицаМФ = "",ИмяПеремЗапроса,ПолеЕФ,ИмяПоляЕФ,ТекстЗапроса,ТекстЗаголовка, Язык, ВидСправочникаКатегорий="") Экспорт
Перем ПолеМФ, ИмяПоляМФ, ВремТипМФ;
Перем ПолеМФКатегорий, ИмяПоляМФКатегорий, ТипМФКатегорий;

Если ПустоеЗначение(ТаблицаМФ) = 1 Тогда // нет множественного фильтра
ПолеМФ = ""; ИмяПоляМФ = ""; ВремТипМФ = "";
ПолеМФСвойств = ""; ИмяПоляМФСвойств = ""; ТипМФСвойств = "";
Иначе
ТаблицаМФ.ВыбратьСтроки();
Пока ТаблицаМФ.ПолучитьСтроку()=1 Цикл
Если (ТаблицаМФ.СписокЭлементов.РазмерСписка()>0) и
(ТаблицаМФ.ИмяПеременной=ИмяПеремЗапроса) и
(ТаблицаМФ.ФлВкл=2) Тогда

Номер = ТаблицаМФ.НомерСтроки;
Если (ТаблицаМФ.Вид<>"ВидыКатегорий") Тогда
ИмяПоляМФ = "глУсловие"+СокрЛП(Номер);
ПрисвоитьЗначениеУсловию(Номер, ТаблицаМФ.СписокЭлементов, ПолеМФ);
ВремТипМФ = ТаблицаМФ.ТипМФ;
Иначе // по категориям
ИмяПоляМФКатегорий = "глУсловие"+СокрЛП(Номер);
ТипМФКатегорий = ТаблицаМФ.ТипМФ;
ПрисвоитьЗначениеУсловию(Номер, ТаблицаМФ.СписокЭлементов, ПолеМФКатегорий);
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЕсли;

Рез1 = глФильтрПоСправочнику(ПолеЕФ,ИмяПоляЕФ,
ПолеМФ,ИмяПоляМФ,ВремТипМФ,
ТекстЗапроса,ТекстЗаголовка,
ИмяПеремЗапроса,Язык);

Рез2 = глФильтрПоКатегориям(ВидСправочникаКатегорий,
ПолеМФКатегорий, ИмяПоляМФКатегорий, ТипМФКатегорий,
ТекстЗапроса, ТекстЗаголовка, ИмяПеремЗапроса,Язык);
Возврат Рез1*Рез2; // если хоть один = 0 - плохо

КонецФункции // ФильтрПоПеременнойЗапроса()
1Cv77
СПАСИБО!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.