|
УТ. Колонка "заказано у поставщиков" | ☑ | ||
---|---|---|---|---|
0
НедоОдинЭсНик
12.10.23
✎
18:14
|
УТ 11.5. 1с 8.3. В справочнике Номенклатура показывает правильное количество товара.
Есть внешний отчет. В нем откуда-то тянется в колонку "заказано у поставщиков" энное количество, и количество не совпадает с количеством в справочнике Номенклатура. Прошу помощи. Код прикладываю ниже. ПодробностиВЫБРАТЬ 0 КАК Числа ПОМЕСТИТЬ РядЧисел ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 2 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 3 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 4 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 5 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 6 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 7 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 8 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 9 ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РядЧисел2.Числа * 100 + РядЧисел1.Числа * 10 + РядЧисел.Числа + 1 КАК Числа ПОМЕСТИТЬ ВТ_ВсеЧисла ИЗ РядЧисел КАК РядЧисел, РядЧисел КАК РядЧисел1, РядЧисел КАК РядЧисел2 ГДЕ РядЧисел2.Числа * 100 + РядЧисел1.Числа * 10 + РядЧисел.Числа + 1 <= &Месяцев ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ НАЧАЛОПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, МЕСЯЦ, ВТ_ВсеЧисла.Числа * -1), МЕСЯЦ) КАК ДатаС, КОНЕЦПЕРИОДА(ДОБАВИТЬКДАТЕ(&КонПериода, МЕСЯЦ, ВТ_ВсеЧисла.Числа * -1), МЕСЯЦ) КАК ДатаПо, ВТ_ВсеЧисла.Числа КАК Номер ПОМЕСТИТЬ ПериодыЗапр ИЗ ВТ_ВсеЧисла КАК ВТ_ВсеЧисла ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ НАЧАЛОПЕРИОДА(&КонПериода, МЕСЯЦ), КОНЕЦПЕРИОДА(&КонПериода, ДЕНЬ), 0 ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗРЕШЕННЫЕ ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура, &КонПериода КАК ДатаС, СУММА(ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот) КАК Количество ПОМЕСТИТЬ ВТ_продажиПоследнийМесяц ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(НАЧАЛОПЕРИОДА(&КонПериода, МЕСЯЦ), &КонПериода, День, ) КАК ВыручкаИСебестоимостьПродажОбороты СГРУППИРОВАТЬ ПО ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗРЕШЕННЫЕ ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура, ПериодыЗапр.ДатаС КАК ДатаС, СУММА(ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот) КАК Количество ПОМЕСТИТЬ ВТ_продажиПредыдущиеМесяца ИЗ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(ДОБАВИТЬКДАТЕ(&КонПериода, МЕСЯЦ, -1 * (&Месяцев + 1)), &КонПериода, День, ) КАК ВыручкаИСебестоимостьПродажОбороты ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПериодыЗапр КАК ПериодыЗапр ПО ВыручкаИСебестоимостьПродажОбороты.Период >= ПериодыЗапр.ДатаС И ВыручкаИСебестоимостьПродажОбороты.Период <= ПериодыЗапр.ДатаПо И (ПериодыЗапр.Номер > 0) СГРУППИРОВАТЬ ПО ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура, ПериодыЗапр.ДатаС ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_продажиПоследнийМесяц.Номенклатура КАК Номенклатура, ВТ_продажиПоследнийМесяц.ДатаС КАК ДатаС, ВТ_продажиПоследнийМесяц.Количество КАК Количество ПОМЕСТИТЬ ВТ_продажи ИЗ ВТ_продажиПоследнийМесяц КАК ВТ_продажиПоследнийМесяц ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВТ_продажиПредыдущиеМесяца.Номенклатура, ВТ_продажиПредыдущиеМесяца.ДатаС, ВТ_продажиПредыдущиеМесяца.Количество ИЗ ВТ_продажиПредыдущиеМесяца КАК ВТ_продажиПредыдущиеМесяца ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВложенныйЗапрос.Номенклатура КАК Номенклатура, СУММА(ВложенныйЗапрос.Количество) / (&Месяцев + 1) КАК Среднее ПОМЕСТИТЬ вт_Средняя ИЗ (ВЫБРАТЬ ВТ_продажиПоследнийМесяц.Номенклатура КАК Номенклатура, СУММА(ВТ_продажиПоследнийМесяц.Количество * (ВЫРАЗИТЬ(ДЕНЬ(КОНЕЦПЕРИОДА(&КонПериода, МЕСЯЦ)) / ДЕНЬ(&КонПериода) КАК ЧИСЛО(5, 2)))) КАК Количество ИЗ ВТ_продажиПоследнийМесяц КАК ВТ_продажиПоследнийМесяц СГРУППИРОВАТЬ ПО ВТ_продажиПоследнийМесяц.Номенклатура ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВТ_продажиПредыдущиеМесяца.Номенклатура, СУММА(ВТ_продажиПредыдущиеМесяца.Количество) ИЗ ВТ_продажиПредыдущиеМесяца КАК ВТ_продажиПредыдущиеМесяца СГРУППИРОВАТЬ ПО ВТ_продажиПредыдущиеМесяца.Номенклатура) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО ВложенныйЗапрос.Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗРЕШЕННЫЕ ВТ_продажиПредыдущиеМесяца.ДатаС КАК ДляКолонки, ВТ_продажиПредыдущиеМесяца.Номенклатура КАК Номенклатура, СУММА(ВТ_продажиПредыдущиеМесяца.Количество) КАК Показатель, -2 КАК НомерТаблицы ПОМЕСТИТЬ ВТ_ДанныеПоОстаткам ИЗ ВТ_продажиПредыдущиеМесяца КАК ВТ_продажиПредыдущиеМесяца СГРУППИРОВАТЬ ПО ВТ_продажиПредыдущиеМесяца.ДатаС, ВТ_продажиПредыдущиеМесяца.Номенклатура ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ &КонПериодаТекст, ВТ_продажиПоследнийМесяц.Номенклатура, СУММА(ВТ_продажиПоследнийМесяц.Количество), -1 ИЗ ВТ_продажиПоследнийМесяц КАК ВТ_продажиПоследнийМесяц СГРУППИРОВАТЬ ПО ВТ_продажиПоследнийМесяц.Номенклатура ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "0. Среднее за период", вт_Средняя.Номенклатура, вт_Средняя.Среднее, 0 ИЗ вт_Средняя КАК вт_Средняя ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "1. Текущий общий остаток", ТоварыНаСкладахОстатки.Номенклатура, СУММА(ТоварыНаСкладахОстатки.ВНаличииОстаток), 1 ИЗ РегистрНакопления.ТоварыНаСкладах.Остатки({(КОНЕЦПЕРИОДА(&КонПериода, ДЕНЬ))}, {(Склад В (&Склад))}) КАК ТоварыНаСкладахОстатки СГРУППИРОВАТЬ ПО ТоварыНаСкладахОстатки.Номенклатура ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "2. Свободное наличие на складе", РаспределениеЗапасов.Номенклатура, СУММА(РаспределениеЗапасов.Свободно), 2 ИЗ РегистрСведений.РаспределениеЗапасов КАК РаспределениеЗапасов ГДЕ РаспределениеЗапасов.Состояние = ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОстатокНаСкладе) И РаспределениеЗапасов.Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) {ГДЕ (РаспределениеЗапасов.Номенклатура = &Номенклатура), (РаспределениеЗапасов.Склад В (&Склад))} СГРУППИРОВАТЬ ПО РаспределениеЗапасов.Номенклатура ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "3. Заказано у поставщиков", ЗаказыПоставщикамОстатки.Номенклатура, СУММА(ЗаказыПоставщикамОстатки.ЗаказаноОстаток), 3 ИЗ РегистрНакопления.ЗаказыПоставщикам.Остатки({(КОНЕЦПЕРИОДА(&КонПериода, ДЕНЬ))}, {(Склад В (&Склад))}) КАК ЗаказыПоставщикамОстатки СГРУППИРОВАТЬ ПО ЗаказыПоставщикамОстатки.Номенклатура ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "4. Свободно в пути", РаспределениеЗапасов.Номенклатура, СУММА(РаспределениеЗапасов.Запас), 4 ИЗ РегистрСведений.РаспределениеЗапасов КАК РаспределениеЗапасов ГДЕ РаспределениеЗапасов.Назначение = ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) И РаспределениеЗапасов.Состояние = ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.ОжидаемоеПоступление) {ГДЕ (РаспределениеЗапасов.Склад В (&Склад))} СГРУППИРОВАТЬ ПО РаспределениеЗапасов.Номенклатура ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "5. К обеспечению", РаспределениеЗапасов.Номенклатура, СУММА(РаспределениеЗапасов.Зарезервировано + РаспределениеЗапасов.Обеспечено + РаспределениеЗапасов.НеОбеспечено), 5 ИЗ РегистрСведений.РаспределениеЗапасов КАК РаспределениеЗапасов ГДЕ РаспределениеЗапасов.Назначение <> ЗНАЧЕНИЕ(Справочник.Назначения.ПустаяСсылка) И РаспределениеЗапасов.Состояние = ЗНАЧЕНИЕ(Перечисление.РаспределениеЗапасовСостояния.Обеспечить) {ГДЕ (РаспределениеЗапасов.Склад В (&Склад))} СГРУППИРОВАТЬ ПО РаспределениеЗапасов.Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ "6. Свободный текущий итог по плану" КАК ДляКолонки, ВТ_ДанныеПоОстаткам.Номенклатура КАК Номенклатура, ВТ_ДанныеПоОстаткам.Показатель КАК Показатель, 6 КАК НомерТаблицы ПОМЕСТИТЬ ВТ_СвободныйИтогПоПлану ИЗ ВТ_ДанныеПоОстаткам КАК ВТ_ДанныеПоОстаткам ГДЕ ВТ_ДанныеПоОстаткам.НомерТаблицы = 2 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "6. Свободный текущий итог по плану", ВТ_ДанныеПоОстаткам.Номенклатура, СУММА(ВТ_ДанныеПоОстаткам.Показатель), 6 ИЗ ВТ_ДанныеПоОстаткам КАК ВТ_ДанныеПоОстаткам ГДЕ ВТ_ДанныеПоОстаткам.НомерТаблицы = 4 СГРУППИРОВАТЬ ПО ВТ_ДанныеПоОстаткам.Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ "7. Коэффициент эффективности" КАК ДляКолонки, ВТ_СвободныйИтогПоПлану.Номенклатура КАК Номенклатура, 7 КАК НомерТаблицы, ВЫБОР КОГДА ЕСТЬNULL(вт_Средняя.Среднее, 0) = 0 ТОГДА ВТ_СвободныйИтогПоПлану.Показатель ИНАЧЕ ВТ_СвободныйИтогПоПлану.Показатель / вт_Средняя.Среднее КОНЕЦ КАК Показатель ПОМЕСТИТЬ ВТ_КоэфЭф ИЗ ВТ_СвободныйИтогПоПлану КАК ВТ_СвободныйИтогПоПлану ЛЕВОЕ СОЕДИНЕНИЕ вт_Средняя КАК вт_Средняя ПО ВТ_СвободныйИтогПоПлану.Номенклатура = вт_Средняя.Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ВТ_ДанныеПоОстаткам.ДляКолонки КАК ДляКолонки, ВТ_ДанныеПоОстаткам.Номенклатура КАК ДляСтроки, ВТ_ДанныеПоОстаткам.Показатель КАК Показатель, ВТ_ДанныеПоОстаткам.НомерТаблицы КАК НомерТаблицы, СпрНоменклатура.Артикул КАК Артикул ИЗ ВТ_ДанныеПоОстаткам КАК ВТ_ДанныеПоОстаткам ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК СпрНоменклатура ПО ВТ_ДанныеПоОстаткам.Номенклатура = СпрНоменклатура.Ссылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВТ_СвободныйИтогПоПлану.ДляКолонки, ВТ_СвободныйИтогПоПлану.Номенклатура, ВТ_СвободныйИтогПоПлану.Показатель, ВТ_СвободныйИтогПоПлану.НомерТаблицы, СпрНоменклатура.Артикул ИЗ ВТ_СвободныйИтогПоПлану КАК ВТ_СвободныйИтогПоПлану ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК СпрНоменклатура ПО ВТ_СвободныйИтогПоПлану.Номенклатура = СпрНоменклатура.Ссылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВТ_КоэфЭф.ДляКолонки, ВТ_КоэфЭф.Номенклатура, ВТ_КоэфЭф.Показатель, ВТ_КоэфЭф.НомерТаблицы, СпрНоменклатура.Артикул ИЗ ВТ_КоэфЭф КАК ВТ_КоэфЭф ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК СпрНоменклатура ПО ВТ_КоэфЭф.Номенклатура = СпрНоменклатура.Ссылка |
|||
1
Franchiser
12.10.23
✎
17:52
|
(0) из остатков регистра ЗаказыПоставщикам
|
|||
2
Волшебник
12.10.23
✎
18:15
|
А зачем количество в справочнике Номенклатура?
|
|||
3
НедоОдинЭсНик
23.10.23
✎
13:53
|
(2) Количество в остатках номенклатуры. И в нем не отражается количество, заказанное у поставщиков. Которое видно в отчете "Анализ запасов номенклатуры".
|
|||
4
maxab72
23.10.23
✎
14:16
|
А что говорит консоль запросов на этот запрос:
"ВЫБРАТЬ "3. Заказано у поставщиков", ЗаказыПоставщикамОстатки.Номенклатура, СУММА(ЗаказыПоставщикамОстатки.ЗаказаноОстаток), 3 ИЗ РегистрНакопления.ЗаказыПоставщикам.Остатки({(КОНЕЦПЕРИОДА(&КонПериода, ДЕНЬ))}, {(Склад В (&Склад))}) КАК ЗаказыПоставщикамОстатки" ? Может в отчете и в форме списка номенклатуры указаны разные параметры - склады, дата? |
|||
5
НедоОдинЭсНик
23.10.23
✎
14:29
|
(4) Параметры одинаковые. В чем еще может быть ошибка?
|
|||
6
maxab72
23.10.23
✎
14:31
|
(5) а выдача запроса одинакова?
проблема может быть где угодно, например в опции "РАЗРЕШЕННЫЕ". |
|||
7
НедоОдинЭсНик
23.10.23
✎
14:49
|
(6) А еще варианты?
|
|||
8
НедоОдинЭсНик
23.10.23
✎
17:55
|
Убирал РАЗРЕШЕННЫЕ, результат тот же.
|
|||
9
НедоОдинЭсНик
24.10.23
✎
12:22
|
Если у кого-то есть время - посмотрите, пожалуйста.
|
|||
10
НедоОдинЭсНик
25.10.23
✎
11:56
|
Видимо, ошибка в количестве связана с РегистрСведений.РаспределениеЗапасов. Пока не до конца разобрался.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |