Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
25 Июл 2017, 17:38
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Отчет Шатная расстановка  (Прочитано 645 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Ахтынбей

  • *
  • Сообщений: 3
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-25
  • Сайт: 
  • Профессия: Ученик 1С
Хочу сделать отчет "Штатная расстановка" по форме. Подскажите алгоритм действий. Где брать данные и как их связать. Интересно сделать самому.
Платформа 1С 8.2.19.102, ЗУП 2.5.88.2


Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Интересно сделать самому.
Ну, как бы... если самому - то к чему вопросы? Объяснить алгоритм, принципы связи, источники данных, потом еще и примеры дать - это не называется "сделать самому". Если охота изобретать велосипед - так давате приложите силы самостоятельно.
Все по-чесному.

Оффлайн Андрей Сисюкин

  • *
  • Сообщений: 21
  • РЕПУТАЦИЯ: 9
  • КПД: 43%
  • Регистрация: 2015-12-17
    • Skype: dark_daedal
  • Сайт: 
  • Профессия: Разработчик 1С
Могу предположить, что эти данные можно взять из какой-нибудь базы данных, где они есть.

в данный момент у меня модуль Telepat.dll не загружен - поэтому больше ничего сказать не могу.

Онлайн LexaK

  • *****
  • Сообщений: 1247
  • РЕПУТАЦИЯ: 344
  • КПД: 28%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
данные берете из РС.РаботникиОрганизаций
вот примерный кусок кода (вырезан из большого запроса для примера)
дата1 и дата2 это период нахождения сотрудника в каком-то состоянии, будьте внимательны с состоянием: Перемещение, там засада.
		|ВЫБРАТЬ //первые 1000
| Рег.Сотрудник,
| Рег.Должность,
| Рег.ПодразделениеОрганизации,
| Рег.Период как Дата1,
| ЕстьNull(ТабУв0.Период,ЕстьNull(ТабПер0.Период,ДатаВремя(2100,1,1))) как Дата2, //если конечной даты нет
| ЕстьNull(ТабУв0.ПричинаИзмененияСостояния,ТабПер0.ПричинаИзмененияСостояния) как Причина,
| Рег.ЗанимаемыхСтавок
|поместить Пром
|ИЗ
| РегистрСведений.РаботникиОрганизаций КАК Рег
|
Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн Ахтынбей

  • *
  • Сообщений: 3
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-25
  • Сайт: 
  • Профессия: Ученик 1С
Регистр РаботникиОрганизации не совсем подходит. Мне нужны вакансии и заштатники. Самый простой способ связать рег.ШтанноеРасписание и Спр.Сотрудники по должности и подразделению. Но мне такой вариант не очень нравится. Может еще где-нибудь хранится информация

Последний раз редактировалось: Ахтынбей; 21 Дек 2015, 15:10

Онлайн LexaK

  • *****
  • Сообщений: 1247
  • РЕПУТАЦИЯ: 344
  • КПД: 28%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
ну-ну, можете еще попробовать документы приема на работу запросами анализировать,
там и сотрудники есть, и оклад, и должности!
:btbzdb:
Помогло? - Нажми СПАСИБО!!!
                       :)

Оффлайн Ахтынбей

  • *
  • Сообщений: 3
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2015-11-25
  • Сайт: 
  • Профессия: Ученик 1С
Сейчас пробую связать Рег.ШтатноеРасписание и рег.РаботникиОрганизации, на там связка двойная по подразделению и по должности, что мне кажется не очень хорошо. Хотя вакансии в приказах выбираются именного так (стандартный ЗУП)
Добавлено: 24 Дек 2015, 14:43

После проб и ошибок получился вот такой запрос:
ВЫБРАТЬ
   ШтатноеРасписаниеОрганизацийСрезПоследних.Период,
   ШтатноеРасписаниеОрганизацийСрезПоследних.ПодразделениеОрганизации.Родитель,
   ШтатноеРасписаниеОрганизацийСрезПоследних.ПодразделениеОрганизации КАК ПодразделениеОрганизации,
   ШтатноеРасписаниеОрганизацийСрезПоследних.Должность КАК Должность,
   ЕСТЬNULL(ШтатноеРасписаниеОрганизацийСрезПоследних.КоличествоСтавок, 0) КАК СтавкиПлан,
   РаботникиОрганизацийСрезПоследних.Сотрудник КАК Сотрудник,
   ЕСТЬNULL(РаботникиОрганизацийСрезПоследних.ЗанимаемыхСтавок, 0) КАК СтавкаФакт,
   ВЫБОР
      КОГДА РаботникиОрганизацийСрезПоследних.ПериодЗавершения = ДАТАВРЕМЯ(1, 1, 1)
            ИЛИ РаботникиОрганизацийСрезПоследних.ПериодЗавершения >= &ДатаОтчета
         ТОГДА РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации
      ИНАЧЕ РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизацииЗавершения
   КОНЕЦ КАК ПодразделениеФакт,
   ВЫБОР
      КОГДА РаботникиОрганизацийСрезПоследних.ПериодЗавершения = ДАТАВРЕМЯ(1, 1, 1)
            ИЛИ РаботникиОрганизацийСрезПоследних.ПериодЗавершения >= &ДатаОтчета
         ТОГДА РаботникиОрганизацийСрезПоследних.Должность
      ИНАЧЕ РаботникиОрганизацийСрезПоследних.ДолжностьЗавершения
   КОНЕЦ КАК ДолжностьФакт,
   РаботникиОрганизацийСрезПоследних.ПериодЗавершения
ИЗ
   РегистрСведений.ШтатноеРасписаниеОрганизаций.СрезПоследних(&ДатаОтчета, ) КАК ШтатноеРасписаниеОрганизацийСрезПоследних
      ПОЛНОЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаОтчета, ) КАК РаботникиОрганизацийСрезПоследних
      ПО ШтатноеРасписаниеОрганизацийСрезПоследних.ПодразделениеОрганизации = РаботникиОрганизацийСрезПоследних.ПодразделениеОрганизации
         И ШтатноеРасписаниеОрганизацийСрезПоследних.Должность = РаботникиОрганизацийСрезПоследних.Должность
ГДЕ
   ВЫБОР
         КОГДА РаботникиОрганизацийСрезПоследних.ПериодЗавершения = ДАТАВРЕМЯ(1, 1, 1)
               ИЛИ РаботникиОрганизацийСрезПоследних.ПериодЗавершения >= &ДатаОтчета
            ТОГДА РаботникиОрганизацийСрезПоследних.ЗанимаемыхСтавок
         ИНАЧЕ РаботникиОрганизацийСрезПоследних.ЗанимаемыхСтавокЗавершения
      КОНЕЦ <> 0

УПОРЯДОЧИТЬ ПО
   ПодразделениеОрганизации,
   Должность

Последний раз редактировалось: Ахтынбей; 24 Дек 2015, 14:43. Причина: Объединение сообщений


Теги: отчеты 
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

alex0402
93 Сообщений
oleg-x
83 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
68 Сообщений
Golickoff Golickoff
51 Сообщений
ilyay ilyay
44 Сообщений
AIFrame
42 Сообщений
Амал
30 Сообщений
Dethmontt Dethmontt
22 Сообщений
lansy
22 Сообщений
xproh
21 Сообщений

* Кто онлайн

  • Точка Гостей: 683
  • Точка Скрытых: 0
  • Точка Пользователей: 12
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal