Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Прошу помощи с построением отчета , отчет по остаткам на складе          
pqrst Подменю пользователя
сообщение 08.09.12, 16:22
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 6
Спасибо сказали: 1 раз
Рейтинг: 0

Доброго времени суток, уважаемые форумчане!

Добровольно-принудительно пришлось заниматься 1С.

Ситуация такая: есть в консоли отчетов отчет остатки на складах со столбцами: Наименование, Дней на складе

Необходимо его изменить: добавить колонки, в которых отображалась инфонмация о днях на складе в зависимости от колличества дней, т.е.:
Наименование - 120 дней на складе - 180 дней на складе - 360 дней на складе

Как его можно привести к такому виду?
Пытался добавлять колонки, но такого параметра, как колличество дней на складе нет, а выражением не дает.

 i 

Ознакомьтесь с правилами. Перенесено.
 


Сообщение отредактировал MATEVI - 08.09.12, 16:30

Vofka Подменю пользователя
сообщение 09.09.12, 10:16
Сообщение #2

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13962
Из: Киев
Спасибо сказали: 4524 раз
Рейтинг: 3647.7

Выполнить 3 запроса к остаткам на нужные даты и результаты соедить.

sava1 Подменю пользователя
сообщение 10.09.12, 7:12
Сообщение #3

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2698
Из: Проскуров
Спасибо сказали: 684 раз
Рейтинг: 663.3

Цитата(Vofka @ 09.09.12, 11:16) *
Выполнить 3 запроса к остаткам на нужные даты и результаты соедить.


в Екселе !

Vofka Подменю пользователя
сообщение 10.09.12, 8:23
Сообщение #4

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13962
Из: Киев
Спасибо сказали: 4524 раз
Рейтинг: 3647.7

Цитата(sava1 @ 10.09.12, 8:12) *
в Екселе !

Не понял.

Batchir Подменю пользователя
сообщение 10.09.12, 9:23
Сообщение #5

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0

А я понял.
Понял что для оказания помощи:
1. нужно знать что за конфигурация.
2. нужно видеть текст запроса, т.к. консоль отчетов используется для написания своих отчетов, и что там у ТС известно только одному ТС.

pqrst Подменю пользователя
сообщение 10.09.12, 10:00
Сообщение #6

Молчаливый
*
Группа: Пользователи
Сообщений: 6
Спасибо сказали: 1 раз
Рейтинг: 0

Согласен что для решения вопроса надо прояснить ситуацию. Конфигурация УПП 1.3.14.3

А вот текст запроса:

ВЫБРАТЬ
    ДопХарактеристика.Значение КАК Поставщик,
    ОстаткиРезервы.Номенклатура КАК Номенклатура,
    ОстаткиРезервы.СерияНоменклатуры КАК СерияНоменклатуры,
    ОстаткиРезервы.ДокументРезерваСоСклада КАК ДокументРезерваСоСклада,
    ОстаткиРезервы.ДнейНаСкладе,
    ОстаткиРезервы.КоличествоОстаток КАК КоличествоОстаток,
    ОстаткиРезервы.РезервНаСкладе КАК РезервНаСкладе,
    ОстаткиРезервы.КоличествоОстаток - ОстаткиРезервы.РезервНаСкладе КАК СвободныйОстаток,
    ОстаткиРезервы.ЗаказаноПоставщику КАК ЗаказаноПоставщику,
    ОстаткиРезервы.РазмещеноВЗаказахПоставщику КАК РазмещеноВЗаказахПоставщику,
    ОстаткиРезервы.ЗаказаноПоставщику - ОстаткиРезервы.РазмещеноВЗаказахПоставщику КАК ОстатокРазмещения,
    ОстаткиРезервы.КоличествоОстаток - ОстаткиРезервы.РезервНаСкладе + ОстаткиРезервы.ЗаказаноПоставщику - ОстаткиРезервы.РазмещеноВЗаказахПоставщику КАК ОбщийСвободныйОстаток
ИЗ
    (ВЫБРАТЬ
        ТоварыНаСкладахОстатки.Склад КАК Склад,
        ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
        ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
        ТоварыНаСкладахОстатки.СерияНоменклатуры КАК СерияНоменклатуры,
        НЕОПРЕДЕЛЕНО КАК ДокументРезерваСоСклада,
        ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток,
        0 КАК РезервНаСкладе,
        0 КАК ЗаказаноПоставщику,
        0 КАК РазмещеноВЗаказахПоставщику,
        РАЗНОСТЬДАТ(ТоварыНаСкладахОстатки.СерияНоменклатуры.ДатаПрихода, &ДатаКон, ДЕНЬ) КАК ДнейНаСкладе
    ИЗ
        РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаКон, Склад = &Склад) КАК ТоварыНаСкладахОстатки
    
    ОБЪЕДИНИТЬ ВСЕ
    
    ВЫБРАТЬ
        ТоварыВРезервеНаСкладахОстатки.Склад,
        ТоварыВРезервеНаСкладахОстатки.Номенклатура,
        ТоварыВРезервеНаСкладахОстатки.ХарактеристикаНоменклатуры,
        ТоварыВРезервеНаСкладахОстатки.СерияНоменклатуры,
        ТоварыВРезервеНаСкладахОстатки.ДокументРезерва,
        0,
        ТоварыВРезервеНаСкладахОстатки.КоличествоОстаток,
        0,
        0,
        0
    ИЗ
        РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&ДатаКон, ) КАК ТоварыВРезервеНаСкладахОстатки
    
    ОБЪЕДИНИТЬ ВСЕ
    
    ВЫБРАТЬ
        ВложенныйЗапрос.ЗаказПоставщику.Склад,
        ВложенныйЗапрос.Номенклатура,
        ВложенныйЗапрос.ХарактеристикаНоменклатуры,
        НЕОПРЕДЕЛЕНО,
        ВложенныйЗапрос.ЗаказПокупателя,
        0,
        0,
        ВложенныйЗапрос.ЗаказаноПоставщику,
        ВложенныйЗапрос.РазмещеноВЗаказахПоставщику,
        0
    ИЗ
        (ВЫБРАТЬ
            ЗаказыПоставщикамОстатки.Номенклатура КАК Номенклатура,
            ЗаказыПоставщикамОстатки.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
            ЗаказыПоставщикамОстатки.ЗаказПоставщику КАК ЗаказПоставщику,
            НЕОПРЕДЕЛЕНО КАК ЗаказПокупателя,
            ЗаказыПоставщикамОстатки.КоличествоОстаток КАК ЗаказаноПоставщику,
            0 КАК РазмещеноВЗаказахПоставщику
        ИЗ
            РегистрНакопления.ЗаказыПоставщикам.Остатки(&ДатаКон, ЗаказПоставщику.ДатаПоступления МЕЖДУ &ДатаВПути1 И &ДатаВПути2) КАК ЗаказыПоставщикамОстатки
        
        ОБЪЕДИНИТЬ ВСЕ
        
        ВЫБРАТЬ
            РазмещениеЗаказовПокупателейОстатки.Номенклатура,
            РазмещениеЗаказовПокупателейОстатки.ХарактеристикаНоменклатуры,
            РазмещениеЗаказовПокупателейОстатки.ЗаказПоставщику,
            РазмещениеЗаказовПокупателейОстатки.ЗаказПокупателя,
            0,
            РазмещениеЗаказовПокупателейОстатки.КоличествоОстаток
        ИЗ
            РегистрНакопления.РазмещениеЗаказовПокупателей.Остатки(&ДатаКон, ) КАК РазмещениеЗаказовПокупателейОстатки) КАК ВложенныйЗапрос) КАК ОстаткиРезервы
        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            ЗначенияСвойствОбъектов.Значение КАК Значение,
            ЗначенияСвойствОбъектов.Объект КАК Объект
        ИЗ
            РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
        ГДЕ
            ЗначенияСвойствОбъектов.Свойство.Ссылка = &СвойствоПоставщика) КАК ДопХарактеристика
        ПО ОстаткиРезервы.ХарактеристикаНоменклатуры = ДопХарактеристика.Объект
ГДЕ
    ОстаткиРезервы.Номенклатура В ИЕРАРХИИ(&Номенклатура)

СГРУППИРОВАТЬ ПО
    ОстаткиРезервы.ДнейНаСкладе,
    ДопХарактеристика.Значение,
    ОстаткиРезервы.Номенклатура,
    ОстаткиРезервы.СерияНоменклатуры,
    ОстаткиРезервы.ДокументРезерваСоСклада,
    ОстаткиРезервы.КоличествоОстаток,
    ОстаткиРезервы.РезервНаСкладе,
    ОстаткиРезервы.ЗаказаноПоставщику,
    ОстаткиРезервы.РазмещеноВЗаказахПоставщику


Временно настроил отчет на отбор по параметрам с изменением цвета, но не думаю что в таком виде он будет принят.

Batchir Подменю пользователя
сообщение 10.09.12, 10:15
Сообщение #7

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0

Насколько я понял Вы хотите видеть что-то типа
Номенклара ___ 120-180 дней на складе ___ 180-360 дней на складе ___ более 360 дней на складе
Товар 1________1__________________________0_______________________0
Товар 2________0__________________________1_______________________0
Товар 3________0__________________________0_______________________1

?

Сообщение отредактировал Batchir - 10.09.12, 10:17

pqrst Подменю пользователя
сообщение 10.09.12, 10:19
Сообщение #8

Молчаливый
*
Группа: Пользователи
Сообщений: 6
Спасибо сказали: 1 раз
Рейтинг: 0

именно так, но еще там надо усложнить условием:
если закупка плановая и на складе больше 120 дней то в первый столбец, если бльше 180 то во второй столбец.

Вот как эти отборы делать, не знаю. Читал все выходные про СКД, но еще не до конца разобрался с объединением запросов.
Я так понимаю что надо результат запроса делать одной виртуальной таблицей и из нее вытягивать в результирующую.

sava1 Подменю пользователя
сообщение 10.09.12, 10:37
Сообщение #9

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2698
Из: Проскуров
Спасибо сказали: 684 раз
Рейтинг: 663.3

ВЫБРАТЬ
    ....    
    ОстаткиРезервы.ДнейНаСкладе,

Добавить
CASe WHEN ОстаткиРезервы.ДнейНаСкладе < 180 THEN ОстаткиРезервы.ДнейНаСкладе ELSE 0 END as Days1,
CASe WHEN ОстаткиРезервы.ДнейНаСкладе > 180 AND ОстаткиРезервы.ДнейНаСкладе < 360 THEN ОстаткиРезервы.ДнейНаСкладе ELSE 0 END as Days2,
CASe WHEN ОстаткиРезервы.ДнейНаСкладе > 360 THEN ОстаткиРезервы.ДнейНаСкладе ELSE 0 END as Days3,

или в скд использовать Вычисляемые поля, в которые вписать это-же текст



 ! 

Выделяйте код! Или будем удалять
 


Сообщение отредактировал MATEVI - 10.09.12, 11:01

Batchir Подменю пользователя
сообщение 10.09.12, 10:37
Сообщение #10

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3568
Из: Киев
Спасибо сказали: 1427 раз
Рейтинг: 0

Нужно добавить несколько расчетных количеств и заполнять их, с помощью конструкции Выбор

"Выбор Когда (ОстаткиРезервы.ДнейНаСкладе >= 120 И ОстаткиРезервы.ДнейНаСкладе < 180)
            ИЛИ (ЗакупкаПлановая И ОстаткиРезервы.ДнейНаСкладе >= 120) Тогда
<КоличествоОстатка>
Иначе 0
Конец КАК Колво120

Выбор Когда ОстаткиРезервы.ДнейНаСкладе >= 180 И ОстаткиРезервы.ДнейНаСкладе < 360 И Не ЗакупкаПлановая Тогда
<Количествоостатки>
Иначе 0
Конец КАК Колво180

Выбор Когда ОстаткиРезервы.ДнейНаСкладе >= 360 И Не ЗакупкаПлановая Тогда
<Количествоостатки>
Иначе 0
Конец КАК Колво360"


Текст писался от руки и является примером для решения задачи
ЗакупкаПлановая - это вы сами должны определять в тесте запроса

Сообщение отредактировал Batchir - 10.09.12, 10:41

pqrst Подменю пользователя
сообщение 10.09.12, 10:39
Сообщение #11

Молчаливый
*
Группа: Пользователи
Сообщений: 6
Спасибо сказали: 1 раз
Рейтинг: 0

Спасибо! Буду пробовать!
Если что отпишусь!
Прошу прощения за возможно глупые вопросы.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 25.06.24, 6:39
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!