Имя: Пароль:
1C
1С v8
v8.2 Не срабатывает процедура &НаСервере
0 Klondaik
 
27.12.11
12:56
Подскажите пожалуйста - на форме обработки хочу автоматически очистить реквизит обработки Клиент при очистке реквизита Соглашение.

Пишу:

&НаСервере
Процедура СоглашениеОчистка(Элемент, СтандартнаяОбработка)
   Объект.Клиент = Справочники.Партнеры.ПустаяСсылка();
КонецПроцедуры

Не заходит в эту процедуру. Почему?
База файловая, УТ11.
1 H A D G E H O G s
 
27.12.11
12:59
Пеши так

Объект.Клиент = ПредопределенноеЗначение("Справочник.Партнеры.ПустаяСсылка");

прямо на клиенте
2 Жан Пердежон
 
27.12.11
13:01
(0) это можно и на клиенте сделать
3 Klondaik
 
27.12.11
13:01
Превелико благодарствую!
А почему все-таки не входит в процедуру &НаСервере?
4 Живой Ископаемый
 
27.12.11
13:02
а какой сервер в случае файловой базы?
5 mikecool
 
27.12.11
13:02
потому что вызвать ее надо с клиента
6 MikleV
 
27.12.11
13:05
потому что её не существует в клиентском контексте.
7 H A D G E H O G s
 
27.12.11
13:14
(4) Веб сервер.
8 Ненавижу 1С
 
гуру
27.12.11
13:15
Как решил, что не заходит?
9 H A D G E H O G s
 
27.12.11
13:15
(6) Но в рамках УФ ее можно вызвать с Клиента в рамках одного модуля (модуля УФ)
10 Klondaik
 
27.12.11
13:15
А как тогда сделать запрос в модуле формы? Такого типа ведь тоже нет в клиентском контексте.
11 Klondaik
 
27.12.11
13:16
(8)
Не останавливается по точке останова и действие не выполняется указанное в процедуре..
12 Klondaik
 
27.12.11
13:17
(9)И как же ее вызвать?
13 H A D G E H O G s
 
27.12.11
13:18
(12) Скинь обработку.
Или форму встатвь во внешку и выложи на файлообменник.
14 Ненавижу 1С
 
гуру
27.12.11
13:18
надо явно в событии клиента вызвать метод на сервере
15 H A D G E H O G s
 
27.12.11
13:19
(14) Думаешь, он прописал эту процедуру в команде?
16 Ненавижу 1С
 
гуру
27.12.11
13:19
(15) мне кажется как-то так
17 vde69
 
27.12.11
13:23
(2) >>> это можно и на клиенте сделать

на клиенте метаданные не доступны, по этому можно извернутся черех дополнительный реквизит формы, но это то-же не красиво. Писать как (1) конечно красивее, но это тот-же вызов сервера :)

(0) может у тебя просто серверная отладка не включена?
18 H A D G E H O G s
 
27.12.11
13:24
(17) Объект.ТекущийРуководитель=Новый (ТипЗнч(Объект.ТекущийРуководитель));

Без вызовов сервера.

Не ищите гемморой там, где его нет.

Вызов сервера в (1) будет безконтекстный, там мизер байт будет.
19 H A D G E H O G s
 
27.12.11
13:25
Вернее так
Объект.Клиент = Новый (ТипЗнч(Объект.Клиент));
20 Klondaik
 
27.12.11
13:28
(13) Вот ссылка на обработку: files.mail.ru/RV5AK8
Мне больше интересно как с запросом то быть?
21 vde69
 
27.12.11
13:31
(18) более правильным с идеологической точки зрения - это получить все возможные предопределенные значения на клиент одной процедурой, обычно это делается при создании формы.

я рекомендую сделать список значений (как реквизит) и с ним работать.

а "мелкие вызовы" чреваты тормозами работы формы черех браузер при плохом канале.

зы
лучше сразу делать "как надо"
22 Жан Пердежон
 
27.12.11
13:31
(20) типовые не предлагать?
23 Klondaik
 
27.12.11
13:33
(22) Всмысле?
24 МишельЛагранж
 
27.12.11
13:36
(2) это как вы получите на клиенте значение справочника?
25 H A D G E H O G s
 
27.12.11
13:55
Там эта обработка даже не компилится при открытии из за

&НаКлиенте
Процедура СкладПриИзменении(Элемент)
   Если ЗначениеЗаполнено(Параметры.Склад) И Справочники.Склады.ПолучитьПризнакСкладГруппа(Параметры.Склад) Тогда
       
       Запрос = Новый Запрос(
       "ВЫБРАТЬ
       |    Склады.Ссылка КАК Склад
       |ИЗ
       |    Справочник.Склады КАК Склады
       |ГДЕ
       |    Склады.Ссылка В ИЕРАРХИИ(&Склад)
       |    И Склады.ВыборГруппы В (&ВыборГруппыСкладов)
       |    И (НЕ Склады.ЭтоГруппа)");


Вы точно то выслали?
26 Ненавижу 1С
 
гуру
27.12.11
13:55
(24) на клиенте можно получать ссылки справочников и проч.
27 acsent
 
27.12.11
13:58
(1) Еще проше
Объект.Клиент = Неопределено
28 Ненавижу 1С
 
гуру
27.12.11
14:03
(27) это к вопросу о NULL, кстати
29 vde69
 
27.12.11
14:07
(27) не всегда, если Объект.Клиент - составного типа (или ПВХ) то получишь именно Неопределено вместо пустой ссылки.

Авто приведение типов дело тонкое :)
30 Klondaik
 
27.12.11
15:46
(25)Нет, извиняюсь, не то. Ну да бог с ним. Спасибо за помощь!