Функции работы со строками 1С — анализ текста


В качестве примера работы функций работы со строками 1С мы хотели бы создать автоматический анализ текста. Текст мы будем брать из файла. Результат анализа выводить в произвольном виде пользователю.

Нам нужно создать внешнюю обработку, которая позволит нам выбрать текстовый файл и запустить анализатор.

 

Анализ текста 1С — форма и кнопки

Итак, создаем внешнюю обработку: Конфигуратор/Файл/Новый/Внешняя обработка.

Добавляем форму. На форме нам нужно разместить поле выбора текстового файла и кнопку анализа.

 

Анализ текста 1С — толстый клиент

На форму разместим обычное текстовое поле. Длина строки – неограниченная, ведь путь к файлу (имена каталогов) может быть значительным.

Чтобы пользователю не пришлось вписывать имя файла, а можно было выбрать его – у поля включим кнопку выбора.

Имя поля изменим на «ИмяФайла», имя связанного реквизита формы изменится на такое же автоматически.

В качестве кнопки будем использовать автоматически добавленную платформой кнопку «Выполнить» (и у нее уже подключен обработчик – удобно).

 

Анализ текста 1С — тонкий клиент

В тонком клиенте мы самостоятельно создадим реквизит формы «ИмяФайла». Перетащим реквизит на форму. В свойствах элемента формы также включим кнопку выбора.

В качестве кнопки – создадим команду «Выполнить», назначим ей обработку и перетащим на форму.

 

Анализ текста 1С — программируем

Первое, что нам нужно сделать – обработать нажатие кнопки выбора – показать по нажатию диалог выбора файла.

Зайдем в свойства нашего текстового поля на форме (в толстом клиенте – левой кнопкой мыши прямо на поле, в тонком – на имя поля в списке), и укажем обработчик события «НачалоВыбора».

Внутри функции обработчика, которую создаст 1С при назначении, впишем нехитрый код:


Только зарегистрированные пользователи VIP группы могут видеть этот контент.


Теперь у нас есть имя файла. Нам нужно «достать» его содержимое и вызвать анализ текста.

У нас уже есть обработчик кнопки «Выполнить». В толстом клиенте кнопка и ее обработчик были созданы автоматически конфигуратором 1С. В тонком клиенте мы добавляли ее ручками.

Впишем в обработчик код, который считает файл в строку:


Только зарегистрированные пользователи VIP группы могут видеть этот контент.


Касательно кодировки файла. Если создать объект ЧтениеТекста() без параметра с указанием кодировки – 1С попытается самостоятельно определить кодировку (по сигнатуре Byte Order Mark – BOM, или будет считать его кодировку ANSI).

Вы можете указать нужную кодировку напрямую, например так:
Файл = Новый ЧтениеТекста(ИмяФайла, "UTF-8"); //имя кодировки подставить нужное

Итак, в результате у нас получилось:

  • Текстовая строка, считанная из файла в переменной «Текст»
  • Процедура, в которой мы будем анализировать полученную строку из переменной, с названием «АнализТекста()», используя функции работы со строками 1С


Проголосовать за этот пост:

1 Star2 Stars3 Stars4 Stars5 Stars (15 голосов, среднее: 1,80 из 5)
Загрузка...

Добавить комментарий