Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Чтение INI из ASA7/8 / 8 сообщений из 8, страница 1 из 1
06.07.2004, 16:10
    #32591757
IgorCCS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чтение INI из ASA7/8
Есть необходимость чтения параметров в секциях ини файла.
В документации по АСА7/8 не приведены никакие функции для этого (или найти не могу). Может кто нибудь что нибудь подскажет, а то писать самому...

Заранее спасибо.
...
Рейтинг: 0 / 0
06.07.2004, 16:13
    #32591767
IgorCCS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чтение INI из ASA7/8
Можно конечно используя xp_read_file написать функцию для вытаскивания.
Но не хочется...
...
Рейтинг: 0 / 0
06.07.2004, 16:38
    #32591856
ASCRUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чтение INI из ASA7/8
Еще бы Вы подсказали, на кой ляд это надо ? Ну я понимаю с приложения INI читать, но СУБД то зачем INI-шники сдались ? Хотите хранить конфигурацию, так и храните ее в таблицах :)

P.S. Если уж сильно хочется, то наверное стоит написать расширенную ХП на Java, хотя мое мнение, что овчинка выделка явно не стоит.
...
Рейтинг: 0 / 0
06.07.2004, 17:15
    #32591938
IgorCCS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чтение INI из ASA7/8
С базой в сети работает несколько десятков пользователей и все они дба. Для хранения конфигурации в таблицах необходимо время для реализации этого механизма.
Реализация через ини более привлекательна. Пользователи однозначно будут использовать свои настройки.
Ведь есть же инишные файлы для работы самой АСА. По логике д.б. и функции.
...
Рейтинг: 0 / 0
06.07.2004, 17:17
    #32591945
IgorCCS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чтение INI из ASA7/8
Зачем это надо? :)
В тригерах на вставку округлять надо по разному:(
...
Рейтинг: 0 / 0
06.07.2004, 17:41
    #32592009
ASCRUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чтение INI из ASA7/8
Примитив:
1. Создаете таблицу хранения конфигурационных параметров с полями UserID, ParamName, ParamValue
2. Создаете ХП, в которой определяется UserID по любому уникальному коду пользователя (IP адрес, Имя приложения, присланный клиентской станцией некий код и т.д.). В ней же создаете глобальную переменную @@USER_ID, в которую заносите полученный код пользователя. Если код можно получить автоматически, то вешаете ее на LOGIN_PROCEDURE, если нельзя, то ее вызывает клиентское приложение сразу после подключения.
Далее готовить по вкусу.
...
Рейтинг: 0 / 0
06.07.2004, 18:55
    #32592180
IgorCCS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чтение INI из ASA7/8
Большое спасибо за помощь.
Но упрямство и лень....
Вроде работает... Может кому пригодится.

create function
dba.fn_GetIniParam(in inifile_name varchar(255),in section_name varchar(255),in par_name varchar(255))
returns long varchar
//Return value from ini file
//Igor Bakushin 2004-07-06
begin
declare IniFileBody long varchar;
declare tmpStart integer;
declare tmpEnd integer;
//read ini file
select xp_read_file(inifile_name) into IniFileBody from dummy;
//start section
set tmpStart=locate(IniFileBody,'['+section_name+']');
//if section not preset
if tmpStart = 0 then return('')
end if;
//cut from start of section to end file
set IniFileBody=SubStr(IniFileBody,tmpStart);
//find next section
set tmpEnd=locate(IniFileBody,'\x0D\x0A'+'[');
if tmpEnd > 0 then
set IniFileBody="Left"(IniFileBody,tmpEnd-1)
end if;
set tmpStart=locate(IniFileBody,par_name+'=');
if tmpStart = 0 then return('')
end if;
set tmpStart=tmpStart+LENGTH(par_name)+1;
set tmpEnd=locate(IniFileBody,'\x0D\x0A',tmpStart);
return(SubStr(IniFileBody,tmpStart,tmpEnd-tmpStart))
end
...
Рейтинг: 0 / 0
08.07.2004, 04:20
    #32594399
c127
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Чтение INI из ASA7/8
2 IgorCCS

А напишите INI файл на SQL-е и запускайте его из базы как скрипт. Не нужно парсить и обрабатывать ошибки, так что должно получиться значительно проще. И для пользователей, которые дба и работают с базой, SQL скрипт будет понятнее чем INI файл в неизвестном формате.

Но ИМХО в таблице еще проще, если без гуи.
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Чтение INI из ASA7/8 / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]