НоваяСтрока. Сотрудник = ВыборкаГрафикРаботы. Сотрудник;

                       

                       ВыборкаДетальныеЗаписи = ВыборкаГрафикРаботы. Выбрать();

                       

                       Пока ВыборкаДетальныеЗаписи. Следующий() Цикл

                               Если ВыборкаДетальныеЗаписи. Значение <> 0 Тогда

                                       НоваяСтрока["д"+Строка(День(ВыборкаДетальныеЗаписи. Дата))] = ВыборкаДетальныеЗаписи. Значение;

                               КонецЕсли;        

                       КонецЦикла;

               КонецЦикла;

       КонецЦикла;

КонецПроцедуры

&НаКлиенте

Процедура Заполнить(Команда)

       ЗаполнитьНаСервере();

КонецПроцедуры

Отчет «Начисления»

ВЫБРАТЬ

       ДополнительныеНачисления. Сотрудник,

НЕ нашли? Не то? Что вы ищете?

       ДополнительныеНачисления. Подразделение,

       ДополнительныеНачисления. ВидРасчета,

       ДополнительныеНачисления. ПериодРегистрации КАК Период,

       ДополнительныеНачисления. Результат

ИЗ

       РегистрРасчета. ДополнительныеНачисления КАК ДополнительныеНачисления

ГДЕ

       ДополнительныеНачисления. ПериодРегистрации МЕЖДУ &НачалоПериода И &КонецПериода

Обработка «ЗаполнениеГрафика»

Рекв: ГрафикРаботы (вынести на форму)

Процедура ЗаполнитьГрафик(ДатаНачала, ДатаОкончания, ВыходныеДни) Экспорт

       

       Набор = РегистрыСведений. ГрафикиРаботы. СоздатьНаборЗаписей();

       Набор. Отбор. ГрафикРаботы. Установить(ГрафикРаботы);

       

       Набор. Прочитать();

       

       ЧислоСекундВСутках = 86400;

       

       Дат = ДатаНачала;

       Для к = 0 По Набор. Количество()-1 Цикл

               

               Запись = Набор[к];

               Если Запись. Дата < ДатаНачала Тогда

                Продолжить;

               ИначеЕсли Запись. Дата =Дат Тогда

                       Если Найти(ВыходныеДни, Строка(ДеньНедели(Дат))) Тогда

                               Запись. Значение = 0;

                       Иначе        

                               Запись. Значение = 8;

                       КонецЕсли;

                       Дат = Дат + ЧислоСекундВСутках;

               Иначе

                       Пока Дат < Мин(Запись. Дата, ДатаОкончания) Цикл

                               НоваяЗапись = Набор. Добавить();

                               НоваяЗапись. Дата = Дат;

                               НоваяЗапись. ГрафикРаботы = ГрафикРаботы;

                               Если Найти(ВыходныеДни, Строка(ДеньНедели(Дат))) Тогда

                                       НоваяЗапись. Значение = 0;

                               Иначе        

                                       НоваяЗапись. Значение = 8;

                               КонецЕсли;

                               Дат = Дат + ЧислоСекундВСутках;

                       КонецЦикла;

                       Если Запись. Дата > ДатаОкончания Тогда

                               Прервать;

                       Иначе

                               Если Найти(ВыходныеДни, Строка(ДеньНедели(Дат))) Тогда

                                       Запись. Значение = 0;

                               Иначе        

                                       Запись. Значение = 8;

                               КонецЕсли;

                       КонецЕсли;

                       Дат = Дат + ЧислоСекундВСутках;

               КонецЕсли;

       КонецЦикла;

       Набор. Записать();

       

       Пока Дат <= ДатаОкончания Цикл

               Запись = Набор. Добавить();

               Запись. Дата = Дат;

               Запись. ГрафикРаботы = ГрафикРаботы;

               Если Найти(ВыходныеДни, Строка(ДеньНедели(Дат))) Тогда

                       Запись. Значение = 0;

               Иначе        

                       Запись. Значение = 8;

               КонецЕсли;

               Дат = Дат + ЧислоСекундВСутках;

       КонецЦикла;

       Набор. Записать();

КонецПроцедуры

ПВР «ДополнительныеНачисления»

РС «ГрафикиРаботы» (непериод, независ)

РС «СведенияОСотрудниках» (день, независ)

РС «ПроцентПремии» (месяц, независ)

РН «ДанныеТабеля» (Обороты)

Изм: Сотрудник, подразделение, видРасчета Рес: Значение

РР «ДополнительныеНачисления»


ВР

формула

вытесн

базов

ведущ

Оклад

БО*факт(час)

-

-

-

доп

Премия

Оклад(этот месс)*%

-

Оклад

Оклад

доп

Невыход

-

-

-

-

доп


Бизнес-процесс


Сотрудник

Подразделение

Должность

Мишина

Бухгалтерия

Бухгалтер

Кротов

Бухгалтерия

Бухгалтер

Иванов

Бухгалтерия

Гл. бухгалтер

Онопко

Отдел закупок

Начальник отдела

Петренко

Отдел закупок

Зам. начальника отдела

Коваленко

Отдел закупок

Зам. начальника отдела

Бельдыев

Отдел закупок

Менеджер

Рахимов

Отдел закупок

Менеджер

Мансуров

Отдел закупок

Менеджер

Жупиков

Отдел закупок

Кладовщик

Халиков

Отдел закупок

Кладовщик

Галкин

Отдел продаж

Менеджер

Бельдыев

Отдел продаж

Менеджер

Халиков

Отдел продаж

Кладовщик

Лоханкина

Отдел продаж

Кладовщик


1) ПараметрыСеанса: ТекущийПользователь

В модуле Сеанса:

Процедура УстановкаПараметровСеанса(ТребуемыеПараметры)

       ТекПользователь= Справочники. ФизическиеЛица. НайтиПоНаименованию(ИмяПользователя(),Истина);

       Если Исполнитель = Справочники. ФизическиеЛица. ПустаяСсылка() Тогда

               НовыйЭлемент = Справочники. ФизическиеЛица. СоздатьЭлемент();

               НовыйЭлемент. Наименование = ИмяПользователя();

               НовыйЭлемент. Записать();

               ТекПользователь= НовыйЭлемент;

       КонецЕсли;

       ПараметрыСеанса. ТекущийПользователь = ТекПользователь;

КонецПроцедуры

2) Роль: ПолныеПрава

Добавить разрешение на все объекты

3) Добавляем пользователя

указываем роль полные права

4) РС «РегистрАдресации»

4) Создаем Задачу «Задача»

Связываем задачу (РеквизитыАдресации) и РС (в свойствах)

Создаем ФормуСписка:

Для списка меняем таблицу: «ПоИсполнителю»

Добавляем команду «Все задачи»

&НаСервере

Процедура ВсеЗадачиНаСервере()

       Если Список. ОсновнаяТаблица = "Задача. Задача. ЗадачиПоИсполнителю" Тогда

               Список. ОсновнаяТаблица = "Задача. Задача";

               Заголовок = "Все задачи";

               ЭтаФорма. Элементы. ФормаВсеЗадачи. Заголовок = "По исполнителю";

       Иначе

               Список. ОсновнаяТаблица = "Задача. Задача. ЗадачиПоИсполнителю";

               Заголовок = "Задачи пользователя";

               ЭтаФорма. Элементы. ФормаВсеЗадачи. Заголовок = "Все задачи";

       КонецЕсли;

КонецПроцедуры

&НаКлиенте

Процедура ВсеЗадачи(Команда)

       ВсеЗадачиНаСервере();

КонецПроцедуры

5) Справочник «Должности», заполняем предопределенные

6) Создаем БП «ПоступлениеТовара» связываем с задачей

7) Рисуем карту БП (назначаем адресацию)

8)Создаем форму Бизнес-процесса

На форму добавляем рекв: КартаМаршрута(ГрафическаяСхема) и команду «ОбновитьКарту»

&НаСервере

Процедура ОбновитьКартуНаСервере()

       БизнесПроцесс = РеквизитФормыВЗначение("Объект");

       КартаМаршрута = БизнесПроцесс. ПолучитьКартуМаршрута();

КонецПроцедуры

&НаКлиенте

Процедура ОбновитьКарту(Команда)

       ОбновитьКартуНаСервере();

КонецПроцедуры

&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

       ОбновитьКартуНаСервере();

КонецПроцедуры

9)Составляем таблицу адресации, заносим в регистр адресации

10)Выносим ФормуСписка Задачи на рабочую область начальной страницы


Действие

Сотрудник

Подразделение

Должность

Заявка Товара

Бельдыев

Отдел закупок

Менеджер

Рахимов

Отдел закупок

Менеджер

Мансуров

Отдел закупок

Менеджер

Оплата

Иванов

Прием Товара

Жупиков

Кладовщик

Халиков

Кладовщик

Лоханкина

Кладовщик


Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8