Система 1С:Предприятие позволяет работать с файлами базы данных формата dbf (dBase III). Для этого используется объект XBase.
Пример записи данных в файл dbf (листинг 1) средствами внутреннего языка системы 1С:Предприятие 8.2. Создадим три поля:
- CODE — код товара, тип строка;
- NAME — наименование товара, тип строка;
- COST — цена товара, тип число
Листинг 1 — Запись данных в файл DBF:
&НаКлиенте Процедура ЗаписатьДанные(Команда) ВыгрузитьВФайл(); КонецПроцедуры &НаСервереБезКонтекста Процедура ВыгрузитьВФайл() ПутьКФайлу = "d:\temp\"; БД = Новый XBase; БД.Поля.Добавить("CODE", "S", 9); БД.Поля.Добавить("NAME", "S", 40); БД.Поля.Добавить("COST", "N", 15, 2); БД.СоздатьФайл(ПутьКФайлу + "tovar.dbf", ПутьКФайлу + "index.cdx"); БД.Индексы.Добавить("IDXCODE", "CODE"); ИБД = БД.СоздатьИндексныйФайл(ПутьКФайлу + "index.cdx"); БД.АвтоСохранение = Истина; Выборка=Справочники.Номенклатура.Выбрать(); Пока Выборка.Следующий() Цикл Если Выборка.ЭтоГруппа Тогда Продолжить; КонецЕсли; БД.Добавить(); БД.CODE = СокрЛП(Выборка.Код); БД.NAME = СокрЛП(Выборка.Наименование); БД.COST = Выборка.ЗакупочнаяЦена; КонецЦикла; БД.ЗакрытьФайл(); КонецПроцедуры
Процедура ПрочитатьДанные() выполняет чтение данных из файла dbf и выводить полученные данные в сообщении пользователю (листинг 2).
Листинг 2 — Чтение данных из файла DBF:
&НаКлиенте Процедура ПрочитатьДанные(Команда) ПутьКФайлу = "d:\temp\"; БД = Новый XBase; БД.ОткрытьФайл(ПутьКФайлу + "tovar.dbf", ПутьКФайлу + "index.cdx"); БД.ТекущийИндекс = БД.Индексы.IDXCODE; Сообщение = Новый СообщениеПользователю(); БД.Первая(); Пока Истина Цикл Сообщение.Текст = СокрЛП(БД.CODE) + " " + СокрЛП(БД.Name) + " " +БД.COST; Сообщение.Сообщить(); Если Не БД.Следующая() Тогда Прервать; КонецЕсли; КонецЦикла; БД.ЗакрытьФайл(); КонецПроцедуры