Имя: Пароль:
1C
1С v8
1C 8.2 Условие "Видсравнения.Неравно" в параметре функции "ПолучитьФорму()"
0 xel
 
05.11.11
17:18
Привет всем, скажите как сделать для этого кода условие "Видсравнения.Неравно"

П = Новый Структура;
П.Вставить("Отбор", Новый Структура("ТипПродукции", Тип));
П.Вставить("ВидСравнения",ВидСравнения.НеРавно);
ОткрытьФорму("Справочник.Продукция.ФормаВыбора", П);

Отбор проходит по условию "ТипПродукции =(равно) Тип" а мне нужно "ТипПродукции <>(НЕравно) Тип"
1 МишельЛагранж
 
05.11.11
17:25
так ВидСравннеия надо, наверное, в структуру для Отбор вставлять, а не для открытия формы?
2 xel
 
05.11.11
17:27
ну я же и вставляю в структуру для отбора
3 shuhard
 
05.11.11
17:35
(0) не взлетит,
ты задаешь параметры формы и получаешь отбор из одноименного параметра, вид сравнения игнорируется
4 xel
 
05.11.11
17:49
а как сделать вид сравнения в данном случае? мне просто надо открыть форму выбора с отбором либо по двум значениям, либо по 1 значению но с условием "НеРавно" ?
5 shuhard
 
05.11.11
17:51
(4) получить форму,установить отбор,открыть форму
или
установить отбор в ПриСозданииНаСервере, передав туда нужный параметр
6 xel
 
05.11.11
17:53
я новичек в 1С. можете ли кодом показать оба варианта?
7 xel
 
05.11.11
23:24
неужели никто не знает?
8 Поручик
 
06.11.11
00:18
ОтборДляПараметров = Новый Структура;
ОтборДляПараметров.Вставить("ВидСравнения", ВидСравнения.НеРавно);
ОтборДляПараметров.Вставить("ТипПродукции", Тип);

ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Отбор", ОтборДляПараметров);
ОткрытьФорму("Справочник.Продукция.ФормаВыбора", ПараметрыФормы);
9 МишельЛагранж
 
06.11.11
00:49
(0) если б вы писали не по 1с-ким стандартам (абы как), а хотя б как в (8) - то бы заметили, в какую структуру и для чего пишете параметр отбора...
10 xel
 
06.11.11
02:33
Поручик
Вставил код, выдает результат такой же как и был ("Типпродукции" равен значению переменной "Тип")
11 xel
 
06.11.11
12:41
параметры почему то как будто игнорируются при занесении в структуру
12 xel
 
07.11.11
09:47
да уж, видимо тяжело это для всех
13 Ц_У
 
07.11.11
09:49
(0) на правах флуда:
Прочитал название темы как "ВидСравнения.ВсеРавно" :)
14 Поручик
 
07.11.11
10:25
(12) Учись студент, я тебе и так многое разжевал и в рот дал.
Смотри типовые на БСП, там такого навалом.
15 xel
 
07.11.11
11:18
Поручик я уже во всем разобрался. а то что ты написал, было написано у меня в 1 посте
16 katc
 
07.11.11
11:22
(15) улыбнуло. Не то что написать код, даже его прочитать правильно не смог :(
17 xel
 
07.11.11
11:26
Вот как всегда много умников, но никто почему то ниче путевого не напишет. Все горазды на теории, но на практике все в осадке
18 hhhh
 
07.11.11
11:33
(17) да, молодец. Два дня на форуме, а уже всех этих умников вычислил и поставил на место.
19 katc
 
07.11.11
11:33
Структуры разные передаются. но если они для тебя тождественно равны - то да, мы умники и ничего путевого не пишем, развлекаемся теориями, а у тебя очень "серьезная" практика.
20 katc
 
07.11.11
11:34
(18) :)
21 Поручик
 
07.11.11
11:40
(17) Тебе сколько лет, постчернобыльское создание?
22 МишельЛагранж
 
08.11.11
20:27
(0) по-моему, это как раз 1с "отстатыщ" в мск...

П = Новый Структура;
П.Вставить("Отбор", Новый Структура("ТипПродукции", Тип));

П - это одна структура, в неё как "Отбор" вставляется совершенно другая структура, вот во вторую и пишется тип. А это неправильно, ибо тип должен писаться в отбор.
Просто назвать что-то "Отбор" и типа 1с сама разберется, куда это совать (как в )) - это не одно и тоже, что заполнить параметры свойства "Отбор" у формы (как в (8)).
Ошибка? Это не ошибка, это системная функция.