Имя: Пароль:
1C
1С v8
как сложить
,
0 lysenka
 
25.08.11
09:56
это тупо, но я блондинка :)
есть форма, у нее три обекта поля ввода (регистр). 1поле-кухня, 2-жилая, 3-общая. .Хочу сложить при изменениии "Кухня"+Жилая .. что бы вычислить общую что-то не то :(

ЭтаФорма.Элементы.ПлОбщая=ЭтаФорма.Элементы.ПлЖилая+ЭтаФорма.Элементы.ПлКухня;
1 Wobland
 
25.08.11
09:56
.Значение
2 lysenka
 
25.08.11
09:57
точнее как правильно обратится к данным в объекте формы??
3 lysenka
 
25.08.11
10:00
ЭтаФорма.Элементы.ПлОбщая.значение=ЭтаФорма.Элементы.ПлЖилая.значение+ЭтаФорма.Элементы.ПлКухня.значение;    

выдает ошибку "поле объекта не обнаружено (значение)"
4 Wobland
 
25.08.11
10:00
(2)
Попытка
 ЛК.СменитьПолВЛК();
 ЛК.ДобавитьФото();
 Юзать(1);
Исключение
 Юзать(1);
КонецПопытки;
5 Wobland
 
25.08.11
10:01
(3) управляемая? значит реквизиты есть. (я правильно сейчас сказал?)
6 Ненавижу 1С
 
гуру
25.08.11
10:04
оффтоп, по жизни

Общая<>Жилая+Кухня
как минимум есть прихожая и санузел
7 lysenka
 
25.08.11
10:34
здаюсь! реально уже мозг пухнит. в нормальных языках чтобы получить значение, достаточно обратится к объекту. Тут же фиг разберешь!
8 Axel2009
 
25.08.11
10:36
(7) отладчиком смотри где хранится значение
9 Hostess_
of_Love
 
25.08.11
10:36
(7)форма управляемая?
10 Wobland
 
25.08.11
10:42
я что-то не понял. ПлЖилая+ПлКухня не работает?
11 Ненавижу 1С
 
гуру
25.08.11
10:47
для управляемой

Объект.Реквизит3 = Объект.Реквизит2+Объект.Реквизит1;
12 Wobland
 
25.08.11
10:48
(11) а если без Объекта?
13 Ненавижу 1С
 
гуру
25.08.11
10:48
(12) низзя
14 lopus
 
25.08.11
10:49
А почему пол мужской
15 Wobland
 
25.08.11
10:53
(13) хм, получилось

&НаКлиенте
Процедура Команда1(Команда)
   Реквизит3=Реквизит1+Реквизит2;
КонецПроцедуры
16 Ненавижу 1С
 
гуру
25.08.11
10:54
(15) не знаю что у вас, а я вот напоролся при тонком:


{Обработка.Обработка1.Форма.Форма.Форма(4,24)}: Переменная не определена (Реквизит1)
   Реквизит3 = Реквизит2+<<?>>Реквизит1; (Проверка: Тонкий клиент)
17 Wobland
 
25.08.11
10:54
(15) это потому, что это реквизиты формы, а не обработки
18 Ненавижу 1С
 
гуру
25.08.11
10:54
(17) наверное ты прав


{Обработка.Обработка1.Форма.Форма.Форма(4,14)}: Переменная не определена (Реквизит2)
   Реквизит3 = <<?>>Реквизит2+Реквизит1; (Проверка: Тонкий клиент)
{Обработка.Обработка1.Форма.Форма.Форма(4,24)}: Переменная не определена (Реквизит1)
   Реквизит3 = Реквизит2+<<?>>Реквизит1; (Проверка: Тонкий клиент)
19 Wobland
 
25.08.11
10:56
ну что, ответ есть и даже пожёван. (я ещё в (5)) был прав, оказывается. ждём фото
20 Жан Пердежон
 
25.08.11
11:02
(0) а как же балконы, коридоры, туалеты/ванные?
21 Hostess_
of_Love
 
25.08.11
11:04
(20)они их к жилой площади относят
22 MaxS
 
25.08.11
11:11
Однажды видел такой код в форме:

Организация = Справочники.Организации.НайтиПоНаименованию(ЭлеменыФормы.Организация);
Он долго работал до тех пор, пока не ограничили права. У пользователя были права на одну организацию.
Кто-то доработал этот код и вставил запрос, Выбрать разрешенные...

Может быть в (0) нужно делать запрос в БТИ? ;)
23 Ненавижу 1С
 
гуру
25.08.11
11:18
кухни, коридоры, кладовки, санузлы относятся к общей но не жилой
балконы исключены из расчета общей площади (отдельная графа)
24 lysenka
 
25.08.11
11:36
пробывала так

ПлОбщая=ПлЖилая+ПлКухня

выдает ошибку :(

{Справочник.Квартира.Форма.ФормаЭлемента.Форма(10,9)}: Переменная не определена (ПлЖилая)
ПлОбщая=<<?>>ПлЖилая+ПлКухня (Проверка: Тонкий клиент)
{Справочник.Квартира.Форма.ФормаЭлемента.Форма(10,17)}: Переменная не определена (ПлКухня)
ПлОбщая=ПлЖилая+<<?>>ПлКухня (Проверка: Тонкий клиент)

попробывала так:

Объект.ПлОбщая=Объект.ПлЖилая+Объект.ПлКухня

все получилось, ну покрайнимере результат есть :)
25 Grusswelle
 
25.08.11
11:38
(0) Без фото не взлетит!

(1), (6), (9), (14), (22) А вы что традиции нарушаете - девушке без фото отвечаете?! ;-)
26 lysenka
 
25.08.11
11:44
они не нарушают традиции... это я просто занятая была ^_^
27 Wobland
 
25.08.11
11:46
(26) так... пол-традиции исполнено
28 MaxS
 
25.08.11
12:18
(25) так (22) не содержит ответа, если вникнуть ;)

(26) теперь понятно почему не складывается. Не под тем углом рулетку прикладываете. У вас пол и стены под углом. ;)
29 lysenka
 
25.08.11
12:33
вообщем таки получилось вот что

&НаКлиенте
Процедура ПлКухняПриИзменении(Элемент)

Объект.ПлОбщая=Объект.ПлКухня+Объект.ПлКоридор+Объект.ПлЖилая+Объект.ПлВанна+Объект.ПлТуалет;

КонецПроцедуры


а если я хочу поместит процедуру обработки события в общий модуль как правильно это сделать сделать?

вот в общем модуле я написала

Процедура СуммаПлощадей(ДанныеПлощадей) Экспорт    
ДанныеПлощадей.ПлОбщая=ДанныеПлощадей.ПлКухня+ДанныеПлощадей.ПлКоридор+ДанныеПлощадей.ПлЖилая+ДанныеПлощадей.ПлВанна+ДанныеПлощадей.ПлТуалет;    
конецпроцедуры

а в модуле формы

&НаКлиенте
Процедура ПлКухняПриИзменении(Элемент)
ДанныеПлощадей=ЭтаФорма.Объект;
СуммаПлощадей.РасчетСуммыПлощадей(ДанныеПлощадей);
КонецПроцедуры

выдает ошибку

{Справочник.Квартира.Форма.ФормаЭлемента.Форма(11,1)}: Переменная не определена (СуммаПлощадей)
<<?>>СуммаПлощадей.РасчетСуммыПлощадей(ДанныеПлощадей); (Проверка: Тонкий клиент)

хотя СуммаПлощадей это уменя имя модуля

что опять не так? :.((
30 Ненавижу 1С
 
гуру
25.08.11
12:36
(29) модуль выполняется на сервере? галка вызов сервера стоит?
31 Ненавижу 1С
 
гуру
25.08.11
12:37
ошибка проектирования на лицо:

Объект.ПлОбщая=Объект.ПлКухня+Объект.ПлКоридор+Объект.ПлЖилая+Объект.ПлВанна+Объект.ПлТуалет;

иногда ванна и туалет совместны, иногда их несколько
в общем неправильно вы спроектировали структуру данных
32 lysenka
 
25.08.11
12:40
галочка стоит, я поставила галочку на против Клиент (управляемое приложение). и это помогло, спасибо! :)

сейчас буду читать что эти галочки обозначают. :)

если есть материал по этому можно поделиться ;)
33 lopus
 
25.08.11
15:01
Если имя процедуры СуммаПлощадей, то почему обращение на клиенте СуммаПлощадей.РасчетСуммыПлощадей ??собсно
34 Ненавижу 1С
 
гуру
25.08.11
15:08
(33) чего???
35 lopus
 
25.08.11
15:23
вот в общем модуле я написала
Процедура СуммаПлощадей(ДанныеПлощадей) Экспорт    
ДанныеПлощадей.ПлОбщая=ДанныеПлощадей.ПлКухня+ДанныеПлощадей.ПлКоридор+ДанныеПлощадей.ПлЖилая+ДанныеПлощадей.ПлВанна+ДанныеПлощадей.ПлТуалет;    
конецпроцедуры

а в модуле формы

&НаКлиенте
Процедура ПлКухняПриИзменении(Элемент)
ДанныеПлощадей=ЭтаФорма.Объект;
СуммаПлощадей.РасчетСуммыПлощадей(ДанныеПлощадей);
КонецПроцедуры
Того
36 Ненавижу 1С
 
гуру
25.08.11
15:25
есть модуль "СуммаПлощадей"?
а в нем метод "РасчетСуммыПлощадей"?
37 Wobland
 
25.08.11
15:26
Лопус... Максим... мужской... написала... ведёт себя как ТС...
38 lopus
 
25.08.11
15:27
Процедура РасчетСуммыПлощадей тогда, а не СуммаПлощадей, а вы о чем.
39 Wobland
 
25.08.11
15:38
(38) это был копипаст такой? извини, запутался
40 Axel2009
 
25.08.11
15:50
(38) ты как lopus написала или как lysenka написал?
41 Hostess_
of_Love
 
25.08.11
15:58
вызов процедуры изменить надо
СуммаПлощадей(ДанныеПлощадей);