Имя: Пароль:
1C
1С v8
Повторение данных
,
0 Самая счастливая
 
04.12.13
20:19
"ВЫБРАТЬ
|    ОплатаКонтрагентаОплатаУслуг.Сумма КАК СуммаОплаты
|ИЗ
|    Документ.ОплатаКонтрагента.ОплатаУслуг КАК ОплатаКонтрагентаОплатаУслуг
|ГДЕ
|    ОплатаКонтрагентаОплатаУслуг.Ссылка.Заявка.Ссылка = &Ссылка
|    И ОплатаКонтрагентаОплатаУслуг.Услуга = &Услуга";
//|    И ОплатаКонтрагентаОплатаУслуг.Ссылка.ПометкаУдаления = &ПометкаУдаления";

Запрос9.УстановитьПараметр("Услуга",РезулЗапр.Номенклатура1);
Запрос9.УстановитьПараметр("Ссылка",РезулЗапр.Ссылка1);
//Запрос9.УстановитьПараметр("ПометкаУдаления",Ложь);
Резул999= Запрос9.Выполнить().Выбрать();
Пока Резул999.Следующий() Цикл
    
ОбластьНаименнование.Параметры.Оплата= Резул999.СуммаОплаты;
КонецЦикла;

делаю запрос, запрос вроде работает правильно , но почему-то иногда задваевает данные  выводит допустим суммы :
Заявка1   Услуга1     12
Заявка2    Услуга2    15
Заявка3    Услуга3    16
Заявка4    Услуга4    17
Заявка5    Услуга4    17
Заявка6    Услуга4    17
1 МишКа
 
04.12.13
20:23
(0) В смысле? Где задваивает?
2 Мимохожий Однако
 
04.12.13
20:33
Прикольно: "ОплатаКонтрагентаОплатаУслуг.Ссылка.Заявка.Ссылка"
В приведенном запросе  я нашел только одно поле вывода.
3 GROOVY
 
04.12.13
20:42
И это запрос №9!
4 Самая счастливая
 
04.12.13
20:43
да
я для наглядности так написала
5 Самая счастливая
 
04.12.13
20:43
имею виду как сумма выводится
6 Самая счастливая
 
04.12.13
20:46
ОбластьНаименнование.Параметры.Оплата= Резул999.СуммаОплаты; может быть как-то область очищать?
7 Самая счастливая
 
04.12.13
20:46
я не знаю
8 Самая счастливая
 
04.12.13
20:57
получается когда по Заявка5    Услуга4    17 сумма должна быть пустой , запрос пришел неоределенно, а данные остались после заявки4,
9 Самая счастливая
 
04.12.13
20:57
и присвоились старые
10 Самая счастливая
 
04.12.13
21:02
ауууу!!!
11 GROOVY
 
04.12.13
21:10
В чем вопрос то? Не задваивает. Там разные значения полей.
12 Самая счастливая
 
04.12.13
21:11
почему вместо 0 , пишет сумму предыдущего
13 МишКа
 
04.12.13
21:13
(12) Потому, что ты так сказала тому, кто пишет.
14 Ярус
 
04.12.13
21:14
(12) ты код то вывода покажи
15 Ярус
 
04.12.13
21:15
-(14)а все увидел
16 Ярус
 
04.12.13
21:16
мда
17 МишКа
 
04.12.13
21:17
(12)
А=17
А=0
это будет 0

А=17
ничего не делать
это будет 17

Поставь перед циклом:
ОбластьНаименнование.Параметры.Оплата= 0;
18 Самая счастливая
 
04.12.13
21:22
спасибо)))))))
19 zakidonoff
 
04.12.13
21:35
Пока Резул999.Следующий() Цикл
ОбластьНаименнование.Параметры.Оплата= Резул999.СуммаОплаты;
КонецЦикла;

В результате ОбластьНаименнование.Параметры.Оплата будет равна сумме, указанной в последней строке запроса. Запрос только одну строку выдавать должен?
Если да, то ставь ВЫБРАТЬ ПЕРВЫЕ 1
И не Пока ...Следующий() Цикл
а
ОбластьНаименнование.Параметры.Оплата = ?(Резул999.Следующий(), Резул999.СуммаОплаты, 0)
20 Ярус
 
04.12.13
21:36
(19) у неё и запрос ещё в цикле кстати, судя по тому что несколько строк вывело все же
21 zakidonoff
 
04.12.13
21:38
(20) Судя по наименованию, там не цикл, а перечисление:
запрос1 = новый запрос("...
...
запрос9 = ...
-)