Имя: Пароль:
1C
1С v8
Заполнить отбор СКД на форме настроек
0 Sem0709
 
23.01.17
14:17
Всем привет!
В отчёте есть форма настроек. Прикрутил к ней кнопочку которая должна заполнять отбор в СКД и отобразить эти настройки в форме. По всем свойствам прошёл, но должно эффекта не достиг. Пришлось заполнить на прямую в форму, что не есть гуд, как я полагаю. Поможите чем можете) Заранее благодарен!!
1 Sem0709
 
23.01.17
23:20
В час-пик ответа не получить...!?)
2 DrShad
 
23.01.17
23:23
три раза прочитал - ни хрена не понял
3 Sem0709
 
23.01.17
23:32
(2)Есть такое у меня)

Внешний отчёт на СКД. В нём форма настроек. На ней кнопка которая должна заполнять один из отборов. Не могу заполнить отбор чтобы он отобразился на форме.

Надеюсь теперь понятно. Спасибо)
4 Sem0709
 
23.01.17
23:35
...через СКД, а не саму форму)
5 DrShad
 
23.01.17
23:41
код под кнопкой давай
6 Sem0709
 
24.01.17
00:21
РезультатЗапроса = ЗапросНоменклатуры.Выполнить().Выгрузить();
    
    Если РезультатЗапроса.Количество() Тогда        
        
        СписокНоменклатуры = Новый СписокЗначений;        
        Для Каждого ЭлементТаблицы Из РезультатЗапроса Цикл
            СписокНоменклатуры.Добавить(ЭлементТаблицы.Номенклатура);
        КонецЦикла;
        
        Для Каждого ЭлементаОтбора Из ЭтотОбъект.КомпоновщикНастроек.Настройки.Отбор.Элементы Цикл
            Если ЭлементаОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Номенклатура") Тогда
                    ЭлементаОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
                    ЭлементаОтбора.Использование = Истина;
                    ЭлементаОтбора.ПравоеЗначение = СписокНоменклатуры;                    
                    Прервать;
            КонецЕсли;            
        КонецЦикла;    
    КонецЕсли;
7 Sem0709
 
24.01.17
23:34
ап
8 segn
 
25.01.17
06:00
1. КомпоновщикНастроек в форме настроек <> КомпоновщикНастроек отчета.
2. После заполнения отбора нужными значениями (тут еще надо бы проверить, что это именно отбор из КомпоновщикНастроек.Настройки, а не КомпоновщикНастроек.ПользовательскиеНастройки) надо передать отбор в форму отчета. Для этого в форме настроек используй Оповестить() в обработчике ПриЗакрытии().
3. В форме отчета заполни КомпоновщикНастроек в соответствии с переданным значением отбора. Для обработки переданного отбора используй ОбработкаОповещения().
9 osa1C
 
25.01.17
06:17
(6) я туплю или что есть строка  Если РезультатЗапроса.Количество() Тогда?
Или у тебя количество булево?
10 Sem0709
 
25.01.17
06:21
(8) Попробую сегодня переписать...

(9) А в 1С не канает ? 0 = ложь, больше 0 = истина ?
11 osa1C
 
25.01.17
06:23
(10) для больше нуля есть > 0. А у тебя написано
Если РезультатЗапроса.Количество() = Истина Тогда
12 Sem0709
 
25.01.17
06:26
(11) Спасибо, исправлю... это с AutoIt, там канает)
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn