Формат DBF (DataBase File) - формат хранения данных, используемый в качестве одного из стандартных способов хранения и передачи информации системами управления базами данных, электронными таблицами и т. д. DBF-файл делится на заголовок, в котором хранится информация о структуре базы и количестве записей, и область данных, представляющую собой последовательно организованную таблицу из записей фиксированной длины. В свою очередь записи делятся на поля также фиксированной длины, которые хранятся в файле непосредственно друг за другом, образуя запись.

 

Информация

 

В формат DBF экспортируются только данные, т.е. только те компоненты, которые расположены на бэндах Данные.

 

 

 

Управление экспортом

 

В поле Tag каждого текстового компонента можно указать следующие элементы, которые управляют экспортом:

strel11 ТипДанных [ : ДлинаПоля [ : ДлинаДробнойЧасти ] ]

strel11 ТипЭкспорта : "НазваниеПоля"

strel11 Column: "НазваниеПоля" "СтрокаДанных"

 

Несколько элементов должны разделяться точкой с запятой. Элемент “Тип данных” может быть только один и должен располагаться первым, остальные элементы – по необходимости. Возможные значения элемента "ТипДанных" приведены в таблице. Если тип данных не задан, то по умолчанию принимается тип данных string. Элемент "ДлинаПоля" задает фиксированную ширину поля данных. Если ширина поля не задана – принимается по умолчанию из таблицы. Для типа string по умолчанию принимается ширина самой длинной строки. Элемент "ДлинаДробнойЧасти" задает число знаков после запятой. Если не задано – принимается по умолчанию из таблицы.

 

Тип данных

Тип данных DBF (размер по умолчанию)

Описание

int

Numeric (15 : 0)

Целочисленный

long

Numeric (25 : 0)

Целочисленный

float

Numeric (15 : 5)

Дробный

double

Numeric (20 : 10)

Дробный

string

Character (auto)

Текстовый

date

Date (8)

Дата

 

Примеры использования элемента приведены в следующей таблице.

 

Тип данных

Описание

string : 25

задает ширину колонки 25 символов и обрезает все длинные строки

float

преобразует в дробное число длиной 15 знаков,  5 знаков после запятой

float :10

преобразует в дробное число длиной 10 знаков,  5 знаков после запятой

float :10 : 2

преобразует в дробное число длиной 10 знаков,  2 знаков после запятой

int :10 : 2

преобразует в целое число длиной 10 знаков; второй параметр игнорируется

 

Информация

 

Если целая часть числа не вмещается в указанное поле, она обрезается, т.е. данные теряются. Например, если записать число «-12345,678» в поле «float:8:3», то получится «2345,678».

 

 

 

Элемент "ТипЭкспорта" указывает, для какого экспорта задается название поля. Допустимые значения: “dbf”, “csv”, “xml”, “default”. Элемент "НазваниеПоля" определяет, как будет называться поле в файле (для DBF строка автоматически обрезается до 10 символов). Название можно указывать для каждого типа экспорта свое. Если название для какого-то экспорта не указано, то берется название для типа “default”; если его нет -  берется название компонента. Например:

 

Пример

...

DBF : "Describe" ; XML : "Description" ; default: "Default name"

...

 

 

Элемент "Column" указывает, что в экспортируемые данные добавляется дополнительное поле. Элемент "НазваниеПоля" определяет название нового поля. Элемент "СтрокаДанных" определяет содержимое нового поля и может быть выражением. Например:

 

Пример

...

Column: "SortField" "{Products.Categories.CategoryName}"

...

 

 

Параметры экспорта

 

Параметры экспорта в формат DBF описываются в классе StiDbfExportSettings. Ниже приводится таблица с описанием всех свойств этого класса.

 

Название

Тип

Описание

CodePage

StiDbfCodePages

кодовая страница файла; по умолчанию StiDbfCodePages.Default