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

Хранилище

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

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



> Разное значение в запросе и СКД , Делаю запрос(пакет), переношу в компановку - другие значения          
alexandr_f Подменю пользователя
сообщение 14.09.17, 13:13
Сообщение #1

Завсегдатай
****
Группа: Пользователи
Сообщений: 192
Из: Украина
Спасибо сказали: 3 раз
Рейтинг: 3

1с 8 УПП.
Делаю запрос - муторошный.
Код
ВЫБРАТЬ
    ПодразделенияОрганизаций.Ссылка,
    ПодразделенияОрганизаций.Родитель,
    ПодразделенияОрганизаций.Код,
    ПодразделенияОрганизаций.Наименование
ПОМЕСТИТЬ Подразделения
ИЗ
    Справочник.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций
ГДЕ
    ПодразделенияОрганизаций.Ссылка В ИЕРАРХИИ
            (ВЫБРАТЬ
                СИЗСпецУсловияПодразделения.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций
            ИЗ
                Справочник.СИЗСпецУсловия.Подразделения КАК СИЗСпецУсловияПодразделения)
;

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

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    НЕТССЫЛКИ.Ссылка,
    НЕТССЫЛКИ.ПодразделенияОрганизаций
ПОМЕСТИТЬ СПЕЦПОДРАЗДЕЛЕНИЯ
ИЗ
    НЕТССЫЛКИ КАК НЕТССЫЛКИ

ОБЪЕДИНИТЬ

ВЫБРАТЬ
    ЕСТЬССЫЛКА.Ссылка,
    ЕСТЬССЫЛКА.ПодразделенияОрганизаций
ИЗ
    ЕстьССЫЛКА КАК ЕСТЬССЫЛКА
;

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

ОБЪЕДИНИТЬ

ВЫБРАТЬ
    НормыВыдачиСпецодеждыСпецодежда.Наименование,
    НормыВыдачиСпецодеждыСпецодежда.Требования.Наименование + "(" + (ВЫРАЗИТЬ(НормыВыдачиСпецодеждыСпецодежда.Требования.Расшифровка КАК СТРОКА(500))) + ")",
    ЦехадляСИЗЦеха.Ссылка,
    СотрудникиОрганизаций.ТекущаяДолжностьОрганизации,
    СотрудникиОрганизаций.ТекущееПодразделениеОрганизации,
    НормыВыдачиСпецодеждыСпецодежда.Ссылка,
    ВЫБОР
        КОГДА НормыВыдачиСпецодеждыСпецодежда.СрокНоски.дней = ЛОЖЬ
                И (НормыВыдачиСпецодеждыСпецодежда.СрокНоски.КоличествоМесяцев = 0
                    ИЛИ НормыВыдачиСпецодеждыСпецодежда.СрокНоски.КоличествоМесяцев > 12)
            ТОГДА 360
        КОГДА НормыВыдачиСпецодеждыСпецодежда.СрокНоски.дней = ЛОЖЬ
            ТОГДА НормыВыдачиСпецодеждыСпецодежда.СрокНоски.КоличествоМесяцев * 30
        КОГДА НормыВыдачиСпецодеждыСпецодежда.СрокНоски.КоличествоМесяцев = 0
            ТОГДА 360
        ИНАЧЕ НормыВыдачиСпецодеждыСпецодежда.СрокНоски.КоличествоМесяцев
    КОНЕЦ,
    НормыВыдачиСпецодеждыСпецодежда.СпецУсловия,
    НормыВыдачиСпецодеждыСпецодежда.Требования.Расшифровка,
    НормыВыдачиСпецодеждыСпецодежда.СрокНоски,
    НормыВыдачиСпецодеждыСпецодежда.Требования.Наименование,
    СотрудникиОрганизаций.Ссылка
ИЗ
    Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.НормыВыдачиСпецодежды.ДолжностиОрганизаций КАК НормыВыдачиСпецодеждыДолжностиОрганизаций
            ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.НормыВыдачиСпецодежды.Спецодежда КАК НормыВыдачиСпецодеждыСпецодежда
            ПО НормыВыдачиСпецодеждыДолжностиОрганизаций.Ссылка = НормыВыдачиСпецодеждыСпецодежда.Ссылка
        ПО СотрудникиОрганизаций.ТекущаяДолжностьОрганизации = НормыВыдачиСпецодеждыДолжностиОрганизаций.ДолжностиОрганизаций
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЦехадляСИЗ.Цеха КАК ЦехадляСИЗЦеха
        ПО СотрудникиОрганизаций.ТекущееПодразделениеОрганизации = ЦехадляСИЗЦеха.Подразделения
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ СПЕЦПОДРАЗДЕЛЕНИЯ КАК СПЕЦПОДРАЗДЕЛЕНИЯ
        ПО СотрудникиОрганизаций.ТекущееПодразделениеОрганизации = СПЕЦПОДРАЗДЕЛЕНИЯ.ПодразделенияОрганизаций
            И (НормыВыдачиСпецодеждыСпецодежда.СпецУсловия = СПЕЦПОДРАЗДЕЛЕНИЯ.Ссылка)
ГДЕ
    СотрудникиОрганизаций.ДатаУвольнения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
    И СотрудникиОрганизаций.ВидЗанятости В(&видзанятости)
    И СотрудникиОрганизаций.ВидДоговора = &виддоговора
    И НормыВыдачиСпецодеждыСпецодежда.СпецУсловия <> ЗНАЧЕНИЕ(Справочник.СИЗСПЕцУсловия.ПустаяСсылка)

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    НормыВыдачиСпецодеждыСпецодежда.Цех,
    НормыВыдачиСпецодеждыСпецодежда.Наименование,
    НормыВыдачиСпецодеждыСпецодежда.Требования,
    НормыВыдачиСпецодеждыСпецодежда.дней,
    КОЛИЧЕСТВО(НормыВыдачиСпецодеждыСпецодежда.Наименование) КАК Количество
ПОМЕСТИТЬ НАБОР
ИЗ
    НормыВыдачиСпецодеждыСпецодежда КАК НормыВыдачиСпецодеждыСпецодежда

СГРУППИРОВАТЬ ПО
    НормыВыдачиСпецодеждыСпецодежда.Наименование,
    НормыВыдачиСпецодеждыСпецодежда.Требования,
    НормыВыдачиСпецодеждыСпецодежда.дней,
    НормыВыдачиСпецодеждыСпецодежда.Цех
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    НАБОР.Цех,
    НАБОР.Наименование,
    НАБОР.Требования,
    НАБОР.дней,
    Набор.Количество*360 /дней  КАК Надо

ПОМЕСТИТЬ Потребность
ИЗ
    НАБОР КАК НАБОР
;    
ВЫБРАТЬ
    Набор.Цех,
    Набор.Наименование,
    Набор.Требования,
    СУММА(Надо) КАК Потребность
ИЗ
    Потребность КАК Набор

СГРУППИРОВАТЬ ПО
    Набор.Наименование,
    Набор.Требования,
    Набор.Цех

Отлаживаю его
Потом переношу его один к одному в отчет - и другие значения. Такое ощущения что
    КОЛИЧЕСТВО(НормыВыдачиСпецодеждыСпецодежда.Наименование) КАК Количество

не вычисляет.
Я не очень понимаю различия. Что надо поменять?

Сообщение отредактировал Vofka - 14.09.17, 13:28

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


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

 

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