Имя: Пароль:
1C
1C 7.7
v7: Поле ввода Обработка при нажатии Выбрать
0 myr4ik07
 
26.11.16
20:39
Есть форма, на форме реквизит с типом Док.РасхНакл, вот при нажатии на него открывается форма списка РасхНакл, а можно как то переопределеить, что бы при нажатии на реквизт (квадратик выбора), открывалась форма самого документа который занесен в этот реквизит?
1 Aleksey
 
26.11.16
21:03
Процедура ПриНачалеВыбораЗначения(<?>,)
КонецПроцедуры
Синтаксис:
ПриНачалеВыбораЗначения(<ИдентЭлемДиалога>,<ФлагСтандОбр>)
Назначение:
Предопределенная процедура после выбора значения в форме выбора (выбор может быть инициирован в немодальном режиме интерактивно, при помощи элемента диалога с ''педалькой'').
<ИдентЭлемДиалога> - идентификатор элемента диалога, которым инициализирован выбор значения.
<ФлагСтандОбр> - флаг, изначально, при вызове процедуры равен 1, если в теле процедуры значение этого параметра поменять на 0, то стандартный процесс выбора значения не будет происходить.
Замечание:
Данная процедура может располагаться только в программном модуле формы.
2 myr4ik07
 
26.11.16
21:14
(1) так "после выбора значения" а мне нужно До, только нажал кнопку Выбора, стандартную обработку отключил и сразу открыл форму документа
3 Aleksey
 
26.11.16
21:16
(2) Так <ФлагСтандОбр> - флаг, изначально, при вызове процедуры равен 1, если в теле процедуры значение этого параметра поменять на 0, то стандартный процесс выбора значения не будет происходить
4 Aleksey
 
26.11.16
21:23
Процедура ПриНачалеВыбораЗначения(ИдентЭлемДиалога,ФСО)
    Если ИдентЭлемДиалога = "ТвойРеквизит" Тогда
        Если ПустоеЗначение(ТвойРеквизит) = 0 Тогда
            ФСО = 0;
            ОткрытьФорму(ТвойРеквизит);
        КонецЕсли;
    КонецЕсли;        
КонецПроцедуры
5 myr4ik07
 
26.11.16
21:29
(3) ух ты, оно, ононо ))), а как быть с списокм на форме, я хочу при нажатии на определенную колонку открывался так же сразу документ?
6 Aleksey
 
26.11.16
21:33
(5) Точно также.
Например колонка номенклатура

Процедура ПриНачалеВыбораЗначения(ИдентЭлемДиалога,ФСО)
    Если ИдентЭлемДиалога = "Номенклатура" Тогда
        Если ПустоеЗначение(Номенклатура) = 0 Тогда
            ФСО = 0;
            ОткрытьФорму(Номенклатура);
        КонецЕсли;
    КонецЕсли;        
КонецПроцедуры
7 Aleksey
 
26.11.16
21:35
т.е. если они захотят изменить его, что будешь делать?

P.S. Можно сделать так же как и в типовой открывается партия в реализации
8 myr4ik07
 
26.11.16
21:37
(7) короче есть список на форме справочника

АрхивТТН Документ Статус

вот я хочу когда чувак нажал на Документ открылся документ, а когда нажал на другую колонку открылся сам элемент справочника


как то это можно реализовать?
9 myr4ik07
 
26.11.16
21:40
или как я понял аналогично?
10 Aleksey
 
26.11.16
21:40
Откуда у списка на форме есть пидалька? Откуда у справочника ТЧ?
11 myr4ik07
 
26.11.16
21:42
(10) ну да ), точнее,

есть форма списка Справочника, вот на этой форме я хочу что бы при нажатии на Документ открылся документ, а как это сделать не знаю )
12 Aleksey
 
26.11.16
21:51
(11) Ну проще всего сделать внизу отдельную кнопку и в ней уже открывать что хочешь
13 myr4ik07
 
26.11.16
21:52
(12) это да, но очень бы хотелось как то при нажатии реализовать, есть может идеи? я в обработчиках заплутался 7ки
14 Aleksey
 
26.11.16
21:56
Ну если стоит редактировать в списке , то так же
15 myr4ik07
 
26.11.16
22:00
(14) а не хочет оно, нет такого события в форме списка
16 Aleksey
 
26.11.16
22:03
(15) И даже ПриНачалеРедактированияСтроки?

P.S. Форм точно в режиме редактирования настроена? В конфигураторе редактировать в каком положении стоит, В списке или в Диалоге?
17 myr4ik07
 
26.11.16
22:06
(16) что то такое придумал

Процедура ПриВыбореСтроки()          
    Если Форма.ТекущаяКолонка()  = "Док" Тогда  
        Если ПустоеЗначение(Док) = 0 Тогда
            ОткрытьФорму(Док);
        КонецЕсли;    
    КонецЕсли;
КонецПроцедуры                                                

Форма.ОбработкаВыбораСтроки(1);

но смысл в том, что мне нужно включить стандартную обработку если не док
18 myr4ik07
 
26.11.16
22:07
(16) в конфигураторе в Диалоге написано редактровать можно
19 myr4ik07
 
26.11.16
22:12
(16) ПриНачалеРедактированияСтроки тоже не срабатывает
20 myr4ik07
 
26.11.16
22:34
забецал

Процедура ПриВыбореСтроки()          
    Если Форма.ТекущаяКолонка()  = "Док" Тогда  
        Если ПустоеЗначение(Док) = 0 Тогда
            ОткрытьФорму(Док);
        КонецЕсли;    
    Иначе
         ОбТМЦ = СоздатьОбъект("Справочник.АрхивТТН");  
         ОбТМЦ.НайтиПоКоду(Код,0);
         ОткрытьФорму(ОбТМЦ.ТекущийЭлемент());
    КонецЕсли;
КонецПроцедуры            

Форма.ОбработкаВыбораСтроки(1);
21 myr4ik07
 
26.11.16
22:35
(16) спасибо, очень подсказал, очень
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший