|
Отбор в форме списка | ☑ | ||
---|---|---|---|---|
0
STAYEKR
28.06.12
✎
13:13
|
Нужно при открытии формы списка некоего регистра выводить данные по текущему элементу справочника. Реализовать нужно через список значений.
Список = Новый СписокЗначений; Перем1= РеквФормы1; Список .Добавить(Перем1); Что делать дальше, помогите! Читаю похожие темы, вникнуть не могу никак ((( Заранее спасибо! |
|||
1
Рэйв
28.06.12
✎
13:13
|
зачем список значений? Устанавливай нормально отбор строк при открытии формы.
|
|||
2
butterbean
28.06.12
✎
13:14
|
(1) наверно насяльника-старший-программист сказал через список делать
|
|||
3
Рэйв
28.06.12
✎
13:15
|
(2)В сад насяльника :-)
|
|||
4
STAYEKR
28.06.12
✎
13:17
|
Нужно выводить значения 2-х реквизитов. Имеется элемент справочника ЭС1 (к примеру, микрорайон). Реквизит1 (к примеру, Дом) имеет подчиненный реквизит2 (к примеру, квартира). Данные должны выводиться по дому, где в какой-либо квартире изменилось количесвто жильцов. И да, насяльника у меня зверь и бьет меня! ((
|
|||
5
Рэйв
28.06.12
✎
13:17
|
(0)Форма=РегистрыСведений.Имя.ПолучитьФормуСписка()
Форма.РегистрСведенийСписок.Отбор.НужныйРеквизит.Установить(Ссылка); Форма.Открыть(); как то так. |
|||
6
Рэйв
28.06.12
✎
13:20
|
Форма=РегистрыСведений.Имя.ПолучитьФормуСписка()
Форма.РегистрСведенийСписок.Отбор.Дом.Установить(Дом); Форма.РегистрСведенийСписок.Отбор.Квартира.Установить(Квартира); //можно даже Форма.РегистрСведенийСписок.Отбор.ПолЧерепахиХозяина.Установить(Пол); Форма.Открыть(); |
|||
7
Рэйв
28.06.12
✎
13:20
|
(6)->(4)
|
|||
8
STAYEKR
28.06.12
✎
13:20
|
(5) такая конструкция выводит данные по всем "микрорайонам", а нужно по конкретному
|
|||
9
sanja26
28.06.12
✎
13:21
|
Отбор (Filter)
Элементы коллекции: ЭлементОтбора Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются элементы отбора. Возможно обращение к элементу отбора посредством оператора [...]. В качестве аргумента передается индекс элемента (нумерация с 0). Свойства: <Имя элемента отбора> (<Filter element name>) Методы: Добавить (Add) Индекс (IndexOf) Количество (Count) Найти (Find) Получить (Get) ПолучитьДоступныеПоля (GetAvailableFields) Сбросить (Reset) Сдвинуть (Move) Удалить (Delete) УстановитьДоступныеПоля (SetAvailableFields) Описание: Предназначен для хранения условий отбора. Представляет собой коллекцию элементов отбора. Используется для установки фильтрации данных в различных выборках, наборах записей, визуальных списках. Каждый из элементов может устанавливать одно условие. Весь объект представляет собой составное условие, состоящее из отдельных условий, описываемых элементами, соединяющимися по "И". Доступность: Сервер, толстый клиент, внешнее соединение. |
|||
10
Рэйв
28.06.12
✎
13:21
|
(8)См (6)
|
|||
11
sanja26
28.06.12
✎
13:21
|
делай через структуру
|
|||
12
STAYEKR
28.06.12
✎
13:22
|
граждане, насяльник будет бить меня палкой и перестанет кормить, если я эту потеху не осилю через список значений((
|
|||
13
Рэйв
28.06.12
✎
13:23
|
(12)А ты ему скажи, что сделал через список и покажи результат. Не полезет же он в код если все будет работать!:-)
|
|||
14
STAYEKR
28.06.12
✎
13:25
|
(13) Предпочтительнее через список, уважаемый
|
|||
15
butterbean
28.06.12
✎
13:29
|
(14) у тебя этот список значений где-то на форме сбоку от списка регистра и в нем все реквизиты элемента справочника из текущей (выделенной) строки списка регистра?? так??
|
|||
16
STAYEKR
28.06.12
✎
13:31
|
Да и выводиться значения должны по определенному элементу справочника. И если выделена группа справочника или не выделено ничего, то отбор не осуществется. Так как-то
|
|||
17
butterbean
28.06.12
✎
13:34
|
(16) понятно, ты ссылку текущего элемента справочника уже получил??
|
|||
18
STAYEKR
28.06.12
✎
13:35
|
(17)Нет((
|
|||
19
butterbean
28.06.12
✎
13:36
|
(18) ну дык получи ее сначала, а потом уже в свой список добавляй поля из ссылки
|
|||
20
StanislawJack
28.06.12
✎
13:40
|
Форма.РегистрСведенийСписок.Отбор.ПолЧерепахиХозяина.ВидСравнения = ВидСравнения.ВСписке;
Форма.РегистрСведенийСписок.Отбор.ПолЧерепахиХозяина.Значение = ТвойСписокЗначений; Форма.РегистрСведенийСписок.Отбор.ПолЧерепахиХозяина.Использование = Истина; |
|||
21
butterbean
28.06.12
✎
13:42
|
(20) причем тут вообще отбор регистра?? тебе надо просто вычислить элемент справочника из текущей строки списка и взять его реквизиты... или нет??
|
|||
22
STAYEKR
28.06.12
✎
13:53
|
Мне нужно чтобы при нажатии на кнопку на форме выводились данные по конретному элементу справочника.
|
|||
23
butterbean
28.06.12
✎
13:55
|
(22) во, уже кнопка какая-то появилась... может сразу опишешь все условия и что конкретно не получается
|
|||
24
STAYEKR
28.06.12
✎
14:08
|
На форме справочник "спр1" есть кнопка, при нажатии на которую надо выводить данные из регистра сведений "рег1" по конкретномуэлементу справочника. Так яснее?
|
|||
25
butterbean
28.06.12
✎
14:15
|
(24) нет, не яснее.
1. куда и в каком виде нужно выводить данные из регистра сведений 2. "по конкретномуэлементу справочника" - это по какому?? чем отличается от остальных элементов?? |
|||
26
STAYEKR
28.06.12
✎
14:21
|
(25) 1. в форму списка регистра сведений. Но не все данные из регистра, а по конкретному элементу справочника.
2. "конкретный" - это выделенный в форме элемента справочника. А так? |
|||
27
butterbean
28.06.12
✎
14:26
|
(26) 1. стало еще непонятнее
2. нда... просто прочти вопрос и свой ответ |
|||
28
STAYEKR
28.06.12
✎
14:29
|
сейчас данные в регистре выводятс сплошняком. А надо, чтобы выводились по конретному (активному, выделенному, текущему (тому, который "синенький" :) элементу справочника). Т.е. создать такой своеобразный фильтр. Тоже непонятно?
|
|||
29
STAYEKR
28.06.12
✎
15:30
|
Со многими деталями разобрался, спасибо! Остался еще вопрос:
Список = Новый СписокЗначений; ЖилойДом= Дом; Список.Добавить(ИнфоБаза.НомерДома); Список.Добавить(ИнфоБаза.Ссылка.Квартира); Для Каждого ЖилойДом Из Список Цикл Если ЗначениеЗаполнено(Дом) Тогда Отбор.Объект.Значение = Дом; Отбор.Объект.ВидСравнения = ВидСравнения.ВСписке; Отбор.Объект.Использование = Истина; КонецЕсли; КонецЦикла; Падает с ошибкой: "Ошибка при установке значения атрибута контекста (Значение): Неверный тип значения Отбор.Объект.Значение = Дом; по причине: Неверный тип значения". Ошибка вылетает при обходе циклом второго значения "Квартира". Где косяк, не подскажете? |
|||
30
sanja26
28.06.12
✎
15:32
|
в цикле отбор... чего только не вытворяют))
|
|||
31
STAYEKR
28.06.12
✎
15:33
|
(30) Да, я старался)) Поможешь по существу?
|
|||
32
STAYEKR
28.06.12
✎
15:34
|
(30) По дому нормально отрабатывает. а сквартирой валится((
|
|||
33
STAYEKR
28.06.12
✎
15:37
|
Знает кто-нибудь?
|
|||
34
VasjaIvanov
28.06.12
✎
15:41
|
чайник, я бы пдсказал,Ю но не понимаю что ты хочешь тут получить, зачем
ЖилойДом= Дом; |
|||
35
VasjaIvanov
28.06.12
✎
15:41
|
а потом Для Каждого ЖилойДом Из Список Цикл
|
|||
36
VasjaIvanov
28.06.12
✎
15:41
|
При этом некий список
Список.Добавить(ИнфоБаза.НомерДома); Список.Добавить(ИнфоБаза.Ссылка.Квартира); |
|||
37
VasjaIvanov
28.06.12
✎
15:42
|
и самое интересно
Если ЗначениеЗаполнено(Дом) Тогда х.з. зачем, если ставить то раньше до цикла надо тебе такое условие, |
|||
38
VasjaIvanov
28.06.12
✎
15:43
|
в регистре надо так
|
|||
39
STAYEKR
28.06.12
✎
15:54
|
(38) Спасибо за разъяснение, Гуру!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |