|
Можно ли запросом получить нулевой остаток по регистру накопления? | ☑ | ||
---|---|---|---|---|
0
snegovik
09.10.15
✎
12:57
|
Делаю запрос по остаткам:
ВЫБРАТЬ КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.ЛицевойСчет КАК ЛицевойСчет, ISNULL(КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.СуммаНачисленияОстаток, 0) КАК СуммаНачисленияОстаток ИЗ РегистрНакопления.КВП_ВзаиморасчетыПоЛицевымСчетам.Остатки(&ТекДата, ) КАК КВП_ВзаиморасчетыПоЛицевымСчетамОстатки ГДЕ КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.Услуга = &Услуга И КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.ЛицевойСчет = &ЛицевойСчет Если остаток по лицевому счету нулевой - то в выборку он не попадает. Как сделать, чтобы лицевой счет с нулевым остатком тоже попадал в выборку? |
|||
1
Гёдза
09.10.15
✎
12:57
|
левое соединение
|
|||
2
vicof
09.10.15
✎
12:59
|
...со справочником
|
|||
3
бомболюк
09.10.15
✎
12:59
|
...тогда правое
|
|||
4
aleks_default
09.10.15
✎
13:00
|
Детализировать. Т. е. добавить измерение, по которому точно есть остаток и потом группировать.
|
|||
5
vicof
09.10.15
✎
13:00
|
...один куй
|
|||
6
vicof
09.10.15
✎
13:00
|
(4) Извращенец?
|
|||
7
Гёдза
09.10.15
✎
13:00
|
Не люблю правое соединение, хотя наверно арабы всякие любят
|
|||
8
бомболюк
09.10.15
✎
13:01
|
я его тоже никогда в жизни не пользовал ;-)
|
|||
9
aleks_default
09.10.15
✎
13:02
|
(6)В смысле? Я не в смысле добавить в регистр новое измерение, а в смысле добавить в запрос еще поле
|
|||
10
Матиус
09.10.15
✎
13:02
|
ВЫБРАТЬ
ISNULL(КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.СуммаНачисленияОстаток, 0) КАК СуммаНачисленияОстаток ИЗ РегистрНакопления.КВП_ВзаиморасчетыПоЛицевымСчетам.Остатки(&ТекДата, Услуга = &Услуга и ЛицевойСчет = &ЛицевойСчет) КАК КВП_ВзаиморасчетыПоЛицевымСчетамОстатки |
|||
11
1Сергей
09.10.15
✎
13:03
|
новая профессиональная болезнь одинесника - райтджойнфобия
|
|||
12
бомболюк
09.10.15
✎
13:03
|
(10) мощно
|
|||
13
vicof
09.10.15
✎
13:03
|
(9) А если таких нет?
|
|||
14
Матиус
09.10.15
✎
13:04
|
(12) глазам больно
|
|||
15
НЕА123
09.10.15
✎
13:05
|
(13)
их, похоже нет. 0 показался бы. |
|||
16
Timon1405
09.10.15
✎
13:06
|
(14) только зачем там изнулл?
|
|||
17
Матиус
09.10.15
✎
13:07
|
(16) чтобы не вылезло с ошибкой при сложении
|
|||
18
Михаил Козлов
09.10.15
✎
13:07
|
Можно по остаткам и оборотам: если были обороты, то покажет. Только дольше.
|
|||
19
Buster007
09.10.15
✎
13:11
|
вместо КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.ЛицевойСчет КАК ЛицевойСчет напиши &ЛицевойСчет ну и условия напиши нормально
|
|||
20
Матиус
09.10.15
✎
13:16
|
>> Как сделать, чтобы лицевой счет с нулевым остатком тоже попадал в выборку?
|
|||
21
Buster007
09.10.15
✎
13:18
|
(20) что не так?
|
|||
22
Матиус
09.10.15
✎
13:24
|
(21) все не так
|
|||
23
Матиус
09.10.15
✎
13:24
|
но это к теме уже не имеет отношения
|
|||
24
snegovik
09.10.15
✎
13:25
|
(15) А разе отсутствие остатка и нулевой остаток - не одно и то же?
|
|||
25
snegovik
09.10.15
✎
13:26
|
(14) У каждого глаза разные... Мне так удобнее и привычнее.
|
|||
26
Михаил Козлов
09.10.15
✎
13:26
|
(24) Если остатка нет (=0), то в виртуальной таблице нет данных.
|
|||
27
snegovik
09.10.15
✎
14:01
|
Сделал с соединением, но почему-то в выборку всё равно не выходит:
ВЫБРАТЬ КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.ЛицевойСчет КАК ЛицевойСчет, ЕСТЬNULL(КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.СуммаНачисленияОстаток, 0) КАК СуммаНачисленияОстаток, КВП_ЛицевыеСчета.Ссылка ИЗ РегистрНакопления.КВП_ВзаиморасчетыПоЛицевымСчетам.Остатки(&ТекДата, ) КАК КВП_ВзаиморасчетыПоЛицевымСчетамОстатки ПРАВОЕ СОЕДИНЕНИЕ Справочник.КВП_ЛицевыеСчета КАК КВП_ЛицевыеСчета ПО (КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.ЛицевойСчет = КВП_ЛицевыеСчета.Ссылка) ГДЕ КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.Услуга = &Услуга |
|||
28
Buster007
09.10.15
✎
14:13
|
(27) ГДЕ
КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.Услуга = &Услуга |
|||
29
snegovik
09.10.15
✎
14:17
|
(28) Сюда поместить? :
РегистрНакопления.КВП_ВзаиморасчетыПоЛицевымСчетам.Остатки(&ТекДата, Услуга = &Услуга) |
|||
30
snegovik
09.10.15
✎
14:32
|
Подскажите ещё такой момент:
Если добавляю в условие запроса следующую строку: Организация = &Организация то конструктор запроса ругается, хотя это измерение в регистре есть: ВЫБРАТЬ КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.ЛицевойСчет КАК ЛицевойСчет, ЕСТЬNULL(КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.СуммаНачисленияОстаток, 0) КАК СуммаНачисленияОстаток, КВП_ЛицевыеСчета.Ссылка КАК Ссылка ИЗ Справочник.КВП_ЛицевыеСчета КАК КВП_ЛицевыеСчета ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.КВП_ВзаиморасчетыПоЛицевымСчетам.Остатки(&ТекДата, Организация = &Организация, Услуга = &Услуга) КАК КВП_ВзаиморасчетыПоЛицевымСчетамОстатки ПО (КВП_ВзаиморасчетыПоЛицевымСчетамОстатки.ЛицевойСчет = КВП_ЛицевыеСчета.Ссылка) |
|||
31
itlikbez
09.10.15
✎
14:43
|
(30)
Организация = &Организация И Услуга = &Услуга |
|||
32
Serg_1960
09.10.15
✎
14:58
|
(имхо) Предпочитаю не соединение справочников с остатками регистра, а "различные" измерение регистра с остатками - так мусор лишний из справочников не захватывается (записи справочников, которые никогда не были упомянуты в регистре). Имхо, однако.
|
|||
33
АдинС
09.10.15
✎
15:08
|
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.КВП_ВзаиморасчетыПоЛицевымСчетам.Остатки(&ТекДата, Организация = &Организация И Услуга = &Услуга) - может так?
|
|||
34
bolobol
09.10.15
✎
15:36
|
(32) +100. Что бывало в регистре с тем что есть = всё и с нулевыми остатками.
|
|||
35
Матиус
10.10.15
✎
23:51
|
(28) Ему так удобнее и привычнее.
|
|||
36
EvgeniuXP
11.10.15
✎
00:31
|
(29) вот сразу видно, человек на курсы не ходил - щас тебя тут аналогичные научат и клеймо на всю жизнь :)))
|
|||
37
EvgeniuXP
11.10.15
✎
00:32
|
(32) слышал звон, да не знаю где он :)
|
|||
38
EvgeniuXP
11.10.15
✎
00:34
|
(37) к (31)
(0) беги отсюда |
|||
39
aka AMIGO
11.10.15
✎
09:28
|
т.е. волшебным запросом хочется получить то, чего нет?
Вот, к примеру, ввели вы товар в справочник, и сразу остатки =0.. интересно.. И запрос это показал. Извините, но какая-то ерунда.. Просто перебрать все элементы, попутно определив остаток в регистре, если нуль - сообщить.. Всего 7-10 строк кода.. Хотя.. Может быть, немного дополнить условие: если были у номенклатуры движения по регистрам, и в результате движений остаток стал нулевым - это еще можно понять. Либо, если есть документ типа счета/заявки, опять-таки список ограничен, можно посчитать остатки, сообщить, что надо дозаказать А выводить полный список справочника с нулём в остатках?!.. кому он нужен? |
|||
40
Web00001
11.10.15
✎
09:47
|
(39)Ну бывает вопрос, типа нам надо посмотреть, чего нет на остатках, что бы заказать.
|
|||
41
aka AMIGO
11.10.15
✎
13:01
|
(40) Понятно..
Вполне адекватное желание. У нескольких знакомых, работающих в одиночку не в коллективе\сети, а потому у них время открытия справочников не особенно критично, я сделал вывод остатков/резервов/свободных - прямо в форме списка справочника. Довольны. |
|||
42
aka AMIGO
11.10.15
✎
13:02
|
+ конечно, открываются подольше и тормозят слегка при движении, но это с лихвой перекрывается открытой информацией
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |