Подключение проверки правописания во все документы и справочники

25.10.13

Интеграция - WEB-интеграция

Написание простой команды проверки правописания.
Используя Общие команды.

Собственно появилась задача, написать обработку, или что угодно используя любые способы и методы для проверки правописания текстовых полей в конфигурации и желательно почти в любой типовой, и на УФ.
Первой о чем я задумался был способ реализации через ВК, но потом наткнулся на статью по обработке которая использует сервис Яндекс.
Яндекс.Спеллер - API

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Пустая конфигурация с командой.
.cf 14,05Kb ver:1
8
8 Скачать (1 SM) Купить за 1 850 руб.

Собственно появилась задача, написать обработку, или что угодно используя любые способы и методы для проверки правописания текстовых полей в конфигурации и желательно почти в любой типовой, и на УФ.

Первой о чем я задумался был способ реализации через ВК, но потом наткнулся на статью по обработке которая использует сервис Яндекс.

Яндекс.Спеллер - API

Мне показалось что это лучше чем ВК, так как намного быстрее, и не требует установки офиса или других программных продуктов.

Из способов я выбрал 

Web Service API

Так же доступны:

JavaScript API

Подключение к веб-формам

Подключение к текстовым редакторам

Заказчик сказал что автоматически исправлять ничего не нужно, только выводить сообщения "Где(в каком поле)","Какое слово", "Правильные варианты". Тем самым облегчив мне работу.

Далее была написана обработка которая выполняла данные действия.

После чего, понял что бы прикрепить почти ко всем справочникам и документам придеться много писать. Так же заметил что в конфигурации снята защита только с дерева, исходя из это сделал простую команду, поместил ее в группу "Печать", и выбрал все справочники и документы. И все отлично заработало без дополнительных заморочек.

Сам лиcтинг:

&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
	Для Каждого Объект Из ПараметрыКоманды Цикл
	    Список = СформироватьСтруктуруДляпроверкиПровописания(Объект);
	
	    Массив = ВыполнитьПроверку(Список);
	
	    Для Каждого Элем Из Массив Цикл
		Для Каждого ЭлементСписка Из Список Цикл
			Если СтрЧислоВхождений(ЭлементСписка.Значение,Элем.Слово) > 0 Тогда
				Сообщение = "";
				Сообщение = Сообщение +"в поле: "+ПолучитьСинонимРевезита(ЭлементСписка.Представление,Объект)+Символы.ПС+"в слове "+""""+Элем.Слово+""""+" возможна ошибка:"+Символы.ПС;
				Для Каждого ВариантИсправления Из Элем.Замена Цикл
					Сообщение = Сообщение +ВариантИсправления+Символы.ПС;		
				КонецЦикла;
				Сообщить(Сообщение);
				Прервать;
			КонецЕсли;
		КонецЦикла;
	КонецЦикла; 
КонецЦикла;
КонецПроцедуры

&НаКлиенте
Функция  Выполнитьпроверку(Список)
	СтрокаПроверки = "";
	Для Каждого Элем Из Список Цикл
		СтрокаПроверки = СтрокаПроверки + Элем.Значение+" ";			
	КонецЦикла;
	
	Соединение = Новый HTTPСоединение("speller.yandex.net/services/spellservice/checkText?text="+СтрЗаменить(СтрокаПроверки," ","+"));
	Массив = Новый Массив;
	Файл = ПолучитьИмяВременногоФайла(".xml");
	Соединение.Получить("",Файл);
	Чтение = Новый ЧтениеXML;
	Чтение.ОткрытьФайл(Файл);
	
	Пока Чтение.Прочитать() Цикл
		Структура = Новый Структура;
		Если Чтение.Имя = "word" Тогда
			Чтение.Прочитать();
			Структура.Вставить("Слово",Чтение.Значение);
			Чтение.Прочитать();
			Чтение.Прочитать();
		КонецЕсли;
		МассивОб = Новый Массив;
		Пока Чтение.Имя = "s" Цикл
			Чтение.Прочитать();
			МассивОб.Добавить(Чтение.Значение);
			Чтение.Прочитать();
			Чтение.Прочитать();
		КонецЦикла;
		Если НЕ МассивОб.Количество() = 0 Тогда
			Структура.Вставить("Замена",МассивОб);
			Массив.Добавить(Структура);
		КонецЕсли;
	КонецЦикла;	
	Возврат Массив;
КонецФункции

&НаСервере
Функция СформироватьСтруктуруДляпроверкиПровописания(Объект)
	Список = Новый СписокЗначений;
	Для Каждого Реквезит Из Объект.Метаданные().Реквизиты Цикл
		Если Строка(Реквезит.Тип) = "Строка" Тогда
			Если НЕ Объект[Реквезит.Имя] = "" Тогда
				Список.Добавить(Объект[Реквезит.Имя],Реквезит.Имя);
			КонецЕсли;
		КонецЕсли;
	КонецЦикла;
	Возврат Список;
КонецФункции

&НаСервере
Функция ПолучитьСинонимРевезита(Имя,Объект)
	Возврат Объект.Метаданные().Реквизиты[Имя].Синоним;
КонецФункции


Проверка правописание команды команда обработка api яндекс

См. также

Оптовая торговля Розничная торговля WEB-интеграция 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

Онлайн-заказ - это решение для автоматизации процесса оформления заказов на сайте в торговых организациях. Продукт обеспечивает легкое взаимодействие между компанией и клиентами через веб-интерфейс, интегрированный с 1С:Предприятие. Система позволяет снизить операционные расходы, повысить лояльность клиентов и оптимизировать работу отдела продаж.

57600 руб.

26.11.2024    1092    1    1    

4

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    18292    20    22    

18

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23): 1С:Управление торговлей, 1С:Управление Нашей фирмой 3, 1С:Комплексная автоматизация 2, Объединенное решение: Модуль 1С:CRM 3 (3.0.21.3) +1С:ERP Управление предприятием 2. При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

7200 руб.

04.05.2021    20496    13    19    

18

Обмен с ГосИС WEB-интеграция Бухгалтер Пользователь Платформа 1С v8.3 Управляемые формы 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:Документооборот 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Обработка является альтернативой механизму, разработанному фирмой 1С и заполняющему реквизиты контрагента по ИНН или наименованию. Не требуется действующей подписки ИТС. Вызывается как внешняя дополнительная обработка, т.е. используется, непосредственно, из карточки контрагента. Заполнение по ИНН или наименованию реквизитов контрагента по данным сайта ФНС (egrul.nalog.ru) для БП 2.0, БП 3.0, БГУ 1.0, БГУ 2.0, УТ 10.3, УТ 11.x, КА 1.1, КА 2.x, УПП 1.x, ERP 2.x, УНФ 1.5, УНФ 1.6, УНФ 3.0, ДО 2.1

2400 руб.

28.04.2016    91903    180    217    

333
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Ta_Da 11.10.13 16:02 Сейчас в теме
"Реквезит" и "ПолучитьСинонимРевезита()" в "литинге" "написинного" кода в статье о проверке правописания смотрятся органично, да.
q_i; Yakud3a; CratosX; MaksIvanov; Kosstikk; ZOMI; Famza; EdmundoAlvares; +8 Ответить
2. WizaXxX 363 11.10.13 21:29 Сейчас в теме
Первый блин как говорится:) спасибо, поправил:)
3. RailMen 828 12.10.13 00:53 Сейчас в теме
Соединение = Новый HTTPСоединение("speller.yandex.net/services/spellservice/checkText?text="+СтрЗаменить(СтрокаПроверки," ","+"));

Завидую тому, что вы можете применять такую строчку...
Наша СБ такого не простит... Интернет на машинах с 1С строго под запретом...
4. WizaXxX 363 12.10.13 19:04 Сейчас в теме
(3) MagIvan, ,благодаря 8.3 и Профилям безопасность мы тоже закрыли весь инет, но открыли только этот адрес и все:)
5. echo77 1911 13.10.13 18:08 Сейчас в теме
Все хорошо, но опечатки поправьте: пистать, выплняла

"Пистать" почему-то особо развеселила
6. rus128 2 16.10.13 14:52 Сейчас в теме
(5) + "литинг", "облеглив"...
7. q_i 584 23.10.13 20:40 Сейчас в теме
Жаль что у ФСБ нет такого сервиса - им тоже было бы интересно узнать что там пользователи вводят в 1С.
8. нормальный такой 93 30.01.14 01:32 Сейчас в теме
тут дядя описывает метод по интереснее
http://1clancer.ru/article/veb_servisy_rabota_s_dinamicheskoj_ssylkoj_952

не реклама. очень помогло.
Оставьте свое сообщение