Почему может двоиться строка

1. YA_1130000046249084 15.10.20 11:22 Сейчас в теме
Двоится строка Сазан, по столбцу КоличествоНачальныйОстаток, я понимаю, что что-то с периодам не так, но не могу точно понять где ошибка
Прикрепленные файлы:
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. YA_1130000046249084 15.10.20 11:22 Сейчас в теме
Функция СведенияОВнешнейОбработке() Экспорт
    
    ИмяОтчета = ЭтотОбъект.Метаданные().Имя; 
    Синоним = ЭтотОбъект.Метаданные().Синоним; 
    Синоним = ?(ЗначениеЗаполнено(Синоним),Синоним, ИмяОтчета);         
    РегистрационныеДанные = Новый Структура;
    РегистрационныеДанные.Вставить("Вид","ДополнительныйОтчет"); //может быть – ПечатнаяФорма, ЗаполнениеОбъекта (для вн.обработки), ДополнительныйОтчет, СозданиеСвязанныхОбъектов… 
    РегистрационныеДанные.Вставить("Наименование", Синоним); //имя под которым обработка будет зарегестрирована в справочнике внешних обработок
    РегистрационныеДанные.Вставить("Версия", "1.0");
    РегистрационныеДанные.Вставить("БезопасныйРежим", Ложь);
    РегистрационныеДанные.Вставить("Информация", "Отчет "+Синоним); //так будет выглядеть описание вн.отчета для пользователя
    
    ТаблицаКоманд = ПолучитьТаблицуКоманд();
    
    // Добавим команду в таблицу
    ДобавитьКоманду(ТаблицаКоманд, Синоним, "СформироватьОтчет" , "ОткрытиеФормы", Истина, );
        
    // Сохраним таблицу команд в параметры регистрации обработки
    РегистрационныеДанные.Вставить("Команды", ТаблицаКоманд);
    
    Возврат РегистрационныеДанные;
                                       
КонецФункции

Функция ПолучитьТаблицуКоманд()
    
    // Создадим пустую таблицу команд и колонки в ней
    Команды = Новый ТаблицаЗначений;

    // Как будет выглядеть описание печатной формы для пользователя
    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); 

    // Имя нашего макета, что бы могли отличить вызванную команду в обработке печати
    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));

    // Тут задается, как должна вызваться команда обработки
    // Возможные варианты:
    // - ОткрытиеФормы - в этом случае в колонке идентификатор должно быть указано имя формы, которое должна будет открыть система
    // - ВызовКлиентскогоМетода - вызвать клиентскую экспортную процедуру из модуля формы обработки
    // - ВызовСерверногоМетода - вызвать серверную экспортную процедуру из модуля объекта обработки
    Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));

    // Следующий параметр указывает, необходимо ли показывать оповещение при начале и завершению работы обработки. Не имеет смысла при открытии формы
    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));

    // Для печатной формы должен содержать строку ПечатьMXL 
    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
    Возврат Команды;
   
КонецФункции

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование = "ОткрытиеФормы", ПоказыватьОповещение = Ложь, Модификатор = "ПечатьMXL")
    
    // Добавляем команду в таблицу команд по переданному описанию.
    // Параметры и их значения можно посмотреть в функции ПолучитьТаблицуКоманд
    НоваяКоманда = ТаблицаКоманд.Добавить();
    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;

КонецПроцедуры 
Показать
3. YA_1130000046249084 15.10.20 11:23 Сейчас в теме
В компоновке данных

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

СГРУППИРОВАТЬ ПО
	СборкаЗапасовПродукция.Номенклатура,
	СборкаЗапасовПродукция.Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	СборкаЗапасовЗапасы.Номенклатура,
	СУММА(СборкаЗапасовЗапасы.Количество),
	СборкаЗапасовЗапасы.Ссылка
ИЗ
	Документ.СборкаЗапасов.Запасы КАК СборкаЗапасовЗапасы
ГДЕ
	СборкаЗапасовЗапасы.Ссылка.Проведен
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА СборкаЗапасовЗапасы.Ссылка.Дата >= &ДатаНачала
			ИНАЧЕ СборкаЗапасовЗапасы.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ
	И СборкаЗапасовЗапасы.Ссылка.ВидОперации = &ВидОперацииСборка

СГРУППИРОВАТЬ ПО
	СборкаЗапасовЗапасы.Номенклатура,
	СборкаЗапасовЗапасы.Ссылка
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	СборкаЗапасовПродукция.Номенклатура КАК Продукция,
	СУММА(СборкаЗапасовПродукция.Количество) КАК КоличествоПроизведено,
	СборкаЗапасовПродукция.Ссылка КАК Ссылка
ПОМЕСТИТЬ ВТ_Продукция
ИЗ
	Документ.СборкаЗапасов.Продукция КАК СборкаЗапасовПродукция
ГДЕ
	СборкаЗапасовПродукция.Ссылка.Проведен
	И СборкаЗапасовПродукция.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
	И СборкаЗапасовПродукция.Ссылка.ВидОперации = &ВидОперацииСборка

СГРУППИРОВАТЬ ПО
	СборкаЗапасовПродукция.Номенклатура,
	СборкаЗапасовПродукция.Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	СборкаЗапасовЗапасы.Номенклатура,
	СУММА(СборкаЗапасовЗапасы.Количество),
	СборкаЗапасовЗапасы.Ссылка
ИЗ
	Документ.СборкаЗапасов.Запасы КАК СборкаЗапасовЗапасы
ГДЕ
	СборкаЗапасовЗапасы.Ссылка.Проведен
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА СборкаЗапасовЗапасы.Ссылка.Дата >= &ДатаНачала
			ИНАЧЕ СборкаЗапасовЗапасы.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ
	И СборкаЗапасовЗапасы.Ссылка.ВидОперации = &ВидОперацииРазборка

СГРУППИРОВАТЬ ПО
	СборкаЗапасовЗапасы.Номенклатура,
	СборкаЗапасовЗапасы.Ссылка
;

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

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Продажи.Номенклатура КАК Номенклатура,
	СУММА(Продажи.Количество) КАК КоличествоПродажи
ПОМЕСТИТЬ ВТПродажи
ИЗ
	РегистрНакопления.Продажи КАК Продажи
ГДЕ
	ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА Продажи.Период >= &ДатаНачала
			ИНАЧЕ Продажи.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ

СГРУППИРОВАТЬ ПО
	Продажи.Номенклатура
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Запасы.Номенклатура КАК Номенклатура,
	СУММА(Запасы.Количество) КАК КоличествоСписание
ПОМЕСТИТЬ ВТ_Списание
ИЗ
	РегистрНакопления.Запасы КАК Запасы
ГДЕ
	Запасы.ХозяйственнаяОперация.Наименование = "Списание на расходы"
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА Запасы.Период >= &ДатаНачала
			ИНАЧЕ Запасы.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ

СГРУППИРОВАТЬ ПО
	Запасы.Номенклатура
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Запасы.Номенклатура КАК Номенклатура,
	СУММА(Запасы.Количество) КАК КоличествоПеремещение
ПОМЕСТИТЬ ВТ_Перемещение
ИЗ
	РегистрНакопления.Запасы КАК Запасы
ГДЕ
	Запасы.ХозяйственнаяОперация.Наименование = "Перемещение"
	И Запасы.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА Запасы.Период >= &ДатаНачала
			ИНАЧЕ Запасы.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ

СГРУППИРОВАТЬ ПО
	Запасы.Номенклатура
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Запасы.Номенклатура КАК Номенклатура,
	СУММА(Запасы.Количество) КАК КоличествоВозврат
ПОМЕСТИТЬ ВТ_Возврат
ИЗ
	РегистрНакопления.Запасы КАК Запасы
ГДЕ
	Запасы.ХозяйственнаяОперация.Наименование = "Возврат от покупателя"
	И Запасы.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА Запасы.Период >= &ДатаНачала
			ИНАЧЕ Запасы.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ

СГРУППИРОВАТЬ ПО
	Запасы.Номенклатура
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Запасы.Номенклатура КАК Номенклатура,
	СУММА(ВЫБОР
			КОГДА Запасы.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
				ТОГДА -Запасы.Количество
			ИНАЧЕ Запасы.Количество
		КОНЕЦ) КАК КоличествоПересортица
ПОМЕСТИТЬ ВТ_Пересортица
ИЗ
	РегистрНакопления.Запасы КАК Запасы
ГДЕ
	Запасы.ХозяйственнаяОперация.Наименование = "Пересортица запасов"
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА Запасы.Период >= &ДатаНачала
			ИНАЧЕ Запасы.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ

СГРУППИРОВАТЬ ПО
	Запасы.Номенклатура
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_Сырье.Сырье КАК Сырье,
	ВТ_Продукция.Продукция КАК Продукция,
	ВТ_Возврат.КоличествоВозврат КАК КоличествоВозврат,
	ВТ_Перемещение.КоличествоПеремещение КАК КоличествоПеремещение,
	ВТ_Пересортица.КоличествоПересортица КАК КоличествоПересортица,
	ВТ_Продукция.КоличествоПроизведено КАК КоличествоПроизведено,
	ВТ_Списание.КоличествоСписание КАК КоличествоСписание,
	ВтОстатки.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток,
	ВтОстатки.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток,
	ВТПродажи.КоличествоПродажи КАК КоличествоПродажи,
	ВТ_Сырье.КоличествоЗатраченоСырья КАК КоличествоЗатраченоСырья
ИЗ
	ВТ_Сырье КАК ВТ_Сырье
		ПОЛНОЕ СОЕДИНЕНИЕ ВТ_Продукция КАК ВТ_Продукция
			ЛЕВОЕ СОЕДИНЕНИЕ ВтОстатки КАК ВтОстатки
			ПО ВТ_Продукция.Продукция = ВтОстатки.Номенклатура
			ЛЕВОЕ СОЕДИНЕНИЕ ВТПродажи КАК ВТПродажи
			ПО ВТ_Продукция.Продукция = ВТПродажи.Номенклатура
			ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Списание КАК ВТ_Списание
			ПО ВТ_Продукция.Продукция = ВТ_Списание.Номенклатура
			ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Перемещение КАК ВТ_Перемещение
			ПО ВТ_Продукция.Продукция = ВТ_Перемещение.Номенклатура
			ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Возврат КАК ВТ_Возврат
			ПО ВТ_Продукция.Продукция = ВТ_Возврат.Номенклатура
			ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Пересортица КАК ВТ_Пересортица
			ПО ВТ_Продукция.Продукция = ВТ_Пересортица.Номенклатура
		ПО ВТ_Сырье.Ссылка = ВТ_Продукция.Ссылка
Показать
4. FatPanzer 15.10.20 11:31 Сейчас в теме
У Сазана две записи в таблице ВТ_Сырье... Скорее всего. Попробуйте из первого запроса убрать поле Ссылка (оставьте только Номенклатуру) и отключите в последнем запросе связь с таблице Пересорта (ссылка нужна только для связи с этой таблицей). И проверьте начальные остатки (пусть и без учета пересорта).
5. M_A_D 184 15.10.20 11:35 Сейчас в теме
(4) а вы смогли увидеть где строки дублируются?
Я минуты 3 пялился в скриншот и не увидел дубля....

PS если речь про выделанный фрагмент на скрине, это ведь не бубль)))
6. YA_1130000046249084 15.10.20 11:37 Сейчас в теме
(5)
огли увидеть где строки дублируются?
Я минуты 3 пя
он просто в иерархии развернутый, двоится сама цифра 9,600
7. YA_1130000046249084 15.10.20 11:38 Сейчас в теме
(5)То есть, должно быть 4,800, а у мен6я 9,600, вот так
8. FatPanzer 15.10.20 11:41 Сейчас в теме
(5) Нет, двоятся не строки. Двоится цифра остатка, по уверению ТС. Остальные не двоятся.
Это может означать только то, что при связи таблицы номенклатуры и таблицы остатков в какой-то из этих таблиц находятся две строки для Сазана. А для всех остальных - по одной.
Внимательно посмотрев на алгоритм формирования этих таблиц - вижу, что в первом запросе теоретически может быть две строки с одинаковым значением Номенклатура для разных значений Ссылка. Это вполне себе может привести к задвоению суммы остатка.
Дальше предложил проверить это ТС, исключив из запроса использование поля Ссылка из группировки, чтобы исключить вариант с задвоением строк в первой таблице.
Если не поможет - будем смотреть алгоритм формирования таблицы остатков...

Все же предельно просто, да? ))))

PS. Если бы ТС еще обратил бы свой код в тег <Code/> - было бы вообще отлично...
9. YA_1130000046249084 15.10.20 11:43 Сейчас в теме
(8)
ще о
Спасибо, поняла, это подошло
10. M_A_D 184 15.10.20 11:47 Сейчас в теме
(8)
СборкаЗапасовПродукция.Ссылка КАК Ссылка

Точно точно, вытянута ссылка на документ, и из-за того что фигурирует товар в разных документах, произошло задвоение)
YA_1130000046249084; FatPanzer; +2 Ответить
11. FatPanzer 15.10.20 11:49 Сейчас в теме
(10) Я даже не знаю, что это за ссылка )) Я просто вижу, что идет группировка по двум полям, значит строк может быть несколько. А потом по одному из этих группировочных полей идет связь с другой таблицей... Чистая теория.
12. YA_1130000046249084 15.10.20 11:53 Сейчас в теме
(11)
за ссылка )) Я просто вижу, что идет группировка по двум полям, значит строк
если ее убрать, то получается ошибка


Ошибка в схеме компоновки данных
по причине:
Ошибка получения информации набора данных
по причине:
Ошибка в запросе набора данных
по причине:
{(5, 2)}: Синтаксическая ошибка "ПОМЕСТИТЬ"
<<?>>ПОМЕСТИТЬ ВТ_Сырье
13. FatPanzer 15.10.20 11:56 Сейчас в теме
(12) Естественно. Я же не говорил убрать строку из текста запроса, я говорил убрать поле Ссылка из самого запроса.
А вы, скорее всего удалили строку. И в предыдущей строке "СУММА(СборкаЗапасовПродукция.Количество) КАК КоличествоЗатраченоСырья," у вас осталась запятая. А запятой в последней строке быть не должно, ибо запятая означает дальнейшее перечисление полей, и система воспринимает "ПОМЕСТИТЬ ВТ_Сырье" как одно из полей запроса. И справедливо матерится.

Кароч, запятую уберите.
YA_1130000046249084; +1 Ответить
14. YA_1130000046249084 16.10.20 04:21 Сейчас в теме
(13)Так и не получилось решить эту проблему, не могу понять в чем дело, если я убирала эту строку, и запятую вылазила ошибка. Мне кажется, что что-то с периодом не так, там когда я ставила периодичность - секунда, была цифра 4,6 . Что приближенна ко мне, но тогда поменялась цифра прихода товара, что не надо мне
16. FatPanzer 16.10.20 08:59 Сейчас в теме
(14) Еще раз! Я не говорил убрать одну строку из текста запроса. Я сказал убрать поле из запроса. Открываем конструктор запроса и просто удаляем поле Ссылка на Вкладке "Объединение".
Опять проблемы???
17. YA_1130000046249084 16.10.20 09:01 Сейчас в теме
(16)Я это и сделала, спасибо, разобралась))
18. FatPanzer 16.10.20 09:02 Сейчас в теме
19. YA_1130000046249084 16.10.20 09:04 Сейчас в теме
(18)я нашла старую печатную форму, решила сверить их (так как в старой ошибок не было), Там КоличествоЗатраченоСырья был не как ресурс , а как реквизит, я исправила, все норм пошлло
15. YA_1130000046249084 16.10.20 04:22 Сейчас в теме
(8
ВЫБРАТЬ
	СборкаЗапасовПродукция.Номенклатура КАК Сырье,
	СУММА(СборкаЗапасовПродукция.Количество) КАК КоличествоЗатраченоСырья,
	СборкаЗапасовПродукция.Ссылка КАК Ссылка
ПОМЕСТИТЬ ВТ_Сырье
ИЗ
	Документ.СборкаЗапасов.Продукция КАК СборкаЗапасовПродукция
ГДЕ
	СборкаЗапасовПродукция.Ссылка.Проведен
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА СборкаЗапасовПродукция.Ссылка.Дата >= &ДатаНачала
			ИНАЧЕ СборкаЗапасовПродукция.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ
	И СборкаЗапасовПродукция.Ссылка.ВидОперации = &ВидОперацииРазборка

СГРУППИРОВАТЬ ПО
	СборкаЗапасовПродукция.Номенклатура,
	СборкаЗапасовПродукция.Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	СборкаЗапасовЗапасы.Номенклатура,
	СУММА(СборкаЗапасовЗапасы.Количество),
	СборкаЗапасовЗапасы.Ссылка
ИЗ
	Документ.СборкаЗапасов.Запасы КАК СборкаЗапасовЗапасы
ГДЕ
	СборкаЗапасовЗапасы.Ссылка.Проведен
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА СборкаЗапасовЗапасы.Ссылка.Дата >= &ДатаНачала
			ИНАЧЕ СборкаЗапасовЗапасы.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ
	И СборкаЗапасовЗапасы.Ссылка.ВидОперации = &ВидОперацииСборка

СГРУППИРОВАТЬ ПО
	СборкаЗапасовЗапасы.Номенклатура,
	СборкаЗапасовЗапасы.Ссылка
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	СборкаЗапасовПродукция.Номенклатура КАК Продукция,
	СУММА(СборкаЗапасовПродукция.Количество) КАК КоличествоПроизведено,
	СборкаЗапасовПродукция.Ссылка КАК Ссылка
ПОМЕСТИТЬ ВТ_Продукция
ИЗ
	Документ.СборкаЗапасов.Продукция КАК СборкаЗапасовПродукция
ГДЕ
	СборкаЗапасовПродукция.Ссылка.Проведен
	И СборкаЗапасовПродукция.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
	И СборкаЗапасовПродукция.Ссылка.ВидОперации = &ВидОперацииСборка

СГРУППИРОВАТЬ ПО
	СборкаЗапасовПродукция.Номенклатура,
	СборкаЗапасовПродукция.Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	СборкаЗапасовЗапасы.Номенклатура,
	СУММА(СборкаЗапасовЗапасы.Количество),
	СборкаЗапасовЗапасы.Ссылка
ИЗ
	Документ.СборкаЗапасов.Запасы КАК СборкаЗапасовЗапасы
ГДЕ
	СборкаЗапасовЗапасы.Ссылка.Проведен
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА СборкаЗапасовЗапасы.Ссылка.Дата >= &ДатаНачала
			ИНАЧЕ СборкаЗапасовЗапасы.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ
	И СборкаЗапасовЗапасы.Ссылка.ВидОперации = &ВидОперацииРазборка

СГРУППИРОВАТЬ ПО
	СборкаЗапасовЗапасы.Номенклатура,
	СборкаЗапасовЗапасы.Ссылка
;

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

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Продажи.Номенклатура КАК Номенклатура,
	СУММА(Продажи.Количество) КАК КоличествоПродажи
ПОМЕСТИТЬ ВТПродажи
ИЗ
	РегистрНакопления.Продажи КАК Продажи
ГДЕ
	ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА Продажи.Период >= &ДатаНачала
			ИНАЧЕ Продажи.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ

СГРУППИРОВАТЬ ПО
	Продажи.Номенклатура
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Запасы.Номенклатура КАК Номенклатура,
	СУММА(Запасы.Количество) КАК КоличествоСписание
ПОМЕСТИТЬ ВТ_Списание
ИЗ
	РегистрНакопления.Запасы КАК Запасы
ГДЕ
	Запасы.ХозяйственнаяОперация.Наименование = "Списание на расходы"
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА Запасы.Период >= &ДатаНачала
			ИНАЧЕ Запасы.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ

СГРУППИРОВАТЬ ПО
	Запасы.Номенклатура
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Запасы.Номенклатура КАК Номенклатура,
	СУММА(Запасы.Количество) КАК КоличествоПеремещение
ПОМЕСТИТЬ ВТ_Перемещение
ИЗ
	РегистрНакопления.Запасы КАК Запасы
ГДЕ
	Запасы.ХозяйственнаяОперация.Наименование = "Перемещение"
	И Запасы.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА Запасы.Период >= &ДатаНачала
			ИНАЧЕ Запасы.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ

СГРУППИРОВАТЬ ПО
	Запасы.Номенклатура
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Запасы.Номенклатура КАК Номенклатура,
	СУММА(Запасы.Количество) КАК КоличествоВозврат
ПОМЕСТИТЬ ВТ_Возврат
ИЗ
	РегистрНакопления.Запасы КАК Запасы
ГДЕ
	Запасы.ХозяйственнаяОперация.Наименование = "Возврат от покупателя"
	И Запасы.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА Запасы.Период >= &ДатаНачала
			ИНАЧЕ Запасы.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ

СГРУППИРОВАТЬ ПО
	Запасы.Номенклатура
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	Запасы.Номенклатура КАК Номенклатура,
	СУММА(ВЫБОР
			КОГДА Запасы.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
				ТОГДА -Запасы.Количество
			ИНАЧЕ Запасы.Количество
		КОНЕЦ) КАК КоличествоПересортица
ПОМЕСТИТЬ ВТ_Пересортица
ИЗ
	РегистрНакопления.Запасы КАК Запасы
ГДЕ
	Запасы.ХозяйственнаяОперация.Наименование = "Пересортица запасов"
	И ВЫБОР
			КОГДА &ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
				ТОГДА Запасы.Период >= &ДатаНачала
			ИНАЧЕ Запасы.Период МЕЖДУ &ДатаНачала И &ДатаОкончания
		КОНЕЦ

СГРУППИРОВАТЬ ПО
	Запасы.Номенклатура
;

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

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

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

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

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