Инструменты пользователя

Инструменты сайта


rslight:rslight

RSlight

Бесплатная система линейного и технического учёта (кросс, кабельная система) от фирмы РиКо.

https://sourceforge.net/projects/rslight/

http://fv32.net/RSlight/
https://web.archive.org/web/20141116073821/http://fv32.net/RSlight/

http://rico.infotur.ua/RSlight/

Описание

Работа в программе

Таблицы

Установка сервера

БД RSlight работает на сервере Oracle Database 10 Express Edition, версия для Западной Европы, не Unicode-версия.

Типичные параметры для сервера:

Destination FolderC:\oraclexe\
Port for 'Oracle Database Listener'1521
Port for 'Oracle Services for Microsoft Transaction Server'2030
Port for HTTP Listener8080

При установке сервера Oracle XE автоматически создаётся БД SYSTEM, поэтому необходимо указать пароль администратора БД (SYS).

:!: Все приведённые ниже запросы выполняются в sqlplus.exe, по умолчанию файл находится в папке C:\oraclexe\app\oracle\product\10.2.0\server\BIN\, для авторизации нужно использовать имя пользователя SYSTEM (если явно не указано другое) и пароль, заданный на этапе установки сервера.

Изменение NLS_CHARACTERSET

После установки сервера и создания базы, сервер по умолчанию будет использовать кодовую страницу WE8MSWIN1252. Это приведет к некорректному отображению кириллических символов. Ниже приведен способ, устраняющий данную проблему. Важно отметить, что любые изменения используемой кодовой страницы необходимо выполнять сразу после установки сервера и до создания БД (до создания в ней пользователей и пользовательских объектов).

1. Нужно выполнить запрос и убедится в том, что для параметра NLS_CHARACTERSET выставлено значение WE8MSWIN1252:

SELECT VALUE$ FROM SYS.PROPS$ WHERE NAME = 'NLS_CHARACTERSET';

2. Нужно выполнить команды (по одной строке):

CONNECT SYS/ПАРОЛЬ AS SYSDBA;
UPDATE SYS.PROPS$ SET VALUE$ = ‘CL8MSWIN1251’ WHERE NAME =‘NLS_CHARACTERSET’;
COMMIT;
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER SYSTEM ENABLE RESTRICTED SESSION;
ALTER DATABASE OPEN;
ALTER DATABASE XE CHARACTER SET CL8MSWIN1251;
SHUTDOWN IMMEDIATE;
STARTUP;

Описание команд:

  • Подключение к серверу от имени пользователя SYS с правами SYSDBA (указав в строке пароль)
  • Изменение значения NLS_CHARACTERSET в таблице PROPS$, БД SYS
  • Фиксация произведенного изменения
  • Остановка БД SYS в режиме IMMEDIATE и перезапуск ее с включением режима RESTRICTED SESSION (в указанном режиме с базой могут работать только пользователи с привилегией RESTRICTED SESSION. Перевод базы в этот режим необходим для выполнения ALTER DATABASE CHARACTER SET
  • Открытие базы данных и модификация ее кодовой страницы
  • Перезапуск БД SYS

3. Чтобы убедится в том, что для параметра NLS_CHARACTERSET выставлено значение CL8MSWIN1251:

SELECT VALUE$ FROM SYS.PROPS$ WHERE NAME = 'NLS_CHARACTERSET';

Инициализация базы данных

RSLight требует для работы единственную схему в базе данных на сервере. Имя схемы может быть произвольным (к примеру DBEMPTY). Пароль к ней задается DBA-администратором.

:!: В последствии администратор комплекса будет иметь доступ к консоли администратора RSLight с помощью этой учетной записи.

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

Подключится к БД пользователем SYS с правами SYSDBA (SYS as SYSDBA). Создать специального пользователя командами, приведенными ниже, предварительно изменив в них имя этого пользователя (параметр XEDBA) и пароль (параметр password) на подходящие. От имени этого пользователя в дальнейшем в БД будет создаваться схема, необходимая для работы RSLight.

В sqlplus выполняем:

CREATE USER XEDBA PROFILE "DEFAULT" IDENTIFIED BY "ПАРОЛЬ" DEFAULT TABLESPACE "USERS" TEMPORARY TABLESPACE "TEMP" ACCOUNT UNLOCK;
GRANT DBA TO XEDBA;

Создание схемы в БД

Подключиться к БД пользователем XEDBA. От имени этого пользователя запустить скрипт recreate_user_xe.sql для создания схемы в БД. В стартовой части скрипта необходимо указать имя схемы прописными буквами (например, DBEMPTY) и пароль, который впоследствии будет являться паролем для входа в систему администрирования комплекса RSLight.

:!: Если в конце скрипта отсутствует символ / то его нужно туда добавить !

sqlplus.exe "XEDBA/ПАРОЛЬ@xe as sysdba" @recreate_user_xe.sql

Импорт данных

Для импорта данных в созданную схему необходимо запустить командный файл import.bat и передать ему параметром имя файла схемы, например для DBEMPTY нужно взять DBEMPTY_rslight.DMP

Из архива impexp.zip нужно взять файлы:

ExpImp_FGAC.exe Утилита для импорта/экспорта
import.bat Командный файл импорта БД
import.ini Настройки для импорта БД

Из dbempty_rslight.zip файл:

DBEMPTY_rslight.DMPДамп пустой БД

и выполнить:

import.bat DBEMPTY_rslight.DMP

Компиляция объектов БД

После осуществления импорта данных необходимо откомпилировать инвалидные объекты в БД, для этого выполняем:

sqlplus.exe "SYSTEM/ПАРОЛЬ" @recompile_DBEMPTY.sql
recompile_DBEMPTY.sql
EXEC DBMS_UTILITY.compile_schema(schema => 'DBEMPTY')

Резервное копирование

FIXME

Пример скрипта для создания резервной копии БД DBEMPTY

DBEMPTY_export.cmd
@ECHO OFF
 
REM Вызов скрипта получения имени текущего дня
C:\Scripts\pdate.exe "\s\e\t \d\n\=u" > C:\Scripts\pdate_tmp.cmd
CALL C:\Scripts\pdate_tmp.cmd
DEL C:\Scripts\pdate_tmp.cmd
 
REM Определение переменных
SET EXP_FILE=D:\Backup\DBEMPTY_%dn%.dmp
SET LOG_FILE=D:\Backup\DBEMPTY_%dn%.log
SET PAR_FILE=C:\Scripts\DBEMPTY_export.ini
SET PASSWORD=ПАРОЛЬ
 
REM Выполнение резервного копирования
SET nls_lang=AMERICAN_AMERICA.CL8MSWIN1251
C:\oraclexe\app\oracle\product\10.2.0\server\BIN\exp.exe USERID=DBEMPTY/%PASSWORD%@XE OWNER=DBEMPTY PARFILE=%PAR_FILE% FILE=%EXP_FILE% LOG=%LOG_FILE%
SET nls_lang=RUSSIAN_CIS.CL8MSWIN1251
 
EXIT

ПАРОЛЬ - Нужно заменить на пароль к БД DBEMPTY

Восстановление

  1. Нужно удалить БД, для этого нужно выполнить: Создание схемы в БД
  2. Пример скрипта для восстановления БД DBEMPTY
    restore.cmd
    set nls_lang=AMERICAN_AMERICA.CL8MSWIN1251
    C:\oraclexe\app\oracle\product\10.2.0\server\BIN\imp.exe USERID=DBEMPTY/ПАРОЛЬ@xe PARFILE=import.ini FILE=%1 LOG=import.log
    set nls_lang=RUSSIAN_CIS.CL8MSWIN1251

    ПАРОЛЬ нужно заменить на пароль к БД, и передать в качестве параметра имя файла с дампом БД.

  3. В RSadmin выполнить меню: Настройка\Синхронизация учетных записейи Настройка\Обновление прав пользователей Иначе при запуске RSlight возникает ошибка:

Ошибка ORA-01017:invalid username/password; logon denied

Стандартная установка рабочего места

Установка по стандартной документации к пакету: InstRSlight_2_0_0_1.doc

Создание переносимого рабочего места

Сначала нужно выполнить действия описанные в разделе: Стандартная установка рабочего места

Для нижеприведенных файлов путь установки:

C:\Programs\RSlight

Копирование файлов из Oracle XE Client

Установить Oracle XE Client, файл OracleXEClient_10.2.1013.exe

Из папки с установленным Oracle Client XE нужно скопировать файлы:

  • msvcr71.dll
  • oci.dll
  • oraocixe10.dll

После копирования файлов OracleXE Client можно удалить.

Копирование файлов из RSlight

Нужно скопировать все файлы и папки Common и Старик.

Должно получится следующее:

  • Common
  • Старик
  • RSadmin.exe
  • RSlight.exe
  • RSlight_DB_Inst.exe
  • VieweRIC.exe
  • Vieweric.hlp

Выполнение файлов реестра

Создание файла tnsnames.ora

tnsnames.ora
XE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = RSlight)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XE)
    )
  )

В этом файле задается протокол PROTOCOL адрес сервера HOST и порт PORT на котором он работает и имя сервиса SERVICE_NAME

Настройка RSadmin

Для ограничения доступа администратора служит механизм привязки к железу (MAC-адрес сетевой карты, идентификатора жесткого диска и т.д.).

Данные хранятся в таблице WORKSTATIONS и в реестре: поле fvLPSW раздела [HKEY_LOCAL_MACHINE\SOFTWARE\Фирма «РиКо»\RS_Light\FADM32]

:!: Этот механизм не работает под Wine !

Итак, для работы RSadmin необходимо выполнить привязку ПК, для этого нужно запустить RSlight_DB_Inst.exe

База данных XE
Схема базы данных DBEMPTY
Пароль администратора комплексаПароль БД DBEMPTY

Запуск клиента

Если есть необходимость запускать программу непосредственно исполняемым файлом RSlight.exe, то делать это необходимо с ключом /ask

RSlight.exe/ask

Настройка

FIXME

SELECT OWNER_ID FROM OWNERS WHERE OWNER_NAME = 'TELECOM';

Ошибки

Ссылки

rslight/rslight.txt · Последние изменения: 2020-11-12 21:48 — GreyWolf