Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Удаленная работа для IT-специалистов
&НаКлиенте Процедура ИмяФайлаПриИзменении(Элемент) Объект.Расшифровка.Очистить(); Режим = РежимДиалогаВыбораФайла.Открытие; ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим); ДиалогОткрытияФайла.ПолноеИмяФайла = ""; Фильтр = НСтр("ru = 'Файл Excel'") + "(*.xls;*.xlsx)|*.xls;*.xlsx"; ДиалогОткрытияФайла.Фильтр = Фильтр; ДиалогОткрытияФайла.МножественныйВыбор = Ложь; ДиалогОткрытияФайла.Заголовок = "Выберите файл Excel для загрузки"; Если ДиалогОткрытияФайла.Выбрать() Тогда Объект.ПутьКФайлу = ДиалогОткрытияФайла.ПолноеИмяФайла; Адрес = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ДиалогОткрытияФайла.ПолноеИмяФайла)); ЗагрузитьТабличныйДокументИзФайла(Адрес, ДиалогОткрытияФайла.ПолноеИмяФайла); Иначе Предупреждение(НСтр("ru = 'Файл не выбран!'")); КонецЕсли; ОбновитьФормуДокумента(); КонецПроцедуры &НаСервере Процедура ЗагрузитьТабличныйДокументИзФайла(Адрес, ИмяФайла) //Необходимо чтение файлов XLS или XLSX Расширение = Прав(ИмяФайла, 4); Расширение = СтрЗаменить(Расширение, ".", ""); ФайлПриемник = ПолучитьИмяВременногоФайла(Расширение); ДанныеХранилища = ПолучитьИзВременногоХранилища(Адрес); ДанныеХранилища.Записать(ФайлПриемник); ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.Прочитать(ФайлПриемник); Если Объект.ИмяФайла = "ИнкасацияFincher" Тогда Если ПроверкаОперации() Тогда ЧтениеФайла(ТабличныйДокумент,10,26,21,26,Ложь); Иначе Сообщить("В документе " + Строка(Объект.Ссылка) + " неправильный вид операции " + Строка(Объект.ВидОперации) + ". Правильный вид операции: «Прочие расчеты с контрагентами»"); КонецЕсли; ИначеЕсли Объект.ИмяФайла = "ИнкасацияРОСИНКАС" Тогда Если ПроверкаОперации() Тогда ЧтениеФайла(ТабличныйДокумент,13,2,5,1,Истина); Иначе Сообщить("В документе " + Строка(Объект.Ссылка) + " неправильный вид операции " + Строка(Объект.ВидОперации) + ". Правильный вид операции: «Прочие расчеты с контрагентами»"); КонецЕсли; КонецЕсли; КонецПроцедуры