gifts2017

Перенос начислений для расчета среднего заработка

Опубликовал Alex Misanets (Misanets) в раздел Обработки - Обработка документов

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

Обработка переносит регистры расчета «Основные начисления…», «Дополнительные начисления…» и «Расчет среднего заработка».

Принцип работы следующий:

1. Создаем документ «Перенос данных»;

2. Заполняем таблицу исходными данными, способы описаны в инструкции;

3. Проверяем данные встроенным механизмом. На этом этапе данные сопоставляются со справочниками, перечислениями и т.д., все комментируется в служебных сообщениях;

4. Инициализируем данные. Данные табличного документа превращаются в элементы справочников, виды расчета и т.д., результатом чего создается таблица значений, из которой в последующем и будет происходить загрузка;

5. Загружаем. Данные из таблицы значений будут превращены в движения по регистру расчета.

Вот собственно и все не хитрые действия. Во встроенной инструкции все описано более детально.

Обработка проверена на конфигурациях УПП 1.3.20.1, ЗУП 2.5.46.1, КА 1.1.13.

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
ПереносСреднегоЗаработка.epf
.epf 36,68Kb
02.03.12
404
.epf 36,68Kb 404 Скачать

См. также

Вознаграждение за ответ
Сумма: 0 $m
Добавили:
Олег Владимирович (olezhe) (10.00 $m)
Подписаться Добавить вознаграждение

Комментарии

1. Владимир Лагутин (Lukich66) 03.03.12 05:30
Доброе утро. Если я правильно понял (при первом взгляде на обработку) , то речь идет о переносе информации из 77 в 8х :?:
2. Alex Misanets (Misanets) 03.03.12 23:12
(1) Lukich66, наверное нет, принципиально не важно от куда перенос, разница будет на этапе загрузке данных.
3. Владимир Лагутин (Lukich66) 04.03.12 07:37
(2) Misanets,под этапом загрузки я понимаю наличие к/либо сведений в формате *.txt,dbf,xls,mxl полученных из др. ИБ,структурированных соответствующим образом для загрузки в опр.регистры (РС,РН,РР,РБ). Документ "перенос"-вещь не афишируемая, используется 1с для 77->8. Ваш способ принципиально отличается от метода,который предлагаю я( универсальная ЗДизТД+R)? В Вашей публикации,на мой вгляд, недостаточно исчерпывающей информации в анонсе для принятия решения. А "скачать" и начать разбираться- не самый лучший прием,по жизни-лохотроном попахивает. Оч. оригинально смотрится прием с переключающимися *.GIF окнами, но невозможность управлять тайм-слайдом приводит к раздражению( что-то из sex-заставок).
4. Alex Misanets (Misanets) 04.03.12 13:44
(3) Lukich66, моя обработка решает конкретную задачу "Перенос начислений для расчета среднего заработка, больничных и т.д." по этому, в отличии от универсальных механизмов, в ней присутствуют механизмы проверок исходных данных, возможности формирования шапки таблицы для представления пользователю, "а что именно туда загружается", шаблоны простых запрос. Нет ничего такого, что было бы полезно для загрузки в другие регистры.
5. Vladimir (Boroda) 04.03.12 22:53
Вот это именно то, что было бы нужно мне неоднократно! Зачастую стандартный полный перенос за два года информации из ЗиК в ЗУП чреват массой проблем, включающий и нестыковки, и ошибки... Да и загромождать базу прошлыми расчётами особого смысла нет. Гораздо удобнее "начать с белого листа". Я имею в виду большие предприятия, малые переносятся более-менее нормально, по крайней мере, в них ошибки искать быстрее.
А для работы в новой базе 8.2 достаточно начального сальдо и данных для среднего заработка и БЛ. Списки сотрудников тоже можно загрузить локальной обработкой. И спокойно приступить к расчёту.
Автору этой полезной обработки огромное спасибо!
dedicated; aqua22; +2 Ответить 1
6. Александр Бессарабов (shurubchik) 11.03.12 12:08
Отличная обработка!!!! Спасибо!!!
7. Alex Misanets (Misanets) 11.03.12 14:33
(6) shurubchik, всегда пожалуйста :)
8. Ксеня Аксенова (ad-lib) 13.03.12 09:48
Я столкнулась с аналогичной проблемой, когда переносила из 1с 7.7 в 8.2, приходится сейчас вручную доставлять за 1 год средний заработок(( Эта обработка поможет доперенести инфу из 7.7? И сумма среднего заработка будет тянутся автоматически во все необходимые документы?
9. Alex Misanets (Misanets) 14.03.12 23:06
(8) ad-lib, Да. Для расчета среднего необходимо иметь начисления за последние два года в регистрах расчета. При помощи обработки вы можете их туда записать.
10. Feddor spammer (FE_D_OR83) 26.03.12 13:05
Спасибо за обработку! Отличная штука. Значительно сэкономила время при переносе данных для расчёта среднего заработка.
11. Наталия Ершова (aqua22) 25.06.12 01:10
(5) Boroda, Спасибо за Ваш комментарий! Именно из него мне стало понятно, что обработка не просто полезная, а очень нужная!
12. Ольга Иванова (IvOlka) 27.07.12 08:22
Как раз стоит задача переноса данных из системы Галактика в УПП. Надеюсь обработка поможет.
13. Ирина (GingerRu) 04.12.12 14:25
(9) Misanets, а для переноса из ЗУП в ЗУП эта обработка подойдет?
14. Alex Misanets (Misanets) 04.12.12 14:49
(13) GingerRu, да, источником может являться что угодно. Загрузки производится из табличной части, а каким образом она была заполнена не имеет никакого значения.
15. Павел Никифоров (Lyns_owner) 29.01.13 16:53
Хорошая разработка, автору спасибо.
16. mistermp3 mistermp3 (mistermp3) 06.02.13 15:08
17. mistermp3 mistermp3 (mistermp3) 11.02.13 06:53
Есть необходимость "руками" забить информацию. Допустим сотрудник Иванов в декабре 2012 отработал 150 часов и получил 20000 руб. Подскажите, куда и какую информацию вносить? Там столько колонок с периодами, что ничего не понятно. Помогите с примером заполнения пожалуйста.
18. Александр Майнагашев (dedicated) 28.03.13 09:40
Использую вашу обработку уже 2 месяца, немного допилив в некоторых местах. Для примера заполнения выкладываю файл. Важно обратите внимание на ПериодДействияКонец, что там указывается время 23:59:59, иначе одного дня не будет хватать. Также Важно задавать периодНачало и периодКонец - по этим значениям вычисляется количество дней для расчета среднего, а не из колонки ОтработаноДней, как может показаться на первый взгляд.

Для тех кто не знает куда вносить данные:
Верхнее Меню - Операции-Документы-ПереносДанных. Там создать документ-регистратор с Регистром расчета - "Основные начисления сотрудникам организации". Заполнить Период регистрации: я ставил последний месяц отчетного года. т.е. выгружая данные за 2012 год, я ставлю период регистрации: Декабрь 2012 года. И ввожу дату документа 31.12.2012.
Затем открыть обработку, выбрать созданный документ в качестве Документа регистратора. Далее выбрать Дополнительные функции - Сформировать Шапку документа. После чего скопировать из ексель данные по среднему и вставить со второй строки в таблицу обработки. Затем выполнить инициализацию и загрузку данных.

От себя я добавил кнопку удалить неполные строки, для удаления строк с пустым физлицом или сотрудником. Это бывает когда в справочниках в 1С нет загружаемых сотрудников, тогда обработка может вылететь на половине загрузки и придется искать на ком она остановилась и начинать новую загрузку с этого места.
Процедура КоманднаяПанельТабличногоДокумента1УдалитьНеполныеСтроки(Кнопка)
		
	ВсегоСтрок = Источник.Количество();
	ВсегоУдалено = 0;
	
	///////////////// Индикатор /////////////////
	ЭлементыФормы.Индикатор.Значение = 0;
	ЭлементыФормы.Индикатор.МинимальноеЗначение = 0;
	ЭлементыФормы.Индикатор.МаксимальноеЗначение = ВсегоСтрок;
	/////////////////////////////////////////////
	
	Для Счетчик = 1 По ВсегоСтрок Цикл 
		НомерСтроки = ВсегоСтрок - Счетчик;
		Строка = Источник[НомерСтроки];
		Если (НЕ ЗначениеЗаполнено(Строка.Сотрудник)) или (НЕ ЗначениеЗаполнено(Строка.ФизЛицо)) Тогда 
			Источник.Удалить(Строка);
		КонецЕсли;
		
		ЭлементыФормы.Индикатор.Значение = ЭлементыФормы.Индикатор.Значение + 1;
		
		#Если Клиент Тогда
			ОбработкаПрерыванияПользователя();
		#КонецЕсли
	КонецЦикла;

	НомерСтроки = 0;
	Для Каждого Строка Из Источник Цикл
		НомерСтроки = НомерСтроки + 1;
		Строка.НомерСтроки = НомерСтроки;
	КонецЦикла;

КонецПроцедуры
...Показать Скрыть


Замечания по работе обработки. При переносе данных свыше 1000 записей Обработка вначале загружает достаточно быстро, но спустя какое то время замедляется, так что оставшиеся 10-20% могут занять несколько часов. Поэтому быстрее будет идти загрузка если разбивать данные, например по подразделениям, и вносить по отдельности в разные документы переноса.
Прикрепленные файлы:
Пример.xls
19. Олег Владимирович (olezhe) 03.04.13 09:39
Я в восторге. Куда выслать ящик пива?
20. Alex Misanets (Misanets) 03.04.13 14:17
(19) olezhe, Ящики пива принимаю в любом количестве, в любом районе Питера))
21. Александр Майнагашев (dedicated) 03.04.13 22:34
22. Олег Владимирович (olezhe) 09.04.13 17:07
Нашёл ошибку.
Когда всё заполнено, проверено и инициализировано, жмём кнопку Загрузить, и обработка спотыкается на преобразовании строковых дат в тип "дата".
Конкретно, везде, где есть строка, похожая на "Запись.ПериодРегистрации = Строка.ПериодРегистрации;" обработка падает. Поскольку слева здесь тип Дата, а справа неприводимая к дате Строка вида "01.12.2012 00:00:00"

Решение простое:
Берём функцию отсюда (http://infostart.ru/public/92455/)
И переколачиваем все переменные типа Дата: "Запись.ПериодРегистрации = ПолучитьДатуИзСтроки(Строка.ПериодРегистрации);"

После этого работает как надо.
Странно, что у меня одного эта затыка возникла. Вот тут действительно загадка.
23. Олег Владимирович (olezhe) 09.04.13 17:42
И ещё есть подозрение, что при наличии двух сотрудников с одинаковыми ФИО, обработка хватает первого попавшегося. Или Может, по коду заставить её искать?
24. Alex Misanets (Misanets) 09.04.13 17:56
(22) olezhe, Странно конечно, судя по комментариям, да и я лично, обработку использовал не один раз, ничего подобного небыло. Могу в личку написать мыло, отправишь свой вариант, я обновлю публикацию с твоим файлом.
25. Alex Misanets (Misanets) 09.04.13 17:58
(23) olezhe, Если не ошибаюсь - да, но исправиь, чтобы искал по коду, думаю сможет при необходимости любой.
26. Олег Владимирович (olezhe) 09.04.13 18:05
И если в колонке Результат в исходных данных стоит число, форматированное пробелами ("8 345,44"), то в результирующий документ попадает 0.
27. Александр Майнагашев (dedicated) 11.10.13 13:44
(23) olezhe, У меня тоже такая проблема с датой была, забыл сказать в комментарии выше, и тоже такой функцией обошёлся.
28. Надежда Шалаховская (botsvana) 01.10.15 08:01
Скажите, пожалуйста, можно ли использовать обработку для переноса данных в ЗиКБУ (зарплата и кадры бюджетного учреждения)?
29. Alex Misanets (Misanets) 02.10.15 09:07
(28) botsvana, в принципе думаю да, структура регистров скорее всего одинаковая. Единственный момент публикация писалась давно и тестировалась на уже не актуальной версии конфигурации. Попробуйте на копии - самый верный способ узнать ответ))
30. Алексей Дремучкин (super-drema) 17.08.16 23:58
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа