Имя: Пароль:
1C
1С v8
Вопрос по циклу
0 Валидатор
 
27.08.13
11:59
Есть табличная часть, с графами заказ, сумма
нужно чтобы при выборе заказа в его строку ставилась его сумма, а у меня получается что берется последняя сумма и ставится в обе строки, если  уменя 2 заказа, один на 50р, другой на 100, то будет ставится 100, почему так? вот цикл:
Для Каждого Строка из РасшифровкаПлатежа Цикл
    Строка.СуммаВзаиморасчетов = СтрокаПлатеж.Сделка.СуммаДокумента;
    Строка.СуммаПлатежа = СтрокаПлатеж.Сделка.СуммаДокумента;
    КонецЦикла;
1 Starhan
 
27.08.13
12:01
Покажи как СтрокаПлатеж получаешь
2 Maxus43
 
27.08.13
12:01
ну дак Строка.Сделка, а не СтрокаПлатеж.Сделка
3 Wobland
 
27.08.13
12:01
отвечаем. потому что СтрокаПлатеж всё время одна и та же
4 Валидатор
 
27.08.13
12:03
Процедура РасшифровкаПлатежаСделкаНачалоВыбора(Элемент, СтандартнаяОбработка)
    
    ПараметрыВыбора=УправлениеДенежнымиСредствами.ОпределитьПараметрыВыбораСделки(ВидОперации);
    
    РаботаСДиалогами.НачалоВыбораЗначенияСделки(ЭтотОбъект, ЭтаФорма, Элемент, СтрокаПлатеж.ДоговорКонтрагента, СтрокаПлатеж.Сделка, СтандартнаяОбработка,
                         ПараметрыВыбора.ВидДвиженияРасчеты, ПараметрыВыбора.ТипЗаказа);
                        
    
    Для Каждого Строка из РасшифровкаПлатежа Цикл
    Строка.СуммаВзаиморасчетов = СтрокаПлатеж.Сделка.СуммаДокумента;
    Строка.СуммаПлатежа = СтрокаПлатеж.Сделка.СуммаДокумента;
    КонецЦикла;
                        
КонецПроцедуры
5 Валидатор
 
27.08.13
12:03
2 колонки у меня в ТЧ, с ценниками одинаковыми получаются
6 Maxus43
 
27.08.13
12:05
(4) зачем тут цикл? процедура выбора конкретной сделки же, да и начало выбора это...
В СделкаПриИзменении поидее надо делать, без циклов богомерзких
7 Starhan
 
27.08.13
12:06
(4) ну и почему ты решил что в "СтрокаПлатеж.Сделка.СуммаДокумента"

в цикле разные значения будут?
8 Валидатор
 
27.08.13
12:06
вроде теперь для каждого своя позиция отображается по сумме, только чтобы она отобразилась приходится 2 раза выбирать сделку, это из за цикла?
9 Валидатор
 
27.08.13
12:07
у сделки тип данных: ЭлементыФормы.РасшифровкаПлатежа.ТекущиеДанные.Сделка
10 Валидатор
 
27.08.13
12:07
конфа УПП документ Планируемое поступление ДС
11 Валидатор
 
27.08.13
12:08
2 раза приходится выбирать, потому что на выборе, стоит эта буква Т, и потом после выбора ее, приходится на 3 точки нажимать и выбирать еще раз документ
12 Maxus43
 
27.08.13
12:09
выдохни, выпей кофе, подумай в какой процедуре это надо сделать на самом деле
13 Валидатор
 
27.08.13
12:10
(12) до того как я увидел что там есть ТЧ, я делал в сделке при изменении все это дело
14 Maxus43
 
27.08.13
12:12
(13) СделкаПриИзменении есть и у поля в ТЧ
15 Валидатор
 
27.08.13
12:14
(14) это понятно, на форме документа нет ТЧ, она появляется в зависимости от условия, а создавать новую процедуру я пробовал:
Процедура РасшифровкаПлатежаПриИзменении (Элемент)
автоматически она в свойства тч не подставляется(
16 Валидатор
 
27.08.13
12:15
в события*
17 Maxus43
 
27.08.13
12:16
(16) ну в форме документа по другим слоям посмотри, там она есть
18 Валидатор
 
27.08.13
12:18
(17) она появляется, когда переключается на первоначальной форме галочка одна
19 Maxus43
 
27.08.13
12:22
(18) и что? нажми в конфигураторе, когда открыта форма документа ctrl+shift+L
20 Валидатор
 
27.08.13
12:25
(19) прошелся по всему списку форм, а моей ТЧ так и не увидел(
21 Валидатор
 
27.08.13
12:31
Можно было бы просто в СделкаПриИзменеии прописать, но у нее тип данных: несколько документов, поэтому в ТЧ потом и приходится по 2 раза выбирать один документ(
22 Валидатор
 
27.08.13
12:52
Нашел эту форму, просто левой кнопкой мыши надо было нажать по форме документа, и там она была, и потом добавил просто процедуру:
Процедура РасшифровкаПлатежаСделкаОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
    ЭлементыФормы.РасшифровкаПлатежа.ТекущиеДанные.СуммаПлатежа = ВыбранноеЗначение.СуммаДокумента;
    ЭлементыФормы.РасшифровкаПлатежа.ТекущиеДанные.СуммаВзаиморасчетов = ВыбранноеЗначение.СуммаДокумента;
КонецПроцедуры
2 + 2 = 3.9999999999999999999999999999999...