Из среза последних регистра вытаскиваются все записи по объекту а не только последние

1. user876792 07.09.18 16:37 Сейчас в теме
ВЫБРАТЬ РАЗЛИЧНЫЕ
	БС_ПриходТоваровТаблицаТоваров.Товар,
	БС_ПриходТоваровТаблицаТоваров.Товар.Наименование,
	БС_ПриходТоваровТаблицаТоваров.Товар.ДатаПринятияКУчету,
	БС_ПриходТоваровТаблицаТоваров.Товар.Местонахождение КАК Местонахождение,
	БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеБУ КАК НаименованиеПозицииПоБазеУчета1С,
	БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта,
	БС_ПриходТоваровТаблицаТоваров.Товар.ОбъектыУчетаСпр КАК ТипПозиции,
	БС_ПриходТоваровТаблицаТоваров.Товар.СерийныйНомер КАК СерийныйНомер,
	БС_ПриходТоваровТаблицаТоваров.Товар.ТипУстройстваПолеВвода КАК НаименованиеТипа,
	БС_ПриходТоваровТаблицаТоваров.Количество,
	БС_ПриходТоваровТаблицаТоваров.Сумма,
	БС_ПриходТоваровТаблицаТоваров.ИнвНомер КАК ИнвентарныйНоменклатурныйНомер,
	СобытияОС.ДатаСобытия КАК ДатаПостановкиНаУчет,
	МестонахождениеОССрезПоследних.Состояние
ИЗ
	Документ.БС_ПриходТоваров.ТаблицаТоваров КАК БС_ПриходТоваровТаблицаТоваров
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СобытияОС КАК СобытияОС
		ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = СобытияОС.ОС
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
		ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
ГДЕ
	СобытияОС.Событие = ЗНАЧЕНИЕ(Перечисление.ВидыСобытийОС.ПринятиеКУчету)
Показать


МестонахождениеОССрезПоследних.Состояние - в результате запроса все состояния, вместо последнего
+
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
18. soft_wind 07.09.18 18:17 Сейчас в теме +0.26 $m
ну вот с картиной уже лучше

так как у вас 3 измерения, то по ним всем и надо делать соединение/отбор !
доработайте ваш самый первый запрос, добавьте еще два условия связи ! только так!

ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
и МестонахождениеОССрезПоследних.Учреждение = ...
и МестонахождениеОССрезПоследних.ИнвНомер = ...
+
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. valerasv 135 07.09.18 16:59 Сейчас в теме
Во временную таблицу выбери срез последних, а потом соединяй ее с документом.
+
3. user876792 07.09.18 17:15 Сейчас в теме
(2) Тоже самое получается
ВЫБРАТЬ РАЗЛИЧНЫЕ
	БС_ПриходТоваровТаблицаТоваров.Товар,
	БС_ПриходТоваровТаблицаТоваров.Товар.Наименование,
	БС_ПриходТоваровТаблицаТоваров.Товар.ДатаПринятияКУчету,
	БС_ПриходТоваровТаблицаТоваров.Товар.Местонахождение КАК Местонахождение,
	БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеБУ КАК НаименованиеПозицииПоБазеУчета1С,
	БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта,
	БС_ПриходТоваровТаблицаТоваров.Товар.ОбъектыУчетаСпр КАК ТипПозиции,
	БС_ПриходТоваровТаблицаТоваров.Товар.СерийныйНомер КАК СерийныйНомер,
	БС_ПриходТоваровТаблицаТоваров.Товар.ТипУстройстваПолеВвода КАК НаименованиеТипа,
	БС_ПриходТоваровТаблицаТоваров.Количество,
	БС_ПриходТоваровТаблицаТоваров.Сумма,
	БС_ПриходТоваровТаблицаТоваров.ИнвНомер КАК ИнвентарныйНоменклатурныйНомер,
	СобытияОС.ДатаСобытия КАК ДатаПостановкиНаУчет
ПОМЕСТИТЬ ВТ_ДатаСобытия
ИЗ
	Документ.БС_ПриходТоваров.ТаблицаТоваров КАК БС_ПриходТоваровТаблицаТоваров
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СобытияОС КАК СобытияОС
		ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = СобытияОС.ОС
ГДЕ
	СобытияОС.Событие = ЗНАЧЕНИЕ(Перечисление.ВидыСобытийОС.ПринятиеКУчету)
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	МестонахождениеОССрезПоследних.ОС,
	МестонахождениеОССрезПоследних.Состояние,
	МАКСИМУМ(МестонахождениеОССрезПоследних.Период) КАК Период
ПОМЕСТИТЬ ВТ_Состояние
ИЗ
	РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних

СГРУППИРОВАТЬ ПО
	МестонахождениеОССрезПоследних.ОС,
	МестонахождениеОССрезПоследних.Состояние
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_ДатаСобытия.Товар,
	ВТ_ДатаСобытия.ТоварНаименование,
	ВТ_ДатаСобытия.ТоварДатаПринятияКУчету,
	ВТ_ДатаСобытия.Местонахождение,
	ВТ_ДатаСобытия.НаименованиеПозицииПоБазеУчета1С,
	ВТ_ДатаСобытия.ТоварНаименованиеОбъекта,
	ВТ_ДатаСобытия.ТипПозиции,
	ВТ_ДатаСобытия.СерийныйНомер,
	ВТ_ДатаСобытия.НаименованиеТипа,
	ВТ_ДатаСобытия.Количество,
	ВТ_ДатаСобытия.Сумма,
	ВТ_ДатаСобытия.ИнвентарныйНоменклатурныйНомер,
	ВТ_ДатаСобытия.ДатаПостановкиНаУчет,
	ВТ_Состояние.Состояние
ИЗ
	ВТ_ДатаСобытия КАК ВТ_ДатаСобытия
		ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Состояние КАК ВТ_Состояние
		ПО ВТ_ДатаСобытия.Товар.НаименованиеОбъекта = ВТ_Состояние.ОС
Показать
+
4. harmer 1 07.09.18 17:17 Сейчас в теме
Какая конфигурация? "Состояние" - это измерение или ресурс?
+
6. user876792 07.09.18 17:22 Сейчас в теме
(4) БГУ 1.0, Состояние это реквизит
+
8. harmer 1 07.09.18 17:28 Сейчас в теме
(6)Что возвращает запрос, где ОС - это любое основное средство, состояние которого задваивается

ВЫБРАТЬ
*
ИЗ
РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних

ГДЕ МестонахождениеОССрезПоследних.ОС = &ОС
;
+
10. user876792 07.09.18 17:36 Сейчас в теме
(8) Возвращает все ОС которые есть в регистре. У этого товара (БС_ПриходТоваровТаблицаТоваров.Товар) групповой учет
+
12. harmer 1 07.09.18 17:41 Сейчас в теме
(10) Вы точно условие "ГДЕ МестонахождениеОССрезПоследних.ОС = &ОС " добавили? В результате запроса у Вас должна остаться одна строка с текущим местоположением выбранного ОС.

Срез последних возвращает последние значения по всем измерениям, поэтому кроме измерения "ОС" у Вас, наверняка, в регистре есть еще измерения, которые менялись, поэтому в срез последних попадает не одна строка, а несколько.
+
15. user876792 07.09.18 17:56 Сейчас в теме
(12)
Прикрепленные файлы:
+
16. harmer 1 07.09.18 17:58 Сейчас в теме
(12) У Вас в регистре есть еще измерения "Учреждение" и "ИнвНомер". Если у ОС менялось поле "Учреждение", то срез последних вернет две строки: последнее состояние по старому учреждению и последнее состояние по новому учреждению.

Таким образом, для получения текущего местоположения использовать "Срез последних" в явном виде нельзя, попробуйте запрос для "ВТ_Состояние" заменить на следующее

ВЫБРАТЬ
	МестонахождениеОССрезПоследних.ОС,
	МАКСИМУМ(МестонахождениеОССрезПоследних.Период) КАК Период,
	МестонахождениеОССрезПоследних.ИнвНомер
ПОМЕСТИТЬ втПоследниеДатыМестоположений
ИЗ
	РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних

СГРУППИРОВАТЬ ПО
	МестонахождениеОССрезПоследних.ОС,
	МестонахождениеОССрезПоследних.ИнвНомер
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	МестонахождениеОССрезПоследних.ОС,
	МестонахождениеОССрезПоследних.Состояние,
	МестонахождениеОССрезПоследних.Период,
	МестонахождениеОССрезПоследних.ИнвНомер 
ПОМЕСТИТЬ ВТ_Состояния
ИЗ
	РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ втПоследниеДатыМестоположений КАК втПоследниеДатыМестоположений
		ПО МестонахождениеОССрезПоследних.Период = втПоследниеДатыМестоположений.Период
			И МестонахождениеОССрезПоследних.ОС = втПоследниеДатыМестоположений.ОС
			И МестонахождениеОССрезПоследних.ИнвНомер = втПоследниеДатыМестоположений.ИнвНомер
Показать


Изменил текст запроса, добавил поле "ИнвНомер". Добавьте по нему соединение в последней таблице.

PS Если "Учреждение" у Вас одно, то в исходном запросе добавьте связь по инвентарному номеру и все получится.

ВЫБРАТЬ РАЗЛИЧНЫЕ
    БС_ПриходТоваровТаблицаТоваров.Товар,
    БС_ПриходТоваровТаблицаТоваров.Товар.Наименование,
    БС_ПриходТоваровТаблицаТоваров.Товар.ДатаПринятияКУчету,
    БС_ПриходТоваровТаблицаТоваров.Товар.Местонахождение КАК Местонахождение,
    БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеБУ КАК НаименованиеПозицииПоБазеУчета1С,
    БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта,
    БС_ПриходТоваровТаблицаТоваров.Товар.ОбъектыУчетаСпр КАК ТипПозиции,
    БС_ПриходТоваровТаблицаТоваров.Товар.СерийныйНомер КАК СерийныйНомер,
    БС_ПриходТоваровТаблицаТоваров.Товар.ТипУстройстваПолеВвода КАК НаименованиеТипа,
    БС_ПриходТоваровТаблицаТоваров.Количество,
    БС_ПриходТоваровТаблицаТоваров.Сумма,
    БС_ПриходТоваровТаблицаТоваров.ИнвНомер КАК ИнвентарныйНоменклатурныйНомер,
    СобытияОС.ДатаСобытия КАК ДатаПостановкиНаУчет,
    МестонахождениеОССрезПоследних.Состояние
ИЗ
    Документ.БС_ПриходТоваров.ТаблицаТоваров КАК БС_ПриходТоваровТаблицаТоваров
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СобытияОС КАК СобытияОС
        ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = СобытияОС.ОС
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
        ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
         И  БС_ПриходТоваровТаблицаТоваров.ИнвНомер = МестонахождениеОССрезПоследних.ИнвНомер
ГДЕ
    СобытияОС.Событие = ЗНАЧЕНИЕ(Перечисление.ВидыСобытийОС.ПринятиеКУчету)
Показать
+
20. user876792 07.09.18 18:23 Сейчас в теме
(16) Вообще ничего нет) пусто
ВЫБРАТЬ РАЗЛИЧНЫЕ
	БС_ПриходТоваровТаблицаТоваров.Товар,
	БС_ПриходТоваровТаблицаТоваров.Товар.Наименование,
	БС_ПриходТоваровТаблицаТоваров.Товар.ДатаПринятияКУчету,
	БС_ПриходТоваровТаблицаТоваров.Товар.Местонахождение КАК Местонахождение,
	БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеБУ КАК НаименованиеПозицииПоБазеУчета1С,
	БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта,
	БС_ПриходТоваровТаблицаТоваров.Товар.ОбъектыУчетаСпр КАК ТипПозиции,
	БС_ПриходТоваровТаблицаТоваров.Товар.СерийныйНомер КАК СерийныйНомер,
	БС_ПриходТоваровТаблицаТоваров.Товар.ТипУстройстваПолеВвода КАК НаименованиеТипа,
	БС_ПриходТоваровТаблицаТоваров.Количество,
	БС_ПриходТоваровТаблицаТоваров.Сумма,
	БС_ПриходТоваровТаблицаТоваров.ИнвНомер КАК ИнвентарныйНоменклатурныйНомер,
	СобытияОС.ДатаСобытия КАК ДатаПостановкиНаУчет,
	МестонахождениеОССрезПоследних.Состояние
ПОМЕСТИТЬ ВТ_ДатаСобытия
ИЗ
	Документ.БС_ПриходТоваров.ТаблицаТоваров КАК БС_ПриходТоваровТаблицаТоваров
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СобытияОС КАК СобытияОС
		ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = СобытияОС.ОС
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
		ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
			И БС_ПриходТоваровТаблицаТоваров.ИнвНомер = МестонахождениеОССрезПоследних.ИнвНомер
ГДЕ
	СобытияОС.Событие = ЗНАЧЕНИЕ(Перечисление.ВидыСобытийОС.ПринятиеКУчету)
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	МестонахождениеОССрезПоследних.ОС,
	МАКСИМУМ(МестонахождениеОССрезПоследних.Период) КАК Период,
	МестонахождениеОССрезПоследних.ИнвНомер
ПОМЕСТИТЬ втПоследниеДатыМестоположений
ИЗ
	РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних

СГРУППИРОВАТЬ ПО
	МестонахождениеОССрезПоследних.ОС,
	МестонахождениеОССрезПоследних.ИнвНомер
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	МестонахождениеОССрезПоследних.ОС,
	МестонахождениеОССрезПоследних.Состояние,
	МестонахождениеОССрезПоследних.Период,
	МестонахождениеОССрезПоследних.ИнвНомер
ПОМЕСТИТЬ ВТ_Состояние
ИЗ
	РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ втПоследниеДатыМестоположений КАК втПоследниеДатыМестоположений
		ПО МестонахождениеОССрезПоследних.Период = втПоследниеДатыМестоположений.Период
			И МестонахождениеОССрезПоследних.ОС = втПоследниеДатыМестоположений.ОС
			И МестонахождениеОССрезПоследних.ИнвНомер = втПоследниеДатыМестоположений.ИнвНомер
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_ДатаСобытия.Товар,
	ВТ_ДатаСобытия.ТоварНаименование,
	ВТ_ДатаСобытия.ТоварДатаПринятияКУчету,
	ВТ_ДатаСобытия.Местонахождение,
	ВТ_ДатаСобытия.НаименованиеПозицииПоБазеУчета1С,
	ВТ_ДатаСобытия.ТоварНаименованиеОбъекта,
	ВТ_ДатаСобытия.ТипПозиции,
	ВТ_ДатаСобытия.СерийныйНомер,
	ВТ_ДатаСобытия.НаименованиеТипа,
	ВТ_ДатаСобытия.Количество,
	ВТ_ДатаСобытия.Сумма,
	ВТ_ДатаСобытия.ИнвентарныйНоменклатурныйНомер,
	ВТ_ДатаСобытия.ДатаПостановкиНаУчет,
	ВТ_Состояние.Состояние
ИЗ
	ВТ_ДатаСобытия КАК ВТ_ДатаСобытия
		ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Состояние КАК ВТ_Состояние
		ПО ВТ_ДатаСобытия.Товар.НаименованиеОбъекта = ВТ_Состояние.ОС
Показать
+
29. harmer 1 10.09.18 08:53 Сейчас в теме
(20) оставьте только первый запрос.
ВЫБРАТЬ РАЗЛИЧНЫЕ
    БС_ПриходТоваровТаблицаТоваров.Товар,
    БС_ПриходТоваровТаблицаТоваров.Товар.Наименование,
    БС_ПриходТоваровТаблицаТоваров.Товар.ДатаПринятияКУчету,
    БС_ПриходТоваровТаблицаТоваров.Товар.Местонахождение КАК Местонахождение,
    БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеБУ КАК НаименованиеПозицииПоБазеУчета1С,
    БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта,
    БС_ПриходТоваровТаблицаТоваров.Товар.ОбъектыУчетаСпр КАК ТипПозиции,
    БС_ПриходТоваровТаблицаТоваров.Товар.СерийныйНомер КАК СерийныйНомер,
    БС_ПриходТоваровТаблицаТоваров.Товар.ТипУстройстваПолеВвода КАК НаименованиеТипа,
    БС_ПриходТоваровТаблицаТоваров.Количество,
    БС_ПриходТоваровТаблицаТоваров.Сумма,
    БС_ПриходТоваровТаблицаТоваров.ИнвНомер КАК ИнвентарныйНоменклатурныйНомер,
    СобытияОС.ДатаСобытия КАК ДатаПостановкиНаУчет,
    МестонахождениеОССрезПоследних.Состояние
ИЗ
    Документ.БС_ПриходТоваров.ТаблицаТоваров КАК БС_ПриходТоваровТаблицаТоваров
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СобытияОС КАК СобытияОС
        ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = СобытияОС.ОС
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
        ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
         И  БС_ПриходТоваровТаблицаТоваров.ИнвНомер = МестонахождениеОССрезПоследних.ИнвНомер
ГДЕ
    СобытияОС.Событие = ЗНАЧЕНИЕ(Перечисление.ВидыСобытийОС.ПринятиеКУчету)
Показать



Проверьте типы полей с связях:
БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС - Здесь должны быть ссылки на справочник "Основные средства"
БС_ПриходТоваровТаблицаТоваров.ИнвНомер = МестонахождениеОССрезПоследних.ИнвНомер - Здесь должны быть ссылки на справочник "Инвентарные номера". Если "БС_ПриходТоваровТаблицаТоваров.ИнвНомер" имеет тип строка, то попробуйте соединять "БС_ПриходТоваровТаблицаТоваров.ИнвНомер = МестонахождениеОССрезПоследних.ИнвНомер.ПорядковыйНомер" или "БС_ПриходТоваровТаблицаТоваров.ИнвНомер = МестонахождениеОССрезПоследних.ИнвНомер.Код".
+
5. soft_wind 07.09.18 17:18 Сейчас в теме
если что-то не так, скорее всего неправильно РС.МестонахождениеОС построен/спроектирован
проверьте реквизит Состояние наверняка у вас находится в разделе Измерения !!!
(типичная ошибка)
+
7. user876792 07.09.18 17:22 Сейчас в теме
(5) Состояние это реквизит
+
9. soft_wind 07.09.18 17:36 Сейчас в теме
пришлите все реквизиты из Измерения?
+
11. user876792 07.09.18 17:37 Сейчас в теме
(9) Может из Регистра?
+
13. soft_wind 07.09.18 17:45 Сейчас в теме
да из регистра, в нем первая группы

+Измерения <--- вот отсюда все поля
+Ресуры
+Реквизиты

(еще идея возникал, наверняка в измерении у вас есть поле/реквизит Период)

да и вообще развените всю структуру регистра сделайте скриншот и картинку выложите
+
17. user876792 07.09.18 17:58 Сейчас в теме
(13)
Прикрепленные файлы:
+
14. JohnGalt 57 07.09.18 17:51 Сейчас в теме
Состояние нужно тогда сделать измерением.
+
18. soft_wind 07.09.18 18:17 Сейчас в теме +0.26 $m
ну вот с картиной уже лучше

так как у вас 3 измерения, то по ним всем и надо делать соединение/отбор !
доработайте ваш самый первый запрос, добавьте еще два условия связи ! только так!

ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
и МестонахождениеОССрезПоследних.Учреждение = ...
и МестонахождениеОССрезПоследних.ИнвНомер = ...
+
22. user876792 07.09.18 18:47 Сейчас в теме
(18) учреждение всегда одно, да и инвентарный номер верный в выдаче запроса, только состояния все
+
28. catena 110 10.09.18 07:58 Сейчас в теме
(22)А на картинке в (15) в каждой строке инв.номер разный.
+
32. user876792 11.09.18 12:45 Сейчас в теме
(28) Так там и запрос другой
+
33. catena 110 11.09.18 13:27 Сейчас в теме
(32)Там срез последних. А срез выдает все комбинации измерений.
+
19. soft_wind 07.09.18 18:19 Сейчас в теме
а почему у вас так?

НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС

у вас ОС какого типа? строка? 8-()
+
21. user876792 07.09.18 18:45 Сейчас в теме
(19) СправочникСсылка.ОсновныеСредства
+
23. soft_wind 07.09.18 18:56 Сейчас в теме
вы запрос исправили? у вас получилось получить правильные Состояния?
+
24. user876792 07.09.18 19:03 Сейчас в теме
(23) Не пойму куда это нужно добавить
+
25. soft_wind 07.09.18 19:12 Сейчас в теме
так это же ваша строка из запроса! что в ней непонятного?
плюс еще два сравнения!


//это из вашего запроса
ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
//это две новых связи/условия
и МестонахождениеОССрезПоследних.Учреждение = .???
и МестонахождениеОССрезПоследних.ИнвНомер = ???

да-а-а
+
26. user876792 07.09.18 19:16 Сейчас в теме
(25) Поздно уже спать пора) Смотрю и не вижу
учреждения в таблице товаров нет

ВЫБРАТЬ РАЗЛИЧНЫЕ
	БС_ПриходТоваровТаблицаТоваров.Товар,
	БС_ПриходТоваровТаблицаТоваров.Товар.Наименование,
	БС_ПриходТоваровТаблицаТоваров.Товар.ДатаПринятияКУчету,
	БС_ПриходТоваровТаблицаТоваров.Товар.Местонахождение КАК Местонахождение,
	БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеБУ КАК НаименованиеПозицииПоБазеУчета1С,
	БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта,
	БС_ПриходТоваровТаблицаТоваров.Товар.ОбъектыУчетаСпр КАК ТипПозиции,
	БС_ПриходТоваровТаблицаТоваров.Товар.СерийныйНомер КАК СерийныйНомер,
	БС_ПриходТоваровТаблицаТоваров.Товар.ТипУстройстваПолеВвода КАК НаименованиеТипа,
	БС_ПриходТоваровТаблицаТоваров.Количество,
	БС_ПриходТоваровТаблицаТоваров.Сумма,
	БС_ПриходТоваровТаблицаТоваров.ИнвНомер КАК ИнвентарныйНоменклатурныйНомер,
	СобытияОС.ДатаСобытия КАК ДатаПостановкиНаУчет,
	МестонахождениеОССрезПоследних.Состояние
ИЗ
	Документ.БС_ПриходТоваров.ТаблицаТоваров КАК БС_ПриходТоваровТаблицаТоваров
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СобытияОС КАК СобытияОС
		ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = СобытияОС.ОС
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
		ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
			И БС_ПриходТоваровТаблицаТоваров.ИнвНомер = МестонахождениеОССрезПоследних.ИнвНомер
ГДЕ
	СобытияОС.Событие = ЗНАЧЕНИЕ(Перечисление.ВидыСобытийОС.ПринятиеКУчету)
Показать


Пустой результат запроса.. Тут еще и типы у них разные, строка и ссылка
+
27. NatalyaVP 10.09.18 07:29 Сейчас в теме
В запрос добавляем дату на которую выбираем значения из регистра сведений
ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = СобытияОС.ОС
ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних(&дата1,) КАК МестонахождениеОССрезПоследних

Запрос.УстановитьПараметр("дата1", ДатаДокумента);
user705522_constantin_h; +1
30. dabu-dabu 290 10.09.18 13:43 Сейчас в теме
У вас в таблицу попадают НЕ все состояния, а состояния всех инвентарных номеров ОС с одинаковым наименованием.

Соединение как сделали вы, делать нельзя.
ИЗ
    Документ.БС_ПриходТоваров.ТаблицаТоваров КАК БС_ПриходТоваровТаблицаТоваров
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
        ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС


Нужно отбирать по инвентарному номеру (но в из товаров вы врядли его получите):
ИЗ
    Документ.БС_ПриходТоваров.ТаблицаТоваров КАК БС_ПриходТоваровТаблицаТоваров
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.МестонахождениеОС.СрезПоследних КАК МестонахождениеОССрезПоследних
        ПО БС_ПриходТоваровТаблицаТоваров.Товар.НаименованиеОбъекта = МестонахождениеОССрезПоследних.ОС
          И МестонахождениеОССрезПоследних.ИнвНомер = ???
          И МестонахождениеОССрезПоследних.Учреждение= ???


Вам про это писали выше.
+
31. пользователь 10.09.18 15:12
Сообщение было скрыто модератором.
...
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот