Coder Social home page Coder Social logo

Comments (5)

alexkmbk avatar alexkmbk commented on August 11, 2024

@idleGH Никаких внешних зависимостей у компоненты нет. Подключение компоненты выполняется стандартным образом, как и любые другие внешние NativeAPI компоненты. Вы подключаете на клиенте или на сервере? Если на клиенте, то в асинхронном режиме? Может быть на веб клиенте? Какая платформа используется: Linux, Windows, MacOS, Android?

from regex1caddin.

idleGH avatar idleGH commented on August 11, 2024

Спасибо за ответ! Утро вечера мудренее! Вопрос был более банален (на тостом).
Описал подключение в статье: https://zen.yandex.ru/media/id/5c3b43cb27f43a00acb0e485/podkliuchenie-regex1caddin-k-1s-s-kartinkami-62107450b0186b70eb604c4c
Поправьте, если где накосячил!

from regex1caddin.

alexkmbk avatar alexkmbk commented on August 11, 2024

Спасибо за ответ! Утро вечера мудренее! Вопрос был более банален (на тостом). Описал подключение в статье: https://zen.yandex.ru/media/id/5c3b43cb27f43a00acb0e485/podkliuchenie-regex1caddin-k-1s-s-kartinkami-62107450b0186b70eb604c4c Поправьте, если где накосячил!

Клево :-) Только шаг с распаковкой *.dll в директорию 1с лишний, достаточно в общий макет "RegEx" загрузить соответствующий zip архив с компонентами:
RegEx1CAddin_14.zip - для windows и linux
RegEx1CAddin_Android_14.zip - для андроид
RegEx1CAddin_Browsers_14.zip - для веб браузера Chrome под Windows
RegExMac64_14.so - для MacOS. Но для MacOS не нужно загружать в общий макет, платформа этого не поддерживает, поэтмоу в данном случае нужно загружать из внешнего файла, с помощью метода ПодключитьВнешнююКомпоненту

Если требуется поддержка под все платформы сразу, необходимо все эти файлы объединить в один zip архив (ну кроме MacOS опять же) и дописать расположенный внутри файл MANIFEST.XML

from regex1caddin.

idleGH avatar idleGH commented on August 11, 2024

Проблема и была в том, что пока файлы не перенёс ничего не хотело работать (права доступа под win проверил). Пол ночи бился над этим об стену. В результате сделал и родил статью! За поддержку спасибо!

from regex1caddin.

richdenis86 avatar richdenis86 commented on August 11, 2024

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

///////////////////////////////////////////////////////////////////////////////
&НаКлиенте
Процедура ПроверитьДанныеВывестиСообщение(Команда)
ПроверитьДанные();
КонецПроцедуры

&НаКлиенте
Функция ПроверитьДанные()

//Получим внешнюю компоненту из общих макетов
Рег = КомпонентаРег();

Если Рег = Неопределено Тогда
    возврат Неопределено;                   
КонецЕсли;

Попытка
   Рег.НайтиСовпадения("Hello world", "([A-Za-z]+)\s+([a-z]+)", Истина); 
Исключение
    ВызватьИсключение НСтр("ru = 'Ошибка вызова метода Рег компоненты Regex.'") 
    + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке());
КонецПопытки; 

Сообщить(Рег.Количество()); // 1 - всего один результат   

Сообщить(Рег.КоличествоВложенныхГрупп()); // 2 - две подгруппы (submatches)

Пока Рег.Следующий() Цикл
Сообщить(Рег.ТекущееЗначение); // Hello world
Сообщить(Рег.ПолучитьПодгруппу(0)); // Hello
Сообщить(Рег.ПолучитьПодгруппу(1)); // world
КонецЦикла;

Сообщить(Рег.Количество());
Сообщить(Рег.Совпадает("Hello world", "([A-Za-z]+)\s+([a-z]+)"));
Сообщить(Рег.Заменить("Hello world", "([A-Za-z]+)\s+([a-z]+)", "Текст для замены"));

КонецФункции

&НаКлиенте
Функция КомпонентаРег()

КомпонентаДвоичныеДанные = ПолучитьКомпонентуРег();
АдресМакета = ПоместитьВоВременноеХранилище(КомпонентаДвоичныеДанные);

Если ПодключитьВнешнююКомпоненту(АдресМакета, "Component", ТипВнешнейКомпоненты.Native) Тогда
    ВнешняяКомпонента = Новый("AddIn.Component.RegEx");
Иначе
    УстановитьВнешнююКомпоненту(АдресМакета);
    Если ПодключитьВнешнююКомпоненту(АдресМакета, "Component", ТипВнешнейКомпоненты.Native) Тогда
        ВнешняяКомпонента = Новый("AddIn.Component.RegEx");
    Иначе
        Сообщить(ОписаниеОшибки());
        ВнешняяКомпонента = Неопределено;
    КонецЕсли;    
КонецЕсли;    
        
Возврат    ВнешняяКомпонента;

КонецФункции

&НаСервере
Функция ПолучитьКомпонентуРег() Экспорт
Возврат ПолучитьОбщийМакет("RegEx"); КонецФункции
///////////////////////////////////////////////////////////////////////////////

from regex1caddin.

Related Issues (19)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.