|
Значение не является значением объектного типа (ВидСравнения) | ☑ | ||
---|---|---|---|---|
0
Смертник
09.07.13
✎
11:54
|
Перем мДеревоФильтры Экспорт;
Функция ДобавитьОтбор(ПутьКДанным, Использование = Неопределено, ВидСравнения = Неопределено, Значение = Неопределено, ИспользоватьВБыстрыхОтборах = Истина) Экспорт ДобавляемыйЭлементОтбора = Неопределено; Для каждого ЭлементОтбора из ПостроительОтчета.Отбор Цикл Если ЭлементОтбора.ПутьКДанным = ПутьКДанным Тогда ДобавляемыйЭлементОтбора = ЭлементОтбора; Прервать; КонецЕсли; КонецЦикла; Если ДобавляемыйЭлементОтбора = Неопределено Тогда Попытка ДобавляемыйЭлементОтбора = ПостроительОтчета.Отбор.Добавить(ПутьКДанным); Исключение Возврат Ложь; КонецПопытки; КонецЕсли; Если Использование <> Неопределено Тогда ДобавляемыйЭлементОтбора.Использование = Использование; КонецЕсли; Если ВидСравнения <> Неопределено Тогда ДобавляемыйЭлементОтбора.ВидСравнения = ВидСравнения; КонецЕсли; Если Значение <> Неопределено Тогда ДобавляемыйЭлементОтбора.Значение = Значение; КонецЕсли; //Если ЗначениеС <> Неопределено Тогда // // ДобавляемыйЭлементОтбора.ЗначениеС = ЗначениеС; // //КонецЕсли; // //Если ЗначениеПо <> Неопределено Тогда // // ДобавляемыйЭлементОтбора.ЗначениеПо = ЗначениеПо; // //КонецЕсли; //Если ДобавляемыйЭлементОтбора.Имя = "ДоговорКонтрагента" Тогда // СтрФильтры = мДеревоФильтры.Строки.Добавить(); // СтрФильтры.ИмяПоля = ДобавляемыйЭлементОтбора.Имя; // СтрФильтры.ПредставлениеПоля = ДобавляемыйЭлементОтбора.Представление; // СтрФильтры.ОписаниеТипов = ДобавляемыйЭлементОтбора.ТипЗначения; // СтрФильтры.ИмяПоляВладелец = "Контрагент"; //КонецЕсли; Возврат Истина; КонецФункции // ДобавитьОтбор() Процедура ЗаполнитьНачальныеНастройки() Экспорт мДеревоФильтры.Строки.Очистить(); ПостроительОтчета.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | ИСТИНА КАК Загрузить, | ПланыЗаказыПоставщикам.ДоговорКонтрагентаВладелец, | ПланыЗаказыПоставщикам.НоменклатураНоменклатурнаяГруппа КАК НоменклатурнаяГруппа, | ПланыЗаказыПоставщикам.КоличествоОстаток КАК Количество, | ПланыЗаказыПоставщикам.СуммаУпрОстаток КАК Сумма, | ПланыЗаказыПоставщикам.Номенклатура, | ПланыЗаказыПоставщикам.ХарактеристикаНоменклатуры, | ПланыЗаказыПоставщикам.СтавкаНДС, | ПланыЗаказыПоставщикам.ЕдиницаИзмерения, | ПланыЗаказыПоставщикам.ЕдиницаИзмеренияКоэффициент КАК Коэффициент, | ПланыЗаказыПоставщикам.Цена, | ПланыЗаказыПоставщикам.СтатьяОборотов КАК ру_СтатьяОборотов |ИЗ | (ВЫБРАТЬ | бит_ЦФО_Организаций.Организация КАК Организация, | ру_ПланыЗаказыПоставщикамОбороты.ДоговорКонтрагента.Владелец КАК ДоговорКонтрагентаВладелец, | ру_ПланыЗаказыПоставщикамОбороты.ДоговорКонтрагента КАК ДоговорКонтрагента, | ру_ПланыЗаказыПоставщикамОбороты.Номенклатура КАК Номенклатура, | ру_ПланыЗаказыПоставщикамОбороты.Номенклатура.НоменклатурнаяГруппа КАК НоменклатураНоменклатурнаяГруппа, | ру_ПланыЗаказыПоставщикамОбороты.КоличествоПриход КАК КоличествоОстаток, | ру_ПланыЗаказыПоставщикамОбороты.СуммаУпрПриход КАК СуммаУпрОстаток, | ру_ПланыЗаказыПоставщикамОбороты.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры, | ру_ПланыЗаказыПоставщикамОбороты.СтавкаНДС КАК СтавкаНДС, | ру_ПланыЗаказыПоставщикамОбороты.СтавкаНДС КАК ЕдиницаИзмерения, | ру_ПланыЗаказыПоставщикамОбороты.ЕдиницаИзмерения.Коэффициент КАК ЕдиницаИзмеренияКоэффициент, | ру_ПланыЗаказыПоставщикамОбороты.Цена КАК Цена, | ру_ПланыЗаказыПоставщикамОбороты.СтатьяОборотов КАК СтатьяОборотов | ИЗ | РегистрНакопления.ру_ПланыЗаказыПоставщикам.Обороты(, , , ПланФакт = ЛОЖЬ) КАК ру_ПланыЗаказыПоставщикамОбороты | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.бит_ЦФО_Организаций КАК бит_ЦФО_Организаций | ПО ру_ПланыЗаказыПоставщикамОбороты.Подразделение = бит_ЦФО_Организаций.ЦФО) КАК ПланыЗаказыПоставщикам | ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ | бит_СобственныеКонтрагенты.Контрагент КАК Контрагент, | бит_СобственныеКонтрагенты.Объект КАК Объект | ИЗ | РегистрСведений.бит_СобственныеКонтрагенты КАК бит_СобственныеКонтрагенты | ГДЕ | бит_СобственныеКонтрагенты.Контрагент ЕСТЬ NULL ) КАК СобственныеКонтрагенты | ПО ПланыЗаказыПоставщикам.Организация = СобственныеКонтрагенты.Объект | И ПланыЗаказыПоставщикам.ДоговорКонтрагентаВладелец = СобственныеКонтрагенты.Контрагент"; ДобавитьОтбор("Контагент"); ДобавитьОтбор("Номенклатура"); ДобавитьОтбор("НоменклатурнаяГруппа"); ДобавитьОтбор("Подразделение"); КонецПроцедуры // ЗаполнитьНачальныеНастройки() Функция ПолучитьДанныеАнализа(Ф_Таблицу, ТабДокумент = "") Экспорт //ПостроительОтчета.Параметры.Вставить("ДатаНачала", ПериодФормированияОтчета.ДатаНачала); //ПостроительОтчета.Параметры.Вставить("ДатаКонца", КонецДня(ПериодФормированияОтчета.ДатаОкончания)); ДанныеВозврата = ""; Если Ф_Таблицу Тогда ДанныеВозврата = ПостроительОтчета.ПолучитьЗапрос().Выполнить().Выгрузить(); Иначе ПостроительОтчета.Выполнить(); ПостроительОтчета.Вывести(ТабДокумент); КонецЕсли; Возврат(ДанныеВозврата); КонецФункции Процедура Инициализировать(Объект, ИмяТабличнойЧасти, ТабличноеПолеОбъекта, флОчищать = Истина) Экспорт Режим = РежимДиалогаВопрос.ДаНет; Текст = "Будет перезаполнена таблица ""Товары"". Продолжить?"; Ответ = Вопрос(Текст, Режим, 0); Если Ответ = КодВозвратаДиалога.Нет Тогда Возврат; КонецЕсли; ЗаполнитьНачальныеНастройки(); ФормаОткрытия = ЭтотОбъект.ПолучитьФорму("Форма"); Стр_Отбора = ПостроительОтчета.Отбор.Найти("Подразделение"); Стр_Отбора.ВидСравнения = ВидСравнения.Равно; Стр_Отбора.Значение = Объект.Подразделение; Стр_Отбора.Использование = ЗначениеЗаполнено(Объект.Подразделение); Ф_Выполнения = ФормаОткрытия.ОткрытьМодально(); //Ф_Выполнения = Истина; Если Ф_Выполнения = Истина Тогда ТЗ_Данных = ПолучитьДанныеАнализа(Истина); Объект.Товары.Очистить(); Для Каждого Стр_Данных Из ТЗ_Данных Цикл Стр_Плана = Объект.Товары.Добавить(); КонецЦикла; КонецЕсли; КонецПроцедуры // Инициализировать МассивСтрока = Новый Массив; МассивСтрока.Добавить(Тип("Строка")); КвалификаторСтроки = Новый КвалификаторыСтроки("110", ДопустимаяДлина.Переменная); ОписаниеТиповСтрока = Новый ОписаниеТипов(МассивСтрока, , КвалификаторСтроки); МассивОписаниеТипов = Новый Массив; МассивОписаниеТипов.Добавить(Тип("ОписаниеТипов")); ОписаниеТиповОписаниеТипов = Новый ОписаниеТипов(МассивОписаниеТипов); мДеревоФильтры = Новый ДеревоЗначений; мДеревоФильтры.Колонки.Добавить("ИмяПоля", ОписаниеТиповСтрока); мДеревоФильтры.Колонки.Добавить("ПредставлениеПоля", ОписаниеТиповСтрока); мДеревоФильтры.Колонки.Добавить("ОписаниеПоля", ОписаниеТиповСтрока); мДеревоФильтры.Колонки.Добавить("ИмяПоляВладелец", ОписаниеТиповСтрока); мДеревоФильтры.Колонки.Добавить("ОписаниеТипов", ОписаниеТиповОписаниеТипов); Выдает вопрос очистить табличную часть Товары? и выходит на ошибку - Значение не является значением объектного типа (ВидСравнения). Не могу понять в чем дело, по честному первый раз использую универсальный отбор. |
|||
1
Maxus43
09.07.13
✎
12:01
|
на какой строке ошибка то? думаешь тут все будут эту простыню читать?
|
|||
2
Смертник
09.07.13
✎
12:02
|
Стр_Отбора.ВидСравнения = ВидСравнения.Равно;
Вот тут что то не то |
|||
3
Mitriy
09.07.13
✎
12:03
|
Стр_Отбора = неопределено...
|
|||
4
Maxus43
09.07.13
✎
12:03
|
(2) отладчик однозначно скажет что в Стр_Отбора нет ВидСравнения
|
|||
5
Franchiser
гуру
09.07.13
✎
12:06
|
Может надо вместо Стр_Отбора = ПостроительОтчета.Отбор.Найти("Подразделение");
написать Стр_Отбора = ПостроительОтчета.Отбор.Добавить("Подразделение"); |
|||
6
svich
09.07.13
✎
12:06
|
(0) У тебя строка
Стр_Отбора = ПостроительОтчета.Отбор.Найти("Подразделение"); Неопределено не возвращает? |
|||
8
svich
09.07.13
✎
12:08
|
(5) точно, нужно отбор добавить
|
|||
9
Смертник
09.07.13
✎
13:33
|
Для каждого ЭлементОтбора из ПостроительОтчета.Отбор Цикл
Если ЭлементОтбора.ПутьКДанным = ПутьКДанным Тогда + Code ДобавляемыйЭлементОтбора = ЭлементОтбора; Эта часть процедуры разве не добавляет все отборы? |
|||
10
svich
09.07.13
✎
15:30
|
(9) нет. Она только выбирает первый отбор из коллекции отборов построителя отбора
|
|||
11
svich
09.07.13
✎
15:31
|
построителя отчета
|
|||
12
Смертник
09.07.13
✎
15:50
|
да с построителем затупил конкретно - добрался вот досюда
Ошибка при вызове метода контекста (Очистить) Объект.Товары.Очистить(); Да и объект определил как Объект = СсылкаНаОбъект; |
|||
13
Смертник
09.07.13
✎
16:43
|
Что то вообще заплутал. Поле объекта недоступно для записи (ЭтотОбъект)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |