Вход | Регистрация

1С:Предприятие ::

Метки:

Выбор элемента Справочника из определенной группы?

Я
   gr13
 
05.04.04 - 13:11
Как это сделать правильно.
Самый простой вариант- через таблицу значений.
К примеру имеется справочник Контрагенты
у него есть папки- Оптовые, Розничные
Как сделать так, чтобы пользователи видели только элементы в папке Оптовые? И, соответственно могли видеть только их?
 
 
   Рупор абсурда
 
1 - 05.04.04 - 13:14
1. Отбор по реквизиту
2. ИспользоватьСписокЗначений()
   gr13
 
2 - 05.04.04 - 13:14
(1) как это отбор по реквизиту?
   IAm
 
3 - 05.04.04 - 13:16
ИспользоватьРодителя уже отменили?
   Рупор абсурда
 
4 - 05.04.04 - 13:17
(2) Ну, т.е. нужно завести дополнительный реквизит, по которому и осуществлять такой отбор ...
   IAm
 
5 - 05.04.04 - 13:20
Процедура ПриОткрытии()
Если ИмяЮзера = "ЖалкийПользователь" Тогда
 ИспользоватьРодителя(ПапкаОптовые, 0);
КонецЕсли;
КонецПроцедуры
   Рупор абсурда
 
6 - 05.04.04 - 13:30
(5) Однако, это не помешает жалкому пользователю закрыть папку оптовые и выбрать контрагента из розничных ...
   gr13
 
7 - 05.04.04 - 13:32
(6) а если поставить в форме контроль на папку и сделать защиту от дурака?
   IAm
 
8 - 05.04.04 - 13:32
6 Как? У меня не получается при втором параметре 0.
   Рупор абсурда
 
9 - 05.04.04 - 13:35
(8) Ты прав ... Сори ...
   Rider
 
10 - 05.04.04 - 13:39
ОткрытьПодбор(...)последний параметр-элемент на который будет установлен курсор.
 
  Рекламное место пустует
   IAm
 
11 - 05.04.04 - 13:40
Звездочку Rider-у. Это ж гениально.
   gr13
 
12 - 06.04.04 - 08:52
Интересно, Предопределенная Процедура ПриОткрытии:
Перем Парам;

Парам = Форма.Параметр;
Если ТипЗначенияСтр(Парам) = "СписокЗначений" Тогда
// Передали список значений. по которому нужно 

// установить фильтр
    Форма.ПанельИнструментов(0);
    ИерархическийСписок(0,0);
    ИспользоватьСписокЭлементов(Парам);
    Форма.Заголовок("Импортируемые контрагенты");
Иначе
    ИерархическийСписок(1,1);
    Если ТипЗначенияСтр(Парам) = "Справочник" Тогда
        Если Парам.ЭтоГруппа() = 1 Тогда
            ИспользоватьРодителя(Парам);
        КонецЕсли;
        КонецЕсли;
КонецЕсли;

Получается, что можно в Справочник Контрагенты передать какой либо параметр и при вызове указать (5) и тогда не потребуется выбор по пользователю.
Как это сделать? Передать параметр при вызове справочника?
   SiMazx
 
13 - 06.04.04 - 09:18
Параметр передается через открытьФорму(,ТвойПараметр)

ОткрытьФорму(<?>,,)
Синтаксис:
ОткрытьФорму(<Документ>,<КонтекстФормы>,<РежимПросмотра>)
Назначение:
Открывает визуальную форму существующего документа или элемента/группы справочника.
Возвращает: 1 - если действие выполнено, 0 - иначе.
Параметры:
<Документ> - выражение со значением типа 'документ';
<КонтекстФормы> - имя переменной, куда можно задать значение любого типа для передачи в открываемую форму. Данное значение будет доступно в открытой форме как атрибут Форма.Параметр. После исполнения данного метода система вернет в данную переменную контекст открытой формы (необязателен);
   gr13
 
14 - 06.04.04 - 09:28
ясно, спс, про это как то не подумал
   SiMazx
 
15 - 06.04.04 - 13:00
Вот-вот, СПС не подумал и на выборах пролетел...


Список тем форума
Рекламное место пустует   Рекламное место пустует
Основная теорема систематики: Новые системы плодят новые проблемы.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует