Форум программистов, компьютерный форум, киберфорум
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
4 / 0 / 0
Регистрация: 10.02.2020
Сообщений: 67
1C 8.x

Добавить в исключение одного сотрудника в запросе

11.08.2021, 14:28. Показов 803. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Есть такой запрос!
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
   Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    Начисления.Сотрудник КАК Сотрудник,
        |    ЕСТЬNULL(Начисления.ОтработаноЧасов, 0) КАК ОтработаноЧасов,
        |    Начисления.Регистратор КАК Регистратор,
        |    Начисления.ВидРасчета КАК ВидРасчета
        |ПОМЕСТИТЬ ВТ_Часы
        |ИЗ
        |    РегистрРасчета.Начисления КАК Начисления
        |ГДЕ
        |    Начисления.ВидРасчета.ВидВремени = &ВидВремени
        |;
        |
        |////////////////////////////////////////////////////////////­////////////////////
        |ВЫБРАТЬ
        |    БухучетРаспределениеОсновногоЗаработка.Сотрудник КАК Сотрудник,
        |    БухучетРаспределениеОсновногоЗаработка.СтатьяФинансирования КАК СтатьяФинансирования,
        |    БухучетРаспределениеОсновногоЗаработка.СпособОтраженияЗарплатыВБухучете КАК СпособОтраженияЗарплатыВБухучете,
        |    БухучетРаспределениеОсновногоЗаработка.ДоляРаспределения КАК ДоляРаспределения
        |ПОМЕСТИТЬ ВТ_Доля
        |ИЗ
        |    РегистрСведений.БухучетРаспределениеОсновногоЗаработка КАК БухучетРаспределениеОсновногоЗаработка
        |ГДЕ
        |    БухучетРаспределениеОсновногоЗаработка.ПериодРегистрации МЕЖДУ &НачПериода И &КонПериода
        |;
        |
        |////////////////////////////////////////////////////////////­////////////////////
        |ВЫБРАТЬ
        |    БухучетНачисленияУдержанияПоСотрудникам.Сотрудник КАК Сотрудник,
        |    БухучетНачисленияУдержанияПоСотрудникам.СпособОтраженияЗарплатыВБухучете КАК СпособОтраженияЗарплатыВБухучете,
        |    БухучетНачисленияУдержанияПоСотрудникам.СтатьяФинансирования КАК СтатьяФинансирования,
        |    БухучетНачисленияУдержанияПоСотрудникам.Сумма КАК Сумма,
        |    ЕСТЬNULL(ВТ_Часы.ОтработаноЧасов * ВТ_Доля.ДоляРаспределения / 100, 0) КАК Часы
        |ИЗ
        |    РегистрНакопления.БухучетНачисленияУдержанияПоСотрудникам КАК БухучетНачисленияУдержанияПоСотрудникам
        |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Часы КАК ВТ_Часы
        |        ПО БухучетНачисленияУдержанияПоСотрудникам.Сотрудник = ВТ_Часы.Сотрудник
        |            И БухучетНачисленияУдержанияПоСотрудникам.Регистратор = ВТ_Часы.Регистратор
        |            И БухучетНачисленияУдержанияПоСотрудникам.НачислениеУдержание = ВТ_Часы.ВидРасчета
        |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Доля КАК ВТ_Доля
        |        ПО БухучетНачисленияУдержанияПоСотрудникам.Сотрудник = ВТ_Доля.Сотрудник
        |            И БухучетНачисленияУдержанияПоСотрудникам.СтатьяФинансирования = ВТ_Доля.СтатьяФинансирования
        |            И БухучетНачисленияУдержанияПоСотрудникам.СпособОтраженияЗарплатыВБухучете = ВТ_Доля.СпособОтраженияЗарплатыВБухучете
        |ГДЕ
        |   ВЫБОР 
        |    КОГДА БухучетНачисленияУдержанияПоСотрудникам.Сотрудник = &Сотрудник ТОГДА
        |    БухучетНачисленияУдержанияПоСотрудникам.СпособОтраженияЗарплатыВБухучете.Наименование ПОДОБНО ""%Способ2%""
        |    ИНАЧЕ
        |    БухучетНачисленияУдержанияПоСотрудникам.СпособОтраженияЗарплатыВБухучете = &Способ 
        |КОНЕЦ
        |    И БухучетНачисленияУдержанияПоСотрудникам.Период МЕЖДУ &НачПериода И &КонПериода
        |    И БухучетНачисленияУдержанияПоСотрудникам.НачислениеУдержание.ВклВРаспределениеПЭО"; 
    Запрос.УстановитьПараметр("Способ", Объект.Проект);
    Запрос.УстановитьПараметр("НачПериода",НачалоМесяца(Объект.Дата));
    Запрос.УстановитьПараметр("КонПериода",КонецМесяца(Объект.Дата));
    Запрос.УстановитьПараметр("ВидВремени",Перечисления.ВидыРабочегоВремениСотрудников.ОтработанноеВПределахНормы);
    Запрос.УстановитьПараметр("Сотрудник",Справочники.Сотрудники.НайтиПоКоду("ПА2"));
    
    ВыборкаДетальныеЗаписи = Запрос.Выполнить().Выгрузить();
    
    Объект.ФОТ.Загрузить(ВыборкаДетальныеЗаписи);

Как работает этот запрос, есть самописный документ, в этом документе выведены сотрудники, СпособОтраженияЗарплатыВБухучете и доля в том или ином способе. Запрос в целом работает как нужно, но мне нужно добавить еще одного сотрудника, у которого СпособОтраженияЗарплатыВБухучете не тот который отображен в поле Объект.Проект.
В этом документе 35 человек имеет СпособОтраженияЗарплатыВБухучет - Способ, и еще 10 со Способ2, в их числе и сотрудник с кодом ПА2. Если у меня код написан так
1C
1
БухучетНачисленияУдержанияПоСотрудникам.СпособОтраженияЗарплатыВБухучете = &Способ
, то выводится 35 сотрудников, если так:
1C
1
2
3
4
5
6
ВЫБОР 
        |    КОГДА БухучетНачисленияУдержанияПоСотрудникам.Сотрудник = &Сотрудник ТОГДА
        |    БухучетНачисленияУдержанияПоСотрудникам.СпособОтраженияЗарплатыВБухучете.Наименование ПОДОБНО ""%Способ2%""
        |    ИНАЧЕ
        |    БухучетНачисленияУдержанияПоСотрудникам.СпособОтраженияЗарплатыВБухучете = &Способ 
        |КОНЕЦ
то тоже 35, а должно быть 36, должен добавиться Сотрудник с кодом ПА2. Вопрос, что я делаю не так, почему условие не срабатывает? Как можно решить задачу?

Добавлено через 1 час 12 минут
Вопрос закрыт, разобрался!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.08.2021, 14:28
Ответы с готовыми решениями:

Открытие доступа к ящику lotus одного сотрудника для другого сотрудника средствами сервера lotus notes 8.5
Доброго времени суток! Как открыть доступ к ящику lotus одного сотрудника для другого сотрудника средствами сервера lotus notes 8.5 ? Знаю,...

Запрос - добавить нового сотрудника
Приняли нового сотрудника: 15 Исаев Гончарова 5-23 10-10-10 53

Добавить код сотрудника с DBEdit
Здравствуйте. Помогите, пожалуйста. Есть форма, на ней DBEdit подключенный к БД. Надо добавить код сотрудника методом "предыдущее...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.08.2021, 14:28
Помогаю со студенческими работами здесь

Выбрать все заказы, оформленные на одного сотрудника и отобразить их в DataGridView
Всем привет. Подскажите как сделать такое вот на C# и для моего проекта? Например запрос выбрать все заказы оформленные на одного...

Исключение NotSupportedException при запросе к БД
У меня имеется запрос: IEnumerable<UserViewModel> users = context.Set<User>().Select(u => u.ToUserViewModel()); При попытке работы с...

Исключение xNet.HttpException в POST запросе
Помогите пожалуйста, в чем проблема, запрос проходит с ошибкой 429 Картинка: private void button1_Click_1(object sender,...

Телефонный справочник - как продумать тот момент, что у одного сотрудника может быть несколько телефонов
Приветствую. Вроде тема затерта до дыр вдоль и поперек. Но есть есть у меня еще вопросик. Необходимо написать справочник сотрудников...

Оклад сотрудника предприятия А рублей. Определить заработную плату сотрудника
Оклад сотрудника предприятия А рублей. Определить заработную плату сотрудника, учитывая премию - 25% от оклада, и вычет подоходного...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru