Технологии интеграции 1С:Предприятия 8.3 [Елена Юрьевна Хрусталева] (pdf) читать постранично, страница - 118

Книга в формате pdf! Изображения и текст могут не отображаться!


 [Настройки текста]  [Cбросить фильтры]

метод Первая(), как показано ниже (листинг 6.160).
Листинг 6.160. Пример использования метода «Первая()»
&НаКлиенте
Процедура ЧтениеДанных(Команда)
Путь = ″c:\temp\″;
БД = Новый XBase;
БД.ОткрытьФайл(Путь + ″list.dbf″, Путь + ″index.cdx″);
БД.ТекущийИндекс = БД.Индексы.IDXCODE;
Сообщение = Новый СообщениеПользователю();
БД.Первая();
Пока Истина Цикл
Сообщение.Текст = БД.CODE + ″ ″ + БД.Name;

Сообщение.Сообщить();

Если Не БД.Следующая() Тогда
Прервать;
КонецЕсли;
КонецЦикла;
БД.ЗакрытьФайл();
КонецПроцедуры

502

Технологии интеграции «1С:Предприятия 8.3»

Индексы полезно использовать не только для упорядочивания выборок
записей по какому-либо полю, но и для реализации каких-либо «поисковых
механизмов». Рассмотрим следующий пример (листинг 6.161).
Листинг 6.161. Пример поиска данных в файле DBF
&НаКлиенте
Процедура ПоискДанных(Команда)
Путь = ″c:\temp\″;
БД = Новый XBase;
БД.ОткрытьФайл(Путь + ″list.dbf″, Путь + ″index.cdx″);
БД.ТекущийИндекс = БД.Индексы.IDXCODE;
Сообщение = Новый СообщениеПользователю();
Если БД.Найти(″000000002″, ″=″) Тогда


Пока Истина Цикл

Сообщение.Текст = БД.CODE + ″ ″ + БД.Name;

Сообщение.Сообщить();

Если Не БД.Следующая() Тогда

Прервать;

КонецЕсли;

КонецЦикла;
КонецЕсли;
БД.ЗакрытьФайл();
КонецПроцедуры

В результате будут получены только две записи (листинг 6.162).
Листинг 6.162. Порядок отображения данных
000000002 Смирнова Светлана Ивановна
REST-0003 Артемов Игорь Владимирович

Менять текущий индекс можно и во время выборки (однако следует помнить,
что при «умелой» манипуляции индексами можно никогда не достигнуть
конца DBF-файла).

© ООО «1С-Паблишинг», 2020
© Оформление. ООО «1С-Паблишинг», 2020
Все права защищены.
Материалы предназначены для личного индивидуального использования приобретателем.
Запрещено тиражирование, распространение материалов, предоставление доступа по сети
к материалам без письменного разрешения правообладателей.
Разрешено копирование фрагментов программного кода для использования
в разрабатываемых прикладных решениях.
Фирма «1С»
123056, Москва, а/я 64, Селезневская ул., 21
Тел.: (495) 737-92-57
1c@1c.ru, http://www.1c.ru/
Издательство ООО «1С-Паблишинг»
127434, Москва, Дмитровское ш., 9
Тел.: (495) 681-02-21
publishing@1c.ru, http://books.1c.ru
Об опечатках просьба сообщать по адресу books.v8@1c.ru.