0
Длинный Клиент
28.11.12
✎
18:41
|
Есть прикольная функция, быстро грузит CSV в таблицу значений. Требует установки GameWithFire из EnterpriseIntegrator.
Но она называет столбцы TЗ значениями из первой cтроки CSV. А в моем CSV заголовков нет, там с первой строки идут данные.
Что бы поменять в коде, дабы не терялась первая строка при загрузке в ТЗ ?
Функция ПрочитатьCSV_2(Папка, ИмяФайла, КолПолей)
// Параметры:
// "Папка" - путь к файлу без имени файла с завершающим слешем,
// "ИмяФайла" - имя файла,
// "КолПолей" - количество колонок (число).
// Функция возвращает ТаблицуЗначений с данными файла.
Текст = "[" + ИмяФайла + "]
|ColNameHeader=False
|Format=Delimited(;)
|TextDelimiter=none
|CharacterSet=ANSI
|";
Для ы = 1 По КолПолей Цикл
Текст = Текст + "Col" + ы + "=Field" + ы + " Text" + Символы.ПС;
КонецЦикла;
ТекстДок = Новый ТекстовыйДокумент;
ТекстДок.УстановитьТекст(Текст);
ТекстДок.Записать(Папка + "Schema.ini");
objRec = Новый COMОбъект("ADODB.Recordset");
strQuery = "SELECT * FROM [" + ИмяФайла + "]";
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Папка + ";Extended Properties=""text;""";
adOpenStatic = 3;
adLockOptimistic = 3;
adCmdText = 1;
objRec.Open(strQuery, strConn, adOpenStatic, adLockOptimistic, adCmdText);
ПодключитьВнешнююКомпоненту("GameWithFire.ADOUtils");
ADOUtils = Новый("AddIn.ADOUtils");
Возврат ADOUtils.ADORecordsetToValueTable(objRec);
КонецФункции
|
|