Показать сообщение отдельно
Старый 15.12.2011, 15:00   #9  
alvares is offline
alvares
Участник
 
45 / 12 (1) ++
Регистрация: 27.10.2011
Коллеги, а есть у кого рабочий пример для создания DBF c помощью "FastDbf"

Не могу понять как работать с заголовком DBF, подскажите в чем не прав - пример создает файл нулевой длины и не отпускает его пока открыта АХ.
X++:
static void DBFCreate(Args _args)
{
    SocialExplorer.IO.FastDBF.DbfFile       dbfFile = new SocialExplorer.IO.FastDBF.DbfFile();
    SocialExplorer.IO.FastDBF.DbfRecord     dbfRecord;
    SocialExplorer.IO.FastDBF.DbfHeader     dbfHeader;
    ;

    dbfFile.Create("c:\\tt1.dbf");

    dbfHeader = dbfFile.get_Header();

    dbfHeader.AddColumn("StrCol", SocialExplorer.IO.FastDBF.DbfColumnType::Character, 20, 0);
    dbfHeader.AddColumn("NumCol1", SocialExplorer.IO.FastDBF.DbfColumnType::Number, 15, 3);
    dbfHeader.AddColumn("NumCol2", SocialExplorer.IO.FastDBF.DbfColumnType::Number, 3, 0);
    dbfHeader.AddColumn("DateCol", SocialExplorer.IO.FastDBF.DbfColumnType::Date);
    dbfHeader.AddColumn("BoolCol", SocialExplorer.IO.FastDBF.DbfColumnType::Boolean);
    
    dbfRecord = new SocialExplorer.IO.FastDBF.DbfRecord(dbfHeader, System.Text.Encoding::GetEncoding(1251));
    dbfRecord.set_Item(1, 'Test');
    dbfRecord.set_Item(2, '100.10');
    dbfRecord.set_Item(3, '10');
    dbfRecord.SetDateValue(4,str2datetime('31.12.2010', 123));
    dbfRecord.set_Item(5, '1');

    dbfFile.Write(dbfRecord);
    dbfFile.WriteHeader();
    dbfFile.Close();
}
Спасибо.