Имя: Пароль:
1C
 
Выбор элемента из списка справочника. Никак не разберусь.
0 iSNEG
 
29.12.07
15:02
Хочу сказать что это мое первое сообщение на форуме.
До этого только читал, и получал много полезной информации.
Спасибо создателям и участникам форума!

Теперь собственно вопрос:
В конфигурации 1С8.0, сделал копию имеющегося (исправного) справочника, добавил необходимые реквизиты, немного подправил форму списка (убрал лишнее).

Происходит следующее - при выборе из документа элемента из этого справочника (в форме списка справочника) всегда возвращается значение первого элемента.
Копался и модуле спСправочники, и в модуле формы списка, в модуле справочника, но нигде не смог найти зацепку..

Все события из имеющегося справочника перенеслись в новый.

И еще такой вопрос, где можно посмотреть код обработки нажания на стандартную кнопку "выбрать" внизу на форме списка справочника.

Заранее спасибо. Очень надеюсь оперативно решить проблему с Вашей помощью, ибо время на исходе.
1 ТелепатБот
 
гуру
29.12.07
15:02
2 ЗлобнийМальчик
 
29.12.07
15:06
моя телепатия подсказывает мне , что тип значений формы - старый справочник??? или я ошибаюсь??
3 iSNEG
 
29.12.07
15:11
Проверил еще раз, все типы значений (форма, список) ссылаются на новый справочник.
4 hhhh
 
29.12.07
15:12
(0) что-то мне не верится, что "Выбрать" - это стандартная кнопка. Откуда ты это взял?
5 ЗлобнийМальчик
 
29.12.07
15:13
(4) тут что то странное - при выборе из поля ввода должна открыватьформа выбора, кажется...
6 ЗлобнийМальчик
 
29.12.07
15:14
а в (0) редактировалась форма списка - так что какие то непонятки...
7 iSNEG
 
29.12.07
15:16
(4) я имел ввиду стандартная кнопка в данной конфигурации.
Если смотреть свойства этой кнопки, то открывается список действий формы, а сам код обработчика я найти не смог. где он?

Дело скорее всего не в самой кнопке, а в неправильной обработке события выбора.
Самое интереное, что если я ставлю точку останова в событиях "Выбор" или "Обработка выбора", то при выборе нигде ничего не перехватывает...

Хотя, точно так же не перехватывает и в старом справочнике (исправном).
8 iSNEG
 
29.12.07
15:18
(5),(6)
У меня стоит свойство редактировать обоими способами. Хотя, в любом случае это никак не влияет на результат выбора. Перепробовал все варианты.
9 ЗлобнийМальчик
 
29.12.07
15:20
то есть в форме выбора  у вас событие выбор (предполагаю табличного поля) непустое, но  Вы туда при выборе не попадаете???
10 ЗлобнийМальчик
 
29.12.07
15:21
попробуйте тогда проверить, ту ли форму вы открываете - зайдите событие при открытии...
11 hhhh
 
29.12.07
15:23
(7) значит нажимал не на кнопку, а в целом на панель "ДействияФормы". У тебя какая конфигурация? В БП например вызывается процедура ДействияФормыВыбрать. А "Обработка Выбора" может вообще не не вызываться, если у тебя в программе указано "СтандартнаяОбработка = Ложь".
12 Mitriy
 
29.12.07
15:32
давай от печки...
в документе у тебя есть элемент управления с типом = тот самый справочник,
в свойствах этого элемента управления указано, что

Форма выбора = Что именно? и Выбор групп и элементов = Что здесь?

и еще событие элемента НачалоВыбора = какой код?
13 Mitriy
 
29.12.07
15:47
кажется, сложный вопрос придумал...
14 hhhh
 
29.12.07
15:51
(13) наверно, человек не может оторваться от стакана.
15 iSNEG
 
29.12.07
15:53
(9) - был немного не прав. я туда попадаю, но там пусто. т.е. никакого функционального кода. только пустая процедура спСписокВыбор. она ничего не делает. Тоже самое происходит и со старым справочником, но тем не менее значение из него выбирается провильное!
(10) - форму открываю правильную. Чисто предположение - может форма списка "не понимает", что она открыта для выбора и передачи значения?

(11) Уточню: я нажимал именно на эту кнопку. В свойствах этой кнопки, есть поле где написано - Действие: Выбор. "Выбор" в данном случае это элемент выпадающего списка (всех действий вместе), я уверен что это - процедура, но посмотреть код невозможно, можно только выбирать разные действия из этого списка.

(12)
1. Да, в форме документа есть элемент с типом этого справочника.

2. Свойства самого справочника:
Основные формы:  
списка - форма списка
выбора - форма списка
выбора группы - форма выбора группы
элемента - форма элемента
группы - форма группы

3. На событии "начало выбора" +элемента управления в документе  - кода нет.
16 Mitriy
 
29.12.07
15:58
Мда...
Ладно, попробуй заменить:
Основные формы:  
выбора - форма списка на

Выбора - Форма выбора

мож поможет перед Новым Годом...
17 iSNEG
 
29.12.07
15:59
(11) У меня конфигурация Альфа-Авто.
18 iSNEG
 
29.12.07
16:04
(16) Помогло!
Вопрос №1 - почему?
Второй №2 - почему в старом справочнике стоит "Выбора - Форма списка" и все работает?
19 hhhh
 
29.12.07
16:05
(15) а события "Нажатие" разве нет в кнопке?
20 Mitriy
 
29.12.07
16:07
хз, почему там стоит форма списка...

я же сказал, Новый Год 9)))
21 Mitriy
 
29.12.07
16:08
еще вариант, если открывается форма списка, то кликаешь правой(!!!) кнопкой мыши на нужном элементе и выбираешь "Выбрать"
22 Mitriy
 
29.12.07
16:09
(21) + "Выбрать" в контекстном меню
23 iSNEG
 
29.12.07
16:09
(19) нет событий вообще. эта кнопка находится на командной панели.
24 Mitriy
 
29.12.07
16:10
форма списка может и должна быть, я не знаю эту конфу и не знаю, что там делает кнопка, про которую ты рассказывал, так же я не знаю чем и как думали те, кто это делал...
25 hhhh
 
29.12.07
16:12
(23) смотри источник для командной панели.
26 hhhh
 
29.12.07
16:12
+(25) в этом источнике - "Обработка Выбора"
27 iSNEG
 
29.12.07
16:17
Вот, сделал скриншот, там эта кнопка и список ее свойств. У нее стоит значение "выбрать".

http://keep4u.ru/imgs/b/071229/33/33b1245d7f3dbf6d93.jpg
28 iSNEG
 
29.12.07
16:22
(25) (26)
Да, источник для командной панели - Форма.
Идем в модуль формы, смотрим, да есть такое событие, вот его содержимое:

Процедура ОбработкаВыбора(ЗначениеВыбора, Источник)
   // Вставить содержимое обработчика.
КонецПроцедуры


При этом, в старом справочнике ситуацию точно такая же, тем не менее выбирает все правильно.

Блин, намудрили разработчики этой конфигурации..
29 Mitriy
 
29.12.07
16:29
попробуй опять форму списка подставить, мож теперь заработает?
30 Mitriy
 
29.12.07
16:30
в событии таб части формы списка ПриАктивизацииСтроки ничего нету?
31 Mitriy
 
29.12.07
16:30
таб поля то бишь...
32 Mitriy
 
29.12.07
16:34
(28) они не намудрили, а просто поленились форму выбора делать...
33 hhhh
 
29.12.07
16:35
(28) а в событиях формы прописано, что "ОбработкаВыбора" - Это обработка выбора. Процедур можно сколько хочешь навставлять.
34 Mitriy
 
29.12.07
16:35
и вообще, думаю, что вот здесь у тебя трабла:
"В конфигурации 1С8.0, сделал копию имеющегося (исправного) справочника, добавил необходимые реквизиты, немного подправил форму списка (убрал лишнее)."
35 iSNEG
 
29.12.07
16:37
Заметил одну очень странную вещь:

В старом справочнике, несмотря на то что стоит "Выбора - Форма списка", при выборе в контекстном меню имеется пункт "Выбрать"!
А когда список открывается в режиме просмотра (не из элемента документа), то этого пункта нет.

Т.е. где-то идет обработка режима формы. Которая не попала в мой справочник, или не привязана к нему.
Буду копать дальше.

(29) попробую.
(30)что-то есть, покопаюсь.
36 Mitriy
 
29.12.07
16:39
(35) "А когда список открывается в режиме просмотра (не из элемента документа), то этого пункта нет." так и должно быть
37 iSNEG
 
29.12.07
16:40
(33) да, это она.
38 iSNEG
 
29.12.07
16:42
(36) А если немного перефразировать: должен ли быть этот пункт (по умолчанию)ВООБЩЕ (в т.ч. и при выборе) если у справочника стоит "Выбора - Форма списка"?
39 Mitriy
 
29.12.07
16:45
(38) если форма списка открывается для выбора, то да, есть у нее такое свойство РежимВыбора
40 Mitriy
 
29.12.07
16:46
ликбез...
41 hhhh
 
29.12.07
16:50
(36) посмотри поле Данные в свойствах формы
42 hhhh
 
29.12.07
16:52
РежимВыбора (ChoiceMode)
Использование:
Чтение и запись.
Описание:
Тип: Булево. Содержит признак того, что форма находится в режиме выбора. Данный признак влияет на поведение при выборе элемента из главного списка формы, т.е. списка, связанного с ее основным реквизитом.
43 iSNEG
 
29.12.07
16:54
(40) :)

(34) В общем, тут на самом деле я с чем то накосячил :(
Сделал сейчас еще одну копию справочника, но ничего в ней не менял.
Подставил в элемент управления - все работает :(

Теперь мне надо найти косяк и исправить. Заново я делать все не буду, слишком много привязок, все может поплыть...
44 iSNEG
 
29.12.07
17:03
(42) Я этот "режим выбора" не могу найти ни в свойствах формы, ни в свойствах списка. Он там должен быть? Или только в коде?
45 iSNEG
 
29.12.07
17:07
(41) В данных стоял СправочникСписок4. При это предлагал выбрать СправочникСписок, СправочникСписок1 и т.д. до 4-го.
Поставил СправочникСписок, все поля которые я добавлял исчезли. Попробовал вернуть СправочникСписок4 - его там уже нет. Исчез :(

Я туплю по страшному. Но это очень срочный вопрос.. ((
46 Mitriy
 
29.12.07
17:10
(44) обычно автоматически, если только ты не в коде форму получаешь, в этом случае и если форма списка, тады в коде ставить
47 Mitriy
 
29.12.07
17:11
(46) не только ты... я тоже перестаю чо-нить понимать
48 Mitriy
 
29.12.07
17:12
(47) к (45), звиняйте
49 iSNEG
 
29.12.07
17:15
(48) я не обижаюсь, просто почему он пропал? Что это за списки такие были в таком количестве? Разве у справочника может быть несколько списков? Ничего не понимаю..
50 Mitriy
 
29.12.07
17:16
(48) не переживай, это, наверное, реквизиты формы, их может быть сколько угодно
51 Mitriy
 
29.12.07
17:18
попробуй заново, быстрее будет, да и разберешься, может быть
52 iSNEG
 
29.12.07
17:23
Значит так, сделал, в свойстве Данные у формы поставил - СправочникСписок и все заработало.
Ничего не понимаю...:(
53 iSNEG
 
29.12.07
17:24
+(52) правда в этом списке нет тех полей которые нужны.
54 hhhh
 
29.12.07
17:25
(49) ну ты поставь тот справочник список, который реально у тебя на форме находится.
55 hhhh
 
29.12.07
17:26
(52) ты просто не вчитался в (42) вот это место:

Данный признак влияет на поведение при выборе элемента из главного списка формы, т.е. списка, связанного с ее основным реквизитом.

Основной реквизит - это то, что находится в поле "Данные".
56 iSNEG
 
29.12.07
17:32
(55) е##ен-батон!! Точно не вчитался!
Ключевое слово - ГЛАВНЫЙ реквизит! Я прав???

У этой формы было 4 таких реквизита:
СправочникСписок (основной/предопределенный)
СправочникСписок1
...
СправочникСписок4

Причем все они ссылались на один и тот же справочник! (я так понял, даже это не имеет значения?)

Выбор заработал только со СправочникСписок (который предопределенный).

Значит все логично??? Все дело было в этом?
57 Mitriy
 
29.12.07
17:34
(56) да
58 iSNEG
 
29.12.07
17:37
Ребята, вы золотые! Спасибо!!!
Ликбез прошел на ура! :)

Пошел кодить дальше. Если что, забегу :))
59 Mitriy
 
29.12.07
17:38
(58) Уфффф... лучше после Нового Года 9))
60 iSNEG
 
29.12.07
17:49
(59) кто бы спорил...
у нас 2 подразделения переходят с аксеса на 1С.
2-го января должны начать работу в альфа-авто!

благо уже внедрил все в одном подразделении.

такого НГ у меня еще не было. это надо же в НГ такой переход устраивать (идея не моя, а сверху)
61 Mitriy
 
29.12.07
17:52
сочувствую 9)
62 Mitriy
 
29.12.07
17:52
все равно с наступающим!!! 9)
63 iSNEG
 
29.12.07
17:57
С наступающим, Mitriy! :)
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс