Версия для печати темы (https://pro1c.org.ua/index.php?s=7616da3695fad3e62ee6d3abfb931e10&showtopic=6037)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Помогите с запросом

Автор: maximus 18.01.12, 9:36

Добрый день! Прошу помощи с написанием запроса. Задача такая, создаю отчет в котором нужно отобразить все приходы по указанному бренду, в этом отчете отображаю номер приходного документа, наименование номенклатуры, количество и цену по приходу, а вот получить цену уже с учетом доп.расходов и ГТД не пойму как. Отчет строю через СКД. Для получения даных по номенклатуре и прих. док. использую Документ "Поступление товаров и услуг", чтобы использовать период, подключаю регистр накопления. Подскажите пожалуйста как правильно построить запрос чтобы вытащить цену окончательную.
Спасибо!

Автор: logist 18.01.12, 9:43

А конфигурация какая? Вероятно использование одного регистра может быть достаточным.

Автор: Vofka 18.01.12, 9:50

Цитата
Помогите с запросом

Это называется по другому: напишите мне запрос. Где код?

Автор: maximus 18.01.12, 9:56

Цитата(logist @ 18.01.12, 9:43) *
А конфигурация какая? Вероятно использование одного регистра может быть достаточным.


"Управление торговлей для Украины", редакция 2.3.
Разработка конфигурации: "ABBYY Ukraine", 2003-2011
(2.3.14.1)

Автор: awp 18.01.12, 10:01

Цитата(maximus @ 18.01.12, 9:36) *
Добрый день! Прошу помощи с написанием запроса. Задача такая, создаю отчет в котором нужно отобразить все приходы по указанному бренду, в этом отчете отображаю номер приходного документа, наименование номенклатуры, количество и цену по приходу, а вот получить цену уже с учетом доп.расходов и ГТД не пойму как. Отчет строю через СКД. Для получения даных по номенклатуре и прих. док. использую Документ "Поступление товаров и услуг", чтобы использовать период, подключаю регистр накопления. Подскажите пожалуйста как правильно построить запрос чтобы вытащить цену окончательную.
Спасибо!


Первым что необходимо сделать это открыть приход и внимательно изучить какие движения делает документ. А по сути достаточно использовать регистр накопления ПартииТоваровНаСкладах

Автор: logist 18.01.12, 10:07

Берите регистр "Партии товаров на складах" и выводите по "Документ оприходования"

Автор: maximus 18.01.12, 11:32

Цитата(logist @ 18.01.12, 10:07) *
Берите регистр "Партии товаров на складах" и выводите по "Документ оприходования"



Да, все получается, вот запрос:

|ВЫБРАТЬ
|    ПартииТоваровНаСкладах.ДокументОприходования.Дата,
|    ПартииТоваровНаСкладах.ДокументОприходования.Контрагент,
|    ПартииТоваровНаСкладах.ДокументОприходования.Ссылка,
|    ПартииТоваровНаСкладах.Номенклатура,
|    ПартииТоваровНаСкладах.Стоимость,
|    ПартииТоваровНаСкладах.Количество,
|    ПартииТоваровНаСкладах.ДокументОприходования.НомерВходящегоДокумента,
|    ПартииТоваровНаСкладах.ДокументОприходования.КурсВзаиморасчетов,
|    ПартииТоваровНаСкладах.Номенклатура.БазоваяЕдиницаИзмерения,
|    ПартииТоваровНаСкладах.ДокументОприходования.Ответственный
|ИЗ
|    РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах


Через СКД уже делаю разные настройки......
Только еще не разобрался как сделать отбор в интервале даты?

А поля "цена" "сумма" думаю выведу через ресурсы

Автор: logist 18.01.12, 14:24

Цитата(maximus @ 18.01.12, 11:32) *
Только еще не разобрался как сделать отбор в интервале даты?

В конструкторе запроса "Параметры виртуальной таблицы". Только регистр надо выбрать который "Обороты", и вероятно группировать по документу, и суммировать сумму.

Автор: maximus 19.01.12, 9:20

Цитата(logist @ 18.01.12, 14:24) *
В конструкторе запроса "Параметры виртуальной таблицы". Только регистр надо выбрать который "Обороты", и вероятно группировать по документу, и суммировать сумму.


С параметрами для даты получилось, все работает, группировку настроил, а вот как просуммировать пока разбираюсь. Сейчас выводятся документы с ценами фактурными и доп. расходы, чтобы отобразить учетную цену нужно просуммировать это поле?

Пробовал разные варианты группировок, не получается отображать только учетную цену, отображает фактурную следом доп расходы и потом учетную....((

Автор: logist 19.01.12, 15:17

Сгруппируйте по всем полям кроме цены и количества.

Автор: maximus 20.01.12, 10:00

Цитата(logist @ 19.01.12, 15:17) *
Сгруппируйте по всем полям кроме цены и количества.


Построил вот такой запрос, но у меня повторяются строки, иногда до 20 одинаковых строк выводит. В из запроса группировку убирать не получается, автоматом подставляет, как убрать это повторение???

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПоступлениеТоваровУслугТовары.Цена,
    ПоступлениеТоваровУслугТовары.Номенклатура
ПОМЕСТИТЬ Т2
ИЗ
    Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    Т1.ДокументОприходованияСсылка,
    Т1.ДокументОприходованияНомер,
    Т1.ДокументОприходованияДата,
    Т1.КоличествоПриход КАК КоличествоПриход,
    Т1.СтоимостьПриход КАК СтоимостьПриход,
    Т1.Номенклатура,
    Т2.Цена КАК Цена
ИЗ
    Т1 КАК Т1
        ЛЕВОЕ СОЕДИНЕНИЕ Т2 КАК Т2
        ПО Т1.Номенклатура = Т2.Номенклатура

СГРУППИРОВАТЬ ПО
    Т1.ДокументОприходованияСсылка,
    Т1.Номенклатура,
    Т1.ДокументОприходованияНомер,
    Т1.ДокументОприходованияДата,
    Т1.СтоимостьПриход,
    Т1.КоличествоПриход,
    Т2.Цена




А все упирается в то что мне нужно отобразить учетную цену(беру из "СтоимостьПриход") и закупочную(беру из "Товары.Цена"). Может я не правильно вытаскиваю закупочную цену, но как по другому не знаю???...

Автор: maximus 27.01.12, 17:27

Все получилось, вышел вот такой запрос:

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ПоступлениеТоваровУслугТовары.Ссылка,
    ПоступлениеТоваровУслугТовары.НомерСтроки,
    ПоступлениеТоваровУслугТовары.Номенклатура,
    ПоступлениеТоваровУслугТовары.КоличествоМест,
    ПоступлениеТоваровУслугТовары.ЕдиницаИзмерения,
    ПоступлениеТоваровУслугТовары.ЕдиницаИзмеренияМест,
    ПоступлениеТоваровУслугТовары.Коэффициент,
    ПоступлениеТоваровУслугТовары.Количество,
    ПоступлениеТоваровУслугТовары.Цена - ПоступлениеТоваровУслугТовары.СуммаНДС / ПоступлениеТоваровУслугТовары.Количество КАК Поле2,
    ПоступлениеТоваровУслугТовары.Сумма - ПоступлениеТоваровУслугТовары.СуммаНДС КАК Поле1,
    ПоступлениеТоваровУслугТовары.СтавкаНДС,
    ПоступлениеТоваровУслугТовары.СуммаНДС,
    ПоступлениеТоваровУслугТовары.СерияНоменклатуры,
    ПоступлениеТоваровУслугТовары.ХарактеристикаНоменклатуры,
    ПоступлениеТоваровУслугТовары.Заказ,
    ПоступлениеТоваровУслугТовары.УдалитьПроект,
    ПоступлениеТоваровУслугТовары.Склад,
    ПоступлениеТоваровУслугТовары.ПриходныйОрдер,
    ПоступлениеТоваровУслугТовары.ЗаказПоставщику,
    ПоступлениеТоваровУслугТовары.КлючСвязи,
    Т1.Номенклатура КАК Номенклатура1,
    Т1.Склад КАК Склад1,
    Т1.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры1,
    Т1.СерияНоменклатуры КАК СерияНоменклатуры1,
    Т1.ДокументОприходования,
    Т1.СтатусПартии,
    Т1.Заказ КАК Заказ1,
    Т1.Качество,
    Т1.КоличествоОборот,
    Т1.КоличествоПриход,
    Т1.КоличествоРасход,
    Т1.СтоимостьОборот,
    Т1.СтоимостьПриход / Т1.КоличествоПриход * ПоступлениеТоваровУслугТовары.Количество КАК СтоимостьПриход,
    Т1.СтоимостьРасход
ИЗ
    Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Т1 КАК Т1
        ПО ПоступлениеТоваровУслугТовары.Ссылка = Т1.ДокументОприходования
            И ПоступлениеТоваровУслугТовары.Номенклатура = Т1.Номенклатура
            И ПоступлениеТоваровУслугТовары.СерияНоменклатуры = Т1.СерияНоменклатуры

СГРУППИРОВАТЬ ПО
    Т1.Номенклатура,
    ПоступлениеТоваровУслугТовары.Ссылка,
    ПоступлениеТоваровУслугТовары.НомерСтроки,
    ПоступлениеТоваровУслугТовары.Номенклатура,
    ПоступлениеТоваровУслугТовары.КоличествоМест,
    ПоступлениеТоваровУслугТовары.ЕдиницаИзмерения,
    ПоступлениеТоваровУслугТовары.ЕдиницаИзмеренияМест,
    ПоступлениеТоваровУслугТовары.Коэффициент,
    ПоступлениеТоваровУслугТовары.Количество,
    ПоступлениеТоваровУслугТовары.СтавкаНДС,
    ПоступлениеТоваровУслугТовары.СуммаНДС,
    ПоступлениеТоваровУслугТовары.СерияНоменклатуры,
    ПоступлениеТоваровУслугТовары.ХарактеристикаНоменклатуры,
    ПоступлениеТоваровУслугТовары.Заказ,
    ПоступлениеТоваровУслугТовары.УдалитьПроект,
    ПоступлениеТоваровУслугТовары.Склад,
    ПоступлениеТоваровУслугТовары.ПриходныйОрдер,
    ПоступлениеТоваровУслугТовары.ЗаказПоставщику,
    ПоступлениеТоваровУслугТовары.КлючСвязи,
    Т1.Склад,
    Т1.ХарактеристикаНоменклатуры,
    Т1.СерияНоменклатуры,
    Т1.ДокументОприходования,
    Т1.СтатусПартии,
    Т1.Заказ,
    Т1.Качество,
    Т1.КоличествоОборот,
    Т1.КоличествоПриход,
    Т1.КоличествоРасход,
    Т1.СтоимостьОборот,
    Т1.СтоимостьРасход,
    Т1.СтоимостьПриход / Т1.КоличествоПриход * ПоступлениеТоваровУслугТовары.Количество,
    ПоступлениеТоваровУслугТовары.Сумма - ПоступлениеТоваровУслугТовары.СуммаНДС,
    ПоступлениеТоваровУслугТовары.Цена - ПоступлениеТоваровУслугТовары.СуммаНДС / ПоступлениеТоваровУслугТовары.Количество

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua