diff --git a/CommonModules/ЗагрузкаДанныхИзExcel_ЗаписьВРегистры/Ext/Module.bsl b/CommonModules/ЗагрузкаДанныхИзExcel_ЗаписьВРегистры/Ext/Module.bsl index cafe1a4..0923e26 100644 --- a/CommonModules/ЗагрузкаДанныхИзExcel_ЗаписьВРегистры/Ext/Module.bsl +++ b/CommonModules/ЗагрузкаДанныхИзExcel_ЗаписьВРегистры/Ext/Module.bsl @@ -83,16 +83,43 @@ КонецЕсли; Период = Дата(ГодЧисло, МесяцЧисло, 1); - Организация = РазрешитьОрганизацию(ОрганизацияНаименование); + Организация = Неопределено; + Если ЗначениеЗаполнено(ОрганизацияНаименование) Тогда + Организация = Справочники.Организации.НайтиПоНаименованию(СокрЛП(ОрганизацияНаименование), Истина); + КонецЕсли; Если Не ЗначениеЗаполнено(Организация) Тогда Сообщить("Не найдена организация: """ + ОрганизацияНаименование + """"); Возврат; КонецЕсли; - СтатьяФинансирования = РазрешитьСтатьюФинансирования(СтатьяФинансированияНаименование); - СтатьяРасходов = РазрешитьСтатьюРасходов(СтатьяРасходовКод); + СтатьяФинансирования = Неопределено; + Если ЗначениеЗаполнено(СтатьяФинансированияНаименование) Тогда + СтатьяФинансирования = Справочники.СтатьиФинансированияЗарплата.НайтиПоНаименованию(СокрЛП(СтатьяФинансированияНаименование), Истина); + КонецЕсли; + СтатьяРасходов = Неопределено; + Если ЗначениеЗаполнено(СтатьяРасходовКод) Тогда + СтатьяРасходов = Справочники.СтатьиРасходовЗарплата.НайтиПоКоду(СокрЛП(СтатьяРасходовКод)); + КонецЕсли; + // Кэш сотрудников: ИНН → СНИЛС → ФИО КэшСотрудников = Новый Соответствие; - ПостроитьКэшСотрудников(ТЧСотрудники, КэшСотрудников); + Для Каждого Эл Из ТЧСотрудники Цикл + СотрСсылка = Неопределено; + Если ЗначениеЗаполнено(Эл.ИНН) Тогда + СотрСсылка = Справочники.Сотрудники.НайтиПоРеквизиту("ИНН", СокрЛП(Эл.ИНН)); + КонецЕсли; + Если Не ЗначениеЗаполнено(СотрСсылка) И ЗначениеЗаполнено(Эл.СНИЛС) Тогда + ФЛ = Справочники.ФизическиеЛица.НайтиПоРеквизиту("СтраховойНомерПФР", СокрЛП(Эл.СНИЛС)); + Если ЗначениеЗаполнено(ФЛ) Тогда + СотрСсылка = Справочники.Сотрудники.НайтиПоРеквизиту("ФизическоеЛицо", ФЛ, Истина); + КонецЕсли; + КонецЕсли; + Если Не ЗначениеЗаполнено(СотрСсылка) И ЗначениеЗаполнено(Эл.ФИО) Тогда + СотрСсылка = Справочники.Сотрудники.НайтиПоНаименованию(СокрЛП(Эл.ФИО), Истина); + КонецЕсли; + Если ЗначениеЗаполнено(СотрСсылка) Тогда + КэшСотрудников.Вставить(Эл.Идентификатор, Новый Структура("Сотрудник, ФизическоеЛицо", СотрСсылка, СотрСсылка.ФизическоеЛицо)); + КонецЕсли; + КонецЦикла; ДокПеренос = Документы.ПереносДанных.СоздатьДокумент(); ДокПеренос.Дата = Период; diff --git a/Configuration.xml b/Configuration.xml index a741889..d1f0c23 100755 --- a/Configuration.xml +++ b/Configuration.xml @@ -56,7 +56,7 @@ Russian ООО "Профи-Софт", код партнера 42575-13, г.Байконур. - 3.0.0.89 + 3.0.0.90 Language.Русский