Форум программистов, компьютерный форум, киберфорум
1С: Типовые и стандартные решения
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 46

Отбор в форме списка программный

02.01.2026, 14:51. Показов 1741. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день!
Всех с новым годом!
помогите пожалуйста решить задачку....в форме списка документа (например расходные накладные) необходимо сделать отбор программно по основному складу и сделать так чтоб он не изменялся пользователем


отбор сделал так...но он работает только на толстом клиенте...как сделать рабочий на тонком

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
&НаКлиенте
&НаСервере
Процедура Расш1_ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка)
 
 
    
        
        ТекОтбор = Список.Отбор.Элементы;
        
        ТекОтбор.Очистить();
        УсловиеОтбора = ТекОтбор.Добавить(тип("ЭлементОтбораКомпоновкиДанных"));
        УсловиеОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Склад");
        УсловиеОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;  
        УсловиеОтбора.ПравоеЗначение = Справочники.Склады.НайтиПоНаименованию("Основной склад");  //"Основной склад";
        УсловиеОтбора.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный;
   
         
   
   КонецПроцедуры
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.01.2026, 14:51
Ответы с готовыми решениями:

Программный отбор при открытии списка
Добрый вечер. Создаю обработку, на которой будет подобие красивого рабочего стола, как во многих...

Отбор на быстрый отбор СКД
Всем привет. Подскажите кто-нить, чойта туплю. Есть простой отчет на СКД, в макете компоновки...

отбор.добавить затирает предыдущий отбор
ДД уважаемые. Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТЗКимпорту); ...

27
Эксперт 1С
6613 / 1762 / 642
Регистрация: 16.01.2015
Сообщений: 7,300
03.01.2026, 14:56
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от tups Посмотреть сообщение
может есть какие то другие способы сделать отбор по двум группам
Самое правильное - добавить строку в запрос в ПриСозданииНаСервере формы списка (или формы где это надо) Но можно и с костылями. Заполнить список номенклатурой в список значений где родитель нужные группы и отбор по этому списку. Но это и медленней и откровенный костыль. Однако сработает
0
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 46
06.01.2026, 17:23  [ТС]
Цитата Сообщение от polax Посмотреть сообщение
Самое правильное
а через рлс в конфигураторе нельзя сделать?
0
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 46
09.01.2026, 10:50  [ТС]
Цитата Сообщение от Yulunga Посмотреть сообщение
вы вот опять пишете "родитель". а в запросе такого поля нет. как по нему можно отбор сделать?
добавил в запрос строку,но отбор не работает...можете помочь ?
0
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 46
09.01.2026, 11:31  [ТС]
Цитата Сообщение от polax Посмотреть сообщение
Самое правильное - добавить строку в запрос в ПриСозданииНаСервере формы списка
все сделал как сказали,но не работает...точно ли в код надо добавлять эту сроку?просто если открыть конструктор запроса там в ссылку провалиться нельзя..может надо брать родитель?попробовал но может что то не так делаю
Изображения
 
0
Модератор
Эксперт 1С
 Аватар для Yulunga
4211 / 950 / 267
Регистрация: 22.04.2013
Сообщений: 6,599
Записей в блоге: 1
09.01.2026, 12:15
а справочник у вас иерархический? может родителя и не существует в принципе?
1
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 46
09.01.2026, 16:58  [ТС]
Цитата Сообщение от Yulunga Посмотреть сообщение
а справочник у вас иерархический? может родителя и не существует в принципе?
стандартный из типовой конфигурации.иерархия -Иерархия групп и элементов

Добавлено через 4 часа 41 минуту
Цитата Сообщение от Yulunga Посмотреть сообщение
а справочник у вас иерархический? может родителя и не существует в принципе?
отбор по двум группам без сделать получилось...,но код не скрывает лишние группы .может есть идеи?
вот код при создании на сервере
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  ГруппаПокупатели = Справочники.Контрагенты.НайтиПоНаименованию("Покупатели");
    ГруппаПоставщики = Справочники.Контрагенты.НайтиПоНаименованию("Поставщики");
   
    МассивГрупп = Новый Массив;
    МассивГрупп.Добавить(ГруппаПокупатели.Ссылка);
    МассивГрупп.Добавить(ГруппаПоставщики.Ссылка);
    
    ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(
        Список, 
        "Родитель", 
        МассивГрупп, 
        ВидСравненияКомпоновкиДанных.ВСпискеПоИерархии,
        ,
        Истина,
        РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный
    );
вот код формирование списка

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
ВЫБРАТЬ
    СправочникКонтрагенты.Наименование КАК Наименование,
    СправочникКонтрагенты.Код КАК Код,
    СправочникКонтрагенты.НаименованиеПолное КАК НаименованиеПолное,
    СправочникКонтрагенты.ИНН КАК ЧистыйИНН,
    СправочникКонтрагенты.КПП КАК ЧистыйКПП,
    ВЫБОР
        КОГДА СправочникКонтрагенты.ОбособленноеПодразделение
            ТОГДА &ПредставлениеОбособленногоПодразделения
        ИНАЧЕ ПРЕДСТАВЛЕНИЕ(СправочникКонтрагенты.ЮридическоеФизическоеЛицо)
    КОНЕЦ КАК Вид,
    СправочникКонтрагенты.ГоловнойКонтрагент КАК ГоловнойКонтрагент,
    СправочникКонтрагенты.Комментарий КАК Комментарий,
    СправочникКонтрагенты.Ссылка КАК Ссылка,
    СправочникКонтрагенты.ЭтоГруппа КАК ЭтоГруппа,
    СправочникКонтрагенты.ИНН КАК ИНН,
    СправочникКонтрагенты.КПП КАК КПП,
    ВЫБОР
        КОГДА НаличиеДублейУКонтрагентов.Контрагент ЕСТЬ NULL
            ТОГДА ЛОЖЬ
        ИНАЧЕ ИСТИНА
    КОНЕЦ КАК ЕстьДубли,
    СправочникКонтрагенты.ИННВведенКорректно КАК ИННВведенКорректно,
    СправочникКонтрагенты.КППВведенКорректно КАК КППВведенКорректно,
    ВЫБОР
        КОГДА (СправочникКонтрагенты.ИННВведенКорректно
                    И СправочникКонтрагенты.КППВведенКорректно
                ИЛИ СправочникКонтрагенты.ИННВведенКорректно
                    И СправочникКонтрагенты.ЮридическоеФизическоеЛицо = ЗНАЧЕНИЕ(Перечисление.ЮридическоеФизическоеЛицо.ФизическоеЛицо))
                И СостоянияКонтрагентов.Состояние В (&Состояния)
            ТОГДА ИСТИНА
        ИНАЧЕ ЛОЖЬ
    КОНЕЦ КАК ПроверкаКонтрагентовКонтрагентНеСуществует,
    СостоянияКонтрагентов.Состояние КАК ПроверкаКонтрагентовСостояние,
    ВЫБОР
        КОГДА СостоянияКонтрагентовБЭД.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтрагентаБЭД.Подключен)
            ТОГДА 1
        КОГДА СостоянияКонтрагентовБЭД.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияКонтрагентаБЭД.НастроенЭДО)
            ТОГДА 2
        ИНАЧЕ 0
    КОНЕЦ КАК ЭДО,
    ВЫБОР
        КОГДА НаличиеФайлов.ЕстьФайлы ЕСТЬ NULL
            ТОГДА 1
        КОГДА НаличиеФайлов.ЕстьФайлы
            ТОГДА 0
        ИНАЧЕ 1
    КОНЕЦ КАК ЕстьФайлы,
    СправочникКонтрагенты.Ответственный КАК Ответственный,
    "" КАК МеткиСтрокой,
    СправочникКонтрагенты.ДополнительныеРеквизиты.(
        Ссылка КАК Ссылка,
        НомерСтроки КАК НомерСтроки,
        Свойство КАК Свойство,
        Значение КАК Значение,
        ТекстоваяСтрока КАК ТекстоваяСтрока
    ) КАК ДополнительныеРеквизиты
    
ИЗ
    Справочник.Контрагенты КАК СправочникКонтрагенты
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НаличиеДублейУКонтрагентов КАК НаличиеДублейУКонтрагентов
        ПО СправочникКонтрагенты.Ссылка = НаличиеДублейУКонтрагентов.Контрагент
            И СправочникКонтрагенты.ИНН = НаличиеДублейУКонтрагентов.ИНН
            И СправочникКонтрагенты.КПП = НаличиеДублейУКонтрагентов.КПП}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияКонтрагентов КАК СостоянияКонтрагентов
        ПО СправочникКонтрагенты.Ссылка = СостоянияКонтрагентов.Контрагент
            И (&ИспользованиеПроверкиВозможно)}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияКонтрагентовБЭД КАК СостоянияКонтрагентовБЭД
        ПО СправочникКонтрагенты.Ссылка = СостоянияКонтрагентовБЭД.Контрагент}
        {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НаличиеФайлов КАК НаличиеФайлов
        ПО СправочникКонтрагенты.Ссылка = НаличиеФайлов.ОбъектСФайлами}
0
Модератор
Эксперт 1С
 Аватар для Yulunga
4211 / 950 / 267
Регистрация: 22.04.2013
Сообщений: 6,599
Записей в блоге: 1
10.01.2026, 00:01
ох ё. у меня оказывается новый комп и на нё м нет ни одной 1С. рпосто вообще никакой. не знаю, как вам помочь.
я бы вернулся к своему предложению - у вас нет поля в запросе под псевдонимом "родитель", тем не менее вы устанавливаете отбор по полю "родитель".
я бы пошёл в общего назначения клиент сервер и посомтрел бы поведение системы при установке того, чего не существует. раз не ругается - значит устанаваливается. сам он придумать не может, тчо такое родитель. мало ли что у вас в голове было. поэтому надо оценить , что он делает.
не получилось - смотреть, что такое "список" - посмотреть, какой там запрос при установлении отбора

где-то такое.
0
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 46
10.01.2026, 13:13  [ТС]
Цитата Сообщение от Yulunga Посмотреть сообщение
посомтрел бы поведение системы при установке того, чего не существует
уже игрался и собирал ошибки
Цитата Сообщение от Yulunga Посмотреть сообщение
не получилось - смотреть, что такое "список" - посмотреть, какой там запрос при установлении отбора
вообще не понял.сейчас все работает,но не убирает группы лишние и проблема только в этом...зачем изучать код на первом этапе?мне кажется что то не так с самим отбором,может надо кое то условие добавить...ведь элементы оставшихся групп он срезает
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.01.2026, 13:13
Помогаю со студенческими работами здесь

Программный отбор в динамическом списке
Добрый день, пишу &НаКлиенте Процедура ТаблицаОтборовСсылкаПриИзменении(Элемент)...

Программный отбор в динамическом списке
Суть проблемы следующая: Устанавливаю программно отбор в динамическом списке. Отбор срабатывает,...

Отбор в форме списка
1с 8.1 Необходимо чтобы в форме списка выводились лишь те записи которые удовлетворяют...

Быстрый отбор на форме списка
На форме делаю быстрый отбор, например по сотруднику: разместила на форме флаг с типом значения =...

Установить отбор в форме списка 8.3
Доброго времени суток. Была рабочая форма списка, адаптированная под 8.3, т.е. в ней отборы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
28
Ответ Создать тему
Новые блоги и статьи
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru