Публикации

БСП
Разработки

Найдено результатов: 9


Загрузка данных из Excel

5 Yuriy K. 16 2
&НаСервере
Функция ПолучитьТЗДляНестандарта()
	Результат = Новый ТаблицаЗначений;
	Результат.Колонки.Добавить("Артикул", Новый ОписаниеТипов("Строка", ,Новый КвалификаторыСтроки(0, ДопустимаяДлина.Переменная)));
	Результат.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("Строка", ,Новый КвалификаторыСтроки(0, ДопустимаяДлина.Переменная)));
	Результат.Колонки.Добавить("Характеристика", Новый ОписаниеТипов("Строка", ,Новый КвалификаторыСтроки(0, ДопустимаяДлина.Переменная)));
	Результат.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число",Новый КвалификаторыЧисла(0, 0, ДопустимыйЗнак.Любой)));
	Результат.Колонки.Добавить("ЕдИзм", Новый ОписаниеТипов("Строка", ,Новый КвалификаторыСтроки(0, ДопустимаяДлина.Переменная)));
	Результат.Колонки.Добавить("Цена", Новый ОписаниеТипов("Число",Новый КвалификаторыЧисла(0, 0, ДопустимыйЗнак.Любой)));
	Результат.Колонки.Добавить("Сумма", Новый ОписаниеТипов("Число",Новый КвалификаторыЧисла(0, 0, ДопустимыйЗнак.Любой)));
	Возврат Результат;
КонецФункции

&НаКлиенте
Процедура Расш1_ЮКОЗ_ЗагрузитьНестандартПосле(Команда)
	
	Результат = ПолучитьТЗДляНестандарта();
	
	Режим = РежимДиалогаВыбораФайла.Открытие; 
	ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим); 
	ДиалогОткрытияФайла.ПолноеИмяФайла = ""; 
	Фильтр = "Excel файлы(*.xls;*.xlsx)|*.xls;*.xlsx"; 
	ДиалогОткрытияФайла.Фильтр = Фильтр; 
	ДиалогОткрытияФайла.МножественныйВыбор = Ложь; 
	ДиалогОткрытияФайла.Заголовок = "Выберите файл"; 
	
	Если ДиалогОткрытияФайла.Выбрать() Тогда 
		
		Попытка
			Эксель = Новый COMОбъект("Excel.Application");
		Исключение
			Сообщить(ОписаниеОшибки() + " Программа Exсel не установлена на данном компьютере!"); 
			Возврат;
		КонецПопытки;
		
		Книга = Эксель.WorkBooks.Open(ДиалогОткрытияФайла.ПолноеИмяФайла);
		Лист = Книга.WorkSheets(1);
		
		НомерСтроки = 2;
				
		Пока НЕ ПустаяСтрока(Лист.Cells(НомерСтроки, 1).Value) Цикл
			
			НоваяСтрока = Результат.Добавить();
			НоваяСтрока.Артикул	= СокрЛП(Лист.Cells(НомерСтроки,1).Value);
			НоваяСтрока.Номенклатура	= СокрЛП(Лист.Cells(НомерСтроки,2).Value);
			НоваяСтрока.Характеристика	= СокрЛП(Лист.Cells(НомерСтроки,3).Value);
			НоваяСтрока.Количество	= СокрЛП(Лист.Cells(НомерСтроки,4).Value);
			НоваяСтрока.ЕдИзм	= СокрЛП(Лист.Cells(НомерСтроки,5).Value);
			НоваяСтрока.Цена	= СокрЛП(Лист.Cells(НомерСтроки,6).Value);
			НоваяСтрока.Сумма	= СокрЛП(Лист.Cells(НомерСтроки,7).Value);
			
			Если НЕ ЗначениеЗаполнено(НоваяСтрока.Номенклатура) Тогда
				ВызватьИсключение "В строке №" + НомерСтроки + " не заполнено наимевание номенклатуры. Загрузка прервана!";	
				Возврат;
			КонецЕсли;
			
			НомерСтроки = НомерСтроки + 1;
			
		КонецЦикла;	
		
		Эксель.Application.Quit();
		
	КонецЕсли;
	
КонецПроцедуры

Загрузка из excel, xls

Простая загрузка из excel, xls

////1
Процедура Загрузить();
                                
    Попытка
        Excel = Новый COMОбъект("Excel.Application");
        Excel.displayalerts = 0;
        Excel.WorkBooks.Open(КаталогДБФ);
        Состояние("Обработка файла Microsoft Excel...");
        ExcelЛист = Excel.Sheets(1);
    Исключение 
        Сообщить("Ошибка. Возможно неверно указан номер листа книги Excel.");
        Excel.WorkBooks.Close(); Excel = 0;
        Возврат;
    КонецПопытки;  
    
    ТЗ = ПрочитатьЛистExcel(, ExcelЛист,,,,6);
    
    Excel.WorkBooks.Close();
    Excel = 0;          
    
КонецПроцедуры;  


Функция ПрочитатьЛистExcel(ТЗ = Неопределено, ЛистЭксель = Неопределено, НомерПервойСтроки = 1, НомерПервойКолонки = 1, ВсегоСтрок = 0, ВсегоКолонок = 0) Экспорт
    
    Если ЛистЭксель = Неопределено Тогда
        ЛистЭксель = ПолучитьCOMОбъект(,"Excel.Application");
    КонецЕсли;
    Если ВсегоСтрок = 0 Тогда
        ВсегоСтрок = ЛистЭксель.Cells.SpecialCells(11).Row;
    КонецЕсли;
    Если ВсегоКолонок = 0 Тогда
        ВсегоКолонок = ЛистЭксель.Cells.SpecialCells(11).Column;
    КонецЕсли;
    Если ТЗ = Неопределено Тогда
        ТЗ =  Новый ТаблицаЗначений;
        Для Счетчик = 1 По ВсегоКолонок Цикл
            ТЗ.Колонки.Добавить("Колонка"+Счетчик, Новый ОписаниеТипов("Строка"));
        КонецЦикла;
    КонецЕсли;
    Для Счетчик = НомерПервойСтроки По ВсегоСтрок Цикл
        НоваяСтрока = ТЗ.Добавить();
    КонецЦикла;
    
    Область = ЛистЭксель.Range(ЛистЭксель.Cells(НомерПервойСтроки,НомерПервойКолонки), ЛистЭксель.Cells(ВсегоСтрок,ВсегоКолонок));
    Данные = Область.Value.Выгрузить();
    
    Для Счетчик = 0 По ВсегоКолонок-1 Цикл
        ТЗ.ЗагрузитьКолонку(Данные[Счетчик], Счетчик);
    КонецЦикла;
    ЛистЭксель = Неопределено;
    Возврат ТЗ;
КонецФункции   

////2    

Чтение файлов Excel в таблицу значений (автоматическое наименование столбцов)

Функция считывает содержимое страницы файла Excel в таблицу значений, автоматически именует столбцы таблицы по первой строке файла. Пробелы заменяются на "".
30 eXtend88 53 1 2
&НаСервере
Функция ПодготовитьТаблицуСДанными(ФайлАдресВХранилище)
	
	ИмяФайлаСервер = ПолучитьИмяВременногоФайла(".xlsx");
	ФайлИмпорта = ПолучитьИзВременногоХранилища(ФайлАдресВХранилище);
	ФайлИмпорта.Записать(ИмяФайлаСервер);
	
	ТабличныйДокумент = Новый ТабличныйДокумент;
	Попытка
		ТабличныйДокумент.Прочитать(ИмяФайлаСервер, СпособЧтенияЗначенийТабличногоДокумента.Текст);
	Исключение
		Сообщение = Новый СообщениеПользователю;
		Сообщение.Текст = ОписаниеОшибки();
		Сообщение.Сообщить();
	КонецПопытки;	
	
	ПЗ = Новый ПостроительЗапроса;
	ПЗ.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТабличныйДокумент.Область());
	ПЗ.ДобавлениеПредставлений = ТипДобавленияПредставлений.НеДобавлять;
	ПЗ.ЗаполнитьНастройки();
	ПЗ.Выполнить();
	
	ТаблицаПромежуточныхДанных = ПЗ.Результат.Выгрузить();
	
	Возврат	ТаблицаПромежуточныхДанных;
	
КонецФункции

Выгрузка в Excel документ

Как выгружать данные в Эксель? через COMОбъект понятно. а как происходит сам процесс выгрузки... Нуждаюсь в помощи
Hex

Пример работы с OpenOffice/LibreOffice Calc

Нужно загрузить прайс поставщика в xls, но возможности использовать Excel нет. Кто-нибудь загружал данные через OpenOffice или LibreOffice, можете скинуть рабочий пример, откуда начать копать?
pkonev 1

ДиалогЗагрузкиФайла

Открывает диалог загрузки файла.
ОбщийМодуль.ЗагрузкаДанныхИзФайлаКлиент
Автор: 1С
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Открывает диалог загрузки файла.
//
// Параметры:
//  ОповещениеЗавершения - ОписаниеОповещения - вызывается после успешного помещения файла.
//  ИмяФайла	         - Строка - имя файла в диалоге.
//
Процедура ДиалогЗагрузкиФайла(ОповещениеЗавершения , ИмяФайла = "") Экспорт
	
	ПараметрыЗагрузки = ФайловаяСистемаКлиент.ПараметрыЗагрузкиФайла();
	ПараметрыЗагрузки.Диалог.Фильтр = НСтр("ru='Все поддерживаемые форматы файлов(*.xls;*.xlsx;*.ods;*.mxl;*.csv)|*.xls;*.xlsx;*.ods;*.mxl;*.csv|Книга Excel 97 (*.xls)|*.xls|Книга Excel 2007 (*.xlsx)|*.xlsx|Электронная таблица OpenDocument (*.ods)|*.ods|Текстовый документ c разделителями (*.csv)|*.csv|Табличный документ (*.mxl)|*.mxl'");
	ПараметрыЗагрузки.ИдентификаторФормы = ОповещениеЗавершения.Модуль.УникальныйИдентификатор;
	
	
	ФайловаяСистемаКлиент.ЗагрузитьФайл(ОповещениеЗавершения, ПараметрыЗагрузки, ИмяФайла);
	
КонецПроцедуры

РазрешениеНаСозданиеCOMКласса

Возвращает внутреннее описание разрешения на использование COM-класса.
ОбщийМодуль.РаботаВБезопасномРежиме
Автор: 1С
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Возвращает внутреннее описание разрешения на использование COM-класса.
//
// Параметры:
//  ProgID - Строка - ProgID класса COM, с которым он зарегистрирован в системе.
//    Например, "Excel.Application",
//  CLSID - Строка - CLSID класса COM, с которым он зарегистрирован в системе.
//  ИмяКомпьютера - Строка - имя компьютера, на котором надо создать указанный объект.
//    Если параметр опущен - объект будет создан на компьютере, на котором выполняется
//    текущий рабочий процесс,
//  Описание - Строка - описание причины, по которой требуется предоставление разрешения.
//
// Возвращаемое значение:
//  ОбъектXDTO - внутреннее описание запрашиваемого разрешения.
//  Предназначен только для передачи в качестве параметра в функции.
//  РаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов(),
//  РаботаВБезопасномРежиме.ЗапросНаОтменуРазрешенийИспользованияВнешнихРесурсов() и
//  РаботаВБезопасномРежиме.ЗапросНаОчисткуРазрешенийИспользованияВнешнихРесурсов().
//
Функция РазрешениеНаСозданиеCOMКласса(Знач ProgID, Знач CLSID, Знач ИмяКомпьютера = "", Знач Описание = "") Экспорт
	
	Пакет = РаботаВБезопасномРежимеСлужебный.Пакет();
	Результат = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(Пакет, "CreateComObject"));
	Результат.Description = Описание;
	
	Результат.ProgId = ProgID;
	Результат.CLSID = Строка(CLSID);
	Результат.ComputerName = ИмяКомпьютера;
	
	Возврат Результат;
	
КонецФункции

НастройкиФорматовСохраненияТабличногоДокумента

Возвращает описания форматов сохранения табличного документа.
ОбщийМодуль.СтандартныеПодсистемыСервер
Автор: 1С
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Возвращает описания форматов сохранения табличного документа.
//
// Возвращаемое значение:
//  ТаблицаЗначений - с колонками:
//   * ТипФайлаТабличногоДокумента - ТипФайлаТабличногоДокумента - значение, соответствующее формату;
//   * Ссылка - ПеречислениеСсылка.ФорматыСохраненияОтчетов      - ссылка на метаданные, где хранится представление;
//   * Представление - Строка - представление типа файла (заполняется из перечисления);
//   * Расширение    - Строка - тип файла для операционной системы;
//   * Картинка      - Картинка - картинка формата.
//
Функция НастройкиФорматовСохраненияТабличногоДокумента() Экспорт
	
	ТаблицаФорматов = Новый ТаблицаЗначений;
	
	ТаблицаФорматов.Колонки.Добавить("ТипФайлаТабличногоДокумента", Новый ОписаниеТипов("ТипФайлаТабличногоДокумента"));
	ТаблицаФорматов.Колонки.Добавить("Ссылка", Новый ОписаниеТипов("ПеречислениеСсылка.ФорматыСохраненияОтчетов"));
	ТаблицаФорматов.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
	ТаблицаФорматов.Колонки.Добавить("Расширение", Новый ОписаниеТипов("Строка"));
	ТаблицаФорматов.Колонки.Добавить("Картинка", Новый ОписаниеТипов("Картинка"));

	// Документ PDF (.pdf)
	НовыйФормат = ТаблицаФорматов.Добавить();
	НовыйФормат.ТипФайлаТабличногоДокумента = ТипФайлаТабличногоДокумента.PDF;
	НовыйФормат.Ссылка = Перечисления.ФорматыСохраненияОтчетов.PDF;
	НовыйФормат.Расширение = "pdf";
	НовыйФормат.Картинка = БиблиотекаКартинок.ФорматPDF;
	
	// Табличный документ (.mxl)
	НовыйФормат = ТаблицаФорматов.Добавить();
	НовыйФормат.ТипФайлаТабличногоДокумента = ТипФайлаТабличногоДокумента.MXL;
	НовыйФормат.Ссылка = Перечисления.ФорматыСохраненияОтчетов.MXL;
	НовыйФормат.Расширение = "mxl";
	НовыйФормат.Картинка = БиблиотекаКартинок.ФорматMXL;
	
	// Лист Microsoft Excel 2007 (.xlsx)
	НовыйФормат = ТаблицаФорматов.Добавить();
	НовыйФормат.ТипФайлаТабличногоДокумента = ТипФайлаТабличногоДокумента.XLSX;
	НовыйФормат.Ссылка = Перечисления.ФорматыСохраненияОтчетов.XLSX;
	НовыйФормат.Расширение = "xlsx";
	НовыйФормат.Картинка = БиблиотекаКартинок.ФорматExcel2007;

	// Лист Microsoft Excel 97-2003 (.xls)
	НовыйФормат = ТаблицаФорматов.Добавить();
	НовыйФормат.ТипФайлаТабличногоДокумента = ТипФайлаТабличногоДокумента.XLS;
	НовыйФормат.Ссылка = Перечисления.ФорматыСохраненияОтчетов.XLS;
	НовыйФормат.Расширение = "xls";
	НовыйФормат.Картинка = БиблиотекаКартинок.ФорматExcel;

	// Электронная таблица OpenDocument (.ods).
	НовыйФормат = ТаблицаФорматов.Добавить();
	НовыйФормат.ТипФайлаТабличногоДокумента = ТипФайлаТабличногоДокумента.ODS;
	НовыйФормат.Ссылка = Перечисления.ФорматыСохраненияОтчетов.ODS;
	НовыйФормат.Расширение = "ods";
	НовыйФормат.Картинка = БиблиотекаКартинок.ФорматOpenOfficeCalc;
	
	// Документ Word 2007 (.docx)
	НовыйФормат = ТаблицаФорматов.Добавить();
	НовыйФормат.ТипФайлаТабличногоДокумента = ТипФайлаТабличногоДокумента.DOCX;
	НовыйФормат.Ссылка = Перечисления.ФорматыСохраненияОтчетов.DOCX;
	НовыйФормат.Расширение = "docx";
	НовыйФормат.Картинка = БиблиотекаКартинок.ФорматWord2007;
	
	// Веб-страница (.html)
	НовыйФормат = ТаблицаФорматов.Добавить();
	НовыйФормат.ТипФайлаТабличногоДокумента = ТипФайлаТабличногоДокумента.HTML5;
	НовыйФормат.Ссылка = Перечисления.ФорматыСохраненияОтчетов.HTML;
	НовыйФормат.Расширение = "html";
	НовыйФормат.Картинка = БиблиотекаКартинок.ФорматHTML;
	
	// Текстовый документ UTF-8 (.txt).
	НовыйФормат = ТаблицаФорматов.Добавить();
	НовыйФормат.ТипФайлаТабличногоДокумента = ТипФайлаТабличногоДокумента.TXT;
	НовыйФормат.Ссылка = Перечисления.ФорматыСохраненияОтчетов.TXT;
	НовыйФормат.Расширение = "txt";
	НовыйФормат.Картинка = БиблиотекаКартинок.ФорматTXT;
	
	// Текстовый документ ANSI (.txt).
	НовыйФормат = ТаблицаФорматов.Добавить();
	НовыйФормат.ТипФайлаТабличногоДокумента = ТипФайлаТабличногоДокумента.ANSITXT;
	НовыйФормат.Ссылка = Перечисления.ФорматыСохраненияОтчетов.ANSITXT;
	НовыйФормат.Расширение = "txt";
	НовыйФормат.Картинка = БиблиотекаКартинок.ФорматTXT;
	
	Для Каждого ФорматСохранения Из ТаблицаФорматов Цикл
		ФорматСохранения.Представление = Строка(ФорматСохранения.Ссылка);
	КонецЦикла;
		
	Возврат ТаблицаФорматов;
	
КонецФункции

ПолучитьИндексПиктограммыФайла

Получается индекс пиктограммы файла - индекс в картинке КоллекцияПиктограммФайлов.
ОбщийМодуль.РаботаСФайламиСлужебныйКлиентСервер
Автор: 1С
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Получается индекс пиктограммы файла - индекс в картинке КоллекцияПиктограммФайлов.
Функция ПолучитьИндексПиктограммыФайла(Знач РасширениеФайла) Экспорт
	
	Если ТипЗнч(РасширениеФайла) <> Тип("Строка")
		ИЛИ ПустаяСтрока(РасширениеФайла) Тогда
		Возврат 0;
	КонецЕсли;
	
	РасширениеФайла = ОбщегоНазначенияКлиентСервер.РасширениеБезТочки(РасширениеФайла);
	
	Расширение = "." + НРег(РасширениеФайла) + ";";
	
	Если СтрНайти(".dt;.1cd;.cf;.cfu;", Расширение) <> 0 Тогда
		Возврат 6; // Файлы 1С.
		
	ИначеЕсли Расширение = ".mxl;" Тогда
		Возврат 8; // Табличный Файл.
		
	ИначеЕсли СтрНайти(".txt;.log;.ini;", Расширение) <> 0 Тогда
		Возврат 10; // Текстовый Файл.
		
	ИначеЕсли Расширение = ".epf;" Тогда
		Возврат 12; // Внешние обработки.
		
	ИначеЕсли СтрНайти(".ico;.wmf;.emf;",Расширение) <> 0 Тогда
		Возврат 14; // Картинки.
		
	ИначеЕсли СтрНайти(".htm;.html;.url;.mht;.mhtml;",Расширение) <> 0 Тогда
		Возврат 16; // HTML.
		
	ИначеЕсли СтрНайти(".doc;.dot;.rtf;",Расширение) <> 0 Тогда
		Возврат 18; // Файл Microsoft Word.
		
	ИначеЕсли СтрНайти(".xls;.xlw;",Расширение) <> 0 Тогда
		Возврат 20; // Файл Microsoft Excel.
		
	ИначеЕсли СтрНайти(".ppt;.pps;",Расширение) <> 0 Тогда
		Возврат 22; // Файл Microsoft PowerPoint.
		
	ИначеЕсли СтрНайти(".vsd;",Расширение) <> 0 Тогда
		Возврат 24; // Файл Microsoft Visio.
		
	ИначеЕсли СтрНайти(".mpp;",Расширение) <> 0 Тогда
		Возврат 26; // Файл Microsoft Visio.
		
	ИначеЕсли СтрНайти(".mdb;.adp;.mda;.mde;.ade;",Расширение) <> 0 Тогда
		Возврат 28; // База данных Microsoft Access.
		
	ИначеЕсли СтрНайти(".xml;",Расширение) <> 0 Тогда
		Возврат 30; // xml.
		
	ИначеЕсли СтрНайти(".msg;.eml;",Расширение) <> 0 Тогда
		Возврат 32; // Письмо электронной почты.
		
	ИначеЕсли СтрНайти(".zip;.rar;.arj;.cab;.lzh;.ace;",Расширение) <> 0 Тогда
		Возврат 34; // Архивы.
		
	ИначеЕсли СтрНайти(".exe;.com;.bat;.cmd;",Расширение) <> 0 Тогда
		Возврат 36; // Исполняемые файлы.
		
	ИначеЕсли СтрНайти(".grs;",Расширение) <> 0 Тогда
		Возврат 38; // Графическая схема.
		
	ИначеЕсли СтрНайти(".geo;",Расширение) <> 0 Тогда
		Возврат 40; // Географическая схема.
		
	ИначеЕсли СтрНайти(".jpg;.jpeg;.jp2;.jpe;",Расширение) <> 0 Тогда
		Возврат 42; // jpg.
		
	ИначеЕсли СтрНайти(".bmp;.dib;",Расширение) <> 0 Тогда
		Возврат 44; // bmp.
		
	ИначеЕсли СтрНайти(".tif;.tiff;",Расширение) <> 0 Тогда
		Возврат 46; // tif.
		
	ИначеЕсли СтрНайти(".gif;",Расширение) <> 0 Тогда
		Возврат 48; // gif.
		
	ИначеЕсли СтрНайти(".png;",Расширение) <> 0 Тогда
		Возврат 50; // png.
		
	ИначеЕсли СтрНайти(".pdf;",Расширение) <> 0 Тогда
		Возврат 52; // pdf.
		
	ИначеЕсли СтрНайти(".odt;",Расширение) <> 0 Тогда
		Возврат 54; // Open Office writer.
		
	ИначеЕсли СтрНайти(".odf;",Расширение) <> 0 Тогда
		Возврат 56; // Open Office math.
		
	ИначеЕсли СтрНайти(".odp;",Расширение) <> 0 Тогда
		Возврат 58; // Open Office Impress.
		
	ИначеЕсли СтрНайти(".odg;",Расширение) <> 0 Тогда
		Возврат 60; // Open Office draw.
		
	ИначеЕсли СтрНайти(".ods;",Расширение) <> 0 Тогда
		Возврат 62; // Open Office calc.
		
	ИначеЕсли СтрНайти(".mp3;",Расширение) <> 0 Тогда
		Возврат 64;
		
	ИначеЕсли СтрНайти(".erf;",Расширение) <> 0 Тогда
		Возврат 66; // Внешние отчеты.
		
	ИначеЕсли СтрНайти(".docx;",Расширение) <> 0 Тогда
		Возврат 68; // Файл Microsoft Word docx.
		
	ИначеЕсли СтрНайти(".xlsx;",Расширение) <> 0 Тогда
		Возврат 70; // Файл Microsoft Excel xlsx.
		
	ИначеЕсли СтрНайти(".pptx;",Расширение) <> 0 Тогда
		Возврат 72; // Файл Microsoft PowerPoint pptx.
		
	ИначеЕсли СтрНайти(".p7s;",Расширение) <> 0 Тогда
		Возврат 74; // Файл подписи.
		
	ИначеЕсли СтрНайти(".p7m;",Расширение) <> 0 Тогда
		Возврат 76; // зашифрованное сообщение.
	Иначе
		Возврат 4;
	КонецЕсли;
	
КонецФункции