Универсальная загрузка файла *.CSV в ТЗ типовым решением (8.3.6+)

11.02.17

Интеграция - Внешние источники данных

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Загрузка CSV в ТЗ.epf
.epf 12,48Kb
12
12 Скачать (1 SM) Купить за 1 850 руб.

Бывает так, что средствами ADO не воспользоватся или выдается не тот результат которого вы ждали, тогда на смену им приходят простые типовые решения. Платформа не ниже 8.3.6.

Простая функция чтения файла CSV и запись результата в ТЗ, да она медленея чем загрузка средствами ADO примерно 30%, но при прямых руках дает более качественный результат.

Функция ЗагрузитьИзФайлаCSV(ПутьКФайлу, ФайлCSV, Разделитель = ";", ОграничительСтроки = "", КодировкаФайла = "" , НачСтрока = 1, ЗагрузитьСтрок = 0, КоличествоКолонок = 10,ТабличныйДокумент = Неопределено) Экспорт
	
	Если ТабличныйДокумент = Неопределено Тогда ТабличныйДокумент = Новый ТекстовыйДокумент; КонецЕсли;
		
	Попытка
		ТабличныйДокумент.Прочитать(ПутьКФайлу+ФайлCSV, ?(КодировкаФайла = "",КодировкаТекста.ANSI,КодировкаФайла));  
	Исключение
		Сообщить(ОписаниеОшибки(), СтатусСообщения.Внимание);
		Возврат Новый ТаблицаЗначений;
	КонецПопытки;
	
	КолвоСтрокФайла = ТабличныйДокумент.КоличествоСтрок();
	КонечнаяКолонка = КоличествоКолонок;   
	
	Если КолвоСтрокФайла = 0 Тогда ТабличныйДокумент = Неопределено; Возврат Новый ТаблицаЗначений;   КонецЕсли;
	
	Если НачСтрока > КолвоСтрокФайла Тогда ТабличныйДокумент = Неопределено;  Возврат Новый ТаблицаЗначений;  КонецЕсли;
			
	ТабЗн=Новый ТаблицаЗначений;
	ТипЯчейки  =  Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(128));
	
	Для ит = 1 ПО КонечнаяКолонка Цикл
	   ТабЗн.Колонки.Добавить("F" + ит, ТипЯчейки);
	КонецЦикла;
	
	КонСтрока = НачСтрока + ЗагрузитьСтрок;
	КонСтрока = ?(КонСтрока = 1, КолвоСтрокФайла, КонСтрока);	
	 
	Для нСтрока = НачСтрока ПО КонСтрока Цикл
		Если нСтрока > КолвоСтрокФайла Тогда Прервать; КонецЕсли;
	    НоваяСтрокаТФ = ТабЗн.Добавить();
		СтрокаДокумента=СтрЗаменить(ТабличныйДокумент.ПолучитьСтроку(нСтрока),ОграничительСтроки+?(Разделитель="Таб",Символы.Таб,Разделитель),";");
		ЗначениеСтроки = СтрРазделить(СтрокаДокумента,";");
		КоличествоПозиций = ЗначениеСтроки.Количество();
		Для нКолонка=1 ПО ?(КоличествоПозиций<КонечнаяКолонка,КоличествоПозиций,КонечнаяКолонка) Цикл
	        НоваяСтрокаТФ["F" + нКолонка] = СтрЗаменить(ЗначениеСтроки[нКолонка-1],ОграничительСтроки,"");  
	    КонецЦикла;
	КонецЦикла;
	
	Возврат ТабЗн;
    
КонецФункции


Пример использования приведен в обработке.

CSV парсинг

См. также

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

120000 руб.

19.08.2020    26440    26    1    

28

Внешние источники данных Программист Бизнес-аналитик Пользователь Платформа 1С v8.3 Управляемые формы Анализ и прогнозирование 1C:Бухгалтерия Узбекистан Беларусь Кыргызстан Молдова Россия Казахстан Платные (руб)

Готовое решение для автоматической выгрузки данных из 1С 8.3 в базу данных ClickHouse, PostgreSQL или Microsoft SQL для работы с данными 1С в BI-системах. «Экстрактор данных 1С в BI» работает со всеми типовыми и нестандартными конфигурациями 1С 8.3 и упрощает работу бизнес-аналитиков. Благодаря этому решению, специалистам не требуется быть программистами, чтобы легко получать данные из 1С в вашей BI-системе.

28500 руб.

15.11.2022    22925    24    49    

39

Внешние источники данных Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

Готовая интеграция для управляемых форм. Встраивается в вашу 1С как расширение. Реализует автоматический обмен данными между 1С (1С:Фитнес клуб и аналогов) и СКУД RusGuard, автоматизирует бизнес-процессы по созданию и учету сотрудников в СКУД. Значительно упрощает работу специалистов отдела кадров и отдела безопасности: избавляет от двойного ввода информации в 1С и СКУД.

94999 руб.

11.07.2024    1301    1    0    

3

Розничная торговля Внешние источники данных Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Бухгалтерский учет 1С:Бухгалтерия 3.0 Фармацевтика, аптеки Россия Бухгалтерский учет Платные (руб)

Внешняя обработка загрузки данных из файла-выгрузки, сформированного в программе F3 TAIL версии 3.4 (и выше) или еФарма версии 2.1, в базу конфигурации 1С: Бухгалтерия предприятия 8, ред. 3.0 (базовая, ПРОФ, КОРП, ФРЕШ).

13200 руб.

19.12.2016    48655    98    106    

70

Зарплата Внешние источники данных Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 организаций (далее Парус) в конфигурацию 1С:Зарплата и управление персоналом, ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

120000 руб.

07.06.2021    13739    2    3    

3

Внешние источники данных Зарплата Бюджетный учет Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 7.хх учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

84000 руб.

24.04.2017    52671    104    165    

91
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. etmarket 925 13.02.17 08:16 Сейчас в теме
Спасибо за публикацию. Есть вопрос. Как определяется кодировка в файле? Есть ли возможность определять ее автоматически?
2. Puser-x6 57 13.02.17 08:43 Сейчас в теме
к сожалению без использования сторонних библиотек получить кодировку нельзя.
3. пользователь 19.04.17 09:12
Сообщение было скрыто модератором.
...
Оставьте свое сообщение