Имя: Пароль:
1C
1С v8
Перезаполнить объект на сервере
,
0 Zixxx
 
26.12.13
16:51
Нужно в управляемой форме при выборе "Организации" заполнить реквизит "Основной банковский счет".

Сейчас делаю так:

[code]
ЭтотОбъект  = РеквизитФормыВЗначение("Объект");
ЭтотОбъект.БанковскийСчетОрганизации = Объект.Организация.ОсновнойБанковскийСчет;
ЗначениеВРеквизитФормы(ЭтотОбъект, "Объект");
[/code]

Правильно ли так делать, или есть более правильные варианты?
1 Defender aka LINN
 
26.12.13
16:57
О_О
2 Fedor-1971
 
26.12.13
17:27
&НаСервере
процедура ...
Объект.БанковскийСчетОрганизации = Объект.Организация.ОсновнойБанковскийСчет;
КонецПроцедуры

ЭтотОбъект - не надо использовать как переменную.
3 Zixxx
 
26.12.13
17:32
(2) А как форме сказать чтобы она перечитала объект? Визуально реквизит будет не заполнен
4 Fedor-1971
 
26.12.13
17:35
(3) о как, сам же написал УФ, она есть и наСервере и наКлиенте, ничего обновлять не нужно, просто заполни реквизит и не парься
5 GROOVY
 
26.12.13
17:35
(3) Да ладно!
6 Zixxx
 
26.12.13
17:40
(4), (5) Да, действительно отрабатывает. Тогда я просто не помню что не отрабатывает. Возможно при заполнении табличной части через подбор что-то было похожее
7 Адский плющ
 
26.12.13
18:11
Ну шоб для полной красоты

В самой обработке события:

Объект.БанковскийСчет = ОбщегоНазначение.ЗначениеРеквизитаИлиКакТамОно...


Хотя обычно при смене организации столько головняков, что приходится действительно лезть всеё формой на сервер.
8 Kvestin
 
26.12.13
21:34
(0) Если совсем правильно и вся форма тебе не нужна, то лучше написать так
&НаКлиенте
Процедура ПриИзмененииОргацизации(...)
    Объект.БанковскийСчетОрганизации = ПолучитьОсновнойСчетОрганизации(Объект.Организация);
КонецПроцедуры

&НаСервереБезКонтекста
Функция ПолучитьОсновнойСчетОрганизации(Организация)
    Возврат Организация.ОсновнойБанковскийСчет;
КонецФункции
9 GROOVY
 
26.12.13
22:12
(8) Если совсем правильно, то получить счет нужно запросом, чтоб не читать все связанные данные объектной моделью.
10 NcSteel
 
26.12.13
22:14
(9) Да ладно.... справочник мелкий.
11 Kvestin
 
26.12.13
22:17
(9) Согласен, но я еще не встречал в типовых (и не типовых), чтобы так заморачивались :)
Привел вариант, который чаще всего встречается в УФ (например, в БСП).
12 GROOVY
 
26.12.13
22:20
... А вот Сергей Нуралиев, на партнерке, когда рассказывал про УФ, делал на этом акцент! :)
13 NcSteel
 
26.12.13
22:21
(12) Он ничего не понимает!
14 Kvestin
 
26.12.13
22:23
(12) Еще бы он зашел к своим программистам, и там сделал акцент :)
Сказал так строго "Пишите как я рекомендовал, а не как быстрее".
Хотя мне все чаще кажется они специально хлеб остальным оставляют.
15 NcSteel
 
26.12.13
22:27
(14) Надо всегда ставить границы оптимизации.... и не впадать в крайности, например вместо точки самим рисовать соединение с таблицей.
16 Kvestin
 
26.12.13
22:30
(15) Верно.
Пока мне хватало: убрать запрос в цикле и вложенные запросы в запросе. Уже это дает приемлемый показатель производительности для типовых задач.
17 GROOVY
 
26.12.13
23:33
В контексте последних постов я просто счастлив, что клиент-серверное взаимодействие не поручили платформе, а заставили думать прогов :)
18 NcSteel
 
26.12.13
23:37
(17) Разузловка точки одинаково относится и к 8.0.
19 NcSteel
 
26.12.13
23:41
(17) Хорошая присказка:

Допустим вероятность попадания в цель составляет 70%.
Тогда вероятность попадания в цель двух ракет составляет 91%
Вероятность попадания трех ракет составляет 97,3%
Четвертая ракета попадет в цель с вероятностью 99,2%.

Следствие: четвертая ракета повышает надежность поражения всего на 1,9%. По себестоимости четвертая ракета равна всем предыдущим, а пользы приносит не более чем на 2%.

С другой стороны две ракеты, это слишком мало, так как ущерб от самолета противника может оказаться слишком высоким. Вот и выходит, что в данном случае, что три - это оптимальный вариант.
20 zak555
 
27.12.13
00:00
(12) так про это и в радченко написано
21 GROOVY
 
27.12.13
00:08
(20) Как думаешь, кто кому рассказал?
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс