Специальная оценка условий труда по штатному расписанию в УПП

Публикация № 1158066

Разработка - Практика программирования

Доработка СОУТ УПП Зарплата Страховые взносы

В типовой конфигурации УПП специальная оценка условий труда (СОУТ) устанавливается для должности. В статье описаны доработки, необходимые для установки СОУТ на запись штатного расписания, т. е. по должности и подразделению (с периодичностью). Для нашей организации эти доработки оказались востребованы. Проверялось на версиях УПП 1.3.121.1 - 1.3.127.1, аналогичные доработки можно применить и к ЗУП 2.5.

В конфигурацию необходимо внести следующие изменения:

1. В регистре сведений "ШтатноеРасписаниеОрганизаций" добавляем ресурсы:

"КлассУсловийТруда" (тип ПеречислениеСсылка.КлассыУсловийТрудаПоРезультатамСпециальнойОценки);

"ВзимаютсяВзносыЗаЗанятыхНаРаботахСДосрочнойПенсией" (тип ПеречислениеСсылка.ВидыРаботСДосрочнойПенсией);

Размещаем ресурсы на форме записи:

 

 

При желании можете изменять видимость полей в зависимости от константы "ИспользуютсяРаботыСДосрочнойПенсией".

 

2. В общем модуле "ПроцедурыПерсонифицированногоУчетаПолныеПрава" в функции "ДанныеДляЗаполненияСтажа_2014" необходимо внести такие изменения в запрос:

А. В создание временной таблицы "ВТКадровыеПериоды" (примерно 530 строка функции) добавляем подразделение:

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

Б. В создание временной таблицы "ВТДниСтажаДоОбработкиПараметровИсчСтажа" (примерно 991 строка функции с учетом изменений прошлого этапа) вносим аналогичные изменения:

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

В. Создание временной таблицы "ВТКлассыУсловийТрудаПоДолжностям" (примерно 1135 строка функции с учетом изменений прошлых этапов) нужно изменить довольно сильно:

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

Г. Создание временной таблицы "ВТДниСтажа2014" (примерно 1192 строка функции с учетом изменений прошлых этапов) нужно добавить новое условие соединения:

	|ПОМЕСТИТЬ ВТДниСтажа2014
	|ИЗ
	|	ВТДниСтажаДоОбработкиПараметровИсчСтажа КАК ДниСтажаДоОбработкиПараметровИсчСтажа
	|		ЛЕВОЕ СОЕДИНЕНИЕ ВТКлассыУсловийТрудаПоДолжностям КАК КлассыУсловийТрудаПоДолжностям
	|		ПО ДниСтажаДоОбработкиПараметровИсчСтажа.ДатаКалендаря = КлассыУсловийТрудаПоДолжностям.ДатаКалендаря
	|			И ДниСтажаДоОбработкиПараметровИсчСтажа.Должность = КлассыУсловийТрудаПоДолжностям.Должность
	|
	//+Начало доработки, Описание доработки: СОУТ по штатному расписанию
	|И ДниСтажаДоОбработкиПараметровИсчСтажа.ПодразделениеОрганизации = КлассыУсловийТрудаПоДолжностям.ПодразделениеОрганизации
	//-Конец доработки
	|ИНДЕКСИРОВАТЬ ПО
	|	ОтчетныйПериод,

Д. После запроса (примерно 1272 строка функции с учетом изменений прошлых этапов) добавляем условие периодичности:

	Если УчитыватьОпоздавшиеДанные Тогда
		СтрокаЗамены = "ДатаРегистрацииИзменений <= &ДатаАктуальности";
	Иначе	
		СтрокаЗамены = "НАЧАЛОПЕРИОДА(Период, КВАРТАЛ) >= НАЧАЛОПЕРИОДА(ДатаРегистрацииИзменений, КВАРТАЛ)
	|					ИЛИ ДатаРегистрацииИзменений <= КОНЕЦПЕРИОДА(НачалаПериодовПостоянства.ДатаКалендаря, КВАРТАЛ)";
	КонецЕсли;
	//+Начало доработки, Описание доработки: СОУТ по штатному расписанию
	Если УчитыватьОпоздавшиеДанные Тогда
		СтрокаЗамены = "ШтатноеРасписаниеОрганизаций.Период <= &ДатаАктуальности";
	Иначе	
		СтрокаЗамены = "НАЧАЛОПЕРИОДА(Период, КВАРТАЛ) >= НАЧАЛОПЕРИОДА(ШтатноеРасписаниеОрганизаций.Период, КВАРТАЛ)
	|					ИЛИ ШтатноеРасписаниеОрганизаций.Период <= КОНЕЦПЕРИОДА(НачалаПериодовПостоянства.ДатаКалендаря, КВАРТАЛ)";
	КонецЕсли;
	//-Конец доработки
	ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеВключенияДанных", СтрокаЗамены);

3. В модуле документа "ОтражениеЗарплатыВРеглУчете" в функции "ПолучитьДанныеУчетаСтраховыхВзносов2017" необходимо внести аналогичные изменения в запрос:

А. Создаем новую временную таблицу "ВТ_ОсобыеУсловияПоШтатке_Отражение" (примерно 592 строка функции). Запрос не самый оптимальный, его вполне можно улучшить:

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

Б. Изменяем временную таблицу "ВТСотрудники" (примерно 662 строка функции с учетом прошлого этапа), подсовываем в запрос наш ресурс вместо реквизита должности:

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

Остается только заполнить штатное расписание и следить за его актуальностью.

Как видите, доработка довольно громоздкая но ничего сложного в ней нет.

Надеюсь, эта статья кому-нибудь пригодится и сэкономит немного времени в Новом году.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Craig 264 28.12.19 20:43 Сейчас в теме
Лет 7 тому назад, когда внедрял ЗУП Корп 2.5, мы наоборот отказались от информации в штатному расписании в пользу должности. И доработок было значительно меньше. Объяснялось тем, отдел охраны труда и отдел труда это разные отделы. Второй момент - аттестация производится рабочего места, а рабочее место равно справочнику должности.
2. sailor-cat 6 29.12.19 05:12 Сейчас в теме
(1) Тоже так думал.
Как оказалось, рабочее место может отличаться в обособленных подразделениях.
3. Craig 264 29.12.19 12:06 Сейчас в теме
(2) Да, они и должны отличаться. В моем случаи разрастался справочник должностей. Мы в наименовании должности включали признаки спецоценки. К сожалению и у меня и у Вас очередной велосипед, только по тому что 1с-ники изначально не продумали как должна работать спецоценка на крупных предприятиях.
4. sailor-cat 6 29.12.19 15:07 Сейчас в теме
(3) Пробовали так делать, но не прокатило. К сожалению, не помню точной причины.
С другой стороны, я не слышал чтобы кто-то уж сильно жаловался именно на этот аспект. Видимо, практически всех устраивает.
5. dock 42 30.12.19 09:33 Сейчас в теме
Закрыть УПП как страшный сон и перейти на ЗУП 3.1!
Конечно тоже не идеально... но всё-таки архитектура более продуманная...
З.Ы. Автору плюс за труды.
Оставьте свое сообщение

См. также

Использование программных перечислений, ч.1: строковые константы Промо

Практика программирования v8 1cv8.cf Бесплатно (free)

Часто ли у вас возникает необходимость в коде выполнять сравнение на строку?

10.12.2016    37790    unichkin    74    

Программная работа с настройками СКД

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Нюансы программной работы с настройками системы компоновки данных в отчетах и динамических списках. Обзор всех видов настроек компоновки. Что в каких случаях правильно применять. В качестве примера рассмотрена работа с отборами и группировками.

27.01.2020    30634    ids79    26    

[СКД] Программное создание схемы компоновки данных

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Сделаем отчет на СКД полностью программно, без использования макета "схема компоновки данных".

15.01.2020    26458    John_d    22    

Последовательности событий при проведении документа 1С. Шпаргалка + про формы + про расширения

Практика программирования v8 Россия Бесплатно (free)

Собрал информацию о событиях/подписках/расширениях в одном месте.

30.12.2019    20141    kuzyara    33    

Вспомогательные инструкции в коде 1С Промо

Практика программирования v8 1cv8.cf Бесплатно (free)

Помогаем редактору кода 1С помогать нам писать и анализировать код.

15.10.2018    30979    tormozit    100    

30 задач. Странных и не очень

Практика программирования v8 Бесплатно (free)

30 задач на знание языка программирования 1С и некоторого поведения платформы. Маленьких. Странных и не очень.

02.12.2019    17667    YPermitin    72    

Как передать IP адрес, который вызвал HTTP запрос в 1C (для веб-сервера Apache)

Практика программирования v8 Бесплатно (free)

Столкнулся с задачей получения IP адреса, который вызывает http сервис 1С. Итак, решение:

22.11.2019    8794    Sibars    19    

Полезные процедуры и функции для программиста

Практика программирования Универсальные функции v8 1cv8.cf Россия Бесплатно (free)

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

07.10.2019    30877    HostHost    40    

Оформление и рефакторинг сложных логических выражений Промо

Практика программирования v8 Россия Бесплатно (free)

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

20.09.2012    78493    tormozit    131    

Таблица значений. Нюансы

Практика программирования v8 Бесплатно (free)

Обзор некоторых аспектов использования общеизвестного инструмента 1С.

01.10.2019    35649    Yashazz    50    

О программе Postman для тестирования API и для чего она нужна 1С-нику

Практика программирования Программное обеспечение (software) v8 Бесплатно (free)

Для чего нужна программа Postman для тестирования API и какая от него польза для 1С-программиста.

24.09.2019    12688    budidich    28    

[Шпаргалка] Программное создание элементов формы

Практика программирования Работа с интерфейсом v8 1cv8.cf Бесплатно (free)

Программное создание практически всех популярных элементов формы.

06.09.2019    55467    rpgshnik    63    

Запись значения в поле ввода/формы со срабатыванием события ПриИзменении Промо

Практика программирования v8 1cv8.cf Россия Бесплатно (free)

Иногда возникает необходимость после записи значения в какое либо поле ввода/формы вызвать для него обработчик события ПриИзменении, а о вызове самого события приходится только мечтать. В этой статье приводится программный способ вызова этого события.

11.07.2007    49048    tormozit    42    

Агрегатные функции СКД, о которых мало кто знает

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Пользуетесь ли Вы всеми возможными агрегатными функциями, которые предоставляет система компоновки данных? Если Вы используете только: СУММА, КОЛИЧЕСТВО, МИНИМУМ, МАКСИМУМ, СРЕДНЕЕ, то эта статья для Вас.

05.09.2019    52545    ids79    54    

Регистры бухгалтерии. Общая информация

Практика программирования Математика и алгоритмы v8 v8::БУ БУ Бесплатно (free)

Общая информация о внутреннем устройстве регистров бухгалтерии.

05.09.2019    30103    YPermitin    24    

Три костыля. Сказ про фокусы в коде

Практика программирования v8 Бесплатно (free)

Три интересных (или странных) костыля в коде, которые могут помочь в повседневных и не очень задачах.

03.09.2019    26049    YPermitin    80    

Как сделать из &НаКлиентеНаСервереБезКонтекста почти &НаКлиентеНаСервере Промо

Практика программирования v8 1cv8.cf Россия Бесплатно (free)

Как сделать метод формы, доступный на клиенте и на сервере одновременно, и сохранить при этом удобство разработки

10.09.2017    45478    tormozit    74    

Отслеживание выполнения фонового задания

Практика программирования Универсальные функции Разработка v8 1cv8.cf Бесплатно (free)

Запуск фонового задания из модуля внешней обработки. Отслеживание выполнения задания в виде прогресса, расположенного на форме.

17.08.2019    32785    ids79    16    

Функции СКД: ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Подробное описание и использование внутренних функций системы компоновки данных: Вычислить, ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив, ВычислитьВыражениеСГруппировкойТаблицаЗначений.

08.08.2019    91182    ids79    51    

Фоновое выполнение кода в 1С - это просто

Практика программирования v8 1cv8.cf Бесплатно (free)

Как легко запускать выполнение в фоне, не прибегая к долгому описанию фоновых процедур.

02.08.2019    38572    avalakh    25    

Выгрузка документа по условию Промо

Практика программирования Разработка v8 Бесплатно (free)

Что делать, если документы нужно выгружать не все подряд, а по какому-то фильтру: статусу, дате, набору условий... А что если он соответствовал этим условиям, а потом перестал? А если потом опять начал? Такие ситуации заставили попотеть не одного программиста.

25.04.2019    16203    m-rv    2    

Разбираемся с параметрами редактирования СКД

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Связь по типу, Параметры выбора, Связи параметров выбора

31.07.2019    25659    json    15    

СКД - наборы данных и связи между ними, создание собственной иерархии, вложенные отчеты

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Набор данных объект. Использование в схеме компоновки нескольких наборов данных. Различные варианты связи наборов: объединение, соединение. Использование иерархии в отчетах на СКД. Создание собственной иерархии, иерархия детальных записей. Использование вложенных схем в отчетах на СКД.

26.07.2019    65427    ids79    12    

СКД - использование расширений языка запросов, секция ХАРАКТЕРИСТИКИ

Инструментарий разработчика Практика программирования v8 v8::СКД Бесплатно (free)

Автоматическое и не автоматическое заполнение полей компоновки данных. Использование расширений языка запросов для СКД «{…}», секция ВЫБРАТЬ, секция ГДЕ, параметры виртуальных таблиц. Автоматизированное использование дополнительных данных в запросе: секция ХАРАКТЕРИСТИКИ.

17.07.2019    37334    ids79    27    

Как прикрутить ГУИД к регистру сведений Промо

Практика программирования Перенос данных из 1C8 в 1C8 Разработка v8 Бесплатно (free)

... и немного теории обмена данными. В частности, разберем боль всех, кто пишет небанальные обмены данными: как набору записей регистра сведений назначить гуид и далее использовать его в обмене для идентификации этого набора.

16.04.2019    20579    m-rv    17    

Регистры сведений. За кулисами

Практика программирования Разработка v8 1cv8.cf Бесплатно (free)

Небольшие заметки по внутреннему устройству регистров сведений.

09.07.2019    26922    YPermitin    14    

"Меньше копипаста!", или как Вася универсальную процедуру писал

Практика программирования Разработка v8 v8::СКД 1cv8.cf Бесплатно (free)

Программист Вася разбирает подход создания универсальных методов на примере программного вывода СКД.

04.07.2019    19956    SeiOkami    50    

Работа с настройками системы компоновки данных

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Варианты отчетов, работа с настройками вариантов: структура группировок, поля отчета, отборы, сортировка, условное оформление, другие настройки, настройки отображения диаграмм.

02.07.2019    51083    ids79    17    

Как сделать запрос на изменение данных Промо

Практика программирования v8 v8::Запросы 1cv8.cf Бесплатно (free)

В статье приведены особенности внутренней архитектуры и примеры работы с расширением языка запросов 1С.

01.06.2018    31304    m-rv    21    

Создание отчетов с помощью СКД - основные понятия и элементы

Практика программирования Математика и алгоритмы v8 v8::СКД Бесплатно (free)

Основные принципы работы СКД. Понятия схемы компоновки и макета компоновки. Описание основных элементов схемы компоновки: наборы данных, поля, вычисляемые поля, ресурсы, параметры.

25.06.2019    55435    ids79    25    

Многопоточное ускорение однопользовательских нагрузок в 1С + Microsoft SQL Server 2017

Практика программирования Производительность и оптимизация (HighLoad) v8 v8::Запросы Бесплатно (free)

Взаимодействие с Microsoft SQL Server нередко вызывает трудности у 1С-ников, а потому интересны любые моменты, связанные с его использованием. О своем опыте работы с новым SQL Server 2017 участникам конференции Infostart-2018 рассказал директор ООО «Аналитика софт» Дмитрий Дудин.

11.06.2019    25922    dmurk    146    

Регистры накопления. Структура хранения в базе данных

Практика программирования Разработка v8 1cv8.cf Бесплатно (free)

Структура хранения регистров накопления в базе данных для платформы 1С:Предприятие 8.x. Первая часть в серии публикаций.

16.05.2019    45296    YPermitin    30    

Метод формирования движений в типовых регистрах нетиповыми регистраторами Промо

Практика программирования v8 1cv8.cf Бесплатно (free)

Вариант решения задач с проведением по типовым регистрам нетиповыми регистраторами. Зачем - чтобы при сравнении конфигурации не обращать внимание на свойства регистров и исключить вероятность допущения горькой оплошности при обновлении информационных баз, заменив типы регистраторов основной конфигурации типами конфигурации поставщика. Для программных продуктов, имеющих в своем составе метаданных документ "Корректировка регистров"("Корректировка записей регистров").

05.12.2017    28499    itriot11    34    

О расширениях замолвите слово...

Практика программирования Разработка v8 Бесплатно (free)

О чём стоит задуматься при принятии решения о создании расширения конфигурации…

07.04.2019    36215    ellavs    126    

Git-репозитории для 1С-кода (опыт использования при небольших проектах)

Практика программирования v8 Бесплатно (free)

Инструкции по взаимодействию с Git-репозиторием, которые писались для тех наших программистов, которые вообще никогда не работали с Git (руководства в духе "Как получить код из git-репозитория?", "Как отправить код в git-репозиторий")...

28.03.2019    27848    ellavs    90    

Трюки с внешними источниками данных

Практика программирования Разработка v8 1cv8.cf Бесплатно (free)

Некоторые трюки для преодоления ограничений внешних источников данных.

14.03.2019    32339    YPermitin    53    

Использование классов .Net в 1С для новичков Промо

Практика программирования Разработка внешних компонент Универсальные функции v7.7 v8 Бесплатно (free)

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016    77144    Serginio    110    

Ошибки при работе с хранилищем конфигурации и способы их решения

Практика программирования v8 Бесплатно (free)

В статье собраны наиболее распространенные ошибки при работе с хранилищем конфигурации и способы их обхода и решения.

01.03.2019    42337    Смешной 1С    30    

Разработка и сценарное тестирование с Vanessa-ADD. Отчетность Allure. Автоматизация запуска сценариев

Практика программирования Vanessa Automation v8 Россия Бесплатно (free)

Формируем отчетность о результатах выполнения сценариев. Автоматизируем запуск.

26.02.2019    22850    Vladimir Litvinenko    27    

Автоматические и управляемые блокировки применительно к типовым конфигурациям 1С Промо

Математика и алгоритмы Практика программирования v8 v8::blocking 1cv8.cf Бесплатно (free)

Основные принципы работы с режимами автоматических и управляемых блокировок в 1С Предприятие 8. Теория и применение в типовых конфигурациях: БП, УТ, ЕРП

10.11.2018    35693    ids79    40    

Возможности типовых шаблонов ограничения доступа на уровне записей (RLS)

Практика программирования БСП (Библиотека стандартных подсистем) Роли и права v8 v8::Права Бесплатно (free)

Краткий обзор применения типовых шаблонов ограничения доступа на уровне записей в конфигурациях, созданных на базе БСП: #ПоЗначениям, #ПоНаборамЗначений, #ПоЗначениямРасширенный, #ПоЗначениямИНаборамРасширенный

03.02.2019    41993    ids79    9    

Тестер: частые вопросы Промо

Практика программирования v8 Бесплатно (free)

Ошибкам бой - тесты норма жизни!

25.07.2018    29589    grumagargler    28    

EnterpriseData – часть 2. Процесс выгрузки данных

Практика программирования Обмен через XML v8 v8::УФ Россия Бесплатно (free)

Основные этапы выгрузки данных через ED, обработчики событий выгрузки, правила обработки данных, правила конвертации объектов, конвертация свойств первого и второго этапов, процедуры БСП, используемые при выгрузке данных, структура «КомпонентыОбмена».

26.12.2018    27675    ids79    31    

Новый подход к обмену данными EnterpriseData

Практика программирования Обмен через XML v8 v8::УФ Россия Бесплатно (free)

Хочу предложить Вашему вниманию цикл статей, посвященных обмену данными через универсальный формат (EnterpriseData или ED).

14.12.2018    42838    ids79    72    

EnterpriseData - пример доработки правил конвертации без использования КД 3.0 в расширении конфигурации

Практика программирования Обмен через XML v8 v8::УФ БП3.0 УТ11 Россия Бесплатно (free)

В статье подробно описан реальный пример доработки обмена данными через EnterpriseData (универсальный формат обмена) между конфигурациями УТ 11.4 и Бухгалтерия 3.0

16.11.2018    38213    ids79    42    

Ускоряем 1С: модули с повторным использованием возвращаемых значений Промо

Практика программирования v8 Бесплатно (free)

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

04.09.2017    53541    m-rv    61    

Универсальные функции ЗУП 3.1 / ЗКГУ 3.1, которые помогут в разработке

Универсальные функции Зарплата Управление персоналом (HRM) Зарплата v8 v8::СПР ЗКГУ3.0 ЗУП3.x БУ Бесплатно (free)

В статье размещен список стандартных процедур и функций с примерами, которые могут помочь при разработке (доработке) конфигураций Зарплата и управление персоналом ред. 3.1 и Зарплата и кадры государственного учреждения 3.1. Иногда бывает довольно сложно правильно получить данные или долго, поэтому лучшим вариантом будет использование стандартных процедур. Буду очень признателен, если Вы поделитесь своим опытом и предложите свои варианты стандартных процедур которые помогают в работе. Или предложите, как дополнить имеющиеся процедуры.

14.11.2018    95551    GeterX    121    

Программное заполнение пользовательских параметров и отборов СКД

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Публикация представляет из себя краткие примеры того, как можно заполнять параметры СКД программно так, чтобы все параметры и отборы были доступны в быстрых настройках и в обычных (типовых) настройках параметров и отборов СКД.

13.11.2018    50812    Unk92    25