Имя: Пароль:
1C
1С v8
Подскажите с запросом
0 koketka
 
14.11.12
22:29
Процедура СписокДокументовПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
Запрос = Новый Запрос;
   Запрос.УстановитьПараметр("Ссылка",Ссылка);
   Запрос.УстановитьПараметр("п",Перечисления.СтатусыИнвойсов.ПолученоПодтверждение);
   Запрос.УстановитьПараметр("н",Перечисления.СтатусыИнвойсов.НетПодтверждения);

   Запрос.Текст =
"ВЫБРАТЬ
|    СтатусыИнвойсовБУСписокДокументов.СтатусПодтверждения,
|    СУММА(ВЫБОР
|            КОГДА СтатусыИнвойсовБУСписокДокументов.СтатусПодтверждения = &п
|                ТОГДА СтатусыИнвойсовБУСписокДокументов.СуммаДокументаВРублях
|        КОНЕЦ) КАК Под,
|    СУММА(ВЫБОР
|            КОГДА СтатусыИнвойсовБУСписокДокументов.СтатусПодтверждения = &н
|                ТОГДА СтатусыИнвойсовБУСписокДокументов.СуммаДокументаВРублях
|        КОНЕЦ) КАК НеПод
|ИЗ
|    Документ.СтатусыИнвойсовБУ.СписокДокументов КАК СтатусыИнвойсовБУСписокДокументов
|ГДЕ
|    СтатусыИнвойсовБУСписокДокументов.Ссылка = &Ссылка
|
|СГРУППИРОВАТЬ ПО
|    СтатусыИнвойсовБУСписокДокументов.СтатусПодтверждения";
Результат = Запрос.Выполнить();
Выборка = Результат.Выгрузить();

ЭлементыФормы.Надпись6.Заголовок = Выборка.Итог("Под");
ЭлементыФормы.Надпись7.Заголовок = Выборка.Итог("НеПод");

КонецПроцедуры
Смысол этой процедуры изменять суммы документа при редактировании строки, но в рели получается что выводятся суммы только у сохраненых параметров а измененые параметры не читаюся думаю дело в этой строке
Запрос.УстановитьПараметр("Ссылка",Ссылка);
что должно быть вместо Ссылка
1 H A D G E H O G s
 
14.11.12
22:30
Фотку.
2 Азат
 
14.11.12
22:32
А Выгрузи ТЧ в ТабЗнач, положи ТабЗнач в запрос и будет тебе щастье
3 koketka
 
14.11.12
22:38
(2) это как?
4 Rovan
 
гуру
14.11.12
22:49
(3) ТЗ = СписокДокументов.Выгрузить()
5 Азат
 
14.11.12
22:54
ога, а в продолжение Рована 2 варианта:

1. Мас1 = ТЗ.НайтиСтроки(Новый Структура("СтатусПодтверждения ", Перечисления.СтатусыИнвойсов.ПолученоПодтверждение));
Мас2 = ТЗ.НайтиСтроки(Новый Структура("СтатусПодтверждения ", Перечисления.СтатусыИнвойсов.НетПодтверждения));

Сум1 = 0; Сум2 = 0;
Для К = 0 По Макс(Мас1.КОличество() - 1, Мас2.Количество() - 1) Цикл
Если НЕ К > Мас1.Количество() - 1 Тогда
    Сум1 = Сум1 + Мас1[К].СуммаДокументаВРублях;
КонецЕсли;
Если НЕ К > Мас2.Количество() - 1 Тогда
    Сум2 = Сум2 + Мас2[К].СуммаДокументаВРублях;
КонецЕсли;
КонецЦикла;

2. ТекстЗапроса = "ВЫБРАТЬ * ПОМЕСТИТЬ ВТ ИЗ &ТЗ КАК ТЗ; ВЫБРАТЬ ну и тут твой текст ИЗ ВТ"
6 sanja26
 
14.11.12
22:57
(0) так данные документа еще не записаны в базу по этой ссылке, а ты хочешь получить их запросом..
7 Dethmont
 
14.11.12
23:09
Тему надо было назвать ЗАПРОС К ОПЕРАТИВНОЙ ПАМЯТИ
8 H A D G E H O G s
 
14.11.12
23:11
(7) Я смотрю - вы разбираетесь в теме.
2 + 2 = 3.9999999999999999999999999999999...