Giter Site home page Giter Site logo

v8rac's Introduction

v8rac

Библиотека для работы с консольной утилитой rac

Stars Release Открытый чат проекта https://gitter.im/EvilBeaver/oscript-library

Build Status Coverage Status

Возможности

Данная библиотека предназначена для облегчения работы с консольной утилитой rac для 1С

Упрощенная версия библиотеки irac.

Функционал irac не используется, но возможно комбинирование работы двух библиотек

Реализован следующий функционал:

  • НайтиИнформационнуюБазу
  • СписокИнформационныхБаз
  • СписокЛокальныхКластеров
  • Управление сеансами и соединениями
    • СписокСоединенийИнформационнойБазы
    • СписокСеансовКластера
    • СписокСеансовИнформационнойБазы
    • ОтключитьСеансыИнформационнойБазы
    • ОтключитьСоединенияИнформационнойБазы
    • ОтключитьСеанс
    • ОтключитьСоединение
  • Управление информационной базой
    • СоздатьИнформационнуюБазу
    • УдалитьИнформационнуюБазу
    • ПолучитьПодробноеОписаниеИнформационнойБазы
  • Управление блокировкой к информационной базе
    • БлокировкаИнформационнойБазы
    • СнятьБлокировкуИнформационнойБазы
    • БлокировкаРегламентныхЗаданий
    • СнятьБлокировкуРегламентныхЗаданий
  • ВыполнитьКоманду

Установка

Для установки необходимо:

  • Скачать файл v8rac.ospx из раздела releases
  • Воспользоваться командой:
opm install -f <ПутьКФайлу>

или установить с хаба пакетов

opm install v8rac

Пример работы

  • Подготовка

        АдресСервера = "localhost";
        ВерсияПлатформы = "8.3";
    
        УправлениеКластером = Новый УправлениеКластером;
        УправлениеКластером.УстановитьКластер(АдресСервера);
        УправлениеКластером.ИспользоватьВерсию(ВерсияПлатформы);
        
        // Если требуется нужно установить авторизация для администратора кластера
        // УправлениеКластером.УстановитьАвторизациюКластера(ПользовательКластера, ПарольКластера);
        
        УправлениеКластером.Подключить();
        
        ИмяИнформационнойбазы = "Тестовая_ИБ";
            
  • Поиск информационной базы

        ИмяИнформационнойбазы = "Тестовая_ИБ";
        ИдентификаторИнформационнойбаза = УправлениеКластером.НайтиИнформационнуюБазу(ИмяИнформационнойбазы);
  • Установка авторизации в информационной базе

       ИмяИнформационнойбазы = "Тестовая_ИБ";
       ИдентификаторИнформационнойбаза = УправлениеКластером.НайтиИнформационнуюБазу(ИмяИнформационнойбазы);
    
       УправлениеКластером.УстановитьАвторизациюИнформационнойБазы(ИдентификаторИнформационнойбаза,"Администратор", "МируМир");
  • Список локальных кластеров

       МассивЛокальныхКластеров = УправлениеКластером.СписокЛокальныхКластеров();
    
  • Список информационных баз

       ТаблицаИБ =  УправлениеКластером.СписокИнформационныхБаз();
    
       // Или для определенного локального кластера
       МассивЛокальныхКластеров = УправлениеКластером.СписокЛокальныхКластеров();
       ТаблицаИБ =  УправлениеКластером.СписокИнформационныхБаз(МассивЛокальныхКластеров[0]);
    
    
  • Блокировка информационной базы

       ИмяИнформационнойбазы = "Тестовая_ИБ";
    
       УправлениеКластером.БлокировкаИнформационнойБазы(ИмяИнформационнойбазы, "Сообщение блокировки", "КлючДоступа");  
  • Снятие блокировки информационной базы

       ИмяИнформационнойбазы = "Тестовая_ИБ";
       УправлениеКластером.СнятьБлокировкуИнформационнойБазы(ИмяИнформационнойбазы);
    
  • Отключение сеансов информационный базы

        ИмяИнформационнойбазы = "Тестовая_ИБ";
        УправлениеКластером.ОтключитьСеансыИнформационнойБазы(ИмяИнформационнойбазы);
    
  • Список сеансов информационный базы

        ИмяИнформационнойбазы = "Тестовая_ИБ";
        ТаблицаСеансов = УправлениеКластером.СписокСеансовИнформационнойБазы(ИмяИнформационнойбазы);
    
  • Отключение соединений информационный базы

        ИмяИнформационнойбазы = "Тестовая_ИБ";
        УправлениеКластером.ОтключитьСоединенияИнформационнойБазы(ИмяИнформационнойбазы);
    
  • Список соединений информационный базы

        ИмяИнформационнойбазы = "Тестовая_ИБ";
        ТаблицаСоединений = УправлениеКластером.СписокСоединенийИнформационнойБазы(ИмяИнформационнойбазы);
    

Публичный интерфейс

Документация публичного интерфейса (в разработке)

Доработка

Актуальные задачи в файле TODO.

Доработка проводится по git-flow. Жду ваших PR.

Лицензия

Смотри файл LICENSE.

v8rac's People

Contributors

evilbeaver avatar khorevaa avatar maximkin7 avatar saintmortum avatar shabanov-oleg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

v8rac's Issues

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

Добрый день.
При попытке использования данной библиотеки наткнулся на некоторое непонимание либо на ошибки.

  1. При получении Таблицы баз по методу УправлениеКластером.СписокИнформационныхБаз(), метод возвращает задвоенный перечень информационных баз.
  2. При попытке получить ПодробноеОписаниеИБ = УправлениеКластером.ПолучитьПодробноеОписаниеИнформационнойБазы(СтрокаТаблицаИб.Имя,АторизацияИБ) появляется ошибка недостаточно прав.
  3. При сборе строки подключения вручную (просто из командной строки собрал строку) передавал собранную строку в функцию ВыполнитьКоманду все отрабатывает.
    Подскажите в чем может быть проблема?

Опечатка в модуле УправлениеКластером.os в процедурах Установки и снятия блокировки информационных баз.

В процедуре БлокировкаИнформационнойБазы у соответствия ПараметрыИнформационнойБазы записан несуществующий для соответствия метод Добавить():
Если ЗначениеЗаполнено(АвторизацияИБ.Пароль) Тогда
ПараметрыИнформационнойБазы.Добавить("--infobase-pwd", ОбернутьВКавычки(АвторизацияИБ.Пароль));
КонецЕсли;

Надо бы исправить на Вставить(), как и применяется ниже и выше этой опечатки!

Такая же опечатка в процедуре СнятьБлокировкуИнформационнойБазы.

Не работает УдалитьИнформационнуюБазу

ОШИБКА {Модуль C:\Program Files\OneScript\lib\v8rac\src\Классы\УправлениеКластером.os / Ошибка в строке: 796 / Недостаточно прав пользователя на информационную базу

В кластере нет администраторов, в авторизации указываю пользователя 1С.

АвторизацияИБ = Новый Структура("Пользователь,Пароль", ПараметрыБазы["ИмяПользователя"],ПараметрыБазы["ПарольПользователя"]);
УправлениеКластером.Подключить();
УправлениеКластером.УдалитьИнформационнуюБазу(ПараметрыБазы["ИмяБазы"],Истина,Истина,АвторизацияИБ);

Пробовал без авторизации, результат тот же

Ошибка при снятии блокировки ИБ

В процедуре "СнятьБлокировкуИнформационнойБазы" выполнение программы валится, если заданы параметры авторизации ИБ (строка 575)

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.