Skip to content
Belevskij Sergeij edited this page May 12, 2013 · 6 revisions

[Внешняя компонента быстрого поиска в файлах базы данных 1С 7.7] (https://github.com/r72cccp/dbfsearch1C77 "Белевский Сергей. Внешняя компонента быстрого поиска в файлах базы данных 1С 7.7 Перейти на страницу проекта")

Последовательность действий.

####1. Скомпилируйте файл с исходным кодом программы: csc.exe /r:System.Numerics.dll search.cs ####2. Скопируйте полученный исполняемый файл search.exe В папку вашего пользователя 1Сv77 базы данных, которому вы хотите предоставить доступ к поиску. Чтобы узнать этот каталог - создайте новую обработку в конфигураторе. Используйте функцию Сообщить(КаталогПользователя()) в предопределённой процедуре Сформировать(), которая вызывается при нажатии кнопки Сформировать ####3. Для вызова внешней компоненты используйте следующий код: ФайлEXE = КаталогПользователя()+"search.exe"; ФайлDBF = КаталогИБ()+"sc156.dbf"; ФайлРезультата = КаталогПользователя()+"resultsc156.txt"; Если ФС.СуществуетФайл(КаталогПользователя()+"search.exe")=1 Тогда КомандаСистемы(ФайлEXE+" """+ФайлDBF+""" """+ФайлРезультата+""""); КонецЕсли; ####4. Чтение результата поиска Чтобы прочитать результат, сначала проверьте, существует ли файл с результатами поиска ФайлEXE. В файле с результатом находится список кодов элементов справочника, в которых найдены совпадения по искомой строке. Они изолированы тегами наподобие xml и в одной строке расположен один результат. ####5. Использование результатов поиска Очевидно, что найденные коды можно считать в таблицу или список значений, чтобы выполнить с ними некие действия в 1С. Удач!