|
Не видит значения отбора по организации во внешней обработке. | ☑ | ||
---|---|---|---|---|
0
igniter
24.02.15
✎
22:06
|
Создаю обработку для документа Передача ОС по заполнению табл. части ОС из регистра накопления СтоимостьОСБУ. Необходимо что бы выводились только те ОС на которых есть остатки.
Не видит отбор по Организации. Организацию выбираю в форме.Подскажите пожалуйста в чем ошибка? Процедура Инициализировать(Объект, ОС, ТабличноеПолеОбъекта = Неопределено) Экспорт ТабличнаяЧасть = Объект[ОС]; ФормаВыбораОрганизации = ПолучитьФорму("Форма"); ПодразделениеОтбор = ФормаВыбораОрганизации.ОткрытьМодально(); Запрос = Новый Запрос(); Запрос.Текст = "ВЫБРАТЬ | СтоимостьОСБухгалтерскийУчетОстатки.ОсновноеСредство, | СтоимостьОСБухгалтерскийУчетОстатки.Организация |ИЗ | РегистрНакопления.СтоимостьОСБухгалтерскийУчет.Остатки(&КонПериода, | //ОтборПоОрганизации Организация В (&ОрганизацияОтбор) | ) КАК СтоимостьОСБухгалтерскийУчетОстатки"; Если ПодразделениеОтбор <> Неопределено Тогда Запрос.Текст = СтрЗаменить(Запрос.Текст,"//ОтборПоОрганизации", ""); Запрос.УстановитьПараметр("ОрганизацияОтбор", ОрганизацияОтбор); Иначе Сообщить("заполнение без отбора по организации"); КонецЕсли; Запрос.УстановитьПараметр("КонПериода",СсылкаНаОбъект.Дата); Обход = Запрос.Выполнить().Выбрать(); ТабличнаяЧасть.Очистить(); НаборДвижений = Объект.ОС; Пока Обход.Следующий() Цикл Движение = НаборДвижений.Добавить(); Движение.ОсновноеСредство = Обход.ОсновноеСредство ; КонецЦикла; КонецПроцедуры В результате заполняет все ОС что есть в базе. Ну и сообщает что заполнено без отбора, как и задумано. |
|||
1
DirecTwiX
24.02.15
✎
22:21
|
У тебя ПодразделениеОтбор = Неопределено.
Форма своя? Что происзодит при её закрытии? Наверно, забыл написал что-то вроде Закрыть(ВыбранноеПодразделение); Во-вторых, сначала пишешь "ПодразделениеОтбор" ПодразделениеОтбор = ФормаВыбораОрганизации.ОткрытьМодально(); а потом - "ОрганизацияОтбор" Запрос.УстановитьПараметр("ОрганизацияОтбор", ОрганизацияОтбор); |
|||
2
igniter
24.02.15
✎
22:58
|
она раньше меня на нзп стояла, взял оттуда.
ФормаВыбораОрганизации = ПолучитьФорму("Форма"); ОрганизацияОтбор = ФормаВыбораОрганизации.ОткрытьМодально(); Запрос = Новый Запрос(); Запрос.Текст = "ВЫБРАТЬ | СтоимостьОСБухгалтерскийУчетОстатки.ОсновноеСредство, | СтоимостьОСБухгалтерскийУчетОстатки.Организация |ИЗ | РегистрНакопления.СтоимостьОСБухгалтерскийУчет.Остатки(&КонПериода, | //ОтборПоОрганизации Организация В (&ОрганизацияОтбор) | ) КАК СтоимостьОСБухгалтерскийУчетОстатки"; Если ОрганизацияОтбор <> Неопределено Тогда Запрос.Текст = СтрЗаменить(Запрос.Текст,"//ОтборПоОрганизации", ""); Запрос.УстановитьПараметр("ОрганизацияОтбор", ОрганизацияОтбор); Иначе Сообщить("заполнение без отбора по организации"); КонецЕсли; Запрос.УстановитьПараметр("КонПериода",СсылкаНаОбъект.Дата); Обход = Запрос.Выполнить().Выбрать(); ТабличнаяЧасть.Очистить(); НаборДвижений = Объект.ОС; Пока Обход.Следующий() Цикл Движение = НаборДвижений.Добавить(); Движение.ОсновноеСредство = Обход.ОсновноеСредство ; КонецЦикла; КонецПроцедуры |
|||
3
igniter
24.02.15
✎
22:59
|
на выходе она заполняет документ всем чем есть.
|
|||
4
igniter
25.02.15
✎
12:33
|
Разобрался. Если брать организацию не из формы и параметра а из ссылка.организация то все отлично отбирает.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |