Имя: Пароль:
1C
1С v8
Изменение реквизитов документа НаСервере
0 VanGogh
 
12.04.14
17:19
Прошу помощи у гуру управляемых форм)
Такая проблема возникла.
Если в форме документа из процедуры, которая выполняется на клиенте (обработчик команды), вызвать серверную процедуру АА1, в которой выполнить
объект.Комментарий = "123";
то на форме реквизит комментарий изменит свое значение на "123"
а если в форме документа в клиентской процедуре
ОбработкаОповещения
Вызвать серверную процедуру АА1
то реквизит на форме не изменит своего значения.
Почему такая разница в поведении платформы?
И что нужно, чтобы процедура АА1 работала в любом случае?
1 VanGogh
 
12.04.14
17:41
что никто не знает?
2 VanGogh
 
12.04.14
17:41
поделитесь с ближним
3 VanGogh
 
12.04.14
17:41
знаниями
4 Рэйв
 
12.04.14
17:50
Форма.Обновить()
?
5 VanGogh
 
12.04.14
17:52
(4)нет такого
есть ОбновитьОтображениеДанных()
но не помогает((((((((
6 VanGogh
 
12.04.14
17:58
(1)+
наблюдения в отладчике:
после выполнения АА1
в процедуре ОбработкаОповещения
видны изменение реквизита комментарий
но на форме ничего не изменилось
После этого, если вызвать процедуру АА1 из команды на форме
то значение комментария будет прежним, неизмененным.
7 Wobland
 
12.04.14
18:04
объект - что такое?
8 toypaul
 
гуру
12.04.14
18:08
патаму шта если с клиентской процедуры вызываешь серверную, то при возврате на клиента объект перечитывается.

такой метод есть в форме. не помню как точно называется. то ли Прочитать то ли Перечитать. по смыслу Обновить, но называется по-другому.
9 VanGogh
 
12.04.14
18:09
(7)процедуры расположены в модуле формы документа
10 VanGogh
 
12.04.14
18:10
(8)вообще мимо
11 Wobland
 
12.04.14
18:12
(9) вопрос "что", ответ "где". молодец
12 VanGogh
 
12.04.14
18:15
(11)если не знаешь что за переменная объект, проходи мимо
13 Wobland
 
12.04.14
18:17
(12) ах, это переменная
14 VanGogh
 
12.04.14
18:18
(13)хорошо, реквизит
уйди с ветки
15 Wobland
 
12.04.14
18:20
(14) не хочу
16 эцп
 
12.04.14
18:23
(0) ДокОбъект = РеквизитФормыВЗначение("Объект"); //не помню, как обычно называется переменная-объект у документов
ДокОбъект.Комментарий = "123";
ЗначениеВРеквизитФормы("Объект", ДокОбъект);

Не?
17 VanGogh
 
12.04.14
18:36
(16)не помогло
18 VanGogh
 
12.04.14
18:39
может это баг
Если вызывать эту процедуру из других клиентских процедур данные формы обновляются и без команд в (16)
19 Wobland
 
12.04.14
18:42
(17) значит, ты врёшь
20 VanGogh
 
12.04.14
18:44
(18)+версия 8.2.19.90
21 Wobland
 
12.04.14
18:48
(19) хотя, необязательно. мало ли кто у тебя в форме отвечает за обработку оповещения
22 hhhh
 
12.04.14
19:01
(20) строку можно и на клиенте присвоить. Нафига вы сервер дергаете?

объект.Комментарий = "123"; пишите в клиентской процедуре
23 Wobland
 
12.04.14
19:04
(22) у него оповещение не случается. грешит на платформу
24 VanGogh
 
12.04.14
19:05
(22)в том то и дело что так НЕ работает.
Хотя должно.
25 VanGogh
 
12.04.14
19:06
(22)->(6) в отладчике видно значение реквизита комментарий в ОбработчикеОповещения, присвоилось значение, когда выхожу из процедуры изменения пропадают на форме ничего нет.
26 Wobland
 
12.04.14
19:08
(25) был нажат подбор, он оповещает. думай
http://i.imgur.com/OsEjroc.png
27 VanGogh
 
12.04.14
19:08
ошибка в чем-то другом
я все тоже самое сделала с другим документом - все работает
28 VanGogh
 
12.04.14
19:13
Вот схема которая работает на одном документе, а на другом нет.
- есть команда в обработке1, параметр документСсылкаА
- при нажатии на команду, выполняется Оповестить("ИзменениеКомментария")
- в модуле формы документаА процедура
ОбработчикОповещения
Если событие "ИзменениеКомментария" Тогда
Объект.Комментарий="123";
КонецЕсли;
29 Wobland
 
12.04.14
19:18
а чо бы всё не показать? откуда эти символы?
30 VanGogh
 
12.04.14
19:41
вопрос решен, всем спасибо
31 VanGogh
 
12.04.14
19:42
напишу в чем было проблема, может кому-то будет интересно
Проблема была свойстве в команде
Если убрать галочку "Изменяет данные" то все работает
32 Wobland
 
12.04.14
19:44
(31) а у меня и с галкой работает
33 VanGogh
 
12.04.14
19:45
(32)значит ты врешь
34 Wobland
 
12.04.14
19:46
(33) значит, ты мне не веришь
35 VanGogh
 
12.04.14
19:52
проверила на обоих документах, при включенном свойстве "Изменяет данные"
в все изменения в обработкеоповещения не сохраняются(
36 Wobland
 
12.04.14
20:03
из оповещения у тебя процедура вызывается, а не команда. какое ей дело до твоих галок?
37 VanGogh
 
12.04.14
20:08
(36)ты щетаешь, что ты сейчас по адресу обратился?
в 1С пиши)
38 Wobland
 
12.04.14
20:11
ага, по адресу. призываю использовать мозх
39 VanGogh
 
12.04.14
20:13
(38)ты хамло
40 Wobland
 
12.04.14
20:13
(39) через тире
AdBlock убивает бесплатный контент. 1Сергей