Номенклатура без движения и дата ее прихода на склад

1. XelOla 17 14.10.20 16:36 Сейчас в теме
ВЫБРАТЬ
	ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Номенклатура,
	ХозрасчетныйОстаткиИОбороты.Субконто2 КАК Склад,
	ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт КАК КоличествоКонечныйОстатокДт
ПОМЕСТИТЬ НоменклатураБезДвижения
ИЗ
	РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(, , , , , , ) КАК ХозрасчетныйОстаткиИОбороты
ГДЕ
	ХозрасчетныйОстаткиИОбороты.Счет В ИЕРАРХИИ(&Счет)
	И ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт = 0
	И ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт = 0
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ ПЕРВЫЕ 1
	ХозрасчетныйОбороты.Регистратор.Дата КАК РегистраторДата,
	ХозрасчетныйОбороты.Субконто1 КАК Субконто1
ПОМЕСТИТЬ ЭтоНомСДатами
ИЗ
	НоменклатураБезДвижения КАК НоменклатураБезДвижения,
	РегистрБухгалтерии.Хозрасчетный.Обороты(, , Регистратор, , , , , ) КАК ХозрасчетныйОбороты
ГДЕ
	ХозрасчетныйОбороты.Субконто1 В
			(ВЫБРАТЬ
				НоменклатураБезДвижения.Номенклатура
			ИЗ
				НоменклатураБезДвижения КАК НоменклатураБезДвижения)

УПОРЯДОЧИТЬ ПО
	РегистраторДата УБЫВ
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	НоменклатураБезДвижения.Номенклатура КАК Номенклатура,
	НоменклатураБезДвижения.Склад КАК Склад,
	НоменклатураБезДвижения.КоличествоКонечныйОстатокДт КАК КоличествоКонечныйОстатокДт,
	ЭтоНомСДатами.РегистраторДата КАК РегистраторДата
ИЗ
	ЭтоНомСДатами КАК ЭтоНомСДатами
		ЛЕВОЕ СОЕДИНЕНИЕ НоменклатураБезДвижения КАК НоменклатураБезДвижения
		ПО ЭтоНомСДатами.Субконто1 = НоменклатураБезДвижения.Номенклатура
Показать


Здравствуйте! Вот такой скд запрос и вообще не работает)
Как получить номенклатуру, что застряла на складе без движений.
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
4. user705522_constantin_h 35 14.10.20 16:54 Сейчас в теме
(1)Вы же делаете запрос к РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты. Значит, движения были и условие
И ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт = 0

  И ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт = 0
всегда будет ложным. Если есть записи в РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты, значит либо ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт <> 0, либо ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт <> 0.
2. user633533_encantado 11 14.10.20 16:44 Сейчас в теме
Отбор по счету помести в параметры виртуальной таблицы.

И для того чтобы показать номенклатуру без движения нужно выставить период. Без движения может быть товар, которого никогда не было в учете. А у тебя его как минимум покупали, т.е. Дт когда-то был.

Если тебе надо отобрать номенклатуру из справочника без движений, так справочнику и обращайся с условием, отобрать только ту номенклатуру, которой нет в оборотах счетов.
alex-l19041; +1 Ответить
5. XelOla 17 15.10.20 16:59 Сейчас в теме
(2)
сделала так - но очень долго

ВЫБРАТЬ
	ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Номенклатура,
	ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт КАК КоличествоКонечныйОстатокДт
ПОМЕСТИТЬ Данные
ИЗ
	РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, , , Счет В ИЕРАРХИИ (&Счет), , ) КАК ХозрасчетныйОстаткиИОбороты
ГДЕ
	ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт = ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстатокДт
	И ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт = 0
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ХозрасчетныйОбороты.Субконто1 КАК Субконто1,
	МАКСИМУМ(ХозрасчетныйОбороты.Регистратор.Дата) КАК ДатаПрихода
ПОМЕСТИТЬ Изм
ИЗ
	РегистрБухгалтерии.Хозрасчетный.Обороты({(&НулеваяДата)}, {(&НачалоПериода)}, Запись, {(Счет В ИЕРАРХИИ (&Счет))}, , , , ) КАК ХозрасчетныйОбороты

СГРУППИРОВАТЬ ПО
	ХозрасчетныйОбороты.Субконто1
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Данные.Номенклатура КАК Номенклатура,
	Данные.КоличествоКонечныйОстатокДт КАК КоличествоКонечныйОстатокДт,
	Изм.ДатаПрихода КАК ДатаПоступления
ИЗ
	Данные КАК Данные
		ЛЕВОЕ СОЕДИНЕНИЕ Изм КАК Изм
		ПО Данные.Номенклатура = Изм.Субконто1
Показать
6. FatPanzer 15.10.20 17:09 Сейчас в теме
(5) 1. В первом запросе берите таблицу Остатки, а не ОстаткиИОбороты.
2. Во втором запросе необходимо использовать условие по номенклатуре, полученной в первом запросе.
3. Временные таблицы первого и второго запросов необходимо индексировать по полям Номенклатура.
7. XelOla 17 16.10.20 09:18 Сейчас в теме
(6)
В первом запросе берите таблицу Остатки, а не ОстаткиИОбороты.

что за глупости?
мне надо отобрать номенклатуру без движения! если я получу остатки -- а были движ?
(6)
Временные таблицы первого и второго запросов необходимо индексировать по полям Номенклатура.

что имеется ввиду?
8. FatPanzer 16.10.20 09:25 Сейчас в теме
(7)
мне надо отобрать номенклатуру без движения!
В вашем запросе условия, где Обороты = 0. То есть вы даже приходные движения не учитываете, а пытаетесь получить только остаток.
что имеется ввиду?
Имеется ввиду "ИНДЕКСИРОВАТЬ ПО"

И самое главное - бухсчета укажите в параметрах таблиц. А то он у вас по всем счетам собирает Субконто1 и Субконто2, даже если там вообще не Номенклатура или Склады...
9. XelOla 17 16.10.20 09:26 Сейчас в теме
(8)
И самое главное - бухсчета укажите в параметрах таблиц. А то он у вас по всем счетам собирает Субконто1 и Субконто2, даже если там вообще не Номенклатура или Склады

чой та...
(Счет В ИЕРАРХИИ (&Счет))
Счет - Материалы,ГотоваяПродукция и Товары
11. FatPanzer 16.10.20 09:29 Сейчас в теме
(9) Я про параметры виртуальной таблицы. Туда надо эти условия.
10. XelOla 17 16.10.20 09:27 Сейчас в теме
(8) В вашем запросе условия, где Обороты = 0. То есть вы даже приходные движения не учитываете, а пытаетесь получить только остаток.


Не понимаю.
Я отбираю где НачОст=КонОст и ОборотыКт =0
Потому что нашла позиции, где количество на начало года = количеству на сегодня, а обороты были!
12. FatPanzer 16.10.20 09:31 Сейчас в теме
(10)
Я отбираю где НачОст=КонОст и ОборотыКт =0
Серьёзно?
Прикрепленные файлы:
13. XelOla 17 16.10.20 10:19 Сейчас в теме
(12)
СЕРЬЕЗНО!
Вы ж не туда смотрите? я что, должна жить с первым постом вечно?


ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт = ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстатокДт
И ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт = 0
16. FatPanzer 16.10.20 10:31 Сейчас в теме
(13)
СЕРЬЕЗНО!
Вы ж не туда смотрите? я что, должна жить с первым постом вечно?
Сорян, виноват. Каюсь, возвел необоснованный поклёп ;-)
"Оправдаю. Отслужу.
Отстрадаю. Отсижу."
19. XelOla 17 16.10.20 10:40 Сейчас в теме
(16) и еще,
у меня СКД,
на каждую таблицу наложить необязательное условие для номенклатуры?
т.е. на закладке КомпоновкаДанных? - Параметры виртуальной таблицы? будет быстрее, если с отбором потом по номенклатуре?
20. FatPanzer 16.10.20 10:43 Сейчас в теме
(19) Только на второй запрос. И по складу тоже уже. Что-то типа "Субконто1 В (ВЫБРАТЬ Данные.Номенклатура ИЗ Данные КАК Данные) И Субконто2 В (ВЫБРАТЬ Данные.Склад ИЗ Данные КАК Данные)"...
21. XelOla 17 16.10.20 10:52 Сейчас в теме
(20) посчитаете среднее по группе отдельно, среднее по складу отдельно?
22. FatPanzer 16.10.20 10:56 Сейчас в теме
(21) Если в в ИТОГИ выведете группировку по Складу и по Группе - то конечно запрос сам посчитает.
23. XelOla 17 16.10.20 11:04 Сейчас в теме
(22) что за ИТОГИ.... Ресурсы знаю.
24. FatPanzer 16.10.20 11:06 Сейчас в теме
(23) В СКД это группировка.
14. XelOla 17 16.10.20 10:20 Сейчас в теме
(12) подскажите лучше другое....
вот
Вычисляю срок от даты постулпниея
РазностьДат(ДатаПоступления, &КонецПериода,"День") в вычисляемых полях.
Да, и в запросе теперь есть Склад Который Субконто2!!!
Надо вычислить СРЕДНИЙ СрокОтДатыПоступления для СКЛАД, для Группы номенклатуры!



ВЫБРАТЬ
	ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Номенклатура,
	ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт КАК КоличествоКонечныйОстатокДт,
	ХозрасчетныйОстаткиИОбороты.Субконто2 КАК Склад
ПОМЕСТИТЬ Данные
ИЗ
	РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, , , Счет В ИЕРАРХИИ (&Счет), , ) КАК ХозрасчетныйОстаткиИОбороты
ГДЕ
	ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт = ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстатокДт
	И ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт = 0

ИНДЕКСИРОВАТЬ ПО
	Номенклатура
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ХозрасчетныйОбороты.Субконто1 КАК Субконто1,
	МАКСИМУМ(ХозрасчетныйОбороты.Регистратор.Дата) КАК ДатаПрихода
ПОМЕСТИТЬ Изм
ИЗ
	РегистрБухгалтерии.Хозрасчетный.Обороты({(&НулеваяДата)}, {(&НачалоПериода)}, Запись, {(Счет В ИЕРАРХИИ (&Счет))}, , , , ) КАК ХозрасчетныйОбороты

СГРУППИРОВАТЬ ПО
	ХозрасчетныйОбороты.Субконто1

ИНДЕКСИРОВАТЬ ПО
	Субконто1
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Данные.Номенклатура КАК Номенклатура,
	Данные.КоличествоКонечныйОстатокДт КАК Остаток,
	Изм.ДатаПрихода КАК ДатаПоступления,
	Данные.Номенклатура.Родитель КАК ГруппаНоменклатуры,
	Данные.Склад КАК Склад
ИЗ
	Данные КАК Данные
		ЛЕВОЕ СОЕДИНЕНИЕ Изм КАК Изм
		ПО Данные.Номенклатура = Изм.Субконто1
Показать
15. FatPanzer 16.10.20 10:29 Сейчас в теме
(14)
Да, и в запросе теперь есть Склад Который Субконто2!!!
1. Значит вам надо и во второй запрос вытаскивать склад, чтобы по нему были свои даты последнего поступления.
2. В третьем запросе соединение делать по двум полям - Номенклатура и Склад.
3. Во первом и втором запросах необходимо индексировать временные таблицы по тем полям, по которым в дальнейшем осуществляете соединение - Номенклатура и Склад.

Надо вычислить СРЕДНИЙ СрокОтДатыПоступления для СКЛАД, для Группы номенклатуры!
1. Передаете в параметр запроса текущую дату.
2. В третьем запросе добавляете поле, вычисляемое как разность дат между текущей датой и последней датой поступления
3. В третьем же запросе группируете это поле по агрегату СРЕДНЕЕ и добавляете ИТОГИ по складу...
17. XelOla 17 16.10.20 10:37 Сейчас в теме
(15)
добавляете ИТОГИ по складу...

((( где?
18. FatPanzer 16.10.20 10:39 Сейчас в теме
(17) Если у вас СКД - то в настройках СКД. Если у вас простой запрос - то в самом запросе...

Хотя я не уверен, что правильно понял про "средний срок от даты поступления".
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)