(ЗУП 3.1.8) программно получить расчетную базу по сотру

1. vechiy 35 19.02.19 16:23 Сейчас в теме
Для доработки расчета премии в документе "премия" требуется по каждому сотруднику из списка получать расчетную базу за период
Как это можно сделать программно?
В документе это делается кнопкой "заполнить показатели", которая вызывает общую форму. Сам код где рассчитывается база найти не могу

Вот есть такая функция, мб кто пользовался?
РасчетБазыНачислений = РасчетЗарплатыРасширенный.РасчетБазыНачислений(МенеджерВременныхТаблиц, ОписаниеРасчитываемогоНабора, МенеджерДанныхУчетаВремени, МенеджерКадровогоУчета())
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. vechiy 35 19.02.19 17:15 Сейчас в теме
3. Anion86 19.02.19 17:19 Сейчас в теме
Вопрос прям на тендер тянет =)
Там не все так просто , проще самому сделать , быстрее будет ... там запросы идут по выборки начислений и сумм из регистров сведений Плановые начисления и Значения периодических показателей расчета зарплаты (для сотрудников) ... не помню ставки нужны не нужны или уже там посчитано все .
Bene_Valete; +1 Ответить
5. vechiy 35 19.02.19 17:26 Сейчас в теме
(3) только что-то не пойму, самому как сделать, запрос к расчетам?
6. Anion86 19.02.19 17:36 Сейчас в теме
(5)база рассчитывается исходя из действующих Плановых начислений и Значений показателей , естественно все на срез последних делается , соответственно и запрос к ним к этим регистрам нужно делать.
4. vechiy 35 19.02.19 17:21 Сейчас в теме
да я вижу в отладчике что непросто

есть вот вроде ключевая функция, но я не пойму как сформировать нужные параметры

Функция РасчетБазыУдержаний(МенеджерВременныхТаблиц, ОписаниеРасчитываемогоНабораУдержаний, МенеджерДанныхУчетаВремени = Неопределено, МенеджерКадровогоУчета = Неопределено) Экспорт
УстановитьПривилегированныйРежим(Истина);
РасчетБазыУдержаний = Обработки.РасчетБазыНачисленийУдержаний.Создать();
УстановитьПривилегированныйРежим(Ложь);

РасчетБазыУдержаний.УстановитьРасчитывемыйНаборУдержаний(МенеджерВременныхТаблиц, ОписаниеРасчитываемогоНабораУдержаний, МенеджерДанныхУчетаВремени, МенеджерКадровогоУчета);

Возврат РасчетБазыУдержаний;
КонецФункции
7. ben19791010 20.02.19 07:36 Сейчас в теме
где то уже поднимали такой вопрос ранее, искайте
8. vechiy 35 20.02.19 09:55 Сейчас в теме
(7) только там увы конечного решения не было
9. vechiy 35 20.02.19 16:47 Сейчас в теме
11. Matador 117 22.02.19 07:42 Сейчас в теме
(9)

Добрый день.

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

конечная цель какая запустить расчет ? он и типовым способом запускается и считает.
10. Plash 4 21.02.19 12:42 Сейчас в теме
Пробуй.

ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
	СведенияОДоходахНДФЛОбороты.ФизическоеЛицо КАК ФизическоеЛицо
ПОМЕСТИТЬ ФизЛица
ИЗ
	РегистрНакопления.СведенияОДоходахНДФЛ.Обороты(, , Регистратор, МесяцНалоговогоПериода МЕЖДУ &НачПер И &КонПер) КАК СведенияОДоходахНДФЛОбороты
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
	НАЧАЛОПЕРИОДА(СведенияОДоходахНДФЛОбороты.МесяцНалоговогоПериода, МЕСЯЦ) КАК МесяцНалоговогоПериода
ПОМЕСТИТЬ Периоды
ИЗ
	РегистрНакопления.СведенияОДоходахНДФЛ.Обороты(, , Регистратор, МесяцНалоговогоПериода МЕЖДУ &НачПер И &КонПер) КАК СведенияОДоходахНДФЛОбороты
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ФизЛица.ФизическоеЛицо КАК ФизическоеЛицо,
	Периоды.МесяцНалоговогоПериода КАК МесяцНалоговогоПериода
ПОМЕСТИТЬ ФЛПериоды
ИЗ
	ФизЛица КАК ФизЛица,
	Периоды КАК Периоды
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ФЛПериоды.ФизическоеЛицо КАК ФизическоеЛицо,
	ФЛПериоды.МесяцНалоговогоПериода КАК МесяцНалоговогоПериода,
	МАКСИМУМ(НАЧАЛОПЕРИОДА(СтатусФизическихЛицКакНалогоплательщиковНДФЛ.Период, МЕСЯЦ)) КАК Период
ПОМЕСТИТЬ ДатыСтатусов
ИЗ
	ФЛПериоды КАК ФЛПериоды
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусФизическихЛицКакНалогоплательщиковНДФЛ КАК СтатусФизическихЛицКакНалогоплательщиковНДФЛ
		ПО ФЛПериоды.ФизическоеЛицо = СтатусФизическихЛицКакНалогоплательщиковНДФЛ.ФизическоеЛицо
			И (ФЛПериоды.МесяцНалоговогоПериода >= НАЧАЛОПЕРИОДА(СтатусФизическихЛицКакНалогоплательщиковНДФЛ.Период, МЕСЯЦ))

СГРУППИРОВАТЬ ПО
	ФЛПериоды.ФизическоеЛицо,
	ФЛПериоды.МесяцНалоговогоПериода
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ДатыСтатусов.ФизическоеЛицо КАК ФизическоеЛицо,
	ДатыСтатусов.МесяцНалоговогоПериода КАК МесяцНалоговогоПериода,
	ЕСТЬNULL(СтатусФизическихЛицКакНалогоплательщиковНДФЛ.Статус, ЗНАЧЕНИЕ(Справочник.СтатусыНалогоплательщиковПоНДФЛ.Резидент)) КАК Статус
ПОМЕСТИТЬ СТАТУСЫ
ИЗ
	ДатыСтатусов КАК ДатыСтатусов
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусФизическихЛицКакНалогоплательщиковНДФЛ КАК СтатусФизическихЛицКакНалогоплательщиковНДФЛ
		ПО ДатыСтатусов.ФизическоеЛицо = СтатусФизическихЛицКакНалогоплательщиковНДФЛ.ФизическоеЛицо
			И (ДатыСтатусов.Период = НАЧАЛОПЕРИОДА(СтатусФизическихЛицКакНалогоплательщиковНДФЛ.Период, МЕСЯЦ))

ИНДЕКСИРОВАТЬ ПО
	ФизическоеЛицо,
	МесяцНалоговогоПериода
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
	СведенияОДоходахНДФЛОбороты.ФизическоеЛицо КАК ФизическоеЛицо,
	НАЧАЛОПЕРИОДА(СведенияОДоходахНДФЛОбороты.МесяцНалоговогоПериода, МЕСЯЦ) КАК МесяцНалоговогоПериода,
	"" КАК ГодНалоговогоПериода,
	СведенияОДоходахНДФЛОбороты.СуммаДоходаОборот КАК Доход,
	ВЫБОР
		КОГДА СведенияОДоходахНДФЛОбороты.КодДохода.Код = "2610"
				ИЛИ СведенияОДоходахНДФЛОбороты.КодДохода.Код = "2740"
			ТОГДА 0
		ИНАЧЕ СведенияОДоходахНДФЛОбороты.СуммаДоходаОборот
	КОНЕЦ КАК Доход13,
	ВЫБОР
		КОГДА СведенияОДоходахНДФЛОбороты.КодДохода.Код = "2610"
				ИЛИ СведенияОДоходахНДФЛОбороты.КодДохода.Код = "2740"
			ТОГДА СведенияОДоходахНДФЛОбороты.СуммаДоходаОборот
		ИНАЧЕ 0
	КОНЕЦ КАК Доход35,
	СведенияОДоходахНДФЛОбороты.КодДохода КАК КодДохода,
	СведенияОДоходахНДФЛОбороты.КатегорияДохода КАК КатегорияДохода,
	ВЫБОР
		КОГДА СведенияОДоходахНДФЛОбороты.КодВычета.ГруппаВычета = ЗНАЧЕНИЕ(Перечисление.ГруппыВычетовПоНДФЛ.Социальные)
			ТОГДА СведенияОДоходахНДФЛОбороты.СуммаВычетаОборот
		КОГДА СведенияОДоходахНДФЛОбороты.КодВычета.ГруппаВычета = ЗНАЧЕНИЕ(Перечисление.ГруппыВычетовПоНДФЛ.СоциальныеПоУведомлениюНО)
			ТОГДА СведенияОДоходахНДФЛОбороты.СуммаВычетаОборот
		ИНАЧЕ 0
	КОНЕЦ КАК Вычет,
	ВЫБОР
		КОГДА СведенияОДоходахНДФЛОбороты.КодВычета.ГруппаВычета = ЗНАЧЕНИЕ(Перечисление.ГруппыВычетовПоНДФЛ.Имущественные)
			ТОГДА СведенияОДоходахНДФЛОбороты.СуммаВычетаОборот
		ИНАЧЕ 0
	КОНЕЦ КАК ВычетИмущРасход,
	ВЫБОР
		КОГДА СведенияОДоходахНДФЛОбороты.КодВычета.ГруппаВычета = ЗНАЧЕНИЕ(Перечисление.ГруппыВычетовПоНДФЛ.Стандартные)
			ТОГДА СведенияОДоходахНДФЛОбороты.СуммаВычетаОборот
		КОГДА СведенияОДоходахНДФЛОбороты.КодВычета.ГруппаВычета = ЗНАЧЕНИЕ(Перечисление.ГруппыВычетовПоНДФЛ.СтандартныеНаДетей)
			ТОГДА СведенияОДоходахНДФЛОбороты.СуммаВычетаОборот
		ИНАЧЕ 0
	КОНЕЦ КАК ВычетСтандарт,
	ВЫБОР
		КОГДА НЕ СведенияОДоходахНДФЛОбороты.КодВычета.ГруппаВычета В (ЗНАЧЕНИЕ(Перечисление.ГруппыВычетовПоНДФЛ.Стандартные), ЗНАЧЕНИЕ(Перечисление.ГруппыВычетовПоНДФЛ.СтандартныеНаДетей), ЗНАЧЕНИЕ(Перечисление.ГруппыВычетовПоНДФЛ.Имущественные), ЗНАЧЕНИЕ(Перечисление.ГруппыВычетовПоНДФЛ.Социальные), ЗНАЧЕНИЕ(Перечисление.ГруппыВычетовПоНДФЛ.СоциальныеПоУведомлениюНО))
			ТОГДА СведенияОДоходахНДФЛОбороты.СуммаВычетаОборот
		ИНАЧЕ 0
	КОНЕЦ КАК ВычетПрочий,
	СведенияОДоходахНДФЛОбороты.КодВычета КАК КодВычета,
	СведенияОДоходахНДФЛОбороты.РегистрацияВНалоговомОргане КАК РегистрацияВНалоговомОргане,
	СведенияОДоходахНДФЛОбороты.СтавкаНалогообложения КАК СтавкаНалогообложения,
	СведенияОДоходахНДФЛОбороты.Регистратор КАК Регистратор,
	ЕСТЬNULL(Статусы.Статус, ЗНАЧЕНИЕ(Справочник.СтатусыНалогоплательщиковПоНДФЛ.Резидент)) КАК Статус
ИЗ
	РегистрНакопления.СведенияОДоходахНДФЛ.Обороты(, , Регистратор, МесяцНалоговогоПериода МЕЖДУ &НачПер И &КонПер) КАК СведенияОДоходахНДФЛОбороты
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ СТАТУСЫ КАК Статусы
		ПО СведенияОДоходахНДФЛОбороты.ФизическоеЛицо = Статусы.ФизическоеЛицо
			И (НАЧАЛОПЕРИОДА(СведенияОДоходахНДФЛОбороты.МесяцНалоговогоПериода, МЕСЯЦ) = Статусы.МесяцНалоговогоПериода)

ОБЪЕДИНИТЬ ВСЕ

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

ОБЪЕДИНИТЬ ВСЕ

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

Программист 1С:ERP
Москва
зарплата от 100 000 руб.
Полный день

Разработчик 1С
Москва
зарплата от 200 000 руб. до 300 000 руб.
Полный день

Программист 1С (удаленно)
Самара
зарплата от 230 000 руб. до 230 000 руб.
Полный день

Руководитель группы разработки 1С
Москва
зарплата от 250 000 руб. до 250 000 руб.
Полный день