Проверка орфографии средствами Yandex Speller

Публикация № 698583

Разработка - Обработки - Универсальные обработки

Обработка правописание орфография управляемые формы yandex yandex speller http get html dom парсинг

Проверка орфографии средствами Yandex Speller с опциями и коррекцией ошибок. Возможность вызова как с сервера, так и с клиента (с последующим исправлением).

Проверка орфографии средствами Yandex Speller

Описание

Обработка производит проверку передаваемого текста средствами API Yandex Speller, довольно проста в использовании.

Может принимать различные параметры и опции для проверки (см. скриншоты). Например может игнорировать короткие слова, исключать переданые слова из строки с разделителями или заданого справочника.

Позволяет на основе распознаных ошибок создавать справочник-словарь исключений.

Строка может содержать как обычный текст, так и HTML разметку.

Опции:

  1. Пропускать верхний регистр
  2. Пропускать слова с цифрами
  3. Пропускать пути и ссылки
  4. Выявлять повторы слов
  5. Пропускать латиницу
  6. Не предлагать замену (только подсвечивать ошибки)
  7. Отмечать латиницу
  8. Распознавать текст как набор слов
  9. Пропускать рЕгИСтР
  10. Пропускать римские цифры

Есть возможность при отсутствии ошибок в переданном тексте автоматически закрывать форму.

Проверяет русский, английский и украинский языки.

Ошибки подсвечиваются оранжевым цветом, а при наведении пишется в чем заключается ошибка, при щелчке на нее открывается выпадающий список, позволяющий выбрать из доступных вариантов.

Обращение происходит через HTTP GET (Я использовал бы Web сервисы, но платформа накладывает определенные ограничения, тем не менее в модуле есть закоменченный кусочек для соединения через WS).

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

Если проверка инициирована с клиента (через форму), то в случае нахождения ошибок будет возможность исправить их из предложенных вариантов в выпадающем меню.

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

Обработка использует только средства платформы, тестировалась на "голой" конфигурации 8.3.10.2561 УФ (Тонкий клиент), Win Server 2012R2.

На вскидку должна запуститься на чем угодно начиная с 8.3.6.1977 с отключенным режимом совместимости (Очень уж люблю СтрШаблон() ).

Красивости расчитаны на наличие IE-11 в системе, если у Вас все плохо, то поправьте следующую строку в модуле объекта: <meta http-equiv='X-UA-Compatible' content='IE=11'>

Спроектирована без  использования модальных окон и вызовов.

Обработка довольно подробно документирована, при вызове функции модуля объекта - все параметры подписаны.

Код открыт, можете править в свое удовольствие, только не продавайте отдельно саму обработку (только если в составе продукта).

 

Передаваемые параметры и полученный результат

Обязательным является только параметр "Текст" при инициализации обработки на сервере, так что не пугайтесь обилию опций, все они могут быть опущены и будут выставлены по умолчанию.

Просто посмотрите, что возвращает закрытая форма или функция, там довольно интуитивно понятно)

 
 При инициализации формы с тонкого клиента
 
 При инициализации обработки на сервере

 

Примеры использования

Вариант "на клиенте":

Предположим вы хотите перед записью документа проверить правописание определенного реквизита, тогда Вы:

1) В модуле формы создаете процедуру "ПередЗаписью()"

2) В ней вызываете форму обработки, передав в нее структуру параметров (обязательно передайте значение ключа "Текст", иначе не имеет смысла, остальное заполниться по умолчанию). Также передайте владельца формы - ЭтаФорма.

!!! ЕСЛИ ВЫ НЕ ПЕРЕДАДИТЕ ВЛАДЕЛЬЦА ФОРМЫ, ТО ОБРАБОТКА ПОСЧИТАЕТ, ЧТО ВЫ ПРОСТО ЗАХОТЕЛИ ПОТЕСТИРОВАТЬ ЕЁ И СЕБЯ И СПРЯЧЕТ КНОПКИ "ОТМЕНИТЬ" и "ПРИНЯТЬ" !!!

Это сделано специально, но если Вы по какой то причине не хотите передавать владельца, Вы вполне можете закоментить процедуру "ПриОткрытии()" в обработке, это не повлияет на результат, а кнопки будут отображаться всегда.

3) Откройте форму, автоматически пройдет проверка. Если вы передали параметр "ЗакрытьЕслиБезОшибок" - Истина и не обнаружено ошибок, то форма будет сразу закрыта и вернет структуру с результатом проверки.

4) Если были обнаружены ошибки - пользователю будет предложено выбрать верные варианты и согласиться/не согласиться с правками.

5) Нажав кнопку Принять или Отмена (крестик) - форма закроется и вернет владельцу результат проверки или неопределено, соответсвенно.

 
На клиенте (упрощенный вызов)
 
На клиенте (с последующей ручной корректировкой)

 

Вариант "на сервере":

 

Предположим вы хотите лишить пользователя свободы воли выбора и автоматически исправлять ошибки, скажем перед записью документа:

1) В модуле объекта документа создаете процедуру "ПередЗаписью()"

2) Там создаете объект обработки.

3) У этого объекта вызываете единственную функцию YandexSpeller(), в которую можете передать кучу параметров (ну или только текст на проверку первым параметром, только он обязательный), конфигуратор подскажет параметры.

4) Функция вернет структуру с ошибками и всевозможными данными, естественно включая исправленный текст.

 
На сервере (упрощенный вызов)
 
На сервере (возвращает исправленный текст и ошибки)

 

Листинг модуля объекта

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

 
YandexSpeller()

Ответы на вопросы

  • Q: Подскажите как сделать полосу прокрутки в поле HTML?
  • A: В модуле формы, в процедуре "СобратьHTML()" сотрите "overflow: hidden;"

 

  • Q: Почему при вызове формы пропадают кнопки "Принять" и "Отмена"
  • A: При создании формы обработки ПроверкиОрфографии из другой формы - не забывайте передавать параметром владельца "ЭтаФорма"

     

  • Q:  У меня очень длинные строчки с текстом, как настроить их авто перенос?
  • A: В модуле формы, в процедуре "СобратьHTML()" добавьте в блок <style></style> вариации следующего (можете посмотреть в гугле за что отвечает каждая строка).
pre {
	white-space: pre-line;
	word-wrap: break-word;
	word-break: break-all;
	width: 100%;
}

 

UPD 17.11.10

  • Изменил разбор XML ответа
  • Внешний вид формы
  • Добавил проверку на битую кодировку
  • Содержание HTML поля теперь IE=11
  • При смене значения JS скрипт перекрашивает Select в зависимости от Option
  • Поправил ошибку возникающую при использовании словаря и отсутсвии орфографических ошибок

 

UPD 18.04.23

  • Добавил возможность проверять и исправлять Наименования любых справочников. Может быть полезно, если у Вас не очень грамотные менеджеры и надо "починить" постфактум.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

TODO:

  • При проверке справочника запоминать исправленные слова и проверять из этого соответсвия до проверки яндексом
  • Использовать асинхронную проверку
  • Отображать статус проверки
  • Добавить описание в модуль объекта для типовых конфигураций
  • Возможность проверять не только Наименование справочника, но и любой другой строковый реквизит

 

 Буду рад отзывам, комментариям, а также звездочкам :3 

 

 

Скачать файлы

Наименование Файл Версия Размер
Проверка орфографии средствами Yandex Speller

.zip 219,98Kb
09.11.17
61
.zip 18.04.23 219,98Kb 61 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. spec8s 535 09.11.17 23:00 Сейчас в теме
Совсем недавно делал нечто подобное, т. к. веб-сервис перестал работать. Только метод чтения XML возможно немного короче:

        ЧтениеXML = Новый ЧтениеXML();	
	ЧтениеXML.УстановитьСтроку(HttpОтвет.ПолучитьТелоКакСтроку());
	
	ПостроительDOM = Новый ПостроительDOM;
	ДокументDOM = ПостроительDOM.Прочитать(ЧтениеXML);
	
	РезультатПроверки = Новый Структура("error", Новый Массив);
	
	ЭлементыError = ДокументDOM.ПолучитьЭлементыПоИмени("Error");	
	Для Каждого ЭлементError Из ЭлементыError Цикл
		СтруктураОшибок = Новый Структура("s", Новый Массив);
		Для Каждого АтрибутError Из ЭлементError.Атрибуты Цикл
			СтруктураОшибок.Вставить(АтрибутError.Имя, Число(АтрибутError.Значение));
		КонецЦикла;
		
		ЭлементыWord = ЭлементError.ПолучитьЭлементыПоИмени("word");
		СтруктураОшибок.Вставить("word", ЭлементыWord[0].ТекстовоеСодержимое);
		
		ЭлементыS = ЭлементError.ПолучитьЭлементыПоИмени("s");
		Для Каждого ЭлементS Из ЭлементыS Цикл
			СтруктураОшибок.s.Добавить(ЭлементS.ТекстовоеСодержимое);
		КонецЦикла;
		
		Если СтруктураОшибок.s.Количество() > 0 Тогда
			РезультатПроверки.error.Добавить(СтруктураОшибок);
		КонецЕсли;
	КонецЦикла;
Показать
adhocprog; 🅵🅾️🆇; +2 Ответить
2. 🅵🅾️🆇 09.11.17 23:24 Сейчас в теме
(1) завтра подробнее посмотрю, идея была сделать покрасивее, разобрав XML через DOM, но немног не сдюжил)

Код вышел бы примерно той же длины, отличие в том, что данные в массив Я засовываю под русифицированными читабельными переменными, хотя этот момент можно было решить и изящнее, на вскидку записать в строку с разделителями "Атрибут:РускийСиноним:ОжидаемыйТипДанных; ... : ... : ... ; ...".
Привычка, если работаю с 1с - переменные должны быть русскими и PascalCase (исключение для массивов и некоторых данных, там могу поставить префикс), а вот в JS, Python, C++ и тд уже ожидаю увидеть латинские camelCase.

Но спасибо за поправку, скорее всего переделаю эту часть.
3. nasonkin 33 10.11.17 06:29 Сейчас в теме
Самый простейший вариант - отображение слов с ошибками, делал через SOAP. Вдруг кому пригодиться:
WSОпределение	= Новый WSОпределения("http://speller.yandex.net/services/spellservice?WSDL","","",,10);      
WSПрокси		= Новый WSПрокси(WSОпределение,"http://speller.yandex.net/services/spellservice","SpellService","SpellServiceSoap",,10);		
Пакет 			= WSПрокси.ФабрикаXDTO.Создать(WSПрокси.ФабрикаXDTO.Тип("http://speller.yandex.net/services/spellservice","CheckTextRequest"));  	
Пакет.options   = 55;
Пакет.format	= "plain";
Пакет.lang		= "ru";
Пакет.text		= Текст;
РезультатВебОперации = WSПрокси.checkTexts(Пакет); 
Для каждого ГрамОшибка из РезультатВебОперации.ArrayOfSpellResult.SpellResult[0].error Цикл
	СловаСОшибками = Строка(СловаСОшибками)+"'"+Строка(ГрамОшибка.word)+"', "
КонецЦикла
Возврат Лев(СловаСОшибками,СтрДлина(СловаСОшибками)-2)
Показать

Но на данный момент SOAP недоступен (хотя в документации ссылка на него есть). Написал в тех. поддержку, жду ответ.
adhocprog; awk; spec8s; +3 Ответить
4. 🅵🅾️🆇 10.11.17 09:07 Сейчас в теме
(3) Я тоже через него делал изначально. Вчера был доступен "checkText", но с ограничением: передавать параметром надо было только текст.
Есть очень весомое подозрение, что это не сервис у них лежит, а ограничения платформы 1с. Ведь XDTO пакеты это фишка самой 1с.

Вот так работает:
Определения	= Новый WSОпределения("http://speller.yandex.net/services/spellservice?WSDL",,,Неопределено,300);	
Прокси		= Новый WSПрокси(Определения, "http://speller.yandex.net/services/spellservice", 
									"SpellService", "SpellServiceSoap", Неопределено, 300);
Данные		= Прокси.checkText(Текст);


Для меня это не очень важный момент, так через GET также отлично работает.
Мой код немного монструозен, например совсем не обязательно передавать заголовки.
Пытаться достучаться в цикле и вот это все.

Вполне достаточно:
URL				= СтрШаблон("services/spellservice/checkText?text=%1&lang=%2&options=%3&format=%4", Текст, Язык, Опции, Формат);
HTTPСоединение	= Новый HTTPСоединение("speller.yandex.net", 80, , , , 300);
HTTPЗапрос		= Новый HTTPЗапрос(URL);		
HTTPОтвет		= HTTPСоединение.Получить(HTTPЗапрос);
5. guy_septimiy 10.11.17 09:09 Сейчас в теме
Интересное решение.
Респект.
6. &rew 24 13.11.17 11:56 Сейчас в теме
У меня одного было ощущение, когда я на звезду нажал, как будто "зигу" кинул?
maksa2005; Perfolenta; hrip; awk; Silenser; PVG_73; Yakud3a; Vladimir87; Serega-artem; Gobbledegook; nayd; bserge88; Кузьмич; RailMen; 🅵🅾️🆇; +15 Ответить
7. 🅵🅾️🆇 13.11.17 12:01 Сейчас в теме
(6) Полно вам, думаю эмблемка Grammar Nazi никого не оскорбит тк узнаваема и к томуже вполне уместна)
9. RailMen 805 13.11.17 12:12 Сейчас в теме
8. zhuravlev_as 13.11.17 12:04 Сейчас в теме
А api нет у этого Yandex Speller?
10. 🅵🅾️🆇 13.11.17 12:17 Сейчас в теме
(8) Не совсем понял вопрос.
Обработка и использует API Яндекса, дружит с ним через HTTP GET (в коде есть закоменченный кусочек для общения через веб сервисы, но там не выйдет вместе с текстом передавать параметры).

По сути обработка является оберткой над API Яндекса.
К самой обработке вы можете обращаться различными способами как с клиента (будет создана форма и установлены параметры либо из переданых, либо по умолчанию, если опущены), так и с сервера (будет возвращена структура с ошибками, предложениями по исправлению, исправленным текстом и текстом с пометками на месте ошибок). Если вам не нужна форма и не хотите предложить пользователю красиво и удобно ручками исправить свои абшибки - можете из листинга модуля объекта просто перенести функцию в общий модуль, все будет работать в лучшем виде (к томуже все передаваемые параметры подписаны и будут подсказываться в конфигураторе).

Я, наверное, слишком сложно и муторно объясняю, лучше посмотрите примеры использования в теме, там все намного проще и лаконичнее.
13. zhuravlev_as 13.11.17 13:39 Сейчас в теме
11. KroVladS 33 13.11.17 12:35 Сейчас в теме
Плагин для конфигуратора сделаете?
12. 🅵🅾️🆇 13.11.17 13:19 Сейчас в теме
(11) Плагин?
На стандартный конфигуратор, вроде, "вешаются" только шаблоны текста и инжект dll экзотики на вроде "снегопат".
Также есть "графит", но о нем ни слуху ни духу уже несколько лет. Может Я чего проспал?)

Или вы о "расширения конфигурации", штуке которая ставиться поверх типовых не снимая с поддержки?
Если о ней, то Я плохо представляю, что такого особенного Я могу сделать, кроме как добавить саму обработку.

Если кому не достаточно примеров вызовов из темы - могу добавить тестовую конфигурацию.
Яб и тестовый сервер поднял бы, но отдельную железку, которая не былаб дырой в безопасности соберать буду только через пару месяцев.
25. KroVladS 33 14.11.17 13:55 Сейчас в теме
(12)
Я как раз dll-ку имел ввиду.
26. 🅵🅾️🆇 14.11.17 14:00 Сейчас в теме
(25) Сильно врядли. Следующий раз как буду плюсы открывать - это будет внешняя компонента для распознования текста :3
14. Поручик 4443 13.11.17 16:16 Сейчас в теме
На вскидку должна запуститься на чем угодно, начиная с 8.3.6.1977 с отключенным режимом совместимости
15. 🅵🅾️🆇 13.11.17 16:18 Сейчас в теме
(14)
с отключенным режимом совместимости

Если это так важно, добавлю)
16. Поручик 4443 13.11.17 16:24 Сейчас в теме
(15) Конечно важно. Полно конф, которые работают на 8.3.7.ХХХХ и выше, но внутри у них 8.3.5 или даже 8.2.
17. 🅵🅾️🆇 13.11.17 16:29 Сейчас в теме
(16) Я думал это очивидно, но пусть будет.
Да и не велика проблема, вполне можно переписать эти моменты при помощи строковых функций из БСП.
18. Davurov 14.11.17 08:43 Сейчас в теме
Спасибо большое! Очень классная штука! Не подскажите как сделать полосу прокрутки в поле HTML? Когда длинное предложение неудобно с ним работать так как строчки не переносятся сами и нет полосы прокрутки
19. 🅵🅾️🆇 14.11.17 10:07 Сейчас в теме
(18) А, извиняюсь. Делал под себя и не ожидал полосы прокрутки, поэтому для красоты специально спрятал. В модуле формы, в процедуре "СобратьHTML()" сотрите "overflow: hidden;".

Если у вас выходит в ширину слишком длинной строка, то советую посмотреть на следующие стили CSS (также добавлять в СобратьHTML() в <st yle></style> блок):
pre {
	white-space: pre-line;
	word-wrap: break-word;
	word-break: break-all;
	width: 100%;
}



Сейчас создам в темке блок с QA и добавлю туда ответы на вопросы.
Удачи)
20. Davurov 14.11.17 10:34 Сейчас в теме
(19)
overflow


Ооо! спасибо заработало ) И ещё вопрос, если используется ОбработкаОповещения "ПослеПроверкиОрфографии", то для случая когда нет ошибок и стоит "ЗакрытьЕслиБезОшибок", после закрытия формы в эту процедуру не попадает, поэтому не могу вывести сообщение пользователю: "Все ок. ошибок нет =)"

Форма закрывается с этой ветки:

Если БезОшибок И ЗакрытьЕслиБезОшибок Тогда
		ЭтаФорма.Закрыть(Новый Структура("Текст,БезОшибок,КоличествоОшибок",Текст,БезОшибок,КоличествоОшибок));
		Возврат;
	КонецЕсли; // Если БезОшибок И ЗакрытьЕслиБезОшибок
21. 🅵🅾️🆇 14.11.17 10:58 Сейчас в теме
(20) На примере примера из темы для немодального вызова:
&НаКлиенте
Процедура ПроверитьОрфографию(Команда)
	//СтрокаНаПроверку	= "Мамо мыла раму.";
	Оповещение			= Новый ОписаниеОповещения("ПослеПроверкиОрфографии", ЭтаФорма, СтрокаНаПроверку); 
	П					= Новый Структура("Текст,Язык,Формат,МинДлинаСлова,Словарь,Опции,ЗакрытьЕслиБезОшибок",
											СтрокаНаПроверку, "ru,en", "plain", 0, "", 31, Истина);
	Форма	= ОткрытьФорму("Обработка.ПроверкаОрфографии.Форма", П, ЭтаФорма, Истина, , , Оповещение);
	Если Форма = Неопределено Тогда
		Сообщение	= Новый СообщениеПользователю;
		Сообщение.Текст	= "Форма не была создана, вероятно ошибок нету.";
		Сообщение.Сообщить();
	КонецЕсли; // Если Форма = Неопределено
КонецПроцедуры // ПроверитьОрфографию()
Показать


Ну или если не возражаете против модальных окон ( лично мое руководство их очень любит :3 ), то там все еще проще, просто смотрите, что возвращает:
Результат	= ОткрытьФормуМодально("Обработка.ПроверкаОрфографии.Форма", Новый Структура("Текст", СтрокаНаПроверку), ЭтаФорма);
22. Davurov 14.11.17 11:00 Сейчас в теме
Ок спасибо большое! очень выручили!

P.S у меня все равно приходит форма, поэтому добавил условие

Если Форма = Неопределено ИЛИ Форма.БезОшибок Тогда
        Сообщение    = Новый СообщениеПользователю;
        Сообщение.Текст    = "Ошибок нет!";
        Сообщение.Сообщить();
    КонецЕсли; // Если Форма = Неопределено
23. Davurov 14.11.17 11:09 Сейчас в теме
Не не не, спасибо =) никаких модальностей =)
24. ra1ich 17 14.11.17 13:08 Сейчас в теме
Прикольно, для нас будет актуально.
🅵🅾️🆇; +1 Ответить
27. azubar 37 07.12.17 00:51 Сейчас в теме
У меня не работает. либо вообще яндекс возвращает результат без ошибок либо только первую ошибку, в то время как просто в браузере выдает все ошибки, видео:
https://www.screencast.com/t/Ym9LeUQokNWy

Если слать текст на проверку яндексу POSтом то нормально работает.
И перекодировку текста лучше делать:
ТекстНаПроверку	= КодироватьСтроку(Текст, СпособКодированияСтроки.КодировкаURL);
🅵🅾️🆇; +1 Ответить
28. 🅵🅾️🆇 07.12.17 10:22 Сейчас в теме
(27) Все работает со строкой:
ашибка			арфаграфия	праверить	ашибки



Обработка внедрена на производстве в несколько документов перед записью.


С КодироватьСтроку() полностью согласен, добавлю в следующую версию.
Проблема действительно может иметь место быть, тк GET запрос передает параметры через URL, возможно нечто в тексте "портит" его.
29. Артано 677 24.04.18 10:45 Сейчас в теме
Производиться десять попыток достучаться до сервиса, прежде чем будет выведено сообщение о невозможности использования (сервис лег, ну или что вероятнее - ваш интернет).
Хотел пошутить про применение обработки к тексту публикации, но вспомнил, что здесь нужен семантический, а не синтаксический анализ.

Остальное порадовало, спасибо!
🅵🅾️🆇; sutkin; +2 Ответить
33. 🅵🅾️🆇 25.04.18 11:23 Сейчас в теме
(29) Поправьте, а Я обязательно поправлю в публикации.
Возможно у меня есть в наличии некоторое косноязычие.

Спасибо, рад теплым отзывам.
35. Артано 677 26.04.18 07:51 Сейчас в теме
(33) Ошибка из расстрельного списка грамматических нацистов (их символ в картинке публикации). написание тся и ться. Я думал после древнего апдейта вконтакте, когда разделили лайк на собственно лайк и на репост (мне нравиТся и поделиТЬся).
31. vgrichuk 25.04.18 08:53 Сейчас в теме
Оффтопик. Коллеги, меня одного покоробила эмблема граммар-наци, использованная в описании обработки?
madonov; 🅵🅾️🆇; pr0t; CyberBob; +4 Ответить
32. 🅵🅾️🆇 25.04.18 11:20 Сейчас в теме
36. BorovikSV 1371 26.04.18 11:03 Сейчас в теме
а почему логотип стилизован под фашистский флаг?
Perfolenta; +1 Ответить
38. madonov 155 27.04.18 08:41 Сейчас в теме
(36) это логотип движения "Граммар-наци".
Обычно символизирует нетерпимость к грамматическим ошибкам и их авторам.

Весьма спорный выбор со стороны автора, учитывая, что прецеденты в виде штрафов за его публикацию в нашей стране уже были.
Perfolenta; +1 Ответить
39. 🅵🅾️🆇 27.04.18 13:10 Сейчас в теме
(38) Такого не знал.
Просто показалось, что будет довольно уместным и привлекающим внимание...
40. madonov 155 28.04.18 03:16 Сейчас в теме
(39) Ну внимание однозначно привлекает =)))
42. Perfolenta 08.11.18 18:58 Сейчас в теме
(39) уберите его, пожалуйста, не надо провоцировать людей... привлекать внимание можно и не использую фашистскую символику...
user1041486; vatkir; +2 1 Ответить
43. imbalance 27.12.19 14:22 Сейчас в теме
Как слово в тексте красным подчеркнуть наподобие ворда или браузера?
44. 🅵🅾️🆇 473 30.12.19 21:30 Сейчас в теме
(43) так это и есть html документ, прям так и подчеркивайте, а css доводите до ума)
45. user1041486 27.08.20 03:57 Сейчас в теме
Как вы сделали выпадающее меню,для выбора предложенных вариантов исправления?
Оставьте свое сообщение

См. также

BIM: взаимодействие с платформой Autodesk Forge Промо

WEB v8 Строительство Абонемент ($m)

Предлагаемый пример демонстрирует широкие возможности для взаимодействия «1С:Предприятие» с платформой Autodesk Forge и позволяет вам получить базовые представления о применения технологий информационного моделирования в строительстве. Поддерживаются все версии платформы от 8.3.12 и выше до 8.3.18.

1 стартмани

вчера в 12:00    255    0    kandr    0    

Панель #Расширение объекта: Редактор, Права, Поиск, Сторно, Обмен

Универсальные обработки v8 1cv8.cf Абонемент ($m)

Панель команд текущего объекта (документа, справочника и т.д.) со следующим возможностями: Редактор реквизитов, таблиц и движений текущего объекта, Анализ прав доступа к текущему объекту, Поиск ссылок на объект с отборами, Сторно движений документа, Выгрузка/загрузка текущего объекта между базами. Реализована всплывающей панелью в форме объекта. Подключается как расширение конфигурации (*.cfe) либо отдельными обработками.

1 стартмани

01.05.2020    9118    89    sapervodichka    1    

Работа с релизами 1С и договорами ИТС

WEB БСП (Библиотека стандартных подсистем) v8 1cv8.cf Абонемент ($m)

Работа с релизами 1С и партнерским кабинетом.

2 стартмани

15.08.2019    14748    44    RocKeR_13    15    

Работа с файлами (обычная и управляемая форма)

Универсальные обработки v8 v8::УФ 1cv8.cf Абонемент ($m)

Нужно загрузить файл с клиента на сервер или же, наоборот, файл загрузить с сервера на клиент, а впридачу все это на web-клиенте, да еще и асинхронно? Нет ничего проще, читай далее, как это сделать!

1 стартмани

10.06.2019    26648    154    Xershi    76    

Установка предопределенных элементов: просмотр, исправление и поиск ошибок (задвоенных и отсутствующих) Промо

Инструментарий разработчика Универсальные обработки v8 1cv8.cf Абонемент ($m)

Простая обработка для просмотра и установки значений предопределенных элементов. Позволяет заменить значение предопределенного элемента с одного элемента справочника на другой, удалить предопределенный элемент (снять пометку предопределенности), установить пометку переопределенного элемента. Проверяет предопределенные данные на наличие задвоений и отсутствующих. Работает со справочниками, планами счетов, планами видов характеристик, планами видов расчетов.

2 стартмани

06.10.2014    152882    2009    ekaruk    165    

Редактор объектов информационной базы 8.3 Промо

Универсальные обработки Обмен через XML v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Универсальная внешняя обработка для редактирования реквизитов и табличных частей объектов информационной базы, редактирование движений документов. Доступ ко всем реквизитам объектов, есть возможность выгрузки и загрузки данных (объекты и движения документов) через XML. Платформа 8.3, управляемые формы. Версия 1.1.0.51 от 31.08.2020

2 стартмани

23.01.2019    30977    328    ROL32    39    

Сравнение pdf-файлов актов сверки

Универсальные обработки Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 v8::БУ БП2.0 Россия БУ Абонемент ($m)

Обработка сравнивает два pdf-файла, в которых находятся стандартные печатные формы актов сверки, и показывает на экране совпадающие и/или отличающиеся по суммам документы взаиморасчетов.

1 стартмани

19.12.2018    18008    14    Torin99    2    

Выгрузка изображений из справочника на диск

Учет ТМЦ Универсальные обработки Учет ТМЦ v8 УТ11 Оптовая торговля, дистрибуция, логистика Россия Абонемент ($m)

Обработка позволяет записать изображения из справочка Номенклатура на диск в указанное место.

1 стартмани

30.11.2018    18154    6    wrooom    8    

Навигатор по конфигурации базы 1С 8.3 Промо

Инструментарий разработчика Универсальные обработки v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Универсальная внешняя обработка для просмотра метаданных конфигураций баз 1С 8.3. Отображает свойства и реквизиты объектов конфигурации, их количество, основные права доступа и т.д. Отображаемые характеристики объектов: свойства, реквизиты, стандартные рекизиты, реквизиты табличных частей, предопределенные данные, регистраторы для регистров, движения для документов, команды, чужие команды, подписки на события, подсистемы. Отображает структуру хранения объектов базы данных, для регистров доступен сервис "Управление итогами". Платформа 8.3, управляемые формы. Версия 1.1.0.69 от 27.09.2020

3 стартмани

28.10.2018    34822    311    ROL32    69    

Проверка VAT номеров

WEB v8 1cv8.cf Абонемент ($m)

Обработка для вызова сервиса проверка VAT номера.

1 стартмани

26.11.2018    12940    2    wtlz    1    

Обнуление остатков регистров бухгалтерии и накопления

Универсальные обработки Чистка базы v8 v8::БУ v8::ОУ v8::УФ КА1 БП2.0 ЗУП2.5 УТ10 УПП1 УНФ БГУ ERP2 БП3.0 УТ11 УХ КА2 ЗУП3.x Россия Абонемент ($m)

Обработка позволяет обнулить остатки по регистру накопления или бухгалтерии на определенную дату. Поддерживается большинство типовых конфигураций (БП 3, БП 2, УТ 11, УТ 10, ЗУП 3, ЗУП 2, БГУ 2, БГУ 1, ERP, УПП, КА 2, КА 1, УХ 3, УХ 1, УНФ). Гибкая настройка (отборы, заполнение реквизитов и любых полей корр. счета, возможность обнулять ресурсы выборочно). Несколько режимов работы. Два интерфейса: простой и с расширенным набором настроек.

2 стартмани

19.11.2018    23966    311    morozov.sv    50    

Универсальный инструмент для переноса данных через табличный документ (УФ)

Обработка документов Универсальные обработки Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

Для опытных пользователей, разработчиков, администраторов, консультантов

5 стартмани

15.10.2018    34544    125    json    42    

Работа с публикациями "Инфостарт"

Практика программирования О сообществе WEB v8 УУ Абонемент ($m)

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    22076    13    RocKeR_13    16    

Пример использования REST API Яндекс Диска

WEB v8 1cv8.cf Абонемент ($m)

Пример использования REST API Яндекс Диска: чтение диска, добавление каталога, загрузка файла, скачивание файлов или каталогов, удаление файлов или каталогов.

1 стартмани

26.06.2018    25940    42    MKFreeUser    15    

Обмен файловыми базами данных через Yandex диск

WEB v8 Россия Абонемент ($m)

Выполнение операций обмена с Yandex диском для файловых БД, по протоколу WebDav, в автоматическом или ручном режимах.

1 стартмани

11.06.2018    17502    7    slimper    1    

Универсальная выгрузка/загрузка данных для отличающихся конфигураций (JSON, Такси+ОФ) Промо

Перенос данных из 1C8 в 1C8 Универсальные обработки Распределенная БД (УРИБ, УРБД) v8 1cv8.cf Абонемент ($m)

Простой перенос через JSON данных между двумя базами 1С (документов, справочников, ПВХ, ПВР, счетов). Аналогична произвольной выгрузке в типовой "Выгрузка/загрузка XML", но может использоваться для отличающихся конфигураций. Подходит для любых пар баз с любым интерфейсом (управляемый + обычный). Без настроек. Не требует идентичности конфигураций и платформ. При переносе типы данных сопоставляются по наименованиям метаданных, объекты и ссылки по UID.

1 стартмани

22.10.2014    208453    3159    ekaruk    183    

Конфигурация для просмотра публичных телеграм каналов

WEB v8 Абонемент ($m)

Просмотр и каталогизация в более удобном виде публичных телеграм каналов, групп и чатов.

1 стартмани

02.06.2018    18258    11    DO_WHILE_LOOP    7    

Просмотр, изменение реквизитов объекта. Сравнение двух одинаковых объектов метаданных ИБ

Универсальные обработки v8 1cv8.cf Россия Абонемент ($m)

Показывает реквизиты объекта (ов) или сравнивает два одинаковых объекта конфигурации справочники, документы.

1 стартмани

26.04.2018    18760    25    Vin_Tik    0    

Чтение и запись из таблиц гугл (google sheets) в табличный документ 1С (8.3, управляемые формы)

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка на управляемой форме для 1С версии 8.3 для доступа к сервисам Google Sheets c использованием протокола авторизации OAuth 2.0. Выполняет получение списка листов таблицы гугл, чтение таблицы гугл в табличный документ 1С и запись из табличного документа 1С в таблицу гугл. Тестирование проводилось на платформе 1С:Предприятие 8.3 (8.3.11.2954).

1 стартмани

09.04.2018    40675    272    Ko1t    76    

Внешняя компонента для работы по Web-socket протоколу x32 x64 Промо

Разработка внешних компонент WEB v8 Абонемент ($m)

Кто когда-нибудь сталкивался с обменом данными по Web-Socket (wss) протоколу из 1С, тому известно, что в платформе отсутствуют данные механизмы (не путать с HTTP запросами и WebServices). Предлагается использовать внешнюю компоненту, написанную по технологии NativeAPI, для подключения и обмена с серверами из 1С-Предприятия, работающими по протоколу Web-Socket.

1 стартмани

30.03.2018    27204    40    Ditron    83    

Построение маршрута доставки с расчётом расстояния для любой базы УФ

Универсальные обработки WEB Оптовая торговля Оптовая торговля v8 v8::УФ 1cv8.cf Абонемент ($m)

Графическое изображение маршрутного листа по картам гугл. Работает на любой конфигурации с управляемыми формами. Использует новую версию api google-карт от 13.02.2018 года под IE11.

10 стартмани

24.02.2018    36249    43    KorotkovRV    16    

Сервер push сообщений “Push0k“ 18.05

WEB v8 1cv8.cf Абонемент ($m)

Аналог других “мессенджеров“. Позволяет практически все то же самое, что и другие решения. За исключением смайлов, эмодзи, голосовой и видео связи. Основное отличие от других решений, открыта и доступна для изменения серверная и клиентская часть месенджера. Общедоступной серверной части нет, за серверную часть отвечаете вы сами.

1 стартмани

19.12.2017    18491    12    PloAl    20    

Подсистема Вики - интеграция 1С и сайта под управлением MediaWiki

WEB v8 Абонемент ($m)

Редактирование статей сайта Mediawiki из 1С. Формирование функционального описания конфигурации на сайте Вики.

1 стартмани

19.09.2017    28819    35    shmalevoz    20    

Перемещение остатков по счету МЦ04 между материально ответственными лицами для конфигураций (8.2). Промо

Обработка документов Универсальные обработки Учет ТМЦ Учет ТМЦ v8 БП2.0 Россия БУ Абонемент ($m)

Небольшая обработка, которая позволяет перекидывать остатки по счету МЦ04 с одного материально ответственного лица на другое

1 стартмани

22.11.2012    15498    14    niksaf    4    

Работа с картой. Кадастровый учет (Росреестр). Тематические карты Промо

WEB Рабочее место v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка для работы с картами в 1С. Получения изображения с публичной кадастровой карты России, построения тематических карт

5 стартмани

31.08.2017    18741    15    vipchep    0    

Инструменты бухгалтера: Виджеты рабочего стола

Универсальные обработки Рабочее место v8 v8::БУ БП3.0 Абонемент ($m)

Настраиваемые виджеты на начальной странице, своеобразная панель для быстрого доступа к объектам. Виджеты это элементы интерфейса в виде цветных прямоугольников со ссылками на объекты конфигурации. Использование виджетов позволяет сконцентрировать на начальной странице часто используемые функции, например, варианты отчетов, списки документов, или используя виджет вводить новый документ прямо из начальной страницы.

2 стартмани

28.08.2017    38164    176    Bazil    28    

Консоль сравнения данных (1С 8, 1С 7.7, SQL, CSV, TXT, DBF, XLS, DOC, XML, JSON, табличный документ) (версия 15.4.56)

Универсальные обработки v8 1cv8.cf Абонемент ($m)

Обработка Консоль сравнения данных (КСД) предназначена для сравнения данных, полученных из разных источников данных: информационных баз 1С 8, 1С 7.7, баз данных SQL, файлов формата CSV/TXT/DBF/XLS/DOC/XML, строки JSON, вручную заполненного табличного документа. Минимально необходимая версия платформы: 8.3.6.1977.

1 стартмани

13.02.2017    34575    127    sertak    100    

Работа с двоичными данными на примере чтения файлов изображений. Новые возможности 8.3.9

Практика программирования WEB v8 1cv8.cf Россия Абонемент ($m)

В статье приводятся новые функции по работе с двоичными данными, появившимися в версии платформы 8.3.9 , на примере анализа формата и размера изображений. А также пример отправки изображения через API ВКонтакте с помощью новых объектов (без использования ОбъединитьФайлы())

1 стартмани

14.11.2016    26518    16    Anton64    22    

Настройка рекламной кампании Яндекс.Директ на 30000 ключевых фраз за 60 минут - теперь это реально!

WEB v8 Реклама, PR и маркетинг Россия Абонемент ($m)

Конфигурация для настройки Яндекс.Директа.

10 стартмани

20.10.2016    29649    51    avalakh    10    

Поиск и отключение зависших сеансов на сервере 1С: Предприятия

Универсальные обработки v8 1cv8.cf Россия Абонемент ($m)

Обработка предназначена для мониторинга и отключения спящих (зависших) сеансов на сервере 1С: Предприятия.

1 стартмани

14.09.2016    32981    61    wowchik_85    11    

Редактор движений документа. Сохранение в XML, обмен между базами, замена регистратора.

Обработка документов Универсальные обработки Обмен через XML v8 Абонемент ($m)

Редактор набора записей движений документа. Позволяет сохранить набор записей в XML, в настройки пользователя, прочитать сохраненный XML в другой идентичной базе, заменить регистратор. Можно изменять порядок записей, менять активность, как массово, так и по одной и др. Тонкий клиент, управляемые формы.

1 стартмани

07.09.2016    42069    157    Aphanas    4