Имя: Пароль:
1C
1С v8
Требуется совет, как правильно построить запрос
,
0 olo_lo1
 
28.11.13
16:26
имеем таблицу с 2 колонками СчетДТ и СчетКт

Там где не заполнен Дт требуется вывести Кт оборот
там где не заполнен Кт требуется вывести Дт оборот
там где указан и Дт и Кт необходимо вывести оборот между счетами, кредитовый

Как это можно сделать в одном запросе, какую лучше вирт.таблицу по Регистру бухгалтерии использовать
1 DmitriyDI
 
28.11.13
16:29
ВЫБОР КОГДА СуммаКт <> 0 Тогда
СуммаКт Иначе СуммаДт
Конец
2 olo_lo1
 
28.11.13
16:39
(1) Это было бы слишком просто
3 Maxus43
 
28.11.13
16:41
(2) зато работает, тока добавить условие на когда оба заполнены
4 olo_lo1
 
28.11.13
16:43
(3) наверное плохо объяснил, нужно не перебором, нужно всю таблицу разом, предположим это справочник
как запрос написать что бы условие в вирт таблице было либо только по ДТ либо только по Кт либо и так и так
5 Maxus43
 
28.11.13
16:47
(4) ты описал операцию "ГДЕ ДТ ИЛИ КТ".... пример приведи, не совсем понятно
6 olo_lo1
 
28.11.13
16:48
РегистрБухгалтерии.МойРегистр.Обороты(&ДатаН, &ДатаК, Период, Счет В ИЕРАРХИИ (&СписокСчетов), корсчет в ?? , Организация В (&СписокОрганизаций), , ) КАК МСФООбороты
7 olo_lo1
 
28.11.13
16:49
(5) тут видимо нужно сам запрос строить динамически перебирая каждую строку и делать Объединение
8 Maxus43
 
28.11.13
16:53
Счет В ИЕРАРХИИ (&СписокСчетов) ИЛИ Счет = &Пустой
Корсчет В ИЕРАРХИИ (&СписокСчетов) ИЛИ Корсчет = &Пустой

Либо используй таблицу ОборотыДтКт - там четко определишь, где Дт где Кт
9 Maxus43
 
28.11.13
16:57
счет может быть пустым то? или Оборот?
10 olo_lo1
 
28.11.13
17:06
(8)
смотри
ДТ   КТ
20   10
12
30
     55
И теперь нужно сделать запрос по счетам этим, сложность у меня возникает как в вирт таблице указать чтобы например по 12 он взял только Дт оборот, а вот по 20 в корреспонденции с 10, так как и у 12 может быть корреспонденция с 10
11 olo_lo1
 
28.11.13
17:07
причем заранее эти счета неизвестны, их пользователь сам укажет