|
Как программно установить параметр?Отчет СКД! | ☑ | ||
---|---|---|---|---|
0
Taffy
17.06.12
✎
17:05
|
Добрый день!Подскажите пжл.делаю Отчет.Есть 2 параметра.Один параметр задаю во вкладке параметр,другой хочу установить программно.
Код запроса: ВЫБРАТЬ Партии.Количество, Партии.Номенклатура, РеализацияТоваровУслуг.Контрагент ИЗ РегистрНакопления.Партии КАК Партии ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ПО Партии.Регистратор = РеализацияТоваровУслуг.Ссылка ГДЕ Партии.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг И Партии.СтатусЗаписи = &СтатусЗаписи И РеализацияТоваровУслуг.Контрагент В ИЕРАРХИИ(&Контрагент) В модуле Форме отчета устанавливаю параметр: Процедура ПриОткрытии() ПараметрДанных= КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Контрагент"); ПараметрДанных.Значение = Справочники.Контрагенты.НайтиПоКоду("000008772"); ПараметрДанных.Использование=Истина; КонецПроцедуры Подскажите пожалуйста,почему не срабатывает у не отбирает нужный параметр.спасибо |
|||
1
Конфигуратор1с
17.06.12
✎
17:09
|
(0)потому что в подразумевает список значений
|
|||
2
zippygrill
17.06.12
✎
17:09
|
попробуй по индексу получить твой параметр.
|
|||
3
Конфигуратор1с
17.06.12
✎
17:09
|
Проверьте тип значения параметра в настройках скд
|
|||
4
sanja26
17.06.12
✎
17:10
|
причем тут список
|
|||
5
sanja26
17.06.12
✎
17:11
|
000008772 - папка?
|
|||
6
sanja26
17.06.12
✎
17:11
|
процедура ПриКомпоновкеРезультата()
ПараметрДанных= КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Контрагент"); ПараметрДанных.Значение = Справочники.Контрагенты.НайтиПоКоду("000008772"); ПараметрДанных.Использование=Истина; |
|||
7
Конфигуратор1с
17.06.12
✎
17:12
|
(4)при том, что если у параметра стоит тип список значений, а она передает значение справочник ссылку, то фиг он ей что отбирет
|
|||
8
sanja26
17.06.12
✎
17:12
|
(7) и где ты там увидел список????
|
|||
9
Taffy
17.06.12
✎
17:13
|
тип СправочникСсылка.Контрагенты
|
|||
10
sanja26
17.06.12
✎
17:13
|
(9) мы про параметр в запросе
|
|||
11
sanja26
17.06.12
✎
17:14
|
))
|
|||
12
sanja26
17.06.12
✎
17:15
|
(7) Для справочников проверка может осуществляться и на принадлежность по иерархии. Результатом оператора В ИЕРАРХИИ будет ИСТИНА, если значение выражения слева является ссылкой на элемент справочника и входит во множество значений справа или иерархически принадлежит какой-нибудь группе, содержащейся в этом множестве:
Пример: // В качестве параметра Группа в запрос передается ссылка // на какую-либо группу справочника Номенклатура. ВЫБРАТЬ Справочник.Номенклатура.Наименование ГДЕ Справочник.Номенклатура.Ссылка В ИЕРАРХИИ (&Группа) В качестве множества значений, на совпадение с которыми выполняется проверка, может фигурировать и результат запроса. В этом случае справа от оператора В необходимо указать описание запроса. Пример: ВЫБРАТЬ Справочник.Номенклатура.Наименование ГДЕ Справочник.Номенклатура.Ссылка В ИЕРАРХИИ ( ВЫБРАТЬ Справочник.Номенклатура.Ссылка ГДЕ Справочник.Номенклатура.Наименование = "Одежда" |
|||
13
Taffy
17.06.12
✎
17:16
|
000008772 -да, папка.
|
|||
14
sanja26
17.06.12
✎
17:17
|
(9) нашла процедура ПриКомпоновкеРезультата()?
|
|||
15
Necessitudo
17.06.12
✎
17:17
|
(0) ну в отладчике посмотри, параметр устанавливается?
|
|||
16
Конфигуратор1с
17.06.12
✎
17:17
|
Замените на
КомпоновщикНастроек.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра(ИмяПараметра,ЗначениеПараметра); |
|||
17
sanja26
17.06.12
✎
17:18
|
при открытии вообще воде нет компоновщика настроек..
|
|||
18
Конфигуратор1с
17.06.12
✎
17:18
|
ИмяПараметра = "Контрагент", ЗначениеПараметра = Справочники.Контрагенты.НайтиПоКоду("000008772")
|
|||
19
Конфигуратор1с
17.06.12
✎
17:18
|
(17)есть
|
|||
20
Necessitudo
17.06.12
✎
17:20
|
Схема вообще установлена как главная?
|
|||
21
sanja26
17.06.12
✎
17:21
|
так может форма вообще не нужна. зачем городить?
|
|||
22
Taffy
17.06.12
✎
17:22
|
форма нужна.в модуле формы правильно устанавливать параметры?
|
|||
23
Конфигуратор1с
17.06.12
✎
17:22
|
А отбор не работает как - вообще ничего не выводит или выводит все?
|
|||
24
Taffy
17.06.12
✎
17:24
|
выводит все.а мне нужны контрагенты из определенно папки
|
|||
25
sanja26
17.06.12
✎
17:24
|
может пользовательские настройки нужны? как-то мало описания про отчет.
|
|||
26
sanja26
17.06.12
✎
17:25
|
вообщем смотри (6)
|
|||
27
Конфигуратор1с
17.06.12
✎
17:28
|
(24) пришлите в общем на почту
|
|||
28
Taffy
17.06.12
✎
17:33
|
отправила.спасибо
|
|||
29
Конфигуратор1с
17.06.12
✎
17:46
|
(28)Во первых все таки лучше
КомпоновщикНастроек.Настройки.ПараметрыДанных.УстановитьЗначениеПараметра(ИмяПараметра,ЗначениеПараметра); Во вторых, не отбирает, потому что приоткрытии обработчику событий не назначена, поэтому она и не работает |
|||
30
Taffy
17.06.12
✎
17:52
|
спасибо большое:)упустила.все получилось)
|
|||
31
Taffy
17.06.12
✎
17:59
|
а где еще можно передавать значение параметра?например я сейчас буду соединять 2 запроса:из одного мне нужны одни определенные контрагенты,из другого другие.как в таком случае задавать параметры?
|
|||
32
Конфигуратор1с
17.06.12
✎
18:15
|
Просто создайте два параметра Контрагенты1 и контрагенты2
и задавайте оба параметра |
|||
33
Taffy
17.06.12
✎
22:20
|
Процедура ПриОткрытии()
ПараметрДанных= КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Контрагент"); ПараметрДанных.Значение = Справочники.Контрагенты.НайтиПоКоду("000008772"); ПараметрДанных= КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Контрагент1"); ПараметрДанных.Значение = Справочники.Контрагенты.НайтиПоКоду("000006338"); ПараметрДанных= КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Склады"); ПараметрДанных.Значение = Справочники.Контрагенты.НайтиПоКоду("000000029"); ПараметрДанных.Использование=Истина; КонецПроцедуры Примерно так? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |