|
выбрать всю номенклатуру по складу у которой не остатков | ☑ | ||
---|---|---|---|---|
0
AlexToo
19.01.15
✎
09:20
|
И так спасибо если заглянули в эту тему, вопрос такой, необходимо выбрать всю номенклатуру по складу у которой не остатков, пишу запрос:
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | РегПартии.Склад, | РегПартии.Номенклатура, | РегПартии.СерияНоменклатуры, | РегПартии.КоличествоКонечныйОстаток |ИЗ | РегистрНакопления.ПартииТоваровНаСкладах.ОстаткиИОбороты(, &КонПер, Авто, , Склад = &склад) КАК РегПартии |ГДЕ | РегПартии.КоличествоКонечныйОстаток <= 0"; Запрос.УстановитьПараметр("Склад", Склад); Запрос.УстановитьПараметр("конпер", КонецДня(ТекущаяДата())); Результат = Запрос.Выполнить(); И такой запрос возвращает мне 0 записей, хотя они должны быть, что делаю не так? |
|||
1
Масянька
19.01.15
✎
09:22
|
(0) Встречный тупой вопрос: что хранится в регистре?
|
|||
2
Сергиус
19.01.15
✎
09:22
|
(0)Делай соединение Справочник.Номенклатура с Остатками, где КоличествоОстаток ЕСТЬ NULL
|
|||
3
AlexToo
19.01.15
✎
09:23
|
(1) Регистр ПартииТоваровНаСкладах в регистре движения товаров
|
|||
4
AlexToo
19.01.15
✎
09:24
|
(2) хм, идея ясна, попробую
|
|||
5
Масянька
19.01.15
✎
09:26
|
(4) Попробуй, попробуй...
|
|||
6
Сергиус
19.01.15
✎
09:26
|
(0) и да..зря так тему назвал)
|
|||
7
AlexToo
19.01.15
✎
09:27
|
(5) (2) не-а тож не работает:
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | СерииНоменклатуры.Ссылка, | РегПартии.Склад, | РегПартии.КоличествоКонечныйОстаток, | РегПартии.КоличествоШтКонечныйОстаток |ИЗ | РегистрНакопления.ПартииТоваровНаСкладах.ОстаткиИОбороты(, &КонПер, , , Склад = &склад) КАК РегПартии | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СерииНоменклатуры КАК СерииНоменклатуры | ПО РегПартии.СерияНоменклатуры = СерииНоменклатуры.Ссылка |ГДЕ | РегПартии.КоличествоКонечныйОстаток ЕСТЬ NULL "; Запрос.УстановитьПараметр("Склад", Склад); Запрос.УстановитьПараметр("конпер", КонецДня(ТекущаяДата())); Результат = Запрос.Выполнить(); |
|||
8
AlexToo
19.01.15
✎
09:27
|
(6) зря говоришь? зато сколько народу сразу посмотрело))))
|
|||
9
Масянька
19.01.15
✎
09:28
|
(7) Внимательно читай (1)... Думай... Долго думай...
|
|||
10
igork1966
19.01.15
✎
09:28
|
(7) Ты показывешь принципиальное непонимание SQL и принципов работы регистров 1С
|
|||
11
Сергиус
19.01.15
✎
09:28
|
(7)Остатки по складу лучше вообще из другого регистра дергать. Чего именно ты хочешь получить и для чего?
|
|||
12
Peltzer
19.01.15
✎
09:28
|
Наоборот соединение делай Справочник, к нему левым соединением регистр
|
|||
13
igork1966
19.01.15
✎
09:29
|
(10) + начать с изучения SQL и толстой книги.
Тогда не будешь задавать глупые вопросы. |
|||
14
palladyi
19.01.15
✎
09:32
|
(12) Или в (7) поменять Левое на Правое
|
|||
15
vicof
19.01.15
✎
09:35
|
(10) +1
И таблица "остатки и обороты" тут явно лишняя |
|||
16
AlexToo
19.01.15
✎
09:50
|
(11) мне нужно получить номенклатуру у которой по определенному складу нет остатков, что б потом штрихкода очистить по ней.
|
|||
17
AlexToo
19.01.15
✎
09:51
|
(15) просто остатки лучше?
|
|||
18
igork1966
19.01.15
✎
09:52
|
(16) что означает "номенклатуру у которой по определенному складу нет остатков"?
Вся номенклатура или по которой есть обороты и нет остатков? |
|||
19
Масянька
19.01.15
✎
09:53
|
(17) Когда ты сможешь ответить на вопрос: что хранится в регистре - тогда и поймешь.
|
|||
20
AlexToo
19.01.15
✎
10:05
|
(18) вся номенклатура
|
|||
21
igork1966
19.01.15
✎
10:11
|
(20) тогда тебе нужна виртуальная таблица остатков соединенная с номенклатурой. Только в запросе сделай правое соединение или поменяй таблицы местами в соединении, как тебе и сказали.
Но это (13) не отменяет |
|||
22
Krabobor
19.01.15
✎
10:28
|
(2) поддерживаю.
ВЫБРАТЬ спрНоменклатура.Ссылка, ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) КАК Остаток ИЗ Справочник.Номенклатура КАК спрНоменклатура ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстатки ПО (ТоварыНаСкладахОстатки.Номенклатура = спрНоменклатура.Ссылка) ГДЕ НЕ спрНоменклатура.ЭтоГруппа И НЕ спрНоменклатура.ПометкаУдаления И ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) <= 0 |
|||
23
an-korot
19.01.15
✎
10:33
|
какой нул если по номенклатуре движений не было, то в регистрее записи не хранятся, просто выбрать список номеклатуры удалить оттуда все по которым есть движения.
тема для начальных курсов программирования исключить из 1 множества другое множество... ВЫБРАТЬ ТаблицаА.ИзмерениеА ИЗ РегистрСведений.ТаблицаА КАК ТаблицаА ГДЕ (НЕ ТаблицаА.ИзмерениеА В (ВЫБРАТЬ ТаблицаА.ИзмерениеА ИЗ РегистрСведений.ТаблицаА КАК ТаблицаА ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ТаблицаВ КАК ТаблицаВ ПО ТаблицаА.ИзмерениеА = ТаблицаВ.ИзмерениеВ)) ссылка на полный текст http://www.1c-h.ru/?p=917 хватит заголятся. |
|||
24
an-korot
19.01.15
✎
10:34
|
* изгалятся
|
|||
25
Krabobor
19.01.15
✎
10:40
|
(23) упоролся штоле с самого утра?
|
|||
26
an-korot
19.01.15
✎
10:56
|
(25) ты название темы читал, диагностик ссаный?
|
|||
27
igork1966
19.01.15
✎
10:59
|
(26) смотри (18),(20)
|
|||
28
ssh2QQ6
19.01.15
✎
11:00
|
(23) воу-воу
|
|||
29
busy1
19.01.15
✎
11:07
|
Считаю, что с регистра Партии, выбирать нулевые остатки не корректно.
|
|||
30
Бледно Золотистый
19.01.15
✎
11:08
|
(26) Кто ссаный это вопрос конечно, разницу между нет остатков и нет движений вообще чуешь?
|
|||
31
DrZombi
гуру
19.01.15
✎
11:13
|
(29) Скорей всего Пользователю нужно видеть товар, который Участвовал по партиям, но у которых нулевой остаток.
А у ТС, какой-то свой подход :) |
|||
32
DrZombi
гуру
19.01.15
✎
11:15
|
(7) Запросом не получить Нулевые остатки "РегистрНакопления", их попросту нет. Да и при формировании Запроса 1С скорей всего отрезает такие данные на уровне запроса, типо "Остаток <> 0" :)
|
|||
33
an-korot
19.01.15
✎
11:26
|
(30) я больше не буду спорить решайте сами, оставлю пример почему вы думаете неправильно и комерсы вам за такой подход руки оторвут, если делать только по товару с 0 остатками то вы не зацепите новый товар который завели в базу но по которому небыло еще движений и сам товар поступит на склад только через неделю, а продавать его уже нужно, а с вашим запросом такой товар не попадет в запрос. и после этого на вас будут смотреть очень странными мордами... но так тренируйтесь, мне не жалко.
|
|||
34
Zombi
19.01.15
✎
11:30
|
(33) Ты точно упоролся. Запрос в 22 нормально все выберет. Там условие на NULL. Если движений не было, будет NULL, который преобразуется в 0.
|
|||
35
an-korot
19.01.15
✎
11:39
|
(34) я не читал запросы, челвек спросил я дал шаблон по которому можно хоть черта лысого слепить, у меня нет желания выдумывать какие то новые опусы, и тем более их обсуждать. челуу нужен был работающий вариант я дал, если ему он не нравится и бог бы с ним. че вы срач тут устраиваете чей вариант лучше я не понимаю.
|
|||
36
an-korot
19.01.15
✎
11:42
|
(34) мой вариант универсальный его легко можно в любой язык конвертнуть, ваши "естьнул" не везде найдешь, читается сложнее, работает ? ну и хорошо, теперь автор сможет выбрать что больше нравится... что вы накинулись как бабуины, вот этого не понимаю.
|
|||
37
Любопытная
19.01.15
✎
11:44
|
(36) Ну и вы в той же стае, ибо ведете себя точно так же - обзываетесь и кичитесь верностью предложенного решения))
|
|||
38
evorle145
19.01.15
✎
11:45
|
(35) , в (22) как раз и есть самый работающий вариант)
|
|||
39
Zombi
19.01.15
✎
11:50
|
(35) (36) Сам же на грубость перешел, да еще начал доказывать что твой вариант единственно верный, а на нас будут смотреть со странными мордами.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |