Имя: Пароль:
1C
1С v8
Отчёт, Запрос
0 d3N4eGG
 
29.03.12
14:13
Есть запрос в скд:

ВЫБРАТЬ
   ПродажаОплата.ДатаОплаты,
   ПродажаОплата.Сумма,
   ПродажаОплата.СуммаВыставленная,
   ПродажаОплата.СуммаОплаченная,      
   ВЫБОР
       КОГДА ПродажаОплата.СуммаОплаченная <>0  
           ТОГДА ПродажаОплата.СуммаОплаченная
       ИНАЧЕ NULL
   КОНЕЦ КАК Оплата,
   ВЫБОР
       КОГДА CRM_ПродажаОплата.СуммаВыставленная <> 0
           ТОГДА CRM_ПродажаОплата.СуммаВыставленная
       ИНАЧЕ NULL
   КОНЕЦ КАК Выставлено,
   ВЫБОР
           КОГДА ПродажаОплата.СуммаВыставленная = 0 И ПродажаОплата.СуммаОплаченная = 0
           ТОГДА CRM_ПродажаОплата.Сумма
       ИНАЧЕ NULL
   КОНЕЦ КАК План            
ИЗ
   Документ.CRM_Продажа.Оплата КАК CRM_ПродажаОплата
ГДЕ
   ПродажаОплата.Ссылка.ПометкаУдаления = ЛОЖЬ
{ГДЕ
   ПродажаОплата.Ссылка.Дата,
   ПродажаОплата.Ссылка.Контрагент.*,
   ПродажаОплата.Ссылка.*}

Выбранные поля в отчёте - ДатаОплаты, План, Выставлено, Оплата. Нужно сделать так,
КОГДА ПродажаОплата.СуммаОплаченная <> 0 ТОГДА
Не выводить все остальные поля (План и выставлено) - присвоить им 0. Как это сделать? И можно ли сделать следующее: Если Выставлено больше чем Оплата, то рассчитать их разницу и вывести в Оплата?
1 Ненавижу 1С
 
гуру
29.03.12
14:14
ВЫБОР КОГДА ПродажаОплата.СуммаОплаченная <> 0 ТОГДА
2 d3N4eGG
 
29.03.12
14:15
(1) , Да, но как написать, чтоб не выводились Выставлено и План?
3 Ненавижу 1С
 
гуру
29.03.12
14:17
ВЫБОР
КОГДА ПродажаОплата.СуммаОплаченная <> 0 ТОГДА 0
       КОГДА CRM_ПродажаОплата.СуммаВыставленная <> 0
           ТОГДА CRM_ПродажаОплата.СуммаВыставленная
       ИНАЧЕ NULL
   КОНЕЦ КАК Выставлено
4 d3N4eGG
 
29.03.12
14:30
Я неправильно выразился. Должны отображаться все поля, но они должны быть пустыми.

ВЫБОР
       КОГДА CRM_ПродажаОплата.СуммаОплаченная <> 0
           ТОГДА CRM_ПродажаОплата.СуммаОплаченная
               КОГДА CRM_ПродажаОплата.СуммаВыставленная <> 0
                   ТОГДА NULL
               КОНЕЦ КАК Выставлено,
           ИНАЧЕ NULL
               КОГДА CRM_ПродажаОплата.СуммаВыставленная <> 0
                   ТОГДА CRM_ПродажаОплата.СуммаВыставленная
               КОНЕЦ КАК Выставлено,
   КОНЕЦ КАК Оплата

Что-то типо такого надо :D Но оно не работает ;X