Мне вот, например, в школе на 5 давались все естественные науки, а вот по русскому, немецкому и английскому было 2. Такая же история потом была в универе, а потом и в аспирантуре. Ну и вот, имея 2 высших образования (физик и программист), я все тот же двоечник. А так как работаю на ПК, это все усугубляется в разы. Вот, собственно, в голове и возникла идея написания данного приложения.
Данное приложение делает http запрос на http://api.yandex.ru/speller/ и пытается проверить ошибки в тексте.
Да, я видел в интернете компоненту, написанную на скриптах под платформу 8.1. но она достаточно специфична, мне хотелось написать что-нибудь попроще.
Данное приложение возможно запускать из командной строки с текстом, который необходимо проверить.
Пример строки из 1с 8
Процедура ПроверкаОрфографии(СтрокаД)
Путьspeller = КаталогВременныхФайлов() + «YandexSpeller.V2.exe»;
ФайлПроверка = Новый Файл(Путьspeller);
Если НЕ ФайлПроверка.Существует() Тогда
ФайлДвоичныеДанные = ПолучитьОбщийМакет(«speller»);
ФайлДвоичныеДанные.Записать(Путьspeller);
КонецЕсли;
команда = Путьspeller + » » + СокрЛП(СтрокаД);
ЗапуститьПриложение(команда,,Истина);
КонецПроцедуры
&НаКлиенте
Процедура ABC(Команда)
Если ЗначениеЗаполнено(Объект[ЭтаФорма.ТекущийЭлемент.Имя]) Тогда
ПроверкаОрфографии(СокрЛП(Строка(Объект[ЭтаФорма.ТекущийЭлемент.Имя])));
КонецЕсли;
КонецПроцедуры
Изначально я хотел написать приложение, которое работает с COM, пока не хватает знаний в этой области. На данный момент пишу внешнюю компоненту.
Зачем же делать компоненту — есть же «разработчикам — встроить функцию проверки правописания в свое приложение с помощью API Яндекс.Спеллера (JavaScript или HTTP)» =http://api.yandex.ru/speller/doc/dg/concepts/api-overview.xml = и делай спокойно через WebСервис (кстати получится неплохой пример использования Веб сервиса в 1С))))))
Так если рассуждать, вообще тогда делать не чего не надо, все уже есть в готовом виде и все уже придумано до нас. В массе своей процентов 80% пользователей вообще не программисты, они просто берут или готовое на этом сайте или че нить типовое юзают. Я столкнулся с тем что этим пользователям не очень просто встроить JavaScript в 1с или куда нить еще. Вот собственно для них и рассчитано данные приложения. Наверное гораздо проще будет в любой 1с запустить команду ЗапуститьПриложение(<СтрокаКоманды>, <ТекущийКаталог>, <ДождатьсяЗавершения>, <КодВозврата>) и получить какой то результат, не извращаясь с написанием скриптов и т.д.
Конечно было бы не плохо чтоб данный инструмент вернул что то в 1с, я вот с этим разбираюсь.
(2) Вы непоняли = сайтhttp://api.yandex.ru/speller/ предоставляет свой веб-сервис по адресу http://api.yandex.ru/speller/doc/dg/concepts/api-overview.xml = далее работа исключительно средствами 1С (Конфигуратор=Общие=Web-Сервисы)
Да есть такое, но как это прописать «пользователю»?
1) Нужно добавить Конфигуратор=Общие=Web-Сервисы=YandexSpeller
2) Прописать запрос, обработать результат. В 1с не я вот так вот не на шел как по нормальному отработать гипертекст.
3) Совместить все это с текущим интерфейсом.
И я хочу сказать очень много народу из программистов 1с которые вообще не знают что такое Конфигуратор=Общие=Web-Сервисы и как с этим жить. Спасибо конечно за подсказку я сам не знал, попробую сейчас реализовать.
Не знаю может Вы меня не понимаете, я считаю что программисту в первую очередь нужно делать инструмент, который поможет уменьшить телодвижение другому «программисту».
(1) вы наверное ошиблись — веб сервисы — это СЕРВЕР 🙂
А Вам нужен клиент, т.е. веб ссылки. А при работе с веб сервисом яндекса — я понял, что с 1С он нифига нормально работать не хочет.
А вот хттп запросы — это другое дело:)
Кроме того — почему я обратил внимание на это все — так как нам нужны веб ссылки, то значит, что их можно сделать программно,примеры есть в моей статье по веб сервисам. Т.е. не надо в конфигуратор лазить.
Вот пожалуйста, тут подробное использование некоторых возможностей
http://infostart.ru/public/203603/
Спасибо!
Но Сможете ли Вы подчеркнуть ошибку определенным цветом? Сможете ли вы вывести подсказку с выбором нужного варианта в гипертексте? Я думаю 1с нормально это не позволяет. Разве что поля делать вида hml документ и на чистом hml кодить.
Отличная доработка, включу в свою базу по учету работ +