Автор | Сообщение |
Pasha
|
| Администратор
|
Пост N: 2416
Зарегистрирован: 23.05.05
|
|
Отправлено: 22.06.12 18:14. Заголовок: Leto DB Server (продолжение 8)
Немного доработал документацию к letodb
|
|
|
Ответов - 273
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
All
[только новые]
|
|
Andrey
|
| постоянный участник
|
Пост N: 2256
Зарегистрирован: 12.09.06
|
|
Отправлено: 22.06.12 20:16. Заголовок: Pasha пишет: Немног..
Pasha пишет: цитата: | Немного доработал документацию к letodb |
| Спасибо.
|
|
|
alex_II
|
| |
Пост N: 67
Зарегистрирован: 12.07.06
|
|
Отправлено: 26.06.12 09:11. Заголовок: Ошибка при создании индекса
Использую CDX Если в индексом выражении используется фунция Doy(), получаю ошибку: Error LETO/1001 Неизвестная функция: e:\Sou.may\Letodb\Data\letomay\oplata INDEX ON Doy(dtopl) TO oplata
|
|
|
Pasha
|
| Администратор
|
Пост N: 2419
Зарегистрирован: 23.05.05
|
|
Отправлено: 26.06.12 09:27. Заголовок: alex_II пишет: Если..
alex_II пишет: цитата: | Если в индексом выражении используется фунция Doy(), получаю ошибку: |
| DOY - это функция из ct. Сервер естественно собран без этой функции, как и без любых других специфических функций, которые могут встречаться в индексных выражениях. Добавьте в source\server.prg строку: request doy В этой строке перечислите все необходимые Вам функции, и пересоберите сервер. В скрипт сборки сервера (letodb.hbp) в этом случае необходимо будет включить библиотеку hbct, и (возможно) другие сторонние библиотеки: -lhbct
|
|
|
alex_II
|
| |
Пост N: 68
Зарегистрирован: 12.07.06
|
|
Отправлено: 26.06.12 09:38. Заголовок: Спасибо, буду пробов..
Спасибо, буду пробовать
|
|
|
alex_II
|
| |
Пост N: 69
Зарегистрирован: 12.07.06
|
|
Отправлено: 26.06.12 10:36. Заголовок: Библиотеку hbct подк..
Библиотеку hbct подключил подправив файл makefile.bc и всё заработало. Через скрипт сборки сервера letodb.hbp не хватило тяму. Pasha можно пример на пальцах в студию?
|
|
|
Pasha
|
| Администратор
|
Пост N: 2421
Зарегистрирован: 23.05.05
|
|
Отправлено: 26.06.12 10:51. Заголовок: alex_II пишет: Pash..
alex_II пишет: цитата: | Pasha можно пример на пальцах в студию? |
| Сделайте батник сборки: set path=%path%;d:\bcc55\bin \harbour\bin\win\bcc\hbmk2 letodb.hbp \harbour\bin\win\bcc\hbmk2 rddleto.hbp или set path=%path%;d:\mingw32\bin \harbour\bin\win\mingw\hbmk2 letodb.hbp \harbour\bin\win\mingw\hbmk2 rddleto.hbp или set path=%path%;d:\mingw64\bin \harbour\bin\win\mingw64\hbmk2 letodb.hbp \harbour\bin\win\mingw64\hbmk2 rddleto.hbp
|
|
|
alex_II
|
| |
Пост N: 70
Зарегистрирован: 12.07.06
|
|
Отправлено: 26.06.12 11:27. Заголовок: Пардон, но я имел вв..
Пардон, но я имел ввиду другое Как в файле letodb.hbp описывать дополнительные библиотеки Ниже приведено содержимое этого файла -inc -obin/letodb -iinclude -n -w -q0 -es2 #-warn=max -prgflag={unix}-D__LINUX_DAEMON__ -prgflag={unix}-D__LINUX__ #-prgflag={win}-D__WIN_DAEMON__ -prgflag={win}-D__WIN_SERVICE__ -cflag={allmsvc}-D_CRT_SECURE_NO_DEPRECATE -cflag={win}-D__WIN_SERVICE__ -gui -mt source/server/server.prg source/server/errorsys.prg source/server/errint.c {unix}source/server/leto_lnx.c {win}source/server/leto_win.c source/server/letoacc.c source/server/letovars.c source/server/letofunc.c source/server/leto_2.c source/common/blowfish.c source/common/common_c.c #source/common/hbip.c source/common/common.prg
|
|
|
Pasha
|
| Администратор
|
Пост N: 2422
Зарегистрирован: 23.05.05
|
|
Отправлено: 26.06.12 11:55. Заголовок: Просто добавить стро..
Просто добавить строку: -l<имя библиотеки> в произвольное место этого скрипта, лучше перед списком модулей
|
|
|
alex_II
|
| |
Пост N: 71
Зарегистрирован: 12.07.06
|
|
Отправлено: 26.06.12 12:09. Заголовок: Понял, спасибо..
Понял, спасибо
|
|
|
AlexMyr
|
| |
Пост N: 524
Зарегистрирован: 11.06.10
|
|
Отправлено: 26.06.12 17:20. Заголовок: варнинги... ../../...
варнинги... ../../../../source/client/leto1.c:1816:24: warning: 'pData' may be used uninitialized in this function [-Wuninitialized] ../../../../source/client/leto1.c:1829:12: warning: 'uiKeyLen' may be used uninitialized in this function [-Wuninitialized] ... ../../../../source/server/letofunc.c:6110:10: warning: 'pArea' may be used uninitialized in this function [-Wuninitialized] Инфа: Letodb /* $Id: Changelog,v 1.350.2.68 2012/06/22 14:17:23 ptsarenko Exp $ */ Harbour Version: Harbour 3.2.0dev (Rev. 17728) Compiler: MinGW GNU C 4.6.2 (32-bit) Platform: Windows XP 5.1.2600 Service Pack 3
|
|
|
Pasha
|
| Администратор
|
Пост N: 2423
Зарегистрирован: 23.05.05
|
|
Отправлено: 26.06.12 18:17. Заголовок: AlexMyr пишет: варн..
AlexMyr пишет: цитата: | варнинги... ../../../../source/client/leto1.c:1816:24: warning: 'pData' may be used uninitialized in this function [-Wuninitialized] ../../../../source/client/leto1.c:1829:12: warning: 'uiKeyLen' may be used uninitialized in this function [-Wuninitialized] ... ../../../../source/server/letofunc.c:6110:10: warning: 'pArea' may be used uninitialized in this function [-Wuninitialized] |
| Да я эти варнинги знаю давно, не знаю как их убрать. Компилятор не может раскрутить сложную логику, и видит неинициализированные переменные, хотя по алгоритму они инициализируются в любом случае. А рабочий алгоритм переписывать не хочется. Я кое-что поправил для custom-индексов, вызовы OrdKeyAdd, OrdKeyDel
|
|
|
|
Pasha
|
| Администратор
|
Пост N: 2424
Зарегистрирован: 23.05.05
|
|
Отправлено: 26.06.12 18:28. Заголовок: У меня есть предложе..
У меня есть предложение к уже использующим letodb. Прочтите документацию (readme.txt), какая она есть в нынешнем виде, и попробуйте в ней что-нибудь дополнить. Может быть, там не отражен какой-то момент, который был существенным для вас. Можно дополнить какой-либо раздел, или создать новый. Это было бы полезно тем, кто только планирует использовать этот продукт. Выкладывать можно сюда. На русском или английском языке.
|
|
|
AlexMyr
|
| |
Пост N: 525
Зарегистрирован: 11.06.10
|
|
Отправлено: 27.06.12 09:55. Заголовок: 1. Пункт 2.5 (readme..
1. Пункт 2.5 (readme.txt) гласит, что при сборке letodb можно собрать и тесты опция -target, НО для этого нужен файл hbmk.hbm в папке letodb с таким содержимым: rddleto.hbc без этого файла тесты не соберутся. 2. Нужно добавить, что letodb для windows может быть собран в двух вариантах - 1) служба, 2) демон (процесс). И по умолчанию letodb собирается как служба, из чего вытекает, что letodb надо установить как службу, и потом ее запустить.
|
|
|
AlexMyr
|
| |
Пост N: 526
Зарегистрирован: 11.06.10
|
|
Отправлено: 27.06.12 10:03. Заголовок: 3. 5. Соединен..
3. 5. Соединение с сервером клиентских программ Чтобы сконнектиться с сервером, прежде всего необходимо прилинковать rddleto.lib (Windows) или librddleto.a (Linux) к своему приложению ... предлагаю упростить: Чтобы сконнектиться с сервером, прежде всего необходимо прилинковать библиотеку rddleto к своему приложению ...
|
|
|
Pasha
|
| Администратор
|
Пост N: 2426
Зарегистрирован: 23.05.05
|
|
Отправлено: 27.06.12 21:47. Заголовок: Спасибо, добавил в д..
Спасибо, добавил в доку. Меня удивило, что сервер еще можно собрать как демон под Windows. Сам я это не делал, с тех пор как была добавлена поддержка службы.
|
|
|
alex_II
|
| |
Пост N: 74
Зарегистрирован: 12.07.06
|
|
Отправлено: 02.07.12 10:29. Заголовок: Не могу переименоват..
Не могу переименовать файл В ini-файле сервера указан путь: DataPath = e:\Sou.may\Letodb\Data В программе указан путь: Path_Dbf := '//localhost:2812/LetoMay/' Leto_Frename(Path_Dbf+'zar1.dbf', Path_Dbf+'zar3.dbf') возвращает -1 Leto_Frename(Path_Dbf+'zar1.dbf', 'zar3.dbf') отрабатывает и переносит файл на уровень вверх в папку Data
|
|
|
AlexMyr
|
| |
Пост N: 528
Зарегистрирован: 11.06.10
|
|
Отправлено: 02.07.12 11:56. Заголовок: alex_II пишет: Не м..
alex_II пишет: цитата: | Не могу переименовать файл |
| Читаем readme.txt или readme_rus.txt п.5, из последнего выдержка: Если задан параметр 'DataPath' в конфигурационном файле сервера, и он имеет непустое значение, необходимо указывать не полный путь к файлу на сервере, а путь относительный ( относительно значению 'DataPath' ). Например, если необходимо открыть файл test.dbf, который расположен на сервере 192.168.5.22 в каталоге /data/mydir и значение параметра 'DataPath' ( в файле конфигурации сервере letodb.ini ) '/data', синтаксис должен быть таким: USE "//192.168.5.22:2812/mydir/test" Если сервер не запущен или Вы указали неверный путь, будет сгенерирована ошибка открытия. Возможно проверить доступность сервера перед открытием файлов вызовом функции leto_Connect( cAddress ), которая вернет -1 в случае неудачной попытки: IF leto_Connect( "//192.168.5.22:2812/mydir/" ) == -1 Alert( "Can't connect to server ..." ) ENDIF Я думаю тут все ясно.
|
|
|
alex_II
|
| |
Пост N: 75
Зарегистрирован: 12.07.06
|
|
Отправлено: 02.07.12 12:52. Заголовок: Ничего не ясно Перем..
Ничего не ясно Переменная Path_Dbf := '//localhost:2812/LetoMay/' как раз и описывает относительный путь и цитирование лишний раз файла readme понимания ситуации не добавляет. Если я неверно описываю путь доступа к файлу, почему тогда без ошибок отрабатывают другие функции: Leto_File(Path_Dbf+'zar.dbf') Leto_Ferase(Path_Dbf+'zar.dbf') ?
|
|
|
AlexMyr
|
| |
Пост N: 529
Зарегистрирован: 11.06.10
|
|
Отправлено: 02.07.12 12:59. Заголовок: alex_II пишет: и ц..
alex_II пишет: цитата: | и цитирование лишний раз файла readme понимания ситуации не добавляет. |
|
потому как мало кто его читает Дайте самодостаточный пример и конкретно где лежат файлы из Вашего поста выше не ясно
|
|
|
Pasha
|
| Администратор
|
Пост N: 2428
Зарегистрирован: 23.05.05
|
|
Отправлено: 02.07.12 13:31. Заголовок: alex_II пишет: Не м..
alex_II пишет: цитата: | Не могу переименовать файл В ini-файле сервера указан путь: DataPath = e:\Sou.may\Letodb\Data В программе указан путь: Path_Dbf := '//localhost:2812/LetoMay/' Leto_Frename(Path_Dbf+'zar1.dbf', Path_Dbf+'zar3.dbf') возвращает -1 |
| 2-й параметр надо указывать без строки коннента, т.е: Path_Srv := '//localhost:2812' Path_Dbf := '/LetoMay/' Leto_Frename(Path_Srv + Path_Dbf+'zar1.dbf', Path_Dbf+'zar3.dbf') цитата: | Leto_Frename(Path_Dbf+'zar1.dbf', 'zar3.dbf') отрабатывает и переносит файл на уровень вверх в папку Data |
| Так и должно быть, поскольку все файловые операции на сервере выполняются относительно DataPath
|
|
|
Ответов - 273
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
All
[только новые]
|
|