You can subscribe to this list here.
2003 |
Jan
(69) |
Feb
(122) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
|
Feb
|
Mar
(56) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(237) |
Jul
|
Aug
|
Sep
(1) |
Oct
(14) |
Nov
(72) |
Dec
|
2007 |
Jan
(2) |
Feb
(37) |
Mar
(5) |
Apr
|
May
(2) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Andrey C. <sku...@us...> - 2006-11-23 11:27:31
|
Update of /cvsroot/eas-dev/clip-ui/example In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv32179/clip-ui/example Removed Files: Makefile form_ui.prg selection.xfl testWindow.xfl test_ui.prg Log Message: Remove clip-xml and clip-ui --- Makefile DELETED --- --- form_ui.prg DELETED --- --- selection.xfl DELETED --- --- testWindow.xfl DELETED --- --- test_ui.prg DELETED --- |
Update of /cvsroot/eas-dev/clip-ui In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv32179/clip-ui Removed Files: .clipcharset AUTHORS ChangeLog LICENSE Makefile.in TODO button.prg checkbox.prg clip-ui.ch color.prg combobox.prg configure edit.prg font.prg form.prg frame.prg grid.prg image.prg label.prg layout.prg menu.prg progressbar.prg radiobutton.prg slider.prg special.prg table.prg timer.prg toolbar.prg tree.prg utils.prg window.prg workspace.prg Log Message: Remove clip-xml and clip-ui --- .clipcharset DELETED --- --- AUTHORS DELETED --- --- ChangeLog DELETED --- --- LICENSE DELETED --- --- Makefile.in DELETED --- --- TODO DELETED --- --- button.prg DELETED --- --- checkbox.prg DELETED --- --- clip-ui.ch DELETED --- --- color.prg DELETED --- --- combobox.prg DELETED --- --- configure DELETED --- --- edit.prg DELETED --- --- font.prg DELETED --- --- form.prg DELETED --- --- frame.prg DELETED --- --- grid.prg DELETED --- --- image.prg DELETED --- --- label.prg DELETED --- --- layout.prg DELETED --- --- menu.prg DELETED --- --- progressbar.prg DELETED --- --- radiobutton.prg DELETED --- --- slider.prg DELETED --- --- special.prg DELETED --- --- table.prg DELETED --- --- timer.prg DELETED --- --- toolbar.prg DELETED --- --- tree.prg DELETED --- --- utils.prg DELETED --- --- window.prg DELETED --- --- workspace.prg DELETED --- |
From: Andrey C. <sku...@us...> - 2006-11-23 11:27:31
|
Update of /cvsroot/eas-dev/clip-ui/example/icons In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv32179/clip-ui/example/icons Removed Files: doc_bank_pp.xpm eas-logo.xpm journal_bank_pp.xpm reference_partner.xpm tick.xpm Log Message: Remove clip-xml and clip-ui --- doc_bank_pp.xpm DELETED --- --- eas-logo.xpm DELETED --- --- journal_bank_pp.xpm DELETED --- --- reference_partner.xpm DELETED --- --- tick.xpm DELETED --- |
From: Andrey C. <sku...@us...> - 2006-11-23 11:24:09
|
Update of /cvsroot/eas-dev/eas In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv30604 Modified Files: configure Log Message: Fix translation update and documentation. Fix configure. Index: configure =================================================================== RCS file: /cvsroot/eas-dev/eas/configure,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- configure 20 Nov 2006 12:57:55 -0000 1.6 +++ configure 23 Nov 2006 11:24:03 -0000 1.7 @@ -315,12 +315,12 @@ #endif static struct pam_conv conv = { - NULL + 0 }; int main() { - pam_handle_t *pamh = NULL; + pam_handle_t *pamh = 0; pam_start( PAM_SERVICE_NAME, 0, &conv, &pamh ); ; return 0; @@ -359,7 +359,7 @@ if test "x$ac_cv_lib_pam_pam_start" = "xyes"; then echo "yes" 1>&6 else - echo "PAM library or header does not found. Install PAM library and header." 2>&6 + echo "PAM library or header does not found. Install PAM library and headers." 2>&6 exit fi |
From: Andrey C. <sku...@us...> - 2006-11-23 11:24:08
|
Update of /cvsroot/eas-dev/eas/po In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv30604/po Modified Files: Makefile README_LOCALE eas.pot ru.po Log Message: Fix translation update and documentation. Fix configure. Index: Makefile =================================================================== RCS file: /cvsroot/eas-dev/eas/po/Makefile,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- Makefile 3 Nov 2006 16:12:08 -0000 1.1 +++ Makefile 23 Nov 2006 11:24:03 -0000 1.2 @@ -16,14 +16,14 @@ PROGRAM = eas TEMPLATE = $(PROGRAM).pot -all: template merge format +all: format template: cd .. && $(XGETTEXT) -C -ki18n -o po/$(TEMPLATE) `find . -name *.prg` - make merge + $(MAKE) translations -merge: - @echo "Merge with old version:" +translations: *.po + @echo "Merge with old versions:" @for i in *.po;do lang=$${i//\.po/}; echo -n "$$i "; $(MSGMERGE) $$i $(TEMPLATE) -o .tmp; \ rm -f $$i ; mv .tmp $$i; done Index: README_LOCALE =================================================================== RCS file: /cvsroot/eas-dev/eas/po/README_LOCALE,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- README_LOCALE 3 Nov 2006 16:12:08 -0000 1.1 +++ README_LOCALE 23 Nov 2006 11:24:03 -0000 1.2 @@ -10,12 +10,9 @@ This document described how to make E/AS software on your language. -1. Run `make template from this directory for generation for up-to-date -translation. - -Create locale directory under 'locale' subdirectory. Name of this -directory must be language code for your language. For example, Estonian -language has language code 'es'. +1. Run `make template` from this directory for generation translation +template. Then run `make translations` for merge old translation with new +template. 2. Lookup for file with your language. Name of this file must be language code for your language with '.po' extension. For example, Estonian language @@ -25,4 +22,4 @@ 3. Translate messages in this file in favorite editor (for example, kbabel) or manually. -4. Run 'make && make install' for add new language to program. \ No newline at end of file +4. Run 'make && make install' for add or update new language to program. Index: eas.pot =================================================================== RCS file: /cvsroot/eas-dev/eas/po/eas.pot,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- eas.pot 20 Nov 2006 12:57:55 -0000 1.4 +++ eas.pot 23 Nov 2006 11:24:03 -0000 1.5 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-11-19 23:55+0300\n" +"POT-Creation-Date: 2006-11-23 14:12+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL...@li...>\n" Index: ru.po =================================================================== RCS file: /cvsroot/eas-dev/eas/po/ru.po,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- ru.po 20 Nov 2006 12:57:55 -0000 1.4 +++ ru.po 23 Nov 2006 11:24:03 -0000 1.5 @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: ru\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-11-19 23:55+0300\n" +"POT-Creation-Date: 2006-11-23 14:12+0300\n" "PO-Revision-Date: 2006-11-02 14:13+0300\n" "Last-Translator: Andrey Cherepanov <sib...@ma...>\n" "Language-Team: Russian <kde...@li...>\n" |
From: Andrey C. <sku...@us...> - 2006-11-23 11:24:08
|
Update of /cvsroot/eas-dev/eas/libeas In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv30604/libeas Modified Files: functions.prg Log Message: Fix translation update and documentation. Fix configure. Index: functions.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/functions.prg,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- functions.prg 20 Nov 2006 12:57:55 -0000 1.5 +++ functions.prg 23 Nov 2006 11:24:03 -0000 1.6 @@ -139,6 +139,18 @@ function setFormObject(window, obj) return lcomponent('sys.ui', 'setFormObject', 'window', window, 'obj', obj) +/* Get attribute value for specified object */ +function getAttributeValue(id, source) + local a, attr, db + // source should has format: 'db:class:attribute' + a := split(source, ':') + if len(a) != 3 + return NIL + endif + db := a[1] + attr := a[3] +return component('sys.db', 'getAttr', 'id', id, 'attr', attr, 'db', db) + /* Dialog box with confirmation of changed document close */ function dialogBoxConfirmClose(window, class) return lcomponent('sys.ui', 'dialogBoxConfirmClose', 'window', window, 'class', class) |
From: Andrey C. <sku...@us...> - 2006-11-20 12:58:01
|
Update of /cvsroot/eas-dev/eas In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv30411 Modified Files: VERSION configure Log Message: Fix configure for check clip-ui drivers and PAM. By default gtk2 driver is used. Index: VERSION =================================================================== RCS file: /cvsroot/eas-dev/eas/VERSION,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- VERSION 15 Nov 2006 10:37:18 -0000 1.8 +++ VERSION 20 Nov 2006 12:57:55 -0000 1.9 @@ -1 +1 @@ -20061113 +20061116 Index: configure =================================================================== RCS file: /cvsroot/eas-dev/eas/configure,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- configure 3 Nov 2006 16:12:06 -0000 1.5 +++ configure 20 Nov 2006 12:57:55 -0000 1.6 @@ -14,9 +14,16 @@ datadir=$prefix/share/eas logdir=$datadir/log dbpath=/var/db/eas +driver= withdoc=YES withl10n=YES +# Required versions +REQUIRED_CLIP_VERSION="1.2.0.0" + +# clip-ui drivers +DRIVERS=( gtk2 gtk ) + for ac_option do # If the previous option needs an argument, assign it. @@ -64,6 +71,11 @@ --dbpath=*) dbpath="$ac_optarg" ;; + --driver) + ac_prev=driver ;; + --driver=*) + driver="$ac_optarg" ;; + --without-doc) withdoc=NO ;; @@ -81,6 +93,7 @@ --datadir=DIR data location: modules, l10n [$datadir] --logdir=DIR location of program messages [$logdir] --dbpath=DIR database default path [$dbpath] + --driver=DRV clip-ui driver name used by default [default=checked] --without-doc build without documentation [default=no] --without-l10n build without localization support [default=no] EOF @@ -158,29 +171,25 @@ exit fi CLIP_version=`$prg --version | sed -n '1p' | tr -d '\n'` -echo "$CLIP_version" 1>&6 - -# Check clip-gtk -echo $ac_n "checking for a clip-gtk library""... $ac_c" 1>&6 -echo "configure:$LINENO: checking for a clip-gtk" >&5 - -prg=$CLIPROOT/lib/libclip-gtk.so -if test ! -f "$prg"; then - echo "Library '$prg' does not found. Configure and install clip-gtk from CLIPDISTRO/cliplibs/clip-gtk directory or appropriate binary package." 2>&6 - exit -fi echo "yes" 1>&6 -# Check clip-gtk2 -echo $ac_n "checking for a clip-gtk2 library""... $ac_c" 1>&6 -echo "configure:$LINENO: checking for a clip-gtk2" >&5 +# Check CLIP version +echo $ac_n "checking for a CLIP version""... $ac_c" 1>&6 +echo "configure:$LINENO: checking for a CLIP version" >&5 -prg=$CLIPROOT/lib/libclip-gtk2.so -if test ! -f "$prg"; then - echo "Library '$prg' does not found. Configure and install clip-gtk2 from CLIPDISTRO/cliplibs/clip-gtk2 directory or appropriate binary package." 2>&6 -# exit -fi -echo "yes" 1>&6 +CLIP_version=`$prg --version | sed -n '1p' | tr -d '\n'` +rv=( `echo "$REQUIRED_CLIP_VERSION" | tr '.' ' '` ) +v=( `echo "$CLIP_version" | tr '.' ' '` ) +# Compare pair of elements in rv and v +i=0 +for vp in ${rv[@]}; do + if test "$vp" -gt "${v[$i]}"; then + echo "< $REQUIRED_CLIP_VERSION. Install newer CLIP version from http://www.itk.ru." 2>&6 + exit + fi + (( i += 1 )) +done +echo "$CLIP_version" 1>&6 # Check clip-ui echo $ac_n "checking for a clip-ui library""... $ac_c" 1>&6 @@ -193,6 +202,34 @@ fi echo "yes" 1>&6 +# Detect drivers +echo $ac_n "checking for clip-ui drivers""... $ac_c" 1>&6 +echo "configure:$LINENO: checking for clip-ui drivers" >&5 +i=0 +for drv in ${DRIVERS[@]}; do + prg="$CLIPROOT/lib/libclip-$drv.so" + if test ! -f "$prg"; then + unset DRIVERS[$i] + if test "$driver" = "$drv"; then + echo "Library '$prg' does not found for specified driver. Select other driver or install library." 2>&6 + exit + fi + fi + (( i += 1 )) +done + +# Check if array is empty +l="${DRIVERS[@]}" +if test -z "$l"; then + echo "There are no available clip-ui drivers. Please, install at least one driver." 2>&6 + exit +fi +echo "$l" 1>&6 + +if test -z "$driver"; then + driver=${DRIVERS[0]} +fi + # Check clip-xml echo $ac_n "checking for a clip-xml library""... $ac_c" 1>&6 echo "configure:$LINENO: checking for a clip-xml" >&5 @@ -252,21 +289,83 @@ # Check programs # -# Check wget -echo $ac_n "checking for wget""... $ac_c" 1>&6 -echo "configure:$LINENO: checking for wget" >&5 +# TODO Check wget +#echo $ac_n "checking for wget""... $ac_c" 1>&6 +#echo "configure:$LINENO: checking for wget" >&5 -prg=`wget --version | head -n 1` -if test -z "$prg"; then - echo "Wget is not installed. Build from http://wget.sunsite.dk/ or install from appropriate binary package." 2>&6 +#prg=`wget --version | head -n 1` +#if test -z "$prg"; then +# echo "Wget is not installed. Build from http://wget.sunsite.dk/ or install from appropriate binary package." 2>&6 +# exit +#fi +#echo "$prg" 1>&6 + +echo $ac_n "checking for PAM""... $ac_c" 1>&6 +echo "configure:$LINENO: checking for PAM" >&5 +PAMLIBS="-lpam -ldl" + +rm -f conftest* +cat >conftest.c <<_ACEOF +#include <security/pam_appl.h> +#define PAM_SERVICE_NAME "easserver" + +/* Override any gcc2 internal prototype to avoid an error. */ +#ifdef __cplusplus +extern "C" +#endif + +static struct pam_conv conv = { + NULL +}; + +int main() +{ + pam_handle_t *pamh = NULL; + pam_start( PAM_SERVICE_NAME, 0, &conv, &pamh ); + ; + return 0; +} +_ACEOF + +ac_link="gcc -Wall conftest.c -o conftest $PAMLIBS" +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_lib_pam_pam_start=yes +else + echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.c >&5 + ac_cv_lib_pam_pam_start=no +fi +rm -f conftest* +if test "x$ac_cv_lib_pam_pam_start" = "xyes"; then + echo "yes" 1>&6 +else + echo "PAM library or header does not found. Install PAM library and header." 2>&6 exit fi -echo "$prg" 1>&6 - + if test "$withdoc" = "YES"; then echo $ac_n "checking for docbook2html""... $ac_c" 1>&6 echo "configure:$LINENO: checking for docbook2html" >&5 - prg_version=`docbook2html --version 2>/dev/null | sed -n '1p' | tr -d '\n'` echo "$prg_version" 1>&6 if test -z "$prg_version"; then @@ -300,13 +399,21 @@ echo "" 1>&6 echo "Configuration:" 1>&6 -echo -e " Executables: $bindir" 1>&6 +echo -e " Executables: $bindir" 1>&6 echo -e " Data: $datadir" 1>&6 -echo -e " Logs: $logdir" 1>&6 -echo -e " Databases: $dbpath" 1>&6 +echo -e " Logs: $logdir" 1>&6 +echo -e " Databases: $dbpath" 1>&6 echo "" 1>&6 sedline="s%@SHELL@%$SHELL%" + +# Define variables +def="$def -DEAS_UIDRIVER=\\\"$driver\\\"" +flags="" +if test "$debug" = "YES"; then + flags="$flags -g" +fi + echo "Create Makefile.var..." >&6 echo "configure:$LINENO: Create Makefile.var..." >&5 @@ -314,10 +421,11 @@ echo "#define EASVERSION \"$version\"" > version.ch echo "# Makefile for E/AS custom variables" >Makefile.var -echo "EASBINDIR=$bindir" >>Makefile.var -echo "EASDATADIR=$datadir" >>Makefile.var -echo "EASLOGDIR=$logdir" >>Makefile.var -echo "EASDBPATH=$dbpath" >>Makefile.var - -echo "DOCDIR=$docdir" >>Makefile.var -echo "PODIR=$podir" >>Makefile.var +echo "EASBINDIR=$bindir" >> Makefile.var +echo "EASDATADIR=$datadir" >> Makefile.var +echo "EASLOGDIR=$logdir" >> Makefile.var +echo "EASDBPATH=$dbpath" >> Makefile.var +echo "DOCDIR=$docdir" >> Makefile.var +echo "PODIR=$podir" >> Makefile.var +echo "EASDEF=$def" >> Makefile.var +echo "BUILDFLAGS=$flags" >> Makefile.var |
From: Andrey C. <sku...@us...> - 2006-11-20 12:58:01
|
Update of /cvsroot/eas-dev/eas/po In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv30411/po Modified Files: eas.pot ru.po Log Message: Fix configure for check clip-ui drivers and PAM. By default gtk2 driver is used. Index: eas.pot =================================================================== RCS file: /cvsroot/eas-dev/eas/po/eas.pot,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- eas.pot 15 Nov 2006 10:37:18 -0000 1.3 +++ eas.pot 20 Nov 2006 12:57:55 -0000 1.4 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-11-13 07:55+0300\n" +"POT-Creation-Date: 2006-11-19 23:55+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL...@li...>\n" @@ -40,7 +40,7 @@ msgid "Entrance to system" msgstr "" -#: client/main.prg:237 client/main.prg:338 client/main.prg:369 +#: client/main.prg:237 client/main.prg:338 client/main.prg:371 msgid "Version " msgstr "" @@ -113,56 +113,56 @@ msgid " -debug level Set debug output level" msgstr "" -#: client/main.prg:353 +#: client/main.prg:355 msgid "About" msgstr "" -#: client/main.prg:380 +#: client/main.prg:382 msgid "Client software for E/AS platform" msgstr "" -#: client/main.prg:381 +#: client/main.prg:383 msgid "Version:" msgstr "" -#: client/main.prg:382 +#: client/main.prg:384 msgid "Driver:" msgstr "" -#: client/main.prg:383 +#: client/main.prg:385 msgid "(c) 2003-2006, E/AS Software Foundation. All rights reserved." msgstr "" -#: client/main.prg:384 +#: client/main.prg:386 msgid "This software is distributed under the GPL" msgstr "" -#: client/main.prg:385 +#: client/main.prg:387 msgid "Web: http://eas.lrn.ru" msgstr "" -#: client/main.prg:392 +#: client/main.prg:394 msgid "&Close" msgstr "" -#: libeas/uimanager.prg:320 +#: libeas/uimanager.prg:324 msgid "Document was changed" msgstr "" -#: libeas/uimanager.prg:321 +#: libeas/uimanager.prg:325 msgid "" "There are unsaved changes in current document.&\n" "Save changes?" msgstr "" -#: libeas/uimanager.prg:322 +#: libeas/uimanager.prg:326 msgid "'&Save','&Discard','&Cancel'" msgstr "" -#: libeas/uimanager.prg:338 +#: libeas/uimanager.prg:342 msgid "Error" msgstr "" -#: libeas/uimanager.prg:338 +#: libeas/uimanager.prg:342 msgid "Error saving document!" msgstr "" Index: ru.po =================================================================== RCS file: /cvsroot/eas-dev/eas/po/ru.po,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- ru.po 15 Nov 2006 10:37:18 -0000 1.3 +++ ru.po 20 Nov 2006 12:57:55 -0000 1.4 @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: ru\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-11-13 07:55+0300\n" +"POT-Creation-Date: 2006-11-19 23:55+0300\n" "PO-Revision-Date: 2006-11-02 14:13+0300\n" "Last-Translator: Andrey Cherepanov <sib...@ma...>\n" "Language-Team: Russian <kde...@li...>\n" @@ -45,7 +45,7 @@ msgid "Entrance to system" msgstr "÷ÈÏÄ × ÓÉÓÔÅÍÕ" -#: client/main.prg:237 client/main.prg:338 client/main.prg:369 +#: client/main.prg:237 client/main.prg:338 client/main.prg:371 msgid "Version " msgstr "÷ÅÒÓÉÑ " @@ -124,43 +124,43 @@ msgid " -debug level Set debug output level" msgstr " -debug level õÓÔÁÎÏ×ÉÔØ ÕÒÏ×ÅÎØ ÏÔÌÁÄËÉ" -#: client/main.prg:353 +#: client/main.prg:355 msgid "About" msgstr "ï ÐÒÏÇÒÁÍÍÅ" -#: client/main.prg:380 +#: client/main.prg:382 msgid "Client software for E/AS platform" msgstr "ëÌÉÅÎÔ ÐÌÁÔÆÏÒÍÙ E/AS" -#: client/main.prg:381 +#: client/main.prg:383 msgid "Version:" msgstr "÷ÅÒÓÉÑ:" -#: client/main.prg:382 +#: client/main.prg:384 msgid "Driver:" msgstr "äÒÁÊ×ÅÒ:" -#: client/main.prg:383 +#: client/main.prg:385 msgid "(c) 2003-2006, E/AS Software Foundation. All rights reserved." msgstr "(c) 2003-2006, E/AS Software Foundation. ÷ÓÅ ÐÒÁ×Á ÚÁÝÉÝÅÎÙ." -#: client/main.prg:384 +#: client/main.prg:386 msgid "This software is distributed under the GPL" msgstr "ðÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ ÒÁÓÐÒÏÓÔÒÁÎÑÅÔÓÑ ÐÏ ÕÓÌÏ×ÉÑÍ ÌÉÃÅÎÚÉÉ GPL" -#: client/main.prg:385 +#: client/main.prg:387 msgid "Web: http://eas.lrn.ru" msgstr "÷ÅÂ-ÓÁÊÔ: http://eas.lrn.ru" -#: client/main.prg:392 +#: client/main.prg:394 msgid "&Close" msgstr "&úÁËÒÙÔØ" -#: libeas/uimanager.prg:320 +#: libeas/uimanager.prg:324 msgid "Document was changed" msgstr "äÏËÕÍÅÎÔ ÉÚÍÅΣÎ" -#: libeas/uimanager.prg:321 +#: libeas/uimanager.prg:325 msgid "" "There are unsaved changes in current document.&\n" "Save changes?" @@ -168,14 +168,14 @@ "÷ ÄÏËÕÍÅÎÔÅ ÅÓÔØ ÎÅÓÏÈÒÁΣÎÎÙÅ ÉÚÍÅÎÅÎÉÑ.&\n" "óÏÈÒÁÎÉÔØ ÄÏËÕÍÅÎÔ?" -#: libeas/uimanager.prg:322 +#: libeas/uimanager.prg:326 msgid "'&Save','&Discard','&Cancel'" msgstr "'&óÏÈÒÁÎÉÔØ','&ïÔËÌÏÎÉÔØ','&ïÔÍÅÎÁ'" -#: libeas/uimanager.prg:338 +#: libeas/uimanager.prg:342 msgid "Error" msgstr "ïÛÉÂËÁ" -#: libeas/uimanager.prg:338 +#: libeas/uimanager.prg:342 msgid "Error saving document!" msgstr "ïÛÉÂËÁ ÓÏÈÒÁÎÅÎÉÑ ÄÏËÕÍÅÎÔÁ!" |
From: Andrey C. <sku...@us...> - 2006-11-20 12:58:01
|
Update of /cvsroot/eas-dev/eas/client In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv30411/client Modified Files: Makefile main.prg Log Message: Fix configure for check clip-ui drivers and PAM. By default gtk2 driver is used. Index: Makefile =================================================================== RCS file: /cvsroot/eas-dev/eas/client/Makefile,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- Makefile 3 Nov 2006 16:12:06 -0000 1.5 +++ Makefile 20 Nov 2006 12:57:55 -0000 1.6 @@ -9,7 +9,7 @@ CLIP = $(CLIPROOT)/bin/clip CLIPLIBS = -L$(CLIPROOT)/lib -lclip-codb -lcodb-query -lclip-ui -lclip-xml -lexpat EASLIBS = -leas -CLIPFLAGS = -a -O -b +CLIPFLAGS = -aObw $(BUILDFLAGS) ICONS = eas-logo.xpm eas.xpm .SUFFIXES: .prg .o .po @@ -27,7 +27,7 @@ $(PRG): $(OBJS) # export LIBRARY_PATH= - $(CLIP) $(CLIPFLAGS) -eslM $(CLIPINCLUDE) -o $(PRG) $(OBJS) $(CLIPLIBS) $(EASLIBS) + $(CLIP) $(CLIPFLAGS) -esl $(CLIPINCLUDE) -o $(PRG) $(OBJS) $(CLIPLIBS) $(EASLIBS) install: all $(PRG) @../mkinstalldirs $(DESTDIR)$(EASBINDIR) @@ -40,4 +40,4 @@ rm -rf $(DESTDIR)$(EASDATADIR)/client/ >/dev/null 2>&1 || : .prg.o: - $(CLIP) $(CLIPFLAGS) -DEAS_MODULES=\"$(EASDATADIR)/client/\" $(CLIPINCLUDE) $< + $(CLIP) -n $(CLIPFLAGS) -DEAS_MODULES=\"$(EASDATADIR)/client/\" $(CLIPINCLUDE) $< Index: main.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/client/main.prg,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- main.prg 15 Nov 2006 10:37:18 -0000 1.11 +++ main.prg 20 Nov 2006 12:57:55 -0000 1.12 @@ -29,7 +29,7 @@ /* Main function */ function main() - local lang, params:=array(0), i, dir, defConfigFile + local lang, params:=array(0), i, dir, defConfigFile, oErr oErr := errorBlock({|e| break(e) }) @@ -349,6 +349,8 @@ /* About dialog */ function dialogAbout() local win, t, cap, bb, bD + local gTitle, wIcon, wVer, driver + // Create window win := UIWindow(i18n("About"), NIL, "aboutWindow", .F. ) win:setIcon(UIImage( EAS_MODULES+PATH_DELIM+"icons"+PATH_DELIM+"eas.xpm")) |
From: Andrey C. <sku...@us...> - 2006-11-20 12:57:59
|
Update of /cvsroot/eas-dev/eas/server In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv30411/server Modified Files: Makefile Log Message: Fix configure for check clip-ui drivers and PAM. By default gtk2 driver is used. Index: Makefile =================================================================== RCS file: /cvsroot/eas-dev/eas/server/Makefile,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- Makefile 3 Nov 2006 16:12:09 -0000 1.8 +++ Makefile 20 Nov 2006 12:57:55 -0000 1.9 @@ -7,12 +7,12 @@ include ../Makefile.var CLIPINCLUDE= -I$(CLIPROOT)/include CLIP = $(CLIPROOT)/bin/clip -CLIPLIBS = -L$(CLIPROOT)/lib -lclip-codb -lcodb_query -lclip-ui -lclip-xml -lexpat +CLIPLIBS = -L$(CLIPROOT)/lib -lclip-codb -lcodb-query -lclip-ui -lclip-xml -lexpat EASLIBS = -leas -CLIPFLAGS = -a -O -b +CLIPFLAGS = -aObw $(BUILDFLAGS) AUTHLIBS = -lpam CC = gcc -CFLAGS = -O +CFLAGS = -O -Wall .SUFFIXES: .prg .o .po .PHONY: all clean @@ -34,7 +34,7 @@ cat easserver.ini.in | sed -e 's|BINROOT|$(EASBINDIR)|g;s|SERVERROOT|$(EASLOGDIR)|g' >easserver.ini $(PRG): $(OBJS) - $(CLIP) $(CLIPFLAGS) -eslM $(CLIPINCLUDE) -o $(PRG) $(OBJS) $(CLIPLIBS) $(EASLIBS) + $(CLIP) $(CLIPFLAGS) -esl $(CLIPINCLUDE) -o $(PRG) $(OBJS) $(CLIPLIBS) $(EASLIBS) $(AUTH): pam-auth.c $(CC) $(CFLAGS) -o $(AUTH) pam-auth.c $(AUTHLIBS) @@ -91,4 +91,4 @@ rm -f $(DESTDIR)/etc/pam.d/easserver >/dev/null 2>&1 .prg.o: - $(CLIP) $(CLIPFLAGS) -DEAS_MODULES=\"$(EASDATADIR)/server/\" $(CLIPINCLUDE) $< + $(CLIP) -n $(CLIPFLAGS) -DEAS_MODULES=\"$(EASDATADIR)/server/\" $(CLIPINCLUDE) $< |
From: Andrey C. <sku...@us...> - 2006-11-20 12:57:59
|
Update of /cvsroot/eas-dev/eas/libeas In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv30411/libeas Modified Files: Makefile componentmanager.prg dbmanager.prg execmanager.prg functions.prg transportmanager.prg uimanager.prg Log Message: Fix configure for check clip-ui drivers and PAM. By default gtk2 driver is used. Index: Makefile =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/Makefile,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- Makefile 2 Jun 2006 14:32:45 -0000 1.1 +++ Makefile 20 Nov 2006 12:57:55 -0000 1.2 @@ -1,20 +1,18 @@ # This is a part of E/AS library # -# Copyright (C) 2005 by E/AS Software Foundation +# Copyright (C) 2005-2006 by E/AS Software Foundation # Author: Andrey Cherepanov <sk...@ea...> include $(CLIPROOT)/include/Makefile.inc +include ../Makefile.var CLIPINCLUDE = -I$(CLIPROOT)/include CLIP = $(CLIPROOT)/bin/clip .SUFFIXES: .prg .o .po -# Here you can define appropriate compile settings -#C_FLAGS=-Wall -g -I. $(CLIPINCLUDE) -#CC=gcc TARGET = libeas$(DLLSUFF) RTARGET = libeas$(DLLREALSUFF) - +CLIPFLAGS = -aObw $(BUILDFLAGS) OBJS = componentmanager.o config.o connection.o dbmanager.o execmanager.o \ messagemanager.o protocol_raw.o session.o transportmanager.o \ uimanager.o functions.o @@ -44,16 +42,4 @@ dist: distclean .prg.o: clip-ui.ch - $(CLIP) $(CLIPINCLUDE) $< - -commit: - _cvs commit - -update: - _cvs update -dP - -ucommit: - _cvs update -dP && _cvs commit - -shell: - sh + $(CLIP) $(CLIPFLAGS) $(CLIPINCLUDE) $(EASDEF) $< Index: componentmanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/componentmanager.prg,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- componentmanager.prg 15 Nov 2006 10:37:18 -0000 1.4 +++ componentmanager.prg 20 Nov 2006 12:57:55 -0000 1.5 @@ -14,6 +14,7 @@ #define OCMNG_REPOSITORY 'ETC0101' #define OCMNG_COMMANDS_CLASS 'mng_command' +#define OCMNG_COMPONENT_CLASS 'mng_component' #define COMPONENT_SECTION 'COMPONENT_MANAGER' function EASComponentManager( params ) @@ -157,7 +158,7 @@ // Query database q:db := OCMNG_REPOSITORY - q:query := "select component_name from "+OCMNG_COMPONENT_CLASS+";" + q:query := "select component_name from " + OCMNG_COMPONENT_CLASS + ";" a := sendMessage(,'sys.db', 'execute', q ) eDebug( 35, "DB returns:", a ) @@ -165,12 +166,12 @@ /** Get component commands list */ static function c_commands( self, params ) - local q:=map(), a, i, j, name, res:=array(0), cname + local q:=map(), a, i, j, name, res:=array(0), cname, obj eDebug( 25, "Component commands" ) // Query database q:db := OCMNG_REPOSITORY - q:query := "select component_name,name from "+OCMNG_COMMANDS_CLASS+";" + q:query := "select component_name,name from " + OCMNG_COMMANDS_CLASS + ";" a := sendMessage(,'sys.db', 'execute', q ) eDebug( 35, "DB returns:", a ) Index: dbmanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/dbmanager.prg,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- dbmanager.prg 15 Nov 2006 10:37:18 -0000 1.3 +++ dbmanager.prg 20 Nov 2006 12:57:55 -0000 1.4 @@ -67,7 +67,7 @@ /** Execute query (return object instead array as in execute()) */ static function c_executeExt( self, params ) - local res + local res, fmt if assertParameters( params, { 'query:C' } ) return res endif Index: execmanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/execmanager.prg,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- execmanager.prg 15 Nov 2006 10:37:18 -0000 1.4 +++ execmanager.prg 20 Nov 2006 12:57:55 -0000 1.5 @@ -52,7 +52,7 @@ /** Execute command */ static function c_execute( self, params ) // params: receiver:C, command:C, args:AO, sender:C - local i, j, bCode, vRet, id + local i, j, bCode, vRet, id, slot_list self:lastError := NIL Index: functions.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/functions.prg,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- functions.prg 15 Nov 2006 10:37:18 -0000 1.4 +++ functions.prg 20 Nov 2006 12:57:55 -0000 1.5 @@ -18,7 +18,7 @@ local tm:=seconds(), msg, ret, args, pc:=pcount(), i, params:=NIL, p1, p2 if pc == 1 .and. valtype(param(1)) == 'A' - params := param[1] + params := param(1) pc := len(params) endif @@ -179,7 +179,7 @@ endif recover using oErr eDebug( 10, "getResource(): Internal error:",errorMessage(oErr)) - return o + return NIL end sequence return real Index: transportmanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/transportmanager.prg,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- transportmanager.prg 15 Nov 2006 10:37:18 -0000 1.3 +++ transportmanager.prg 20 Nov 2006 12:57:55 -0000 1.4 @@ -137,7 +137,7 @@ recover using oErr eDebug( 6, "Open connection error:", errorMessage(oErr) ) - return o + return .F. end sequence return .F. @@ -153,7 +153,7 @@ ret := connection:open() recover using oErr eDebug( 6, "Open connection:", errorMessage(oErr) ) - return o + return NIL end sequence return ret Index: uimanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/uimanager.prg,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- uimanager.prg 15 Nov 2006 10:37:18 -0000 1.4 +++ uimanager.prg 20 Nov 2006 12:57:55 -0000 1.5 @@ -51,12 +51,16 @@ /** Init UI manager */ static function c_init( self, params ) + local cfg // Check config file cfg := EASGetConfig() if valtype(cfg) == 'O' .and. cfg:className == "EASConfig" .and. .not. empty(cfg:driver) eDebug( 28, "Used driver:", cfg:driver ) useDriver( cfg:driver ) + elseif .not. empty( EAS_UIDRIVER ) + eDebug( 28, "Used driver:", EAS_UIDRIVER ) + useDriver( EAS_UIDRIVER ) endif self:ws := UIWorkSpace() // TODO: params @@ -92,7 +96,7 @@ static function c_openForm( self, params ) // params: form:C local oErr, name, vRet, form, parent, t - local formType, objId, action, class + local formType, objId, action, class, win // Check params if assertParameters( params, { 'name:C' } ) @@ -174,8 +178,8 @@ win:show() recover using oErr - eDebug( 8, "Internal error:",errorMessage(oErr) ) - return o + eDebug( 8, "Internal error:", errorMessage(oErr) ) + return .F. end sequence eDebug( 28, "End open form" ) |
From: Andrey C. <sku...@us...> - 2006-11-15 11:16:25
|
Update of /cvsroot/eas-dev/ocmng/EAS/menu In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv2772/EAS/menu Added Files: form_service.xml references.xml Log Message: Add new components. Fix log policy for forms. --- NEW FILE: form_service.xml --- <?xml version="1.0" encoding="koi8-r" standalone="no" ?> <component> <name>form_service</name> <category>Core/Interface</category> <version>0.1</version> <description>'Service' Menu</description> <license>GNU/GPL</license> <created>2006-10-31</created> <modified>2006-11-13</modified> <requires> <dependence type="component">../forms/form_menu.xml</dependence> </requires> <author>Skull</author> <data> <objects depository="ETC0101" class="form_menu"> <!-- Service menu --> <object> <attr name="menu_node">service</attr> <attr name="menu_type">M</attr> <attr name="menu_parent"></attr> <attr name="menu_order">70</attr> </object> </objects> <objects depository="ETC0101" class="form_action"> <object> <attr name="name">service</attr> <attr name="menu_name">&Service</attr> </object> </objects> <objects depository="ETC0101" class="form_localization"> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">&Service</attr> <attr name="msgstr">ó&ÅÒ×ÉÓ</attr> </object> </objects> </data> <locale lang="ru"> <name>form_service</name> <description>íÅÎÀ 'óÅÒ×ÉÓ'</description> </locale> </component> --- NEW FILE: references.xml --- <?xml version="1.0" encoding="koi8-r" standalone="no" ?> <component> <name>references</name> <category>Core/Menu</category> <version>0.1</version> <description>Menu for references</description> <license>GNU/GPL</license> <created>2006-11-09</created> <modified>2006-11-09</modified> <requires> <dependence type="component">../../ref1/ALL.xml</dependence> </requires> <author>Skull</author> <data> <objects depository="ETC0101" class="form_menu"> <object> <attr name="menu_node">references</attr> <attr name="menu_type">M</attr> <attr name="menu_parent"></attr> <attr name="menu_order">20</attr> </object> <!-- country +currency taxcause taxcode taxtype unit2unit units --> <object> <attr name="menu_node">ref_country</attr> <attr name="menu_type">A</attr> <attr name="menu_parent">references</attr> <attr name="menu_order">10</attr> </object> <object> <attr name="menu_node">ref_currency</attr> <attr name="menu_type">A</attr> <attr name="menu_parent">references</attr> <attr name="menu_order">11</attr> </object> <object> <attr name="menu_node">-taxes</attr> <attr name="menu_type">S</attr> <attr name="menu_parent">references</attr> <attr name="menu_order">30</attr> </object> <object> <attr name="menu_node">ref_taxcause</attr> <attr name="menu_type">A</attr> <attr name="menu_parent">references</attr> <attr name="menu_order">31</attr> </object> <object> <attr name="menu_node">ref_taxcode</attr> <attr name="menu_type">A</attr> <attr name="menu_parent">references</attr> <attr name="menu_order">32</attr> </object> <object> <attr name="menu_node">ref_taxtype</attr> <attr name="menu_type">A</attr> <attr name="menu_parent">references</attr> <attr name="menu_order">33</attr> </object> <object> <attr name="menu_node">-units</attr> <attr name="menu_type">S</attr> <attr name="menu_parent">references</attr> <attr name="menu_order">50</attr> </object> <object> <attr name="menu_node">ref_units</attr> <attr name="menu_type">A</attr> <attr name="menu_parent">references</attr> <attr name="menu_order">51</attr> </object> <object> <attr name="menu_node">ref_unit2unit</attr> <attr name="menu_type">A</attr> <attr name="menu_parent">references</attr> <attr name="menu_order">52</attr> </object> </objects> <objects depository="ETC0101" class="form_action"> <object> <attr name="name">references</attr> <attr name="menu_name">&References</attr> </object> <object> <attr name="name">ref_country</attr> <attr name="menu_name">C&ountries...</attr> <attr name="action"><![CDATA[<call method="openForm"> <param value="GBL01:country"/><param value="list"/></call>]]></attr> </object> <object> <attr name="name">ref_currency</attr> <attr name="menu_name">&Currencies...</attr> <attr name="action"><![CDATA[<call method="openForm"> <param value="GBL01:currency"/><param value="list"/></call>]]></attr> </object> <object> <attr name="name">ref_taxcause</attr> <attr name="menu_name">Payment c&auses...</attr> <attr name="action"><![CDATA[<call method="openForm"> <param value="GBL01:taxcause"/><param value="list"/></call>]]></attr> </object> <object> <attr name="name">ref_taxcode</attr> <attr name="menu_name">&Taxes...</attr> <attr name="action"><![CDATA[<call method="openForm"> <param value="GBL01:taxcode"/><param value="list"/></call>]]></attr> </object> <object> <attr name="name">ref_taxtype</attr> <attr name="menu_name">Tax t&ypes...</attr> <attr name="action"><![CDATA[<call method="openForm"> <param value="GBL01:taxtype"/><param value="list"/></call>]]></attr> </object> <object> <attr name="name">ref_units</attr> <attr name="menu_name">&Units...</attr> <attr name="action"><![CDATA[<call method="openForm"> <param value="GBL01:units"/><param value="list"/></call>]]></attr> </object> <object> <attr name="name">ref_unit2unit</attr> <attr name="menu_name">Unit tran&sformation...</attr> <attr name="action"><![CDATA[<call method="openForm"> <param value="GBL01:unit2unit"/><param value="list"/></call>]]></attr> </object> </objects> <objects depository="ETC0101" class="form_localization"> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">&References</attr> <attr name="msgstr">&óÐÒÁ×ÏÞÎÉËÉ</attr> </object> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">C&ountries...</attr> <attr name="msgstr">&óÔÒÁÎÙ...</attr> </object> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">&Currencies...</attr> <attr name="msgstr">&÷ÁÌÀÔÙ...</attr> </object> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">Payment c&auses...</attr> <attr name="msgstr">ëÏÄÙ ÏÓÎÏ×ÁÎÉÊ &ÐÌÁÔÅÖÅÊ...</attr> </object> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">&Taxes...</attr> <attr name="msgstr">&îÁÌÏÇÉ...</attr> </object> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">Tax t&ypes...</attr> <attr name="msgstr">ëÏÄÙ Î&ÁÌÏÇÏ×ÙÈ ÐÌÁÔÅÖÅÊ...</attr> </object> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">&Units...</attr> <attr name="msgstr">&åÄÉÎÉÃÙ ÉÚÍÅÒÅÎÉÑ...</attr> </object> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">Unit tran&sformation...</attr> <attr name="msgstr">ð&ÅÒÅÓÞÅÔ ÅÄÉÎÉà ÉÚÍÅÒÅÎÉÑ...</attr> </object> </objects> </data> <locale lang="ru"> <name>references</name> <description>íÅÎÀ ÄÌÑ ÓÐÒÁ×ÏÞÎÉËÏ×</description> </locale> </component> |
From: Andrey C. <sku...@us...> - 2006-11-15 11:16:24
|
Update of /cvsroot/eas-dev/ocmng/EAS In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv2772/EAS Modified Files: ALL.xml Makefile Log Message: Add new components. Fix log policy for forms. Index: ALL.xml =================================================================== RCS file: /cvsroot/eas-dev/ocmng/EAS/ALL.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- ALL.xml 3 Nov 2006 16:31:56 -0000 1.1 +++ ALL.xml 15 Nov 2006 11:16:17 -0000 1.2 @@ -13,7 +13,12 @@ <!-- Core/Administration --> <dependence type="component">admin/dbconsole.xml</dependence> + <dependence type="component">admin/errorlog.xml</dependence> + <dependence type="component">admin/sendmessage.xml</dependence> + <!-- Core/Menu --> + <dependence type="component">menu/references.xml</dependence> + </requires> </component> Index: Makefile =================================================================== RCS file: /cvsroot/eas-dev/ocmng/EAS/Makefile,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- Makefile 3 Nov 2006 16:31:56 -0000 1.1 +++ Makefile 15 Nov 2006 11:16:17 -0000 1.2 @@ -4,6 +4,8 @@ CLIP = $(CLIPROOT)/bin/clip CLIPFLAGS = -alwO PO = admin/dbconsole.po \ + admin/errorlog.po \ + admin/sendmessage.po \ forms/form.po \ forms/form_menu.po \ security/auth.po @@ -21,6 +23,12 @@ admin/dbconsole.po: admin/dbconsole.prg $(CLIP) $(CLIPFLAGS) -p admin/dbconsole.prg +admin/errorlog.po: admin/errorlog.prg + $(CLIP) $(CLIPFLAGS) -p admin/errorlog.prg + +admin/sendmessage.po: admin/sendmessage.prg + $(CLIP) $(CLIPFLAGS) -p admin/sendmessage.prg + forms/form.po: forms/form.prg $(CLIP) $(CLIPFLAGS) -p forms/form.prg |
From: Andrey C. <sku...@us...> - 2006-11-15 11:16:23
|
Update of /cvsroot/eas-dev/ocmng/EAS/security In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv2772/EAS/security Modified Files: auth.prg auth.xml Log Message: Add new components. Fix log policy for forms. Index: auth.prg =================================================================== RCS file: /cvsroot/eas-dev/ocmng/EAS/security/auth.prg,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- auth.prg 3 Nov 2006 16:31:59 -0000 1.1 +++ auth.prg 15 Nov 2006 11:16:18 -0000 1.2 @@ -33,8 +33,9 @@ local authMethod := DEFAULT_AUTH_METHOD, cfg local cCmd, cStdOut:=space(0), cStdErr:=space(0) local user, password, authString +local componentName:='auth' -eDebug(12, "AUTH method:", cMethod, params) +eDebug( 29, componentName + " method:", cMethod, params ) oErr := ErrorBlock({|e| break(e) }) begin sequence @@ -58,14 +59,14 @@ cCmd := strtran(cCmd, '$CLIPROOT', getenv("CLIPROOT")) if empty(cCmd) .or. .not. file(cCmd) - eDebug(2, "AUTH: file not found:", cCmd) + eDebug( 9, componentName + " file not found:", cCmd ) return .F. endif params := params:params if assertParameters( params, { 'name:C', 'password:C' } ) - eDebug(2, "AUTH: internal error: missing parameter 'name' and/or 'password'") + eDebug( 9, componentName + " internal error: missing parameter 'name' and/or 'password'" ) return .F. endif @@ -75,12 +76,12 @@ //eDebug(2, "AUTH executable error:",cCmd) //return .F. //endif - eDebug(2, "AUTH result:",cStdOut) + eDebug( 39, componentName+" result:",cStdOut) if left(cStdOut,2) == "OK" - eDebug(12, "AUTH: access granted for", params:name) + eDebug( 29, componentName + ": access granted for", params:name) return .T. // Access granted else - eDebug(12, "AUTH: access denied for", params:name) + eDebug( 29, componentName + ": access denied for", params:name) return .F. // Access denied endif @@ -94,7 +95,7 @@ i++ end - eDebug(5, "Component internal error:", errorMessage(oErr)) + eDebug( 19, componentName + " internal error:", errorMessage(oErr) ) return NIL end sequence Index: auth.xml =================================================================== RCS file: /cvsroot/eas-dev/ocmng/EAS/security/auth.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- auth.xml 3 Nov 2006 16:31:59 -0000 1.1 +++ auth.xml 15 Nov 2006 11:16:18 -0000 1.2 @@ -7,7 +7,7 @@ <description>User authentication</description> <license>GNU/GPL</license> <created>2006-04-23</created> - <modified>2006-06-04</modified> + <modified>2006-11-13</modified> <requires> <dependence type="component">../forms/form.xml</dependence> |
From: Andrey C. <sku...@us...> - 2006-11-15 11:16:22
|
Update of /cvsroot/eas-dev/ocmng/EAS/forms In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv2772/EAS/forms Modified Files: form.prg form.xml form_menu.prg form_menu.xml Added Files: eas.xpm Log Message: Add new components. Fix log policy for forms. --- NEW FILE: eas.xpm --- /* XPM */ static char *eas[]={ "16 16 167 2", ".g c None", "aJ c None", "ag c None", ".q c None", "#4 c None", ".h c None", "aK c None", ".i c None", ".# c None", "Qt c None", "ah c #afafb0", ".j c #afb6be", ".a c #aeb6be", "#S c #adadad", "aC c #acacac", "#i c #abb4be", "#v c #1a4165", "#X c #1a4267", ".6 c #1a456b", "#t c #1b4360", "#Y c #1b456d", "#W c #1c466d", "#u c #1e4667", ".3 c #1e4c70", "#Z c #1e5182", "#P c #1f323f", "#y c #1f3f55", ".5 c #1f496c", ".4 c #1f4a6c", "#l c #205077", "#1 c #213648", "#G c #222b30", "#s c #224d6c", "#w c #225580", "#o c #232e33", "#g c #233c4e", "#V c #23598d", "#M c #255987", "#0 c #255e94", "a# c #2563a2", "#D c #265e8d", ".7 c #265e8e", ".W c #265f91", "a. c #2666a6", "#m c #276091", "aa c #2767a7", "ab c #28639f", ".2 c #2a608b", "#9 c #2a6fb5", ".K c #2c73b6", "#U c #2c74b8", "#z c #2e2f2f", "ac c #2f3e4e", "am c #2f79c4", "#8 c #2f7cca", ".y c #2f80d1", "an c #305b86", "al c #307ece", ".z c #3080d0", "ak c #3080d1", "#7 c #3182d5", ".t c #3184d7", "#Q c #323333", ".x c #3282cf", "aj c #3283d5", "#6 c #3283d6", ".m c #3284d7", ".L c #3381c8", ".w c #3382cf", ".n c #3383d5", ".v c #3384d2", ".u c #3385d5", ".0 c #3486d5", "aw c #356799", ".P c #3584d5", ".D c #3585d5", "av c #366ea6", "#a c #3687d1", ".E c #3688d4", ".l c #3785d4", "ax c #385675", "#. c #394043", "#h c #3d3e3e", ".Z c #3d87d2", ".s c #3e87d2", "ao c #3f4347", "au c #3f6e9e", "ay c #444a51", "ad c #464646", ".V c #4996bf", "#L c #4d9ac3", "#H c #4e4e4e", "#J c #538dc8", "ai c #5585b5", ".d c #558ec7", "#K c #55addd", "#p c #565656", "az c #585858", "#e c #58aed9", ".Y c #5a9fbf", "ap c #5c5c5c", ".o c #5c86b1", ".9 c #5cb6e0", "#n c #5cb7e2", "#O c #5cb8e2", "#k c #5db6df", "#C c #5db6e1", "#F c #5db7e0", "#N c #5db9e3", "#x c #5dbae3", "#B c #5e92c7", "#E c #5eb9e3", "#f c #5ebae4", ".J c #5ebae5", ".Q c #5ebbe7", ".F c #5ebbe8", "#T c #5f90c2", ".M c #5fbae3", "#2 c #616161", ".T c #61c0e9", ".R c #61c0ea", ".S c #61c1ea", ".c c #6294c6", "#d c #62c0e8", ".U c #62c0e9", ".G c #62c0ea", ".H c #62c1ea", ".I c #62c1eb", ".8 c #63c3ef", ".X c #63c4ee", ".1 c #63c5f0", "#b c #63c6f0", "at c #64798e", ".e c #6492c0", "#r c #64c5f0", "## c #6596c8", ".A c #667d8f", ".k c #6797c8", "ae c #696969", "#j c #69cffb", "#c c #6ad0fc", "aF c #6c6c6c", ".N c #6d93a4", "aG c #707070", "aA c #737373", "#A c #757575", "#R c #767676", "#q c #7ea0c3", "aH c #7f7f7f", "aq c #818181", ".b c #82a1c2", ".C c #83a3c4", "#5 c #869db4", "aE c #888888", ".f c #8ea0b3", "aB c #929292", ".r c #92aac1", "#I c #959595", ".O c #95abc1", "af c #989898", ".B c #9ca1a4", "#3 c #9e9e9e", "as c #a0a0a1", "ar c #a1a1a1", "aD c #a2a2a2", ".p c #a3a3a4", "aI c #a5a5a5", "QtQtQtQtQtQt.#.a.b.c.d.e.f.g.h.i", "QtQtQtQtQt.j.k.l.m.m.m.m.n.o.p.q", "QtQtQt.#.r.s.t.u.v.w.w.x.y.z.A.B", "QtQt.#.C.D.t.E.F.G.H.I.J.K.L.M.N", "QtQt.O.P.t.E.Q.R.S.T.U.V.W.J.X.Y", "Qt.j.Z.m.0.F.1.2.3.4.5.6.7.8.9#.", ".i##.m.t#a#b#c.I.T#d#e.W#f.8#g#h", "#i.D.m.0.Q#j.I.T.U#k#l#m.8#n#o#p", "#q.m.t#a#b#r#s#t#u#v#w#x.8#y#z#A", "#B.m.0.Q#c#c.I.T#C#D#E#j#F#G#H#I", "#J.m.v#K.R.G.G.G#L#M#N#O#P#Q#R#S", "#T.m.y#U#V#W#v#X#Y#Z#0#1#z#2#3#4", "#5#6#7#8#9a.a#a#aaabacadaeafagQt", "ahaiaj#7akalalamanaoapaqarag.#Qt", "#4asatauavawaxayazaAaBaC.h.#QtQt", ".iagaDaEaAaFaGaHaBaIaJaKQtQtQtQt"}; Index: form.prg =================================================================== RCS file: /cvsroot/eas-dev/ocmng/EAS/forms/form.prg,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- form.prg 3 Nov 2006 16:31:58 -0000 1.1 +++ form.prg 15 Nov 2006 11:16:18 -0000 1.2 @@ -45,8 +45,9 @@ local cContent:='' local oErr, i, err:='', view +static componentName:='form' -eDebug(12, "FORM method:", cMethod) +eDebug( 29, componentName + " method:", cMethod ) oErr := ErrorBlock({|e| break(e) }) begin sequence @@ -58,7 +59,7 @@ return NIL endif - eDebug(15, "FORM args:", params) + eDebug( 29, componentName + " args:", params ) // Check if form exist in database and return it if (cContent:=get_StoredForm(params)) != NIL @@ -78,7 +79,7 @@ if params:name == 'main' cContent := get_MainForm(params) else - eDebug(5, "FORM: Unknown file:", params:name) // TODO: dialog box for unknown form + eDebug( 9, componentName + ": Unknown file:", params:name ) // TODO: dialog box for unknown form cContent := NIL endif endif @@ -87,10 +88,10 @@ // GETVIEW() elseif lower(cMethod) == 'getview' view := get_View(params) - eDebug( 17, "FORM.getView:", view:data ) + eDebug( 39, componentName + " getView() returns:", view:data ) return view else - eDebug(3, "FORM has not method '"+cMethod+"'") + eDebug( 9, componentName + " has not method '"+cMethod+"'" ) endif recover using oErr i := 1 @@ -100,7 +101,7 @@ i++ end - eDebug(5, "FORM component internal error:", errorMessage(oErr)) + eDebug( 19, componentName + " internal error:", errorMessage(oErr) ) return NIL end sequence @@ -151,7 +152,7 @@ endif i++ enddo - eDebug(12, 'FORM', dep, ':', len(l), 'class(es)' ) + eDebug( 29, componentName, dep, ':', len(l), 'class(es)' ) if len(l) == 0 loop endif @@ -167,7 +168,7 @@ f += '&\t</widget>&\n' next - eDebug(12, 'FORM: finish append classes' ) + eDebug( 29, componentName + ': finish append classes' ) f += ' <widget class="menuSeparator"/>&\n' + ; ' <widget class="menuItem" label="&Exit" name="Menu.Quit">&\n' + ; @@ -193,6 +194,7 @@ '<style>&\n' + ; ' <property widget="mainWindow" name="geometry" value="600,450,35,15" />&\n' + ; ' <property widget="mainWindow" name="position" value="center" />&\n' + ; + ' <property widget="mainWindow" name="icon" value="eas.xpm" />&\n' + ; ' <property widget="mainWindow" name="MDI" value="true" />&\n' + ; '</style>&\n&\n' @@ -210,7 +212,7 @@ f += '</actions>&\n' + ; '</form>&\n' - eDebug(15, "FORM getMainForm:", len(f)) + eDebug( 29, componentName + " getMainForm:", len(f), "byte(s)" ) return f // Generate form with list of all class object @@ -337,7 +339,7 @@ r := lquery(params, q) if valtype(r) == 'A' .and. len(r) > 0 c := r[1][1] - eDebug(15, "FORM:",fName,len(c)) + eDebug( 29, componentName + ":", fName, len(c), "byte(s)" ) endif return c @@ -375,14 +377,14 @@ f += '<interface>&\n' f += '<widget class="document" name="__form" label="'+pclass[2]+'">&\n'+ ; - '<widget name="title" class="label" label="'+pclass[2]+'"/>&\n' + '<widget name=".title" class="label" label="'+pclass[2]+'"/>&\n' // Get fields list attr := lquery(params, 'describe '+pclass[2]) if valtype(attr) != 'A' attr := array(0) endif -// eDebug(5, "ATTR:",var2log(attr,3,.T.)) +// eDebug( 39, componentName + " ATTR:",var2log(attr,3,.T.) ) if len(attr) > 0 f += '<widget class="grid">&\n'+ ; @@ -427,9 +429,9 @@ // Bottom bar f += '<widget class="buttonBar">&\n'+ ; - ' <widget class="button" label="&Ok" name="save" />&\n' - ' <widget class="button" label="&Print" name="print" />&\n'+ ; - f += ' <widget class="button" label="&Close" name="close" />&\n'+ ; + ' <widget class="button" label="&Ok" name=".save" />&\n' + ' <widget class="button" label="&Print" name=".print" />&\n'+ ; + f += ' <widget class="button" label="&Close" name=".close" />&\n'+ ; '</widget>&\n'+ ; '</widget>&\n' @@ -438,21 +440,21 @@ f += '<!-- Widget properties -->&\n'+ ; '<style>&\n'+ ; ' <property widget="__form" name="spacing" value="2"/>&\n'+ ; - ' <property widget="title" name="font.style" value="BOLD"/>&\n'+ ; - ' <property widget="title" name="font.size" value="+2"/>&\n'+ ; + ' <property widget=".title" name="font.style" value="BOLD"/>&\n'+ ; + ' <property widget=".title" name="font.size" value="+2"/>&\n'+ ; '</style>&\n' f += '<!-- Actions -->&\n'+ ; '<actions>&\n'+ ; ' <rule label="&OK">&\n'+ ; - ' <event widget="save" signal="clicked"/>&\n'+ ; + ' <event widget=".save" signal="clicked"/>&\n'+ ; ' <action>&\n'+ ; ' <call method="saveForm"><param><property widget="__form" name="object"/></param><param value="'+class+'" /></call>&\n'+ ; ' <call widget="__form" method="close"/>&\n'+ ; ' </action>&\n'+ ; ' </rule>&\n'+ ; ' <rule label="-&Close">&\n'+ ; - ' <event widget="close" signal="clicked"/>&\n'+ ; + ' <event widget=".close" signal="clicked"/>&\n'+ ; ' <action>&\n'+ ; ' <call method="dialogBoxConfirmClose"><param><property widget="__form" name="object"/></param><param value="'+class+'" /></call>&\n'+ ; ' </action>&\n'+ ; Index: form.xml =================================================================== RCS file: /cvsroot/eas-dev/ocmng/EAS/forms/form.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- form.xml 3 Nov 2006 16:31:58 -0000 1.1 +++ form.xml 15 Nov 2006 11:16:18 -0000 1.2 @@ -7,7 +7,7 @@ <description>Interface and print form support: get from database or generate</description> <license>GNU/GPL</license> <created>2006-05-01</created> - <modified>2006-10-18</modified> + <modified>2006-11-13</modified> <requires> <dependence type="component">../../ocmng/component.xml</dependence> @@ -81,6 +81,12 @@ <attr name="description">Delete icon</attr> <attr name="content">delete.xpm</attr> </object> + <object> + <attr name="name">eas.xpm</attr> + <attr name="type">image/x-xpm</attr> + <attr name="description">Window icon</attr> + <attr name="content">eas.xpm</attr> + </object> </objects> <objects depository="ETC0101" class="mng_command"> <object> Index: form_menu.prg =================================================================== RCS file: /cvsroot/eas-dev/ocmng/EAS/forms/form_menu.prg,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- form_menu.prg 3 Nov 2006 16:31:58 -0000 1.1 +++ form_menu.prg 15 Nov 2006 11:16:18 -0000 1.2 @@ -40,13 +40,13 @@ /*=========================================================================*/ // GENERATE() if lower(cMethod) == 'generate' - eDebug(15, componentName + " args:", params) + eDebug( 29, componentName + " args:", params ) m := get_Menu( iif('CONTEXT' $ params, params:context, NIL ) ) - eDebug( 17, componentName + ".generate:", m ) + eDebug( 39, componentName + " generate():", m ) return m else - eDebug(3, componentName + " has not method '"+cMethod+"'") + eDebug( 9, componentName + " has not method '"+cMethod+"'" ) endif recover using oErr @@ -57,7 +57,7 @@ i++ end - eDebug(5, componentName + " internal error:", errorMessage(oErr)) + eDebug( 19, componentName + " internal error:", errorMessage(oErr) ) return NIL end sequence @@ -90,7 +90,7 @@ endif next endif - //eDebug(15, "MENU:", name, s ) + //eDebug(39, componentName + "menu:", name, s ) return s /* Recursive process nodes in tree */ @@ -170,7 +170,7 @@ n:type := left(res[i][3],1) n:parent := res[i][4] n:order := 0+res[i][5] - eDebug( 25, componentName + ".add:", n:name, res[i][5], n:order ) + eDebug( 39, componentName + " add():", n:name, res[i][5], n:order ) n:childs := array(0) if n:parent == '' // Add top level menu items @@ -194,13 +194,13 @@ next // Write nodes - //eDebug( 15, 'TOP LEVEL NODES:', m ) + //eDebug( 39, componentName + ' top level nodes:', m ) s := '<widget class="menuBar">&\n' for j in asort( m, NIL, NIL, {|a,b| a:order < b:order } ) p := __processTree( j, @s, 'generate' ) next s += '</widget>&\n' - eDebug(22, componentName+".generate:", s) + eDebug( 39, componentName + " generate():", s ) return s Index: form_menu.xml =================================================================== RCS file: /cvsroot/eas-dev/ocmng/EAS/forms/form_menu.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- form_menu.xml 3 Nov 2006 16:31:58 -0000 1.1 +++ form_menu.xml 15 Nov 2006 11:16:18 -0000 1.2 @@ -7,7 +7,7 @@ <description>Menu generation</description> <license>GNU/GPL</license> <created>2006-10-21</created> - <modified>2006-10-26</modified> + <modified>2006-11-13</modified> <requires> <dependence type="component">form.xml</dependence> |
From: Andrey C. <sku...@us...> - 2006-11-15 11:16:22
|
Update of /cvsroot/eas-dev/ocmng/components/ocmng In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv2772/ocmng Modified Files: ETC01.xml Log Message: Add new components. Fix log policy for forms. Index: ETC01.xml =================================================================== RCS file: /cvsroot/eas-dev/ocmng/components/ocmng/ETC01.xml,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- ETC01.xml 3 Nov 2006 16:32:02 -0000 1.2 +++ ETC01.xml 15 Nov 2006 11:16:18 -0000 1.3 @@ -8,7 +8,7 @@ <description>ETC01 initial metadata for component manager</description> <license>GNU/GPL</license> <created>2006-05-19</created> - <modified>2006-05-23</modified> + <modified>2006-11-13</modified> <author>Uri</author> <requires> @@ -18,6 +18,7 @@ <meta dictionary="ETC01" rules="appendOnly"> <extent name="component">Component data</extent> <extent name="form">Interface form data</extent> + <extent name="admin">Administraor data</extent> </meta> </component> |
From: Andrey C. <sku...@us...> - 2006-11-15 11:16:22
|
Update of /cvsroot/eas-dev/ocmng/EAS/admin In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv2772/EAS/admin Modified Files: dbconsole.prg dbconsole.xml Added Files: errorlog.prg errorlog.xml sendmessage.prg sendmessage.xfl sendmessage.xml Log Message: Add new components. Fix log policy for forms. --- NEW FILE: errorlog.prg --- /*-------------------------------------------------------------------------*/ /* E/AS Component (part of E/AS project) */ /* */ /* Copyright (C) 2006 by E/AS Software Foundation */ /* Author: Andrey Cherepanov <sk...@ea...> */ /* */ /* This program is free software; you can redistribute it and/or modify */ /* it under the terms of the GNU General Public License as */ /* published by the Free Software Foundation; either version 2 of the */ /* License, or (at your option) any later version. */ /*-------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------/ / / / Name: Error Log / / System name: errorlog / / Description: Log for error / / Version: 0.1 / / Author: Andrey Cherepanov <sk...@ea...> / / / / Available commands: / / ADD Add message to error log / / <error> Error description / / / /--------------------------------------------------------------------------*/ /** Component: errorlog */ #define ERRORLOG_DB "ETC0101" #define ERRORLOG_CLASS "admin_errorlog" parameters cMethod, params local oErr, obj, res, i, err local componentName:='errorlog' oErr := ErrorBlock({|e| break(e) }) begin sequence /*=========================================================================*/ // ADD() if lower(cMethod) == 'add' if assertParameters( params, { 'error:C' } ) return NIL endif // Create object obj := map() obj:time := date() + ' ' + time() obj:error := params:error // Put to the database res := lcomponent( 'sys.db', 'put', ; 'obj', obj, ; 'class', ERRORLOG_CLASS, ; 'db', ERRORLOG_DB ) eDebug( 39, componentName + " execute():", res ) return NIL else eDebug( 9, componentName + " has not method '"+cMethod+"'" ) endif recover using oErr i := 1 while ( !empty(ProcName(i)) ) err += "Called from "+allTrim(ProcName(i)) + ; componentName + ":" + alltrim(str(ProcLine(i))) + chr(10) i++ end eDebug( 19, componentName + " internal error:", errorMessage(oErr) ) return NIL end sequence return NIL --- NEW FILE: errorlog.xml --- <?xml version="1.0" encoding="koi8-r" standalone="no" ?> <component> <name>errorlog</name> <category>Core/Administration</category> <version>0.1</version> <description>Log for error</description> <license>GNU/GPL</license> <created>2006-11-13</created> <modified>2006-11-13</modified> <requires> <dependence type="component">../../ocmng/ETC01.xml</dependence> </requires> <author>Skull</author> <meta dictionary="ETC01"> <attribute name="time" type="string" len="17" lenType="rtrim" /> <attribute name="error" type="text" lenType="rtrim" /> <index name="time" expression="time"/> <class name="admin_errorlog" extent="admin" essence="time + error" uniqueKey="time" attributes="time,error" indices="time" mainIdx="time" findAttrs="time" /> </meta> <data> <objects depository="ETC0101" class="mng_form"> <object> <attr name="name">errorlog.po</attr> <attr name="type">application/x-clip-plugin</attr> <attr name="description">Error log plugin</attr> <attr name="content">errorlog.po</attr> </object> </objects> <objects depository="ETC0101" class="mng_command"> <object> <attr name="name">add</attr> <attr name="component_name">errorlog</attr> <attr name="form" refTo="ETC0101:mng_form">errorlog.po</attr> <attr name="description"><![CDATA[Add message to error log. Arguments: error - String. Error description. Returns: None.]]> </attr> </object> </objects> <objects depository="ETC0101" class="form_menu"> <object> <attr name="menu_node">errorlog</attr> <attr name="menu_type">A</attr> <attr name="menu_parent">service</attr> <attr name="menu_order">15</attr> </object> </objects> <objects depository="ETC0101" class="form_action"> <object> <attr name="name">errorlog</attr> <attr name="menu_name">&Error log...</attr> <attr name="action"><![CDATA[ <call method="openForm"> <param value="ETC01:admin_errorlog" /> <param value="list" /> </call>]]></attr> </object> </objects> <objects depository="ETC0101" class="form_localization"> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">&Error log...</attr> <attr name="msgstr">&öÕÒÎÁÌ ÏÛÉÂÏË...</attr> </object> </objects> </data> <locale lang="ru"> <name>errorlog</name> <description>öÕÒÎÁÌ ÏÛÉÂÏË</description> </locale> </component> --- NEW FILE: sendmessage.prg --- /*-------------------------------------------------------------------------*/ /* E/AS Component (part of E/AS project) */ /* */ /* Copyright (C) 2006 by E/AS Software Foundation */ /* Author: Andrey Cherepanov <sk...@ea...> */ /* */ /* This program is free software; you can redistribute it and/or modify */ /* it under the terms of the GNU General Public License as */ /* published by the Free Software Foundation; either version 2 of the */ /* License, or (at your option) any later version. */ /*-------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------/ / / / Name: Send message / / System name: sendmessage / / Description: Send message / / Version: 0.1 / / Author: Andrey Cherepanov <sk...@ea...> / / / / Available commands: / / SEND Send message to all clients / / <text> Message text / / / /--------------------------------------------------------------------------*/ /** Component: errorlog */ parameters cMethod, params local oErr, obj, res, i, err local componentName:='sendmessage' oErr := ErrorBlock({|e| break(e) }) begin sequence /*=========================================================================*/ // ADD() if lower(cMethod) == 'send' if assertParameters( params, { 'text:C' } ) return NIL endif // TODO: real send eDebug( 29, componentName + " send broadcast:", params:text ) return NIL else eDebug( 9, componentName + " has not method '"+cMethod+"'" ) endif recover using oErr i := 1 while ( !empty(ProcName(i)) ) err += "Called from "+allTrim(ProcName(i)) + ; componentName + ":" + alltrim(str(ProcLine(i))) + chr(10) i++ end eDebug( 19, componentName + " internal error:", errorMessage(oErr) ) return NIL end sequence return NIL --- NEW FILE: sendmessage.xfl --- <?xml version="1.0" encoding="koi8-r" standalone="no" ?> <!-- dbconsole.xfl - Database console window --> <form> <head> </head> <interface> <widget class="childWindow" name=".window" label="Message"> <widget class="editText" name="text" /> <widget class="buttonBar"> <widget class="button" name=".send" label="&Send" /> <widget class="button" name=".clear" label="Cl&ear" /> <widget class="button" name=".close" label="&Close" /> </widget> </widget> </interface> <style> </style> <actions> <rule> <event widget=".send" signal="clicked"/> <action> <call method="component"> <param value="sendmessage" /> <param value="send" /> <param value="text" /> <param><call widget="text" method="getValue" /></param> </call> <call widget=".window" method="close"/> </action> </rule> <rule> <event widget=".clear" signal="clicked"/> <action> <call widget="text" method="setValue"><param value="" /></call> </action> </rule> <rule> <event widget=".close" signal="clicked"/> <action><call widget=".window" method="close"/></action> </rule> </actions> <locale lang="ru"> <string id="Message" value="óÏÏÂÝÅÎÉÅ" /> <string id="&Send" value="ïÔ&ÐÒÁ×ÉÔØ" /> <string id="Cl&ear" value="&ïÞÉÓÔÉÔØ" /> <string id="&Close" value="&úÁËÒÙÔØ" /> </locale> </form> --- NEW FILE: sendmessage.xml --- <?xml version="1.0" encoding="koi8-r" standalone="no" ?> <component> <name>sendmessage</name> <category>Core/Administration</category> <version>0.1</version> <description>Send message to all working clients</description> <license>GNU/GPL</license> <created>2006-11-13</created> <modified>2006-11-13</modified> <requires> <dependence type="component">../menu/form_service.xml</dependence> </requires> <author>Skull</author> <data> <objects depository="ETC0101" class="mng_form"> <object> <attr name="name">sendmessage.po</attr> <attr name="type">application/x-clip-plugin</attr> <attr name="description">Send message plugin</attr> <attr name="content">sendmessage.po</attr> </object> <object> <attr name="name">sendmessage.xfl</attr> <attr name="type">application/x-xfl</attr> <attr name="description">Send message window</attr> <attr name="content">sendmessage.xfl</attr> </object> </objects> <objects depository="ETC0101" class="mng_command"> <object> <attr name="name">send</attr> <attr name="component_name">sendmessage</attr> <attr name="form" refTo="ETC0101:mng_form">sendmessage.po</attr> <attr name="description"><![CDATA[Send message to all client. Arguments: text - String. Message text. Returns: None.]]> </attr> </object> </objects> <objects depository="ETC0101" class="form_menu"> <object> <attr name="menu_node">-sendmessage</attr> <attr name="menu_type">S</attr> <attr name="menu_parent">service</attr> <attr name="menu_order">20</attr> </object> <object> <attr name="menu_node">sendmessage</attr> <attr name="menu_type">A</attr> <attr name="menu_parent">service</attr> <attr name="menu_order">21</attr> </object> </objects> <objects depository="ETC0101" class="form_action"> <object> <attr name="name">sendmessage</attr> <attr name="menu_name">Send &message to all clients...</attr> <attr name="action"><![CDATA[ <call method="openForm"> <param value="sendmessage.xfl"/> </call>]]></attr> </object> </objects> <objects depository="ETC0101" class="form_localization"> <object> <attr name="lang">ru</attr> <attr name="context">menu_name</attr> <attr name="msgid">Send &message to all clients...</attr> <attr name="msgstr">&ïÔÐÒÁ×ÉÔØ ÓÏÏÂÝÅÎÉÅ ×ÓÅÍ ÐÏÌØÚÏ×ÁÔÅÌÑÍ...</attr> </object> </objects> </data> <locale lang="ru"> <name>sendmessage</name> <description>ïÔÐÒÁ×ÉÔØ ÓÏÏÂÝÅÎÉÅ ×ÓÅÍ ÐÏÌØÚÏ×ÁÔÅÌÑÍ</description> </locale> </component> Index: dbconsole.prg =================================================================== RCS file: /cvsroot/eas-dev/ocmng/EAS/admin/dbconsole.prg,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- dbconsole.prg 3 Nov 2006 16:31:57 -0000 1.1 +++ dbconsole.prg 15 Nov 2006 11:16:17 -0000 1.2 @@ -12,15 +12,15 @@ /*--------------------------------------------------------------------------/ / / -/ Name: Database console / +/ Name: Database console / / System name: dbconsole / / Description: Database console / -/ Version: 0.1 / -/ Author: Andrey Cherepanov <sk...@ea...> / +/ Version: 0.1 / +/ Author: Andrey Cherepanov <sk...@ea...> / / / / Available commands: / / EXECUTE Execute query / -/ <query> database query / +/ <query> database query / / GETDATABASES Show available database names / / / / / @@ -40,12 +40,12 @@ /*=========================================================================*/ // EXECUTE() if lower(cMethod) == 'execute' - eDebug(15, componentName + " args:", params) + eDebug( 29, componentName + " args:", params ) if assertParameters( params, { 'query:C' } ) return NIL endif m := lcomponent('sys.db', 'executeExt', 'db', iif('DB' $ params, params:db,''), 'query', params:query, 'format', .T.) - eDebug( 17, componentName + ".execute:", m ) + eDebug( 39, componentName + " execute():", m ) return m /*=========================================================================*/ @@ -55,11 +55,11 @@ for i in res aadd( a, i[1] ) next - eDebug( 17, componentName + ".getDatabases:", a ) + eDebug( 39, componentName + " getDatabases():", a ) return a else - eDebug(3, componentName + " has not method '"+cMethod+"'") + eDebug( 9, componentName + " has not method '"+cMethod+"'" ) endif recover using oErr i := 1 @@ -69,7 +69,7 @@ i++ end - eDebug(5, " internal error:", errorMessage(oErr)) + eDebug( 19, componentName + " internal error:", errorMessage(oErr) ) return NIL end sequence Index: dbconsole.xml =================================================================== RCS file: /cvsroot/eas-dev/ocmng/EAS/admin/dbconsole.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- dbconsole.xml 3 Nov 2006 16:31:57 -0000 1.1 +++ dbconsole.xml 15 Nov 2006 11:16:17 -0000 1.2 @@ -7,10 +7,10 @@ <description>Database console</description> <license>GNU/GPL</license> <created>2006-10-23</created> - <modified>2006-10-23</modified> + <modified>2006-11-13</modified> <requires> - <dependence type="component">../forms/form_service.xml</dependence> + <dependence type="component">../menu/form_service.xml</dependence> </requires> <author>Skull</author> |
From: Andrey C. <sku...@us...> - 2006-11-15 11:15:38
|
Update of /cvsroot/eas-dev/ocmng/EAS/menu In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv2367/menu Log Message: Directory /cvsroot/eas-dev/ocmng/EAS/menu added to the repository |
From: Andrey C. <sku...@us...> - 2006-11-15 10:38:09
|
Update of /cvsroot/eas-dev/eas In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv19212 Modified Files: README VERSION Log Message: Unify log messages Index: README =================================================================== RCS file: /cvsroot/eas-dev/eas/README,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- README 3 Nov 2006 16:12:06 -0000 1.6 +++ README 15 Nov 2006 10:37:18 -0000 1.7 @@ -7,8 +7,8 @@ Type: Software platform Name: E/AS -Version: 20061103 -Date: 03 Nov 2006 +Version: 20061113 +Date: 13 Nov 2006 Author: Andrey (Skull) Cherepanov <sk...@ea...> License: GNU General Public License (GPL) v.2 Index: VERSION =================================================================== RCS file: /cvsroot/eas-dev/eas/VERSION,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- VERSION 8 Nov 2006 09:42:35 -0000 1.7 +++ VERSION 15 Nov 2006 10:37:18 -0000 1.8 @@ -1 +1 @@ -20061108 +20061113 |
From: Andrey C. <sku...@us...> - 2006-11-15 10:38:09
|
Update of /cvsroot/eas-dev/eas/po In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv19212/po Modified Files: eas.pot ru.po Log Message: Unify log messages Index: eas.pot =================================================================== RCS file: /cvsroot/eas-dev/eas/po/eas.pot,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- eas.pot 8 Nov 2006 09:42:36 -0000 1.2 +++ eas.pot 15 Nov 2006 10:37:18 -0000 1.3 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-11-08 12:41+0300\n" +"POT-Creation-Date: 2006-11-13 07:55+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL...@li...>\n" Index: ru.po =================================================================== RCS file: /cvsroot/eas-dev/eas/po/ru.po,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- ru.po 8 Nov 2006 09:42:37 -0000 1.2 +++ ru.po 15 Nov 2006 10:37:18 -0000 1.3 @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: ru\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-11-08 12:41+0300\n" +"POT-Creation-Date: 2006-11-13 07:55+0300\n" "PO-Revision-Date: 2006-11-02 14:13+0300\n" "Last-Translator: Andrey Cherepanov <sib...@ma...>\n" "Language-Team: Russian <kde...@li...>\n" |
From: Andrey C. <sku...@us...> - 2006-11-15 10:37:37
|
Update of /cvsroot/eas-dev/eas/libeas In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv19212/libeas Modified Files: componentmanager.prg config.prg connection.prg dbmanager.prg execmanager.prg functions.prg messagemanager.prg protocol_raw.prg session.prg transportmanager.prg uimanager.prg Log Message: Unify log messages Index: componentmanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/componentmanager.prg,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- componentmanager.prg 3 Nov 2006 16:12:08 -0000 1.3 +++ componentmanager.prg 15 Nov 2006 10:37:18 -0000 1.4 @@ -46,7 +46,7 @@ static function c_open( self, params ) local cfg - eDebug(15, "Component manager (CM): open") + eDebug( 25, "Open component manager" ) // Check config file cfg := EASGetConfig() @@ -65,22 +65,22 @@ component := params:receiver method := params:command - eDebug(15, "COMPONENT LOOKUP", component, iif("ARGS" $ params, '<'+valtype(params:args)+'>', '<no arguments>') ) + eDebug( 35, "Lookup", component, iif("ARGS" $ params, '<'+valtype(params:args)+'>', '<no arguments>') ) if .not. "ARGS" $ params .or. valtype(params:args)!="O" params:args := map() endif - eDebug(15, "CM lookup:", component, method) + eDebug( 25, "Lookup:", component, method ) // Query database q:db := OCMNG_REPOSITORY q:query := 'select id from '+OCMNG_COMMANDS_CLASS+' where component_name=="'+component+'" .and. name=="'+method+'";' cmds := sendMessage(,'sys.db', 'execute', q ) - eDebug(17, "DB returns:", cmds) + eDebug( 35, "DB returns:", cmds ) // TODO: ACL check if len(cmds) > 0 - eDebug(10, "CM found", cmds[1][1]) + eDebug( 25, "method found", cmds[1][1] ) return cmds[1][1] else self:lastError := "Method '"+method+"' of component '"+component+"' was not found" @@ -102,7 +102,7 @@ id := params:__id - eDebug(15, "CM execute", "'"+component+'.'+method+"'",', DB ID:', id) + eDebug( 25, "Execute", "'"+component+'.'+method+"'",', db id:', id) oErr := ErrorBlock({|e| break(e) }) @@ -110,19 +110,19 @@ q:id := id q:db := OCMNG_REPOSITORY obj := sendMessage(,'sys.db', 'get', q ) - eDebug(25, "CM object:", obj) + eDebug( 35, "Component object:", obj ) // Run method q:id := obj:form codeFile := sendMessage(,'sys.db', 'get', q ) if empty(codeFile) - eDebug(2, "CM: code file doesn't loaded to database") + eDebug( 5, "Code file doesn't loaded to database" ) return .F. else // Put code to temporary file or use existing file fName := "."+PATH_DELIM+"cache"+PATH_DELIM+codeFile:id+".po" - eDebug(15, "CM opens", fName) + eDebug( 25, "CM opens", fName ) endif if .T. //.not. file(fName) // DEBUG: all occurences @@ -134,16 +134,16 @@ // Use code fBlock := loadBlock(fName) if valType(fBlock) != "B" - eDebug(2, "CM: Error load codeblock from:",fName) + eDebug( 5, "Unable load codeblock from:", fName ) return NIL endif - eDebug(15, "CM eval:", method) + eDebug( 35, "Eval:", method ) ret := eval(fBlock, method, params:args) - eDebug(19, "CM returns:", ret) + eDebug( 35, "Returns:", ret ) recover using oErr - eDebug(1, "CM error:", errorMessage(oErr)) + eDebug( 5, "Error:", errorMessage(oErr) ) return "Error execute: "+errorMessage(oErr) end sequence @@ -153,33 +153,33 @@ /** Get component list */ static function c_list( self, params ) local q:=map(), a - eDebug(15, "CM list") + eDebug( 25, "Component ist" ) // Query database q:db := OCMNG_REPOSITORY q:query := "select component_name from "+OCMNG_COMPONENT_CLASS+";" a := sendMessage(,'sys.db', 'execute', q ) - eDebug(17, "DB returns:", a) + eDebug( 35, "DB returns:", a ) return a /** Get component commands list */ static function c_commands( self, params ) local q:=map(), a, i, j, name, res:=array(0), cname - eDebug(15, "CM commands") + eDebug( 25, "Component commands" ) // Query database q:db := OCMNG_REPOSITORY q:query := "select component_name,name from "+OCMNG_COMMANDS_CLASS+";" a := sendMessage(,'sys.db', 'execute', q ) - eDebug(17, "DB returns:", a) + eDebug( 35, "DB returns:", a ) for i in a name := i[1] q:id := i[2] q:db := OCMNG_REPOSITORY obj := sendMessage(,'sys.db', 'get', q ) - eDebug(25, "CM object:", obj) + eDebug( 35, "Object:", obj ) cname := iif( valtype(obj)=='O', cname:name, NIL ) aadd( res, { name, cname } ) next @@ -190,7 +190,7 @@ static function c_get( self, params ) local q:=map(), component, a, obj:=NIL - eDebug(15, "CM get") + eDebug( 25, "Component get") if 'ARGS' $ params .and. 'NAME' $ params:args component := params:args:name else @@ -201,7 +201,7 @@ q:db := OCMNG_REPOSITORY q:query := 'select id from '+OCMNG_COMPONENT_CLASS+' where component_name=="'+component+'";' a := sendMessage(,'sys.db', 'execute', q ) - eDebug(17, "DB returns:", a) + eDebug( 35, "DB returns:", a ) if len(a) == 0 self:lastError := "Component '"+component+"' was not found" @@ -211,6 +211,6 @@ q:id := a[1] q:db := OCMNG_REPOSITORY obj := sendMessage(,'sys.db', 'get', q ) - eDebug(25, "CM object:", obj) + eDebug( 35, "Object:", obj ) return obj Index: config.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/config.prg,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- config.prg 2 Jun 2006 14:32:45 -0000 1.1 +++ config.prg 15 Nov 2006 10:37:18 -0000 1.2 @@ -19,6 +19,78 @@ static config static debugLevel:=MAX_DEBUG_LEVEL +/** Debug level policy: + +Group by severity: + 1-10 errors + 11-20 warnings + 21-30 information + 31-40 data + 41-255 other + +Group by module: + ?1 executed program + ?2 message manager layer + ?3 database layer + ?4 execute layer + ?5 component manager layer + ?6 transport layer + ?7 session + ?8 UI layer + ?9 reserved for components + ?0 other + +*/ + + +static eDebugCodes := { ; + ; // Errors + { 1, "program.error" }, ; + { 2, "message.error" }, ; + { 3, "db.error" }, ; + { 4, "execute.error" }, ; + { 5, "components.error" }, ; + { 6, "transport.error" }, ; + { 7, "session.error" }, ; + { 8, "ui.error" }, ; + { 9, "component.error" }, ; + { 10, "other.error" }, ; + ; // Warnings + { 11, "program.warning" }, ; + { 12, "message.warning" }, ; + { 13, "db.warning" }, ; + { 14, "execute.warning" }, ; + { 15, "components.warning" }, ; + { 16, "transport.warning" }, ; + { 17, "session.warning" }, ; + { 18, "ui.warning" }, ; + { 19, "component.warning" }, ; + { 20, "other.warning" }, ; + ; // Information + { 21, "program.info" }, ; + { 22, "message.info" }, ; + { 23, "db.info" }, ; + { 24, "execute.info" }, ; + { 25, "components.info" }, ; + { 26, "transport.info" }, ; + { 27, "session.info" }, ; + { 28, "ui.info" }, ; + { 29, "component.info" }, ; + { 30, "other.info" }, ; + ; // Data + { 31, "program.data" }, ; + { 32, "message.data" }, ; + { 33, "db.data" }, ; + { 34, "execute.data" }, ; + { 35, "components.data" }, ; + { 36, "transport.data" }, ; + { 37, "session.data" }, ; + { 38, "ui.data" }, ; + { 39, "component.data" }, ; + { 40, "other.data" }, ; +} + + function EASGetConfig() return config @@ -105,7 +177,7 @@ /* Put value to debug output */ function eDebug() // level, values... - local pC, level, i, s:='' + local pC, level, i, s:='', pN, module:='' pC := pcount() // No parameters: do nothing @@ -113,7 +185,7 @@ return NIL endif - level := param(1) + level := 0 + param(1) if valtype(level) != 'N' level := DEFAULT_DEBUG_LEVEL endif @@ -124,7 +196,16 @@ s := s + var2log( param(i) ) + ' ' next s := left(s, len(s)-1) - ?? s + chr(10) + + // Check severity and module for level + pN := ascan( eDebugCodes, {|e| e[1] == level } ) + if pN > 0 + module := eDebugCodes[pN][2] + ': ' + endif + + // Output debug message + ?? module + s + chr(10) + endif return NIL Index: connection.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/connection.prg,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- connection.prg 2 Jun 2006 14:32:45 -0000 1.1 +++ connection.prg 15 Nov 2006 10:37:18 -0000 1.2 @@ -26,7 +26,7 @@ case "raw" // Base raw protocol obj := EASRAWProtocol( params ) otherwise - eDebug(5, "WARNING: unknown protocol '"+params:protocol+"'") + eDebug( 16, "Unknown protocol '"+params:protocol+"'") obj := NIL endswitch Index: dbmanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/dbmanager.prg,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- dbmanager.prg 3 Nov 2006 16:12:08 -0000 1.2 +++ dbmanager.prg 15 Nov 2006 10:37:18 -0000 1.3 @@ -52,7 +52,7 @@ aadd(openDBs, i[1]) next - eDebug(15, "Open databases:", openDBs) + eDebug( 23, "Open databases:", openDBs ) return NIL @@ -75,11 +75,11 @@ params:db := '' endif - eDebug(15, "sys.db.executeExt.db", params:db ) + eDebug( 23, "sys.db.executeExt.db", params:db ) res := codb_execute( self:db, params:query, params:db ) if codb_get_error( res ) != NIL - eDebug(2, "sys.db.failed:", codb_get_error( res )) + eDebug( 3, "sys.db.failed:", codb_get_error( res ) ) sendMessage(,,'sys.db.failed', res ) return array(0) endif @@ -97,7 +97,7 @@ endif res := codb_get_object( self:db, params:id, params:db ) if codb_get_error( res ) != NIL - eDebug(2, "sys.db.failed:", codb_get_error( res )) + eDebug( 3, "sys.db.failed:", codb_get_error( res ) ) sendMessage(,,'sys.db.failed', res ) return array(0) endif @@ -111,7 +111,7 @@ endif res := codb_put_object( self:db, params:obj, params:db, params:class ) if codb_get_error( res ) != NIL - eDebug(2, "sys.db.failed:", codb_get_error( res )) + eDebug( 3, "sys.db.failed:", codb_get_error( res ) ) sendMessage(,,'sys.db.failed', res ) return array(0) endif @@ -125,13 +125,13 @@ endif res := codb_get_object( self:db, params:id, params:db) if codb_get_error( res ) != NIL - eDebug(2, "sys.db.failed:", codb_get_error( res )) + eDebug( 3, "sys.db.failed:", codb_get_error( res ) ) sendMessage(,,'sys.db.failed', res ) return NIL endif obj := codb_get_result( res ) if valtype(obj) != 'O' .or. .not. upper(params:attr) $ obj - eDebug(2, "sys.db.failed:", codb_get_error( res )) + eDebug( 3, "sys.db.failed:", codb_get_error( res ) ) sendMessage(,,'sys.db.failed', res ) return NIL endif Index: execmanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/execmanager.prg,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- execmanager.prg 3 Nov 2006 16:12:08 -0000 1.3 +++ execmanager.prg 15 Nov 2006 10:37:18 -0000 1.4 @@ -39,9 +39,9 @@ /** Open manager */ static function c_open( self, params ) - eDebug(15, "Execute layer: start component manager") + eDebug( 24, "Start component manager" ) self:cManager:open( params ) - eDebug(15, "Execute layer: component manager is ready") + eDebug( 24, "Component manager is ready" ) return NIL /** Close manager */ @@ -68,25 +68,25 @@ i := ascan( self:commands, {|e| e[1]==params:receiver .and. e[2]==params:command } ) if i > 0 // Execute command - eDebug(15, "EXEC COMMAND '"+params:receiver+"."+params:command+"'...") + eDebug( 24, "Execute command '"+params:receiver+"."+params:command+"'..." ) bCode := self:commands[i][3] vRet := eval( bCode, params:args ) - eDebug(20, "EXEC '"+params:receiver+"."+params:command+"' returns:", vRet) + eDebug( 34, "Execute '"+params:receiver+"."+params:command+"' returns:", vRet ) return vRet else self:lastError := "ERROR: command '"+params:command+"' for '"+params:receiver+"' not found" - eDebug(2, self:lastError) + eDebug( 4, self:lastError ) return NIL endif elseif ascan( self:commands, {|e| e[1]=='sys.db' } ) > 0 .and. .not. empty (id:=self:cManager:lookup( params )) - eDebug(15, "EXEC COMPONENT COMMAND:",params:receiver,params:command,"...") + eDebug( 24, "Execute component command:",params:receiver,params:command,"..." ) params:__id := id vRet := self:cManager:execute( params ) - eDebug(20, "EXEC COMPONENT '"+params:command+"' returns:", vRet) + eDebug( 34, "Execute component '"+params:command+"' returns:", vRet ) return vRet else self:lastError := iif(empty(self:cManager:lastError),"ERROR: component '"+params:receiver+"' not found",self:cManager:lastError) - eDebug(2, "EXEC:", self:lastError) + eDebug( 4, self:lastError ) //eDebug(5, var2log(self:getCommands(),2,.T.)) return NIL endif @@ -94,17 +94,17 @@ endif // Execute signal handler - eDebug(15, "EXEC EVENT:", params:command) + eDebug( 24, "Event:", params:command ) i := ascan( self:events, {|e| e[1]==params:command } ) if i > 0 slot_list := self:events[i][2] for j:=1 to len(slot_list) - eDebug(15, "EVENT: ",params:command) + eDebug( 24, "Event handler found: ", params:command ) bCode := slot_list[j] eval( bCode, params:args ) next else - eDebug(5, "WARNING: there are no handlers for event '"+params:command+"'") + eDebug( 14, "Tthere are no handlers for event '"+params:command+"'" ) endif return NIL @@ -194,7 +194,7 @@ endif elseif "COMPONENT" $ params .and. valtype(params:component) == 'C' i := ascan( self:commands, {|e| e[1]==params:component .and. e[2]==params:command } ) -/* eDebug(11, "Remove command:", params:component+'.'+params:command,iif(i>0,'OK','FAILED') ) +/* eDebug( 24, "Remove command:", params:component+'.'+params:command,iif(i>0,'OK','FAILED') ) aa := self:getCommands() for j in self:commands ?? chr(9),j[1],chr(9),j[2],chr(10) Index: functions.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/functions.prg,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- functions.prg 3 Nov 2006 16:12:08 -0000 1.3 +++ functions.prg 15 Nov 2006 10:37:18 -0000 1.4 @@ -23,7 +23,7 @@ endif if pc < 2 - eDebug(3, "Error in component(): must be 2 or more parameters") + eDebug( 10, "component(): must be 2 or more parameters" ) return NIL elseif pc == 3 args := iif(empty(params), param(3), params[3]) @@ -45,7 +45,7 @@ // Read answer from server ret := sendMessage(,'sys.transport.default', 'read') - eDebug(15, "component '"+p1+"."+p2+"':", seconds()-tm) + eDebug( 30, "component(): '"+p1+"."+p2+"':", seconds()-tm ) return ret /* Send message to local component */ @@ -54,19 +54,19 @@ //eDebug(7, "lcomponent() call") if pc < 2 - eDebug(3, "Error in component(): must be 2 or more parameters") + eDebug( 10, "lcomponent(): must be 2 or more parameters" ) return NIL elseif pc == 3 .and. valtype() == 'O' - //eDebug(7, "lcomponent() - pass map as argument") + //eDebug( 30, "lcomponent() - pass map as argument" ) args := param(3) elseif pc > 3 args := map() - //eDebug(7, "lcomponent() - pass",pc,"parameters") + //eDebug( 30, "lcomponent() - pass",pc,"parameters" ) for i:=3 to pc step 2 args[upper(param(i))] := iif(i+1>pc,NIL,param(i+1)) next endif - //eDebug(5, "lcomponent():", args, iif("PARAMS" $ args, args:params, "") ) + //eDebug( 40, "lcomponent():", args, iif("PARAMS" $ args, args:params, "") ) // Prepare message contents ret := sendMessage( , param(1), param(2), args, NIL ) return ret @@ -96,11 +96,11 @@ types := upper(substr(e, sep+1 )) endif if .not. name $ value // Check named parameter in value - eDebug(5, "ASSERT: not parameter '"+name_r+"':",value) + eDebug( 20, "assert(): Not parameter '"+name_r+"':", value ) return .T. endif if .not. valtype(value[name]) $ types // Check allowed types of parameters - eDebug(5, "ASSERT: bad type of '"+name_r+"': "+valtype(value[name])+", expected '"+types+"':",value[name]) + eDebug( 20, "assert(): Bad type of '"+name_r+"': "+valtype(value[name])+", expected '"+types+"':", value[name] ) return .T. endif next @@ -155,7 +155,7 @@ real := strtran(name, "/", "_") // Get file from server - eDebug(15, "getResource(): retrieve", name) + eDebug( 30, "getResource(): retrieve", name) oErr := errorBlock({|e| break(e) }) begin sequence lFile := file(real) @@ -168,17 +168,17 @@ endif f := fcreate(real) if f < 0 - eDebug(2, "getResource(): Error open file for writing:", ferror(), ferrorstr()) + eDebug( 10, "getResource(): Error open file for writing:", ferror(), ferrorstr() ) return NIL endif l := fwrite(f, content) - eDebug(15, "getResource(): wrote", real, l, "bytes") + eDebug( 30, "getResource(): wrote", real, l, "bytes" ) fclose(f) else - eDebug(15, "getResource():", real, "(cached)") + eDebug( 30, "getResource():", real, "(cached)" ) endif recover using oErr - eDebug(2, "RESOURCE: Internal error:",errorMessage(oErr)) + eDebug( 10, "getResource(): Internal error:",errorMessage(oErr)) return o end sequence @@ -199,9 +199,9 @@ local oErr oErr := errorBlock({|e| break(e) }) begin sequence - eDebug(5, "TESTOUT():", w:getSelectionId()) + eDebug( 40, "testout():", w:getSelectionId() ) recover using oErr - eDebug(2, "TESTOUT(): Internal error:",errorMessage(oErr)) + eDebug( 10, "testout(): Internal error:",errorMessage(oErr) ) end sequence return NIL @@ -222,11 +222,11 @@ /* Return XML-safe string */ function safeXML( string ) - //eDebug( 25, "Before XMLization:", string ) + //eDebug( 40, "Before XMLization:", string ) string := strtran( string, '&', '&' ) string := strtran( string, '<', '<' ) string := strtran( string, '>', '>' ) string := strtran( string, '"', '"' ) string := strtran( string, "'", ''' ) - //eDebug( 25, "After XMLization:", string ) + //eDebug( 40, "After XMLization:", string ) return string Index: messagemanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/messagemanager.prg,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- messagemanager.prg 16 Jun 2006 15:22:20 -0000 1.2 +++ messagemanager.prg 15 Nov 2006 10:37:18 -0000 1.3 @@ -58,34 +58,34 @@ /** Open manager */ static function c_open( self, params ) // params: ignored - eDebug(10, "MM: Activate layers...") + eDebug( 22, "Activate layers..." ) if self:type == EAS_SERVER // Server - eDebug(10, "RUN SERVER...") - eDebug(15, "Database layer...") + eDebug( 22, "Run SERVER...") + eDebug( 22, "Database layer..." ) self:db:open(params) - eDebug(15, "Execute layer...") + eDebug( 22, "Execute layer..." ) self:exec:open(params) - eDebug(15, "Transport layer...") + eDebug( 22, "Transport layer..." ) self:transport:open(params) else // Client - eDebug(10, "RUN CLIENT...") -// eDebug(15, "Database layer...") + eDebug( 22, "Run CLIENT..." ) +// eDebug( 22, "Database layer..." ) // self:db:open(params) - eDebug(15, "Execute layer...") + eDebug( 22, "Execute layer..." ) self:exec:open(params) - eDebug(15, "UI layer...") + eDebug( 22, "UI layer..." ) self:ui:open(params) - eDebug(15, "Transport layer...") + eDebug( 22, "Transport layer..." ) self:transport:open(params) endif - eDebug(10, "MM: Layers are activated.") + eDebug( 22, "MM: Layers are activated." ) return NIL /** Close manager */ static function c_close( self, params ) // params: ignored - eDebug(10, "MM: Close layers...") + eDebug( 22, "Close layers..." ) if self:type == EAS_SERVER // Server self:transport:close(params) self:exec:close(params) @@ -96,7 +96,7 @@ self:ui:close(params) self:db:close(params) endif - eDebug(10, "MM: Layers are closed.") + eDebug( 22, "Layers are closed." ) return NIL /** Process message from sender */ @@ -112,11 +112,15 @@ // Run command on execute layer ret := self:exec:execute( params ) - eDebug(25, "MM:process() on execute returns:", ret) + eDebug( 32, "::process() on execute returns:", ret ) if ret == NIL .and. self:exec:lastError != NIL ret := map() ret:error := self:exec:lastError + + // Pass error to administrator + lcomponent( "errorlog", "add", "error", ret:error ) + endif // If it isn't event (defined receiver): return result @@ -126,7 +130,7 @@ msg:receiver := params:sender msg:command := NIL msg:args := ret - eDebug(15, "MM:process(): pass result to sender") + eDebug( 22, "::process(): pass result to sender" ) self:process( msg ) else // Sender undefined: straight return return ret @@ -138,7 +142,7 @@ return NIL /*-------------------------------------------------------------------------*/ -/* Global functions */ +/* Global functions */ /*-------------------------------------------------------------------------*/ /** Set slot for event */ @@ -158,7 +162,7 @@ local params:=map() msg_m := iif(valtype(msg_m) != 'O', global_msg, msg_m) - eDebug(11, "setCommand():", component, command) + eDebug( 24, "setCommand():", component, command ) if valtype(msg_m) == 'O' .and. valtype(msg_m:exec) == 'O' params:component := component params:command := command @@ -172,7 +176,7 @@ local params:=map() msg_m := iif(valtype(msg_m) != 'O', global_msg, msg_m) - eDebug(11, "removeCommand():", component, command) + eDebug( 24, "removeCommand():", component, command ) if valtype(msg_m) == 'O' .and. valtype(msg_m:exec) == 'O' params:component := component params:command := command @@ -188,12 +192,12 @@ params:command := command params:args := args params:sender := sender - eDebug(10, "MM: sendMessage():", params ) + eDebug( 22, "send", params ) if "ARGS" $ params - eDebug(17, "MM: parameters:", params:args ) + eDebug( 32, "send parameters:", params:args ) endif ret := msg_m:process( params ) - eDebug(25, "MM: sendMessage() returns:", ret) + eDebug( 32, "returns:", ret) return ret /** Create empty message */ Index: protocol_raw.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/protocol_raw.prg,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- protocol_raw.prg 17 Jun 2006 17:00:36 -0000 1.4 +++ protocol_raw.prg 15 Nov 2006 10:37:18 -0000 1.5 @@ -67,7 +67,7 @@ self:socket:type := params:transport self:socket:role := lower(params:role) - eDebug(15, "Open RAW connection:", params) + eDebug( 26, "Open RAW connection:", params ) if 'LISTENTIMEOUT' $ params self:socket:lTimeout := params:listenTimeout @@ -98,24 +98,24 @@ // Open connection if self:socket:role == 'server' // Server mode: accept clients connections // Bind to port - eDebug(10, "NETWORK: Bind to port...") + eDebug( 26, "Bind to port..." ) if (self:socket:handle := tcpListen( self:socket:port, self:socket:lTimeOut )) == -1 self:error := self:socket:name+": error listen on port "+toString(self:socket:port)+": "+ferrorStr() args:error := self:error sendMessage(,,"sys.transport.failed",args) - eDebug(2, self:error) + eDebug( 6, self:error ) return .F. endif - eDebug(10, "NETWORK: Accept connections...") + eDebug( 26, "Accept connections..." ) /*===================================================================*/ /* Main server loop */ /*===================================================================*/ do while( .T. ) if (session := tcpAccept( self:socket:handle, self:socket:aTimeOut )) != -1 // Create new session - eDebug(10, "NETWORK: Start session: ", session) + eDebug( 26, "Start new session: ", session) threadId := start(@session_open(), self, session) // Begin new thread - eDebug(15, "NETWORK: Ready for new connection") + eDebug( 26, "Ready for new connection") endif sleep(0.01) enddo @@ -127,13 +127,13 @@ self:socket:host := params:host endif if( (self:socket:handle := tcpConnect( self:socket:host, self:socket:port, self:socket:lTimeout )) == -1 ) - eDebug(1, "NETWORK: Failed to open client connection:", ferrorStr()) + eDebug( 6, "Failed to open client connection:", ferrorStr()) self:error := self:socket:name+": error connect: "+ferrorStr() args:error := self:error sendMessage(,,"sys.transport.failed",args) return .F. else - eDebug(10, "NETWORK: Open client connection:", self:socket:handle) + eDebug( 26, "Open client connection:", self:socket:handle) setCommand(, 'sys.transport.'+params:name, 'read', {|p| self:deserialize(self:read(p)) } ) setCommand(, 'sys.transport.'+params:name, 'write', {|p| self:write(self:serialize(p)) } ) setCommand(, 'sys.transport.default', 'read', {|p| self:deserialize(self:read(p)) } ) @@ -181,7 +181,7 @@ */ oRet:data := var2str( params:data ) oRet:size := len(oRet:data) - eDebug(20, "NETWORK: serialize:", oRet) + eDebug( 36, "Serialize:", oRet ) return oRet /** Deserialize packet */ @@ -195,8 +195,8 @@ oRet := str2var(params:data) - eDebug(20, "NETWORK: deserialize:", oRet) - eDebug(10, "NETWORK: deserialize:", seconds()-sec, "sec") + eDebug( 36, "Deserialize:", oRet ) + eDebug( 26, "Deserialize:", seconds()-sec, "sec" ) return oRet /** Read data */ @@ -216,7 +216,7 @@ params:session := self:socket:handle endif - eDebug(20, "NETWORK: Read from socket...") + eDebug( 36, "Read from socket..." ) // Check params if assertParameters( params, { 'session:N' } ) @@ -224,7 +224,7 @@ endif nSize := self:socket:readBlock nSize := 6000 - //eDebug(20, "NETWORK: buffer length:", nSize) + //eDebug( 36, "Buffer length:", nSize ) cBuf := space(nSize) @@ -236,7 +236,7 @@ // Empty socket return NIL else - eDebug(20, "NETWORK: Read to buffer:", params:session, nRead, left(cBuf, nRead)) + eDebug(36, "Read to buffer:", params:session, nRead, left(cBuf, nRead) ) cBuffer := left(cBuf, nRead) nTotal := nRead if nRead == nSize @@ -248,14 +248,14 @@ endif endif recover using oErr - eDebug(2, "NETWORK: read error") + eDebug( 6, "Read error") cBuffer := '' nTotal := 0 end sequence oData:data := cBuffer oData:size := nTotal - eDebug(10, "NETWORK: Read", oData:size, "bytes,", seconds()-sec, "sec") + eDebug( 26, "Read", oData:size, "bytes,", seconds()-sec, "sec" ) return oData @@ -274,7 +274,7 @@ return .F. endif - eDebug(10, "NETWORK: Write to socket...") + eDebug( 26, "Write to socket..." ) oErr := ErrorBlock({|e| break(e) }) begin sequence @@ -290,5 +290,5 @@ return .F. end sequence - eDebug(10, "NETWORK: Wrote",nSended,"bytes") + eDebug( 26, "Wrote",nSended,"bytes" ) return .T. Index: session.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/session.prg,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- session.prg 17 Jun 2006 17:00:36 -0000 1.3 +++ session.prg 15 Nov 2006 10:37:18 -0000 1.4 @@ -61,7 +61,7 @@ static function c_login( self, params ) local oWrite := map() - eDebug( 5, "SECURITY: LOGIN:", params) + eDebug( 27, "Login:", params) self:access := .F. // Authenticate user @@ -71,10 +71,10 @@ elseif valtype(self:access) != 'L' self:access := .F. // Access denied on any auth component internal error endif - eDebug(10, self:name+" SECURITY: access: ",self:access ) + eDebug( 27, "Access for "+self:name+": ",self:access ) oWrite:answer := self:access - eDebug(16, "Answer:", oWrite:answer) + eDebug( 27, "Answer:", oWrite:answer ) return oWrite /** Close session */ @@ -82,7 +82,7 @@ removeCommand(, 'sys.transport.'+self:name, 'login' ) removeCommand(, 'sys.transport.'+self:name, 'close' ) self:connection:closeSession( self ) - eDebug(15, "Session closing.") + eDebug( 27, "Session closing." ) return NIL /** Read data */ @@ -94,13 +94,13 @@ params:session := self:handle oRaw := self:connection:read( params ) if self:connection:errno == 32 // Client connection was broken - eDebug(13, "Connection was broken from client" ) + eDebug( 17, "Connection was broken from client" ) return 2 endif if empty(oRaw) return 0 endif - eDebug( 20, "Session read:", oRaw) + eDebug( 37, "Session read:", oRaw ) // Deserialize answer obj := self:connection:deserialize( oRaw ) if .not. empty(obj) .and. .not. assertParameters( obj, { 'receiver:UC', 'command:C', 'args:UAO', 'sender:UC' } ) @@ -110,7 +110,7 @@ // TODO: use isolated message managers per session oMsg := NIL // Use global message manager - eDebug(10, "ARGS:", obj:args) + eDebug( 27, "Arguments:", obj:args ) // Translate session fo sys.transport if lower(obj:receiver) == 'sys.transport.default' @@ -131,14 +131,13 @@ self:write( oWrite ) // If access denied then close connection - eDebug(2, self:name+" ACCESS:",self:access) + eDebug( 7, "Access for "+self:name+":", self:access ) if .not. self:access - //?? "SESSION CLOSE: access denied.&\n" return 2 // Close session endif else - eDebug(1, "Session: Invalid object received.") + eDebug( 17, "Invalid object received.") endif return 1 @@ -147,14 +146,14 @@ // params: data:O local oData, oError - eDebug( 20, "Session write") + eDebug( 27, "Session write") if params == NIL params := map() params:data := NIL endif if .not. valtype( params ) $ 'AO' .or. ( (oData := self:connection:serialize( params )) == NIL ) - eDebug( 1, "ERROR preparing data for write. Sending message with data.") + eDebug( 17, "ERROR preparing data for write. Sending message with data.") oError := map() oError:data := params oData := self:connection:serialize( oError ) @@ -171,6 +170,6 @@ if valtype(self:messages) == 'O' ret := sendMessage(self:messages, receiver, command, args, sender ) else - eDebug( 1, "Session error:",command,args ) + eDebug( 17, "Error:", command, args ) endif return \ No newline at end of file Index: transportmanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/transportmanager.prg,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- transportmanager.prg 6 Jun 2006 13:29:30 -0000 1.2 +++ transportmanager.prg 15 Nov 2006 10:37:18 -0000 1.3 @@ -34,10 +34,10 @@ if valtype(cfg) != 'O' .or. cfg:className != "EASConfig" return NIL endif - eDebug(10, "TRANSPORT: Connection from command line:",cfg:connection) + eDebug( 26, "Connection from command line:", cfg:connection ) if cfg:connection != NIL // Connection in command line - eDebug(10, "TRANSPORT: Create connection from string:",cfg:connection) + eDebug( 26, "TRANSPORT: Create connection from string:", cfg:connection ) // Fill connection parameters // Parse string: protocol://user:password@host:port/db cstr := alltrim(cfg:connection) @@ -66,11 +66,11 @@ // Create connection object c := EASConnection( pset ) if c != NIL - eDebug(10, "TRANSPORT: Connection from string is created") + eDebug( 26, "Connection from string is created") aadd(obj:connectionNames, pset:name) aadd(obj:connections, c) else - eDebug(1, "TRANSPORT: Failed to create connection from command line") + eDebug( 6, "Failed to create connection from command line") endif endif @@ -110,7 +110,7 @@ // No connections: send event 'sys.transport.failed' if len( self:connections ) == 0 - eDebug(1, "TRANSPORT: no connections") + eDebug( 6, "No connections" ) sendMessage(,,'sys.transport.failed') return NIL endif @@ -136,7 +136,7 @@ endif recover using oErr - eDebug(1, "Open connection error:",errorMessage(oErr)) + eDebug( 6, "Open connection error:", errorMessage(oErr) ) return o end sequence @@ -148,11 +148,11 @@ oErr := errorBlock({|e| break(e) }) begin sequence - eDebug(10, "Begin thread in connection_open()") + eDebug( 26, "Begin thread in connection_open()" ) connection := oCurConn ret := connection:open() recover using oErr - eDebug(1, "Open connection:",errorMessage(oErr)) + eDebug( 6, "Open connection:", errorMessage(oErr) ) return o end sequence return ret Index: uimanager.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/libeas/uimanager.prg,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- uimanager.prg 3 Nov 2006 16:12:08 -0000 1.3 +++ uimanager.prg 15 Nov 2006 10:37:18 -0000 1.4 @@ -55,7 +55,7 @@ // Check config file cfg := EASGetConfig() if valtype(cfg) == 'O' .and. cfg:className == "EASConfig" .and. .not. empty(cfg:driver) - eDebug(10, "UI: Used driver:", cfg:driver) + eDebug( 28, "Used driver:", cfg:driver ) useDriver( cfg:driver ) endif @@ -108,21 +108,21 @@ // Get form from server vRet := component('form', 'get', params) - eDebug(10, "UI: open form '"+name+"':", len(vRet), 'bytes. ID:', objId) + eDebug( 28, "Open form '"+name+"':", len(vRet), 'bytes. Id:', objId ) //eDebug(19, vRet) if empty(vRet) - eDebug(1, "ERROR: cannot open empty form") + eDebug( 8, "ERROR: cannot open empty form" ) return .F. endif if valtype(vRet) == 'O' .and. 'ERROR' $ vRet - eDebug(1, "ERROR on form open:", vRet:error) + eDebug( 8, "ERROR on form open:", vRet:error ) return .F. endif if valtype(vRet) <> 'C' - eDebug(1, "ERROR on form open: return value must be string") + eDebug( 8, "ERROR on form open: return value must be string" ) return .F. endif @@ -135,19 +135,19 @@ parent := self:main endif - eDebug( 16, "UI: form parsing..." ) + eDebug( 28, "Form is parsing..." ) // Process and show form form := UIForm( name, parent ) if SHOW_FORMS - eDebug(17, "UI: FORM CONTENT:", vRet ) + eDebug(38, "Form content:&\n", vRet ) endif win := form:parseString(vRet) - eDebug( 16, "UI: window is created...", valtype(win) ) + eDebug( 28, "Window is created...", valtype(win) ) if win == NIL - eDebug(3, "UI: Error parse form") + eDebug( 8, "Error parse form" ) return .F. elseif self:main == NIL self:main := win @@ -156,7 +156,7 @@ win:objId := objId win:creator := parent win:returnAction := action - // eDebug(15, "FORM name:", formName, "type:", formType, "id:", objId, "action:", action) + //eDebug( 28, "FORM name:", formName, "type:", formType, "id:", objId, "action:", action ) // Get class name t := form:oXml:XPath("/head/class") @@ -174,11 +174,11 @@ win:show() recover using oErr - eDebug(1, "UI EXCEPTION:",errorMessage(oErr)) + eDebug( 8, "Internal error:",errorMessage(oErr) ) return o end sequence - eDebug(10, "UI: end open form") + eDebug( 28, "End open form" ) return .T. /** Close form */ @@ -206,7 +206,7 @@ // Put object to server id := component('sys.db', 'put', 'obj', o, 'class', ddb[2], 'db', ddb[1] ) - eDebug(5, "Form is saved:", id, o) + eDebug( 38, "Form is saved:", id, o ) window:objId := id window:origObj := o @@ -240,7 +240,7 @@ window := params:window endif - eDebug(10, "UI: Open view '"+params:name+"'") + eDebug( 28, "Open view '"+params:name+"'" ) // Define name and columns name := params:name @@ -254,13 +254,13 @@ // Apply data to widget pos := iif('SAVEPOSITION' $ params:widget, params:widget:savePosition(), NIL) - eDebug(5, "CURRENT ROW:", pos ) + eDebug( 38, "openView(): current row", pos ) params:widget:clear() - //eDebug(10, "OPENVIEW():", d:data) + //eDebug( 38, "openView():", d:data ) for i in d:data l := len(i) id := i[l] - //eDebug(14, "ADD ROW:", i, id) + //eDebug( 38, "openView(): add row", i, id ) asize(i,l-1) params:widget:addRow(i,id) if 'RESTOREPOSITION' $ params:widget @@ -271,11 +271,11 @@ // Autorefresh on timer if .not. empty(timeout) .and. valtype(window) == 'O' .and. 'TIMERS' $ window timeout := iif(valtype(timeout)!='N', val(timeout), timeout) - eDebug(5, "Set update timer for view '"+params:name+"' (", timeout, "second(s) )") + eDebug( 28, "Set update timer for view '"+params:name+"' (", timeout, "second(s) )" ) timer := UITimer(timeout, {|| openView(params:widget, params:name) } ) aadd(window:timers, timer) else - eDebug(5, "Timer is not set:", .not. empty(timeout), valtype(window) == 'O', 'TIMERS' $ window) + eDebug( 38, "Timer is not set:", .not. empty(timeout), valtype(window) == 'O', 'TIMERS' $ window ) endif return NIL @@ -296,13 +296,13 @@ endif // Get object from server - eDebug(5, "setFormObject id:", id) + eDebug( 28, "setFormObject(): id", id) ddb := form_splitClass( params:window:objClass ) if .not. empty(id) obj := component('sys.db', 'get', 'id', id, 'db', ddb[1] ) endif - eDebug(30, "UI setFormObject():", obj) + eDebug( 38, "UI setFormObject():", obj ) return params:window:setObj( obj ) @@ -310,7 +310,7 @@ static function c_dialogBoxConfirmClose( self, params ) local dlg - //eDebug(10, 'Confirmation dialog.') + //eDebug( 28, 'Confirmation dialog.' ) // Check params if assertParameters( params, { 'window:O', 'class:C' } ) return NIL @@ -331,11 +331,12 @@ /** Internal function for confirmation dialogbox */ static function confirmHandle( win, gId, class ) local dlg - //eDebug(15, "CONFIRM on close:", gId) + //eDebug( 28, "CONFIRM on close:", gId ) switch gId case "SAVE" if empty(saveForm(win, class)) dlg := win:dialogBox(i18n("Error"), i18n("Error saving document!")) + return endif win:close() case "NO" |
From: Andrey C. <sku...@us...> - 2006-11-15 10:37:37
|
Update of /cvsroot/eas-dev/eas/server In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv19212/server Modified Files: easserver.ini.in main.prg Log Message: Unify log messages Index: easserver.ini.in =================================================================== RCS file: /cvsroot/eas-dev/eas/server/easserver.ini.in,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- easserver.ini.in 6 Jun 2006 13:29:31 -0000 1.2 +++ easserver.ini.in 15 Nov 2006 10:37:18 -0000 1.3 @@ -7,8 +7,8 @@ ; Root directory for server ServerRoot = SERVERROOT ; Debug level (0-255): greater number is mean more information - ; default value is 15 - debug = 15 + ; default value is 30 + debug = 30 ; Connection section [CONNECTION_1] Index: main.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/server/main.prg,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- main.prg 20 Jun 2006 10:25:53 -0000 1.3 +++ main.prg 15 Nov 2006 10:37:18 -0000 1.4 @@ -12,7 +12,7 @@ #include "../version.ch" #define PRG_NAME "easserver" -#define DEBUG 20 +#define DEBUG 30 #define TMP_DEFAULT '/tmp/easserver' @@ -56,7 +56,7 @@ // Prepare directory for log and cache if .not. checkWorkPlace() - eDebug(1, "Error set server root directory" ) + eDebug( 1, "Unable to set server root directory" ) return 1 endif @@ -70,7 +70,7 @@ messages:open() applicationQuit() recover using oErr - eDebug(1, "EXCEPTION:",errorMessage(oErr)) + eDebug( 1, errorMessage(oErr) ) applicationQuit() return 1 end sequence @@ -88,7 +88,7 @@ dir := cfgDir endif - eDebug(5, "Required work directory:", dir ) + eDebug( 11, "Required work directory:", dir ) // Change directory, create it if neccessary @@ -109,13 +109,13 @@ endif dirchange( dir ) - eDebug(5, "Current directory:", cygwinroot()+PATH_DELIM+curDir() ) + eDebug( 21, "Current directory:", cygwinroot()+PATH_DELIM+curDir() ) return .T. /* Quit from application */ function applicationQuit() - eDebug(10, "Quitting...") + eDebug( 11, "Quitting..." ) messages:close() // Remove all *.po from cache directory fileDelete('*.po') |
From: Andrey C. <sku...@us...> - 2006-11-15 10:37:32
|
Update of /cvsroot/eas-dev/eas/client In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv19212/client Modified Files: main.prg Log Message: Unify log messages Index: main.prg =================================================================== RCS file: /cvsroot/eas-dev/eas/client/main.prg,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- main.prg 3 Nov 2006 16:12:06 -0000 1.10 +++ main.prg 15 Nov 2006 10:37:18 -0000 1.11 @@ -13,7 +13,7 @@ #include "../version.ch" #define PRG_NAME "eas" -#define DEBUG 15 +#define DEBUG 30 // Default connection values #define C_HOST "localhost" @@ -79,7 +79,7 @@ login() applicationQuit() recover using oErr - eDebug(1, "EXCEPTION:",errorMessage(oErr)) + eDebug( 1, errorMessage(oErr) ) applicationQuit() return 1 end sequence @@ -109,7 +109,7 @@ return .F. endif - eDebug(15, "Current directory:", cygwinroot()+PATH_DELIM+curDir() ) + eDebug( 21, "Current directory:", cygwinroot()+PATH_DELIM+curDir() ) return .T. @@ -121,14 +121,14 @@ return NIL endif - eDebug(10, "Login to server...") + eDebug( 21, "Login to server...") // Get connections parameters from command line if exist cfg := EASGetConfig() if valtype(cfg:connection) == 'O' loginParams:name := cfg:connection:user loginParams:password := cfg:connection:password - eDebug(10, "LOGIN PARAMS:",loginParams) + eDebug(31, "Login parameters:",loginParams) endif // Prepare packet @@ -139,14 +139,14 @@ // Read answer from server vRet := sendMessage(,'sys.transport.default', 'read') - eDebug(5, "LOGIN ANSWER:", vRet) + eDebug( 21, "Login answer:", vRet) if valtype(vRet) <> 'O' .or. .not. 'ANSWER' $ vRet .or. .not. vRet:answer // Access denied if loginWindow != NIL loginWindow:dialogBox(i18n("ERROR"),i18n("Access denied.&\nPlease, contact your system administratior."),,,NIL, IMG_ERROR) endif - eDebug(1,"&\n=== Access denied. ===&\n") + eDebug( 1, "Access denied. Program is terminated.") return NIL endif @@ -159,14 +159,14 @@ aadd( params, 'dbpath' ) aadd( params, cfg:dbPath ) endif - eDebug( 15, "Execute:", params) + eDebug( 31, "Execute from command line:", params) res := component( params ) - eDebug( 15, "Result:", res ) + eDebug( 31, "Execution result:", res ) return NIL endif /* quit on failed to open main window */ - eDebug( 12, "Open main form") + eDebug( 21, "Open main form") if .not. lcomponent('sys.ui', 'openForm', 'name', EAS_MAIN_FORM ) // form := map() // form:name := EAS_MAIN_FORM @@ -176,7 +176,7 @@ packet := messageNew( 'session', 'close', NIL ) sendMessage(,'sys.transport.default', 'write', packet ) - eDebug(1, "ERROR: Cannot open main form.") + eDebug( 1, "Cannot open main form.") if loginWindow != NIL loginWindow:dialogBox(i18n("ERROR"),i18n("Cannot open main form."),,,NIL, IMG_ERROR) endif @@ -196,13 +196,13 @@ local server, port if loginInProgress == 1 - eDebug(1, "Error connect to server") + eDebug( 1, "Error connect to server" ) loginInProgress := 2 loginWindow:dialogBox(i18n("ERROR"),i18n("Cannot connect to server!&\nContact your system administratior."),,,NIL, IMG_ERROR) return .F. endif - eDebug(25, "connectionDialog()") + eDebug( 21, "connectionDialog()" ) // Read from config file cfg := EASGetConfig() @@ -283,7 +283,7 @@ function sessionBegin(win) local cfg, cHost, cPort, cUser, cPass, conn:=map() // ... - eDebug(15, "sessionBegin()") + eDebug( 21, "sessionBegin()" ) // Write connection parameters to ini file cfg := EASGetConfig() @@ -296,7 +296,7 @@ cfg:setValue("session","port", cPort) cfg:save() if .not. empty(cfg:error) - eDebug(1, "ERROR:"+cfg:error) + eDebug( 1, cfg:error ) endif // Pass parameters to login @@ -323,7 +323,7 @@ /* Quit from application */ function applicationQuit() - eDebug(10, "Quitting...") + eDebug( 11, "Quitting..." ) messages:close() // Remove all files from cache directory fileDelete('*') |
From: Andrey C. <sku...@us...> - 2006-11-08 09:43:09
|
Update of /cvsroot/eas-dev/eas In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv11946 Modified Files: INSTALL Makefile TODO VERSION Log Message: Update documentation Index: INSTALL =================================================================== RCS file: /cvsroot/eas-dev/eas/INSTALL,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- INSTALL 3 Nov 2006 16:12:06 -0000 1.5 +++ INSTALL 8 Nov 2006 09:42:35 -0000 1.6 @@ -21,7 +21,7 @@ STEP 2: Install CLIP ==================== -1. Prepare environment variable: +1. Prepare environment variables: export CLIPROOT=/usr/local/clip export PATH=$PATH:$CLIPROOT/bin @@ -33,7 +33,7 @@ Note: there is best solution add this commands to /etc/profile or ~/.bash_profile -2. Got to unpacked clip-prg directory and run: +2. Go to unpacked clip-prg directory and run: make system @@ -60,9 +60,9 @@ ./configure && make && make install -NOTE: It's strongly recommended to build E/AS under root privileges and check +Note: It's strongly recommended to build E/AS under root privileges and check system configuration after E/AS install (new user 'easserver' will be created, -install startup scripts and PAM modules) +install startup script and PAM module) 2. Possible, you want to run E/AS server on system startup: Index: Makefile =================================================================== RCS file: /cvsroot/eas-dev/eas/Makefile,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- Makefile 3 Nov 2006 16:12:06 -0000 1.6 +++ Makefile 8 Nov 2006 09:42:35 -0000 1.7 @@ -11,8 +11,7 @@ PACKAGE = "eas" DIRVERSION = "$(PACKAGE)" -#SUBDIRS = libeas client server $(DOCDIR) $(PODIR) -SUBDIRS = libeas client server $(PODIR) +SUBDIRS = libeas client server $(DOCDIR) $(PODIR) .PHONY: all clean distclean Index: TODO =================================================================== RCS file: /cvsroot/eas-dev/eas/TODO,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- TODO 20 Oct 2006 12:56:47 -0000 1.4 +++ TODO 8 Nov 2006 09:42:35 -0000 1.5 @@ -2,38 +2,27 @@ E/AS TODO ========= -Last change: 15 Oct 2006 - -- clip-ui: - - pass pair (id,text) to UIChoice - - i18n - - UISheet (editable table) - - support Glade and QT designer form formats in UIForm -- components: - - actions - - automenu - - db console - - visual component manager +Last change: 08 Nov 2006 ______________________________________________________________________________ Plans for eas-0.2.2 (End of 2006) ----------------------------------- -- move libcodb_query to CLIP ++ move libcodb_query to CLIP - pass error via messages (for example, in db operations) - debug levels policy -- libcodb_query: support comments, DROP and other TODOs ++ libcodb_query: support comments, DROP and other TODOs - manipulation with table embed in object form - visual component manager (in client) -- visual database console (in client) ++ visual database console (in client) - print forms (XPL) support - support Glade and QT designer form formats in UIForm - download components from project site -- i18n support ++ i18n support - binary packages: RPM and possible other binary format - check success of saved object before closing -- libcodb_query: no indent by M attribute width ++ libcodb_query: no indent by M attribute width ______________________________________________________________________________ @@ -42,7 +31,6 @@ Platform -------- - Unified debug level -- i18n (both in debug messages and forms) - extract messages from code for Makefiles (for i18n purpose) Client @@ -57,13 +45,11 @@ Server ------ - Isolated message manager per session -- Autentication - Clear cache directory on exit Components ---------- - Configurator component -- Database console component Documentation ------------- Index: VERSION =================================================================== RCS file: /cvsroot/eas-dev/eas/VERSION,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- VERSION 3 Nov 2006 16:12:06 -0000 1.6 +++ VERSION 8 Nov 2006 09:42:35 -0000 1.7 @@ -1 +1 @@ -20061103 +20061108 |
From: Andrey C. <sku...@us...> - 2006-11-08 09:42:51
|
Update of /cvsroot/eas-dev/eas/doc In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv11946/doc Modified Files: Makefile index.docbook Added Files: index.ru.docbook Removed Files: index.pot version.sgml Log Message: Update documentation --- NEW FILE: index.ru.docbook --- <?xml version="1.0" encoding="utf-8" ?> <!-- This is a part of E/AS distribution. You can find it on the Web: http://eas.lrn.ru Copyright (C) 2004-2006 by E/AS Software Foundation. Author: Andrey Cherepanov <sib...@ma...> Last change: 06 Nov 2004. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. --> <!-- TODO: - server and client parameters - licenses - development part^ how to create components - administration tasks --> <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" [ <!ENTITY version "0.2.1"> <!ENTITY date "07.11.2006"> ]> <book id="index"> <bookinfo> <title >Ð ÑководÑÑво по E/AS</title> <releaseinfo >Version &version; from &date;</releaseinfo> <authorgroup> <author ><firstname >Andrey</firstname ><surname >Cherepanov</surname > <affiliation ><orgname >E/AS Software Foundation</orgname > <address ><email >sk...@ea...</email ></address > </affiliation> </author> </authorgroup> <edition >&version;</edition> <copyright ><year >2006</year ><holder >E/AS Software Foundation</holder ></copyright> <legalnotice id="copyright"> <simpara ><!-- TODO: insert FDL license term --> This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. </simpara> </legalnotice> <date >&date;</date> </bookinfo> <chapter id="introduction" ><title >Ðведение</title> <para >ÐзнаÑалÑно пÑÐ¾ÐµÐºÑ ÑазÑабаÑÑвалÑÑ ÐºÐ°Ðº плаÑÑоÑма Ð´Ð»Ñ Ð±ÑÑ Ð³Ð°Ð»ÑеÑÑкой ÑиÑÑÐµÐ¼Ñ Ñипа 1С под Linux/FreeBSD. РдалÑнейÑем бÑла поÑÑавлена более обÑÐ°Ñ ÑÐµÐ»Ñ Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÐºÐ°Ðº плаÑÑоÑÐ¼Ñ Ð´Ð»Ñ Ð°Ð²ÑомаÑизаÑии лÑбÑÑ Ð¸Ð½ÑоÑмаÑионнÑÑ Ð·Ð°Ð´Ð°Ñ (в Ñом ÑиÑле бÑÑ Ð³Ð°Ð»ÑеÑÑкий ÑÑÑÑ, опеÑаÑивнÑй ÑÑÑÑ, ERP, CRM, пеÑÑоналÑнÑе ÑпÑавоÑники и Ñ.п.), Ñак и акÑивного ÑообÑеÑÑва ÑазÑабоÑÑиков, коÑоÑÑе ÑмогÑÑ Ð¿Ð¾Ð´Ð´ÐµÑживаÑÑ ÑÑÑ Ð¿Ð»Ð°ÑÑоÑÐ¼Ñ Ð² акÑÑалÑном ÑоÑÑоÑнии.</para> <para >РазÑабоÑÑики пÑедоÑÑавлÑÑÑ Ð¿Ð»Ð°ÑÑоÑÐ¼Ñ Ð´Ð»Ñ ÑазÑабоÑки и запÑÑка компоненÑов пÑикладнÑÑ ÑеÑений (напÑимеÑ, Ð´Ð»Ñ ÑоÑговли, бÑÑ Ð³Ð°Ð»ÑеÑии и дÑÑÐ³Ð¸Ñ Ð²Ð¸Ð´Ð¾Ð² задаÑ) и базовÑй Ð½Ð°Ð±Ð¾Ñ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñов. Ðомимо ÑазÑабоÑÑиков плаÑÑоÑмÑ, конеÑнÑе ÑеÑÐµÐ½Ð¸Ñ Ð² виде ÑаÑÑиÑенного набоÑа компоненÑов и внедÑÐµÐ½Ð¸Ñ Ð¾Ð±ÐµÑпеÑиваÑÑ Ð½ÐµÐ·Ð°Ð²Ð¸ÑимÑе ÑазÑабоÑÑики.</para> <para >ÐлаÑÑоÑма <acronym >E/AS</acronym > напиÑана на ÑзÑке <acronym >CLIP</acronym > (Ð´Ð¸Ð°Ð»ÐµÐºÑ ÑзÑка пÑогÑаммиÑÐ¾Ð²Ð°Ð½Ð¸Ñ CA-Clipper; компилÑÑоÑ, библиоÑеки и инÑÑÑÑменÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑкаÑаÑÑ Ñ <ulink url="http://www.itk.ru/clip/" >ÑайÑа компании ÐТÐ</ulink >) и иÑполÑзÑÐµÑ ÑÐµÑ Ð½Ð¾Ð»Ð¾Ð³Ð¸Ð¸ CLIP: обÑекÑнÑÑ Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ <acronym >CODB</acronym > и модÑли на байÑ-коде.</para> <para >ÐÑиÑиалÑнÑй ÑÐ°Ð¹Ñ Ð¿ÑоекÑа: <ulink url="http://eas.lrn.ru/" >http://eas.lrn.ru/</ulink >.</para > <sect1 id="features" ><title >ÐозможноÑÑи ÑекÑÑей веÑÑии</title> <itemizedlist mark="bullet"> <listitem ><para >Ð¢ÐµÑ Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ ÐºÐ»Ð¸ÐµÐ½Ñ-ÑеÑÐ²ÐµÑ (как Ð´Ð»Ñ Ð´Ð°Ð½Ð½ÑÑ , Ñак и Ð´Ð»Ñ ÑоÑм инÑеÑÑейÑа);</para ></listitem> <listitem ><para >ÐизÑалÑнÑе и пеÑаÑнÑе ÑоÑмÑ, опиÑаннÑе на ÑзÑке <acronym >XML</acronym >;</para ></listitem> <listitem ><para >ÐногооконнÑй инÑеÑÑейÑ</para ></listitem> <listitem ><para >ÐомпоненÑÐ½Ð°Ñ Ð¸Ð½ÑÑаÑÑÑÑкÑÑÑа.</para ></listitem> </itemizedlist> </sect1> <sect1 id="distributive" ><title >СодеÑжимое пакеÑа</title> <para >ÐÑиÑиалÑнÑй Ð¿Ð°ÐºÐµÑ <acronym >E/AS</acronym > ÑодеÑжиÑ:</para> <itemizedlist mark="bullet"> <listitem ><para >ÑеÑÐ²ÐµÑ Ð¿Ñиложений;</para ></listitem> <listitem ><para >ÑкÑипÑÑ Ð´Ð»Ñ Ð·Ð°Ð¿ÑÑка ÑеÑвеÑа пÑиложений в Ñежиме демона;</para ></listitem> <listitem ><para >клиенÑÑкое пÑогÑаммное обеÑпеÑение, напиÑанное Ñ Ð¸ÑполÑзованием библиоÑеки <filename >clip-ui</filename >;</para ></listitem> <listitem ><para >докÑменÑаÑиÑ;</para ></listitem> <listitem ><para >локализаÑÐ¸Ñ Ð¿ÑогÑамм на ÑÑÑÑкий ÑзÑк.</para ></listitem> </itemizedlist> </sect1> </chapter> <chapter id="requires" ><title >УÑÑановка</title> <sect1 id="installation" ><title >ÐолÑÑение кода</title> <para >СеÑÐ²ÐµÑ Ð¸ ÐºÐ»Ð¸ÐµÐ½Ñ E/AS Ð´Ð»Ñ ÑбоÑки и ÑабоÑÑ ÑÑебÑÐµÑ ÑледÑÑÑÐ¸Ñ Ð¿Ð°ÐºÐµÑов:</para> <itemizedlist mark="bullet"> <listitem ><para ><ulink url="http://www.itk.ru/clip/" >CLIP</ulink > compiler >= 1.2.0.</para ></listitem> <listitem ><para >ÐиблиоÑеки CLIP: <filename >clip-gtk</filename > (и/или <filename >clip-gtk2</filename >), <filename >clip-ui</filename >, <filename >clip-xml</filename >, <filename >clip-codb</filename >, <filename >codb_query</filename >. </para ></listitem> <listitem ><para >ÐиблиоÑÐµÐºÑ Ð¸ заголовоÑнÑе ÑÐ°Ð¹Ð»Ñ <acronym >PAM</acronym >.</para ></listitem> </itemizedlist> <para >ÐÑимеÑание: Ð´Ð»Ñ ÑбоÑки компилÑÑоÑа CLIP и библиоÑек CLIP вам бÑдÑÑ Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñ ÑледÑÑÑие пакеÑÑ (Ð´Ð»Ñ ÑобÑаннÑÑ Ð¿Ð°ÐºÐµÑов Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñ ÐµÑÑ Ð¸ пакеÑÑ -devel, ÑодеÑжаÑие заголовоÑнÑе ÑайлÑ): GTK+ и Expat. ÐÑли Ð²Ñ ÑобиÑаеÑе CLIP из иÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ кода, вам Ñакже Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼ компилÑÑÐ¾Ñ C (gcc), библиоÑеки Bison, FLEX и readline.</para> <para >СкаÑайÑе поÑледние веÑÑии CLIP, набоÑа компоненÑов и E/AS Ñ <ulink url="http://eas.lrn.ru/index.php?module=download" >ÑайÑа E/AS</ulink >. Ðам поÑÑебÑÑÑÑÑ Ð¿Ð°ÐºÐµÑÑ <filename >clip-prg</filename >, <filename >ocmng</filename > и <filename >eas</filename >. ÐоÑле ÑкаÑÐ¸Ð²Ð°Ð½Ð¸Ñ ÑаÑпакÑйÑе ÑÑи аÑÑ Ð¸Ð²Ñ.</para> </sect1> <sect1 id="clip-install" ><title >УÑÑановка CLIP</title> <orderedlist numeration="arabic"> <listitem ><para >ÐодгоÑовÑÑе пеÑеменнÑе ÑÑÐµÐ´Ñ Ð¾ÐºÑÑжениÑ:</para> <programlisting >export CLIPROOT=/usr/local/clip export PATH=$PATH:$CLIPROOT/bin </programlisting> <para >Ðа ÑиÑÑеме Ñ Ñникодной локалÑÑ:</para> <programlisting >export CLIP_HOSTCS=KOI8-R export CLIP_CLIENTCS=UTF-8 </programlisting> <para >ÐÑимеÑание: Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ Ð½Ðµ вбиваÑÑ ÑÑи пеÑеменнÑе каждÑй Ñаз, добавÑÑе Ð¸Ñ Ð² Ñайл <filename >/etc/profile</filename > или <filename >~/.bash_profile</filename ></para> </listitem> <listitem ><para >ÐеÑейдиÑе в каÑалог ÑаÑпакованного пакеÑа clip-prg и запÑÑÑиÑе:</para> <programlisting >make system </programlisting> <para >ÐÑимеÑание: еÑли Ñ Ð²Ð°Ñ Ð½ÐµÐ´Ð¾ÑÑаÑоÑно пÑав Ð´Ð»Ñ Ð¾Ð±ÑеÑиÑÑемной ÑÑÑановки, ÑÑÑановиÑе пеÑеменнÑÑ ÑÑÐµÐ´Ñ Ð¾ÐºÑÑÐ¶ÐµÐ½Ð¸Ñ CLIPROOT на подкаÑалог ваÑего домаÑнего каÑалога и ÑобеÑиÑе CLIP командой '<command >make local</command >'.</para> </listitem> <listitem ><para >ÐÑовеÑÑÑе, ÑобÑалиÑÑ Ð»Ð¸ ÑледÑÑÑие библиоÑеки в <filename >$CLIPROOT/lib</filename >:</para> <itemizedlist> <listitem ><para ><filename >libclip-codb.so</filename ></para ></listitem> <listitem ><para ><filename >libcodb-query.so</filename ></para ></listitem> <listitem ><para ><filename >libclip-gtk.so</filename > и/или <filename >libclip-gtk2.so</filename ></para ></listitem> <listitem ><para ><filename >libclip-ui.so</filename ></para ></listitem> <listitem ><para ><filename >libclip-xml.so</filename ></para ></listitem> </itemizedlist> <para >ÐÑли какаÑ-либо из ÑÑÐ¸Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñек оÑÑÑÑÑÑвÑеÑ, пÑовеÑÑÑе вÑвод оÑибок и пеÑеÑобеÑиÑе CLIP</para> </listitem> <listitem ><para >УÑÑановиÑе пÑÑÑ Ðº библиоÑекам CLIP:</para> <programlisting >echo "$CLIPROOT/lib" > > /etc/ld.so.conf /sbin/ldconfig </programlisting> </listitem> </orderedlist> </sect1> <sect1 id="eas-install" ><title >УÑÑановка E/AS</title> <orderedlist numeration="arabic"> <listitem ><para >ÐеÑейдиÑе в ÑаÑпакованнÑй каÑалог пакеÑа eas и запÑÑÑиÑе:</para> <programlisting >./configure && make && make install </programlisting> <para >ÐÑимеÑание: наÑÑоÑÑелÑно ÑекомендÑеÑÑÑ ÑобиÑаÑÑ E/AS под пÑавами полÑзоваÑÐµÐ»Ñ root и пÑовеÑиÑÑ Ð½Ð°ÑÑÑойки ÑиÑÑÐµÐ¼Ñ Ð¿Ð¾Ñле ÑÑÑановки E/AS (ÑоздаÑÑÑÑ Ð½Ð¾Ð²Ñй полÑзоваÑÐµÐ»Ñ 'easserver', ÑÑÑанавливаÑÑÑÑ ÑкÑÐ¸Ð¿Ñ Ð·Ð°Ð¿ÑÑка ÑеÑвиÑа и модÑÐ»Ñ PAM)</para> </listitem> <listitem ><para >Ðозможно, Ð²Ñ Ð·Ð°Ñ Ð¾ÑиÑе запÑÑкаÑÑ ÑеÑÐ²ÐµÑ E/AS пÑи запÑÑке ÑиÑÑемÑ:</para> <programlisting >chkconfig easd on</programlisting> <para >ÐÑимеÑание: Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе оÑклÑÑиÑÑ Ð·Ð°Ð¿ÑÑк демона 'easd' пÑи запÑÑке ÑиÑÑÐµÐ¼Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ð¹:</para> <programlisting >chkconfig easd off</programlisting> </listitem> </orderedlist> </sect1> <sect1 id="ocmng-install" ><title >УÑÑановка компоненÑов</title> <orderedlist numeration="arabic"> <listitem ><para >УÑÑановиÑе пÑÑÑ Ðº ÑоздаваемÑм базам даннÑÑ CODB:</para> <programlisting >export CODBROOT=/var/db/eas</programlisting> <para >ÐÑимеÑание: Ñ Ð¾ÑоÑее ÑеÑение помеÑÑиÑÑ ÑÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð² Ñайл <filename >/etc/profile</filename > или <filename >~/.bash_profile</filename ></para> <para >ÐÑимеÑание: еÑли Ñ Ð²Ð°Ñ Ð½ÐµÐ´Ð¾ÑÑаÑоÑно пÑав Ð´Ð»Ñ Ð¾Ð±ÑеÑиÑÑемной ÑÑÑановки, ÑÑÑановиÑе пеÑеменнÑÑ ÑÑÐµÐ´Ñ Ð¾ÐºÑÑÐ¶ÐµÐ½Ð¸Ñ CODBROOT на подкаÑалог ваÑего домаÑнего каÑалога.</para> </listitem> <listitem ><para >ÐеÑейдиÑе в ÑаÑпакованнÑй каÑалог пакеÑа ocmng и запÑÑÑиÑе командÑ:</para> <programlisting >make</programlisting> </listitem> <listitem ><para >УÑÑановиÑе компоненÑÑ:</para> <programlisting >ocmng install ALL ocmng install EAS/ALL</programlisting> <para >ÐÑли Ð²Ñ Ð¿Ð¾Ð»ÑÑаеÑе оÑÐ¸Ð±ÐºÑ Ð¿Ñи ÑÑÑановке компоненÑов </para> </listitem> </orderedlist> </sect1> <sect1 id="note-install" ><title >ÐÑимеÑÐ°Ð½Ð¸Ñ Ð¿Ñи ÑÑÑановке</title> <orderedlist numeration="arabic"> <listitem ><para >CLIP не поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¿Ð¾Ð»Ð½Ð¾ÑÑÑÑ Unicode. ÐÐ»Ñ ÑÑпеÑной ÑбоÑки и иÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑогÑамм, ÑобÑаннÑÑ CLIP (вклÑÑÐ°Ñ E/AS), ÑÑÑановиÑе 8-биÑнÑÑ ÐºÐ¾Ð´Ð¸ÑÐ¾Ð²ÐºÑ Ð´Ð»Ñ Ð»Ð¾ÐºÐ°Ð»Ð¸ (напÑимеÑ, LANG=ru_RU.KOI8-R). ÐÐ»Ñ ÑÐ¼ÐµÐ½Ñ Ð»Ð¾ÐºÐ°Ð»Ð¸ в ÑеÑминале вÑполниÑе:</para> <programlisting >export LANG=ru_RU.KOI8-R</programlisting> <para >или помеÑÑиÑе Ð»Ð¾ÐºÐ°Ð»Ñ Ð² Ñайл <filename >/etc/sysconfig/i18n</filename >.</para> </listitem> <listitem ><para >CLIP великолепно ÑабоÑÐ°ÐµÑ Ð½Ð° лÑбом Ñипе ÑеÑминала (linux, rxvt) кÑоме 'xterm'. УÑÑановиÑе Ñип ÑеÑминала (еÑли 'echo $TERM' вÑÐ²Ð¾Ð´Ð¸Ñ 'xterm') командой:</para> <programlisting >export TERM=linux</programlisting> </listitem> </orderedlist> </sect1> </chapter> <chapter id="using" ><title >ÐÑполÑзование</title> <sect1 id="using-server" ><title >СеÑвеÑ</title> <para >ÐÐ»Ñ Ð·Ð°Ð¿ÑÑка ÑеÑвеÑа на Linux (диÑÑÑибÑÑивÑ, оÑнованнÑе на RedHat) набеÑиÑе под полÑзоваÑелем root:</para> <programlisting >service easd start</programlisting> <para >или Ð´Ð»Ñ Ð¾ÑÑановки ÑеÑвеÑа:</para> <programlisting >service easd stop</programlisting> <para >ÐÑоме Ñого, Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе запÑÑÑиÑÑ ÑеÑÐ²ÐµÑ Ð¸Ð· каÑалога иÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ кода E/AS:</para> <programlisting >server/easserver -c /etc/eas/easserver.ini</programlisting> <para >ÐÑимеÑание: ÑбедиÑеÑÑ ÑÑо Ð²Ñ (или полÑзоваÑÐµÐ»Ñ easserver) имеÑÑ Ð¿Ñава на запиÑÑ:</para> <itemizedlist> <listitem ><para ><filename >$CLIPROOT/etc/codb.*</filename ></para ></listitem> <listitem ><para ><filename >$CODBROOT</filename ></para ></listitem> <listitem ><para ><filename >/usr/local/share/eas/log</filename ></para ></listitem> <listitem ><para ><filename >/tmp</filename ></para ></listitem> </itemizedlist> </sect1> <sect1 id="using-client" ><title >ÐлиенÑ</title> <para >ÐапÑÑÑиÑе клиенÑа командой <command >eas</command > и заполниÑе полÑ. ÐÑли иÑполÑзÑеÑÑÑ Ð°ÑÑенÑиÑикаÑиÑ, Ð²Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ ÑказаÑÑ Ð¿ÑавилÑное Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ Ð¸ паÑолÑ, коÑоÑÑе Ð²Ñ Ð¸ÑполÑзÑеÑе Ð´Ð»Ñ Ð²Ñ Ð¾Ð´Ð° на ÑеÑвеÑ. ÐÐ¾Ð»Ñ Ñ Ð¿Ð°ÑамеÑÑами ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ (ÑеÑÐ²ÐµÑ Ð¸ поÑÑ) Ð´Ð¾Ð»Ð¶Ð½Ñ ÑооÑвеÑÑÑвоваÑÑ ÑеÑвеÑÑ. ÐнаÑение по ÑмолÑаниÑ: <constant >'localhost'</constant > и <constant >'3000'</constant > ÑооÑвеÑÑÑвенно.</para> <para >ÐÑ Ð¼Ð¾Ð¶ÐµÑе запÑÑÑиÑÑ ÐºÐ»Ð¸ÐµÐ½Ñа без показа окна Ð²Ñ Ð¾Ð´Ð° в ÑиÑÑÐµÐ¼Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ð¹:</para> <programlisting >eas -o raw://user:password@localhost:3000</programlisting> <para >ÐабеÑиÑе 'eas --help' Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð²ÑÐµÑ Ð¿Ð°ÑамеÑÑов командной ÑÑÑоки пÑогÑÐ°Ð¼Ð¼Ñ ÐºÐ»Ð¸ÐµÐ½Ñа.</para> </sect1> </chapter> <chapter id="faq" ><title >ЧаÑÑо задаваемÑе вопÑоÑÑ Ð¾ пÑоекÑе</title> <qandaset> <qandaentry ><question ><para >ÐоÑÐµÐ¼Ñ Ð±Ñл Ñоздан пÑÐ¾ÐµÐºÑ E/AS?</para ></question> <answer ><para >ÐÑÐ¾ÐµÐºÑ Ð²Ð¾Ð·Ð½Ð¸Ðº пÑи ÑвелиÑении ÑпÑоÑа на ÑÑÑÑное пÑогÑаммное обеÑпеÑение под опеÑаÑионнÑми ÑиÑÑемами <acronym >Linux</acronym > и <acronym >FreeBSD</acronym >.</para ></answer ></qandaentry> <qandaentry ><question ><para >ЧÑо из ÑÐµÐ±Ñ Ð¿ÑедÑÑавлÑÐµÑ ÑиÑÑема E/AS?</para ></question> <answer ><para ><acronym >E/AS</acronym > (ÑокÑаÑÑнно E/AS Automation System — ÑиÑÑема авÑомаÑизаÑии) — ÑÑо ÑовокÑпноÑÑÑ Ð¿Ð»Ð°ÑÑоÑмÑ, ÑиповÑÑ ÐºÐ¾Ð½ÑигÑÑаÑий и ÑÑлÑг по поддеÑжке, позволÑÑÑÐ°Ñ ÑеÑаÑÑ Ð¿ÑикладнÑе задаÑи авÑомаÑизаÑии деÑÑелÑноÑÑи пÑедпÑиÑÑий, оÑганизаÑий и обÑÑнÑÑ Ð»Ñдей.</para ></answer ></qandaentry> <qandaentry ><question ><para >Ðод какой лиÑензией ÑаÑпÑоÑÑÑанÑеÑÑÑ ÑиÑÑема?</para ></question> <answer ><para >ÐÑÑ Ð¾Ð´Ð½Ñй код пиÑеÑÑÑ Ð¿Ð¾Ð´ лиÑензией <acronym >GPL</acronym > (GNU Public License). ÐÑо ознаÑаеÑ, ÑÑо лÑбой Ñеловек Ð¼Ð¾Ð¶ÐµÑ Ñвободно полÑÑиÑÑ Ð¿ÑогÑÐ°Ð¼Ð¼Ñ Ð² иÑÑ Ð¾Ð´Ð½Ð¾Ð¼ коде, вноÑиÑÑ Ð² код модиÑикаÑии и ÑаÑпÑоÑÑÑанÑÑÑ Ð½Ð° лÑбÑÑ ÑÑловиÑÑ , еÑли они не пÑоÑивоÑеÑÐ°Ñ Ð»Ð¸Ñензии GPL.</para ></answer ></qandaentry> <qandaentry ><question ><para >ÐÑо ÑазÑабаÑÑÐ²Ð°ÐµÑ ÑиÑÑемÑ? Рза какой инÑеÑÐµÑ Ð¾Ð½Ð¸ ÑабоÑаÑÑ?</para ></question> <answer ><para >СообÑеÑÑво ÑазÑабоÑÑиков E/AS вклÑÑÐ°ÐµÑ Ð² ÑÐµÐ±Ñ Ð¸Ð½ÑеÑеÑÑÑÑÐ¸Ñ ÑÑ Ð²Ð¾ внедÑении ÑиÑÑÐµÐ¼Ñ Ð¿ÑогÑаммиÑÑов и внедÑенÑев. ХоÑÑ ÑÐµÐ³Ð¾Ð´Ð½Ñ Ð¾Ð½Ð¸ не полÑÑаÑÑ Ð¾Ñ ÑÑого Ð´Ð¾Ñ Ð¾Ð´Ð°, идÑÑ Ð¿Ð¾Ð¸Ñк инвеÑÑиÑий Ð´Ð»Ñ Ð¾Ð¿Ð»Ð°ÑÑ ÑÑÑда и инÑÑ ÑоÑм заинÑеÑеÑованноÑÑи ÑазÑабоÑÑиков. ÐаÑа ÑÐµÐ»Ñ - ÑоздаÑÑ Ð¼Ð¾ÑнÑÑ ÑлаженнÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ÑазÑабоÑÑиков, поÑÑÐ¾Ð¼Ñ Ð¿ÑиглаÑаем вÑÐµÑ Ð·Ð°Ð¸Ð½ÑеÑеÑованнÑÑ Ð»Ñдей обÑÑдиÑÑ ÑÑÐ»Ð¾Ð²Ð¸Ñ ÑовмеÑÑного взаимовÑгодного ÑоÑÑаÑÑиÑ.</para ></answer ></qandaentry> <qandaentry ><question ><para >ÐоÑÐµÐ¼Ñ Ð²Ñ Ñоздали новÑй пÑоекÑ, Ð²ÐµÐ´Ñ ÐµÑÑÑ ÐºÐ°Ðº закÑÑÑÑе (1С, Microsoft Axapta), Ñак и оÑкÑÑÑÑе (GNUe, Compierre) пÑоекÑÑ?</para ></question> <answer ><para >С одной ÑÑоÑонÑ, ÑÑÐµÐ±Ð¾Ð²Ð°Ð½Ð¸Ñ Ð°Ð²ÑомаÑизаÑии пÑедпÑиÑÑÐ¸Ñ Ð¾ÑÐµÐ½Ñ ÑазлиÑаÑÑÑÑ Ð¸ поÑÑÐ¾Ð¼Ñ Ð¾ÑкÑÑÑоÑÑÑ Ð¸ÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ кода ÑвлÑеÑÑÑ Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñм ÑÑебованием Ð´Ð»Ñ ÑÑого пÑоÑеÑÑа. С дÑÑгой ÑÑоÑонÑ, западнÑе аналоги не ÑаÑÑÑиÑÐ°Ð½Ñ Ð½Ð° пÑакÑÐ¸ÐºÑ Ð¿ÑинÑÑой меÑодики ÑÑÑÑа - пÑоÑÑÑе бÑÑ Ð³Ð°Ð»ÑеÑа Ñ Ð¾ÑÑÑ Ð¼ÐµÑÐ¾Ð´Ð¸ÐºÑ ÑÑÑÑа и ÑоÑÐ¼Ñ ÑоглаÑно дейÑÑвÑÑÑÐµÐ¼Ñ Ð·Ð°ÐºÐ¾Ð½Ð¾Ð´Ð°ÑелÑÑÑвÑ. ÐÑоме Ñого, немаловажнÑм ÑакÑоÑом ÑвлÑеÑÑÑ Ð³ÑомоздкоÑÑÑ Ð¿ÐµÑеÑиÑленнÑÑ Ð¾ÑкÑÑÑÑÑ Ð¿ÑоекÑов, ÑÑо не позволÑÐµÑ ÑделаÑÑ Ð±ÑÑÑÑÑÑ Ð¸ гибкÑÑ Ð¿Ð»Ð°ÑÑоÑмÑ.</para ></answer ></qandaentry> <qandaentry ><question ><para >ЧÑо из ÑÐµÐ±Ñ Ð¿ÑедÑÑавлÑÐµÑ ÑиÑÑема E/AS?</para ></question> <answer ><para >ÐÑо клиенÑ-ÑеÑвеÑÐ½Ð°Ñ Ð¿Ð»Ð°ÑÑоÑма, позволÑÑÑÐ°Ñ ÑабоÑаÑÑ Ñ Ð´Ð°Ð½Ð½Ñми в обÑекÑной базе даннÑÑ Ð¿Ð¾ÑÑедÑÑвом опиÑаннÑÑ Ð½Ð° XML инÑеÑÑейÑнÑÑ Ð¸ пеÑаÑнÑÑ ÑоÑм.</para ></answer ></qandaentry> <qandaentry ><question ><para >Ðа ÑÑм пиÑеÑÑÑ E/AS?</para ></question> <answer ><para >ÐлаÑÑоÑма <acronym >E/AS</acronym > напиÑана на ÑзÑке <acronym >CLIP</acronym > (Ð´Ð¸Ð°Ð»ÐµÐºÑ ÑзÑка пÑогÑаммиÑÐ¾Ð²Ð°Ð½Ð¸Ñ CA-Clipper, ÑазÑабаÑÑваемÑй ÑоÑÑийÑкой компанией ÐТРпод оÑкÑÑÑой лиÑензией) и иÑполÑзÑÐµÑ ÑÐµÑ Ð½Ð¾Ð»Ð¾Ð³Ð¸Ð¸ CLIP: обÑекÑнÑÑ Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ <acronym >CODB</acronym > и модÑли на байÑ-коде.</para ></answer ></qandaentry> <qandaentry ><question ><para >РпоÑÐµÐ¼Ñ Ð±Ñ Ð½Ðµ напиÑаÑÑ Ð¿ÑÐ¾ÐµÐºÑ Ð½Ð° Java или Python? Ðли неÑ, лÑÑÑе на ÑиÑÑом C!</para ></question> <answer ><para >ÐÑÐ±Ð¾Ñ ÑзÑка обÑÑловлен, во-пеÑвÑÑ , плаÑÑоÑмой (база даннÑÑ , ÑеÑÐ²ÐµÑ Ð¿Ñиложений, библиоÑеки Ð´Ð»Ñ ÑабоÑÑ Ñ GUI), во-вÑоÑÑÑ , пÑоÑÑоÑой и гибкоÑÑÑÑ Ñамого ÑзÑка.</para ></answer ></qandaentry> <qandaentry ><question ><para >РпоÑÐµÐ¼Ñ Ð±Ñ Ð½Ðµ иÑполÑзоваÑÑ ÑеÑÐ²ÐµÑ Ð¿Ñиложений CORBA?</para ></question> <answer ><para >ÐоÑÐ¾Ð¼Ñ ÐºÐ°Ðº ÑеÑÐ²ÐµÑ Ð¿Ñиложений должен бÑÑÑ ÑеÑно инÑегÑиÑован Ñ Ð´ÐµÐ¿Ð¾Ð·Ð¸ÑаÑием Ð´Ð»Ñ Ñ ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ . ÐемаловажнÑм ÑакÑоÑом оÑÑаÑÑÑÑ ÑложноÑÑÑ Ð¿ÑогÑаммиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð´ <acronym >CORBA</acronym > и гÑомоздкоÑÑÑ ÑеализаÑий, пÑедÑÑавленнÑÑ Ð½Ð° ÑÑнке.</para ></answer ></qandaentry> <qandaentry ><question ><para >ЧÑо из ÑÐµÐ±Ñ Ð¿ÑедÑÑавлÑÐµÑ ÐºÐ»Ð¸ÐµÐ½ÑÑкое пÑогÑаммное обеÑпеÑение?</para ></question> <answer ><para >ÐÐ»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÐºÐ»Ð¸ÐµÐ½Ñа бÑла Ñоздана библиоÑека clip-ui (идÑÑ Ð² поÑÑавке CLIP), коÑоÑÐ°Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ ÑоздаваÑÑ Ð¿ÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ñ Ð³ÑаÑиÑеÑким инÑеÑÑейÑом. РнаÑÑоÑÑее вÑÐµÐ¼Ñ Ð¿Ð¾Ð´Ð´ÐµÑживаеÑÑÑ GTK+. ÐÐ»Ð¸ÐµÐ½Ñ ÑоединÑеÑÑÑ Ñ ÑеÑвеÑом пÑиложений и запÑаÑÐ¸Ð²Ð°ÐµÑ ÑоÑÐ¼Ñ Ð¸ даннÑе. ФоÑÐ¼Ñ Ð¾ÑобÑажаÑÑÑÑ Ð½Ð° ÑÑоÑоне клиенÑа и даннÑе, коÑоÑÑми они заполнÑÑÑÑÑ, ÑÐ¾Ñ ÑанÑÑÑÑÑ Ð½Ð° ÑеÑвеÑе.</para ></answer ></qandaentry> <qandaentry ><question ><para >Ркогда поÑвиÑÑÑ Ð´ÑÐ°Ð¹Ð²ÐµÑ Ð´Ð»Ñ Ð¼Ð¾ÐµÐ³Ð¾ лÑбимого виджеÑÑеÑа GTK+ 2.x (Qt, Motiff, Windows API...)?</para ></question> <answer ><para >E/AS поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ ÐºÐ°Ðº GTK+ 1.x, Ñак и GTK+ 2.x. ÐÑÑалÑнÑе виджеÑÑеÑÑ Ð±ÑдÑÑ ÑеализовÑваÑÑÑÑ Ð¿Ð¾ меÑе возможноÑÑей пÑи налиÑии ÑпÑоÑа.</para ></answer ></qandaentry> <qandaentry ><question ><para >Рпод какие плаÑÑоÑÐ¼Ñ Ð±ÑдÑÑ Ð¿ÑогÑаммÑ?</para ></question> <answer ><para >Ðока под *nix-like плаÑÑоÑÐ¼Ñ (Linux, FreeBSD, Solaris) — на Ð½Ð¸Ñ CLIP ÑабоÑаеÑ. Ðод Windows можно иÑполÑзоваÑÑ Cygwin, однако Ñодного поÑÑа CLIP под Windows пока неÑ. ХоÑÑ ÐµÑли Ñакой поÑÑ Ð¿Ð¾ÑвиÑÑÑ, E/AS бÑÐ´ÐµÑ Ð¿Ð¾ÑÑиÑован и на ÑÑÑ Ð¿Ð»Ð°ÑÑоÑмÑ.</para ></answer ></qandaentry> <qandaentry ><question ><para >Рпод конÑÐ¾Ð»Ñ Ð±ÑÐ´ÐµÑ ÐºÐ»Ð¸ÐµÐ½Ñ?</para ></question> <answer ><para >ÐопÑобÑйÑе <ulink url="http://zemljanka.sourceforge.net/cursed/" >конÑолÑнÑй поÑÑ GTK+</ulink >. Ðн пока еÑÑ Ð½ÐµÑÑабилен. РдалÑнейÑем Ð¼Ñ Ð¿Ð»Ð°Ð½Ð¸ÑÑем ÑделаÑÑ Ð½Ð°ÑивнÑй конÑолÑнÑй ÐºÐ»Ð¸ÐµÐ½Ñ Ð½Ð° базе конÑолÑного дÑайвеÑа Ð´Ð»Ñ clip-ui.</para ></answer ></qandaentry> <qandaentry ><question ><para >РеÑÑÑ Ð»Ð¸ Ñ Ð¿ÑоекÑа ÑайÑ?</para ></question> <answer ><para >Ðа, его адÑÐµÑ <ulink url="http://eas.lrn.ru" >http://eas.lrn.ru</ulink >.</para ></answer ></qandaentry> <qandaentry ><question ><para >Ðак ÑÑаÑÑ ÑазÑабоÑÑиком?</para ></question> <answer ><para >ÐаÑниÑе Ñ Ð¿Ð¾Ð´Ð¿Ð¸Ñки на ÑаÑÑÑÐ»ÐºÑ <emphasis >eas...@li...</emphasis > (ÑÑа ÑаÑÑÑлка ÑейÑÐ°Ñ ÑÐ°Ð¼Ð°Ñ Ð°ÐºÑивнаÑ). СпиÑок ÑаÑÑÑлок можно найÑи на наÑем ÑайÑе по адÑеÑÑ <ulink url="http://eas.lrn.ru/maillist.php" >http://eas.lrn.ru/maillist.php</ulink >. ÐÑ Ð³Ð¾ÑÐ¾Ð²Ñ Ð¿ÑинÑÑÑ Ð»ÑбÑÑ Ð¿Ð¾Ð¼Ð¾ÑÑ: ÑазÑабоÑкÑ, ÑеÑÑиÑование, оÑладкÑ, напиÑание конÑигÑÑаÑий, пÑодвижение и пÑоÑÑо делÑнÑе ÑовеÑÑ.</para ></answer ></qandaentry> <qandaentry ><question ><para >ÐÑкÑда ÑазÑабоÑÑики знаÑÑ, ÑÑо мне надо Ð´Ð»Ñ Ð°Ð²ÑомаÑизаÑии?</para ></question> <answer ><para >Ðа ÑайÑе пÑоекÑа еÑÑÑ ÑпеÑиалÑнÑй Ñаздел — <ulink url="http://eas.lrn.ru/index.php?module=request" >ТÑебованиÑ</ulink >.</para ></answer ></qandaentry> <qandaentry ><question ><para >Чем ÑазÑабоÑÑик плаÑÑоÑÐ¼Ñ Ð¾ÑлиÑаеÑÑÑ Ð¾Ñ ÑазÑабоÑÑика конÑигÑÑаÑии?</para ></question> <answer ><para >ÐÑимеÑно Ñо же деление, как и на ÑиÑÑемнÑÑ Ð¸ пÑикладнÑÑ Ð¿ÑогÑаммиÑÑов. РазÑабоÑÑики плаÑÑоÑÐ¼Ñ Ð´ÐµÐ»Ð°ÑÑ Ð³Ð¸Ð±ÐºÑÑ Ð¿Ð»Ð°ÑÑоÑÐ¼Ñ Ð´Ð»Ñ ÑеализаÑии лÑбой конÑигÑÑаÑии. Ð ÑÑо пÑоÑеÑÑ Ð¶ÑÑÑко конÑÑолиÑÑеÑÑÑ ÑÑководиÑелем пÑоекÑа. РазÑабоÑаÑÑ ÐºÐ¾Ð½ÑигÑÑаÑÐ¸Ñ Ð¼Ð¾Ð¶ÐµÑ Ð»Ñбой желаÑÑий и она Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð²Ñложена на Ð½Ð°Ñ ÑÐ°Ð¹Ñ (конеÑно, поÑле пÑовеÑки на ÑабоÑоÑпоÑобноÑÑÑ). ÐекоÑоÑÑе ÑдаÑнÑе ÑеÑÐµÐ½Ð¸Ñ Ð² конÑигÑÑаÑии могÑÑ Ð±ÑÑÑ Ð¸ÑполÑÐ·Ð¾Ð²Ð°Ð½Ñ ÐºÐ°Ðº модÑли пÑи Ñоздании новÑÑ .</para ></answer ></qandaentry> <qandaentry ><question ><para >Ð Ð²Ð¾Ñ Ð¿ÑидÑÑ 1С (Microsoft, SAP...) и кÑÐ¿Ð¸Ñ Ð²Ð°Ñ Ñ Ð¿Ð¾ÑÑÐ¾Ñ Ð°Ð¼Ð¸!</para ></question> <answer ><para >Ðе полÑÑиÑÑÑ, Ñак как пÑÐ¾ÐµÐºÑ Ð¾ÑкÑÑÑÑй и не подвеÑжен ÑкÑпке коммеÑÑеÑкими ÑÑÑÑкÑÑÑами. Ðаже в ÑлÑÑае ÑизиÑеÑкого ÑÑÑÑÐ°Ð½ÐµÐ½Ð¸Ñ ÑÑководиÑÐµÐ»Ñ Ð¸ ÑазÑабоÑÑиков, пÑÐ¾ÐµÐºÑ Ð¼Ð¾Ð¶ÐµÑ Ð¿ÑодолжиÑÑ Ð»Ñбой Ñеловек, ÑкаÑавÑий код.</para ></answer ></qandaentry> <qandaentry ><question ><para >ÐÐ°ÐºÐ°Ñ Ð¿Ð¾Ð»Ð¸Ñика нÑмеÑаÑии веÑÑий E/AS?</para ></question> <answer ><para >ÐеÑÐ²Ð°Ñ Ð¿ÑблиÑÐ½Ð°Ñ Ð²ÐµÑÑÐ¸Ñ Ð¸Ð¼ÐµÐµÑ Ð½Ð¾Ð¼ÐµÑ 0.1.0 (веÑÑиÑ.под-веÑÑиÑ.ÑбоÑка). ÐÑи незнаÑиÑелÑнÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸ÑÑ Ð±ÑÐ´ÐµÑ Ð¼ÐµÐ½ÑÑÑÑÑ Ð¿Ð¾ÑледнÑÑ ÑиÑÑа. ÐÐ¾Ð¼ÐµÑ Ð¿Ð¾Ð´-веÑÑии менÑеÑÑÑ Ð¿Ñи знаÑиÑелÑнÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸ÑÑ Ð² коде. Ðзменение номеÑа веÑÑии бÑÐ´ÐµÑ Ð¿ÑоиÑÑ Ð¾Ð´Ð¸ÑÑ Ð¿Ñи каÑдиналÑнÑÑ Ð½Ð¾Ð²Ð¾Ð²Ð²ÐµÐ´ÐµÐ½Ð¸ÑÑ (напÑимеÑ, пÑи ÑеализаÑии полноÑÑнкÑионалÑной ÑабоÑаÑÑей конÑигÑÑаÑии или ÑÐµÑ Ð½Ð¾Ð»Ð¾Ð³Ð¸Ð¸).</para ></answer ></qandaentry> <qandaentry ><question ><para >ÐоÑÐµÐ¼Ñ E/AS ÑазÑабаÑÑваеÑÑÑ Ñак медленно?</para ></question> <answer ><para >Ðи один из ÑазÑабоÑÑиков не занимаеÑÑÑ Ð¿ÑоекÑом полнÑй ÑабоÑий денÑ. Так пÑоиÑÑ Ð¾Ð´Ð¸Ñ Ð²Ð¾ вÑÐµÑ Ð¾ÑкÑÑÑÑÑ Ð¿ÑоекÑÐ°Ñ . Ðднако ÑÑÐ¾Ñ Ð½ÐµÐ´Ð¾ÑÑаÑок компенÑиÑÑеÑÑÑ Ð½ÐµÐ·Ð°Ð²Ð¸ÑимоÑÑÑÑ ÑазÑабоÑÑиков Ð¾Ñ ÑабоÑодаÑÐµÐ»Ñ Ð¸ инвеÑÑоÑов.</para ></answer ></qandaentry> <qandaentry ><question ><para >ЧÑо нÑжно, ÑÑÐ¾Ð±Ñ Ð¿Ð¾ÑÑавиÑÑ Ñ ÑÐµÐ±Ñ E/AS?</para ></question> <answer ><para >СкаÑайÑе CLIP, E/AS и ocmng из Ñаздела <ulink url="http://eas.lrn.ru/index.php?module=download" >СкаÑаÑÑ</ulink >. УÑÑановиÑе CLIP, E/AS и ocmng как опиÑано в докÑменÑаÑии. ÐÐ»Ñ ÐºÐ»Ð¸ÐµÐ½Ñа вам нÑжно ÑÑÑановиÑÑ GTK+ (1.x или 2.x или обе веÑÑии) и библиоÑÐµÐºÑ Expat пеÑед ÑбоÑкой CLIP. ÐÐ»Ñ ÑеÑвеÑа вам понадобиÑÑÑÑ PAM. ÐÑли Ð²Ñ Ð¸ÑполÑзÑеÑе Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ Ð¿Ð°ÐºÐµÑов, ÑÑÑановиÑе пакеÑÑ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñек и пакеÑÑ -devel Ð´Ð»Ñ Ð½Ð¸Ñ .</para ></answer ></qandaentry> </qandaset> </chapter> </book> Index: Makefile =================================================================== RCS file: /cvsroot/eas-dev/eas/doc/Makefile,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- Makefile 3 Nov 2006 16:12:06 -0000 1.3 +++ Makefile 8 Nov 2006 09:42:35 -0000 1.4 @@ -10,65 +10,45 @@ CLIPLIBS = #CLIPFLAGS = -a -O -b CLIPINCLUDE = -I$(CLIPROOT)/include -FLAGS = -V %two-side%=\#f \ - -V %chapter-autolabel%=\#t \ - -V %appendix-autolabel%=\#t \ - -V %section-autolabel%=\#t \ - -V %section-label-includes-component-label%=\#t \ - -V %toc-depth%=2 \ - -V %generate-part-toc%=\#t \ - -V %generate-article-toc%=\#t \ - -V %paper-type%=A4 \ - -V %use-id-as-filename%=\#t \ - -V %always-format-variablelist-as-table%=\#t -# -V %indent-programlisting-lines%=\#t -# -V %may-format-variablelist-as-table%=\#t \ -# TODO: -# 1) include program checking in configure script -# 1) Content creation by manually (only first level must be stayed) -# 3) Custom stylesheet -# 4) Content in eas chapter -# -V %stylesheet%=???.css +FLAGS = +#FLAGS = \ +# -V %chapter-autolabel%=\#t \ +# -V %appendix-autolabel%=\#t \ +# -V %section-autolabel%=\#t \ +# -V %use-id-as-filename%=\#t \ +# -V %stylesheet%="common.css" \ +# -V %stylesheet-type%="text/css" DOC2HTML = docbook2html $(FLAGS) DOC2PDF = docbook2pdf $(FLAGS) - -XML_L10N = xml_l10n -OBJS = xml_l10n.o -LANGS = ru +LANGS = html.ru .SUFFIXES: .prg .o .PHONY: all clean install uninstall distclean -all: $(XML_L10N) html l10n #index.pdf +all: html html.ru html: index.docbook - rm -rf html/stylesheet-images SP_ENCODING=xml $(DOC2HTML) -o html index.docbook && \ cd html && for i in *.html;do \ - mv $$i .temp; sed -e 's|</HEAD|<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"></HEAD|' .temp >$$i; rm -f .temp; done && \ - cp -R ../images stylesheet-images && cd .. + mv $$i .temp; sed -e 's|</HEAD|<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"></HEAD|' .temp >$$i; rm -f .temp; done + +html.ru: index.ru.docbook + SP_ENCODING=xml $(DOC2HTML) -o html.ru index.ru.docbook && \ + cd html.ru && for i in *.html;do \ + mv $$i .temp; sed -e 's|</HEAD|<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"></HEAD|' .temp >$$i; rm -f .temp; done index.pdf: index.docbook SP_ENCODING=xml $(DOC2PDF) index.docbook clean: - rm -rf html - rm -f $(XML_L10N) $(OBJS) *.pdf *.aux *.log *.out *.tex - @for dir in $(LANGS);do echo "Clear for '$$dir'..."; cd $$dir && make clean && cd ..;done - -$(XML_L10N): $(OBJS) - $(CLIP) $(CLIPFLAGS) -esl $(CLIPINCLUDE) -o $(XML_L10N) $(OBJS) $(CLIPLIBS) - -.prg.o: - $(CLIP) $(CLIPFLAGS) $(CLIPINCLUDE) $< + rm -rf html $(LANGS) + rm -f *.pdf *.aux *.log *.out *.tex -l10n: - @for dir in $(LANGS);do echo "Create documentation for '$$dir'..."; cd $$dir && make && cd ..;done - - install: all - + ../mkinstalldirs $(EASDATADIR)/doc + cp -R html $(EASDATADIR)/doc/en + cp -R html.ru $(EASDATADIR)/doc/ru uninstall: Index: index.docbook =================================================================== RCS file: /cvsroot/eas-dev/eas/doc/index.docbook,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- index.docbook 3 Nov 2006 16:12:06 -0000 1.1 +++ index.docbook 8 Nov 2006 09:42:35 -0000 1.2 @@ -1,11 +1,11 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0" encoding="utf-8" ?> <!-- This is a part of E/AS distribution. You can find it on the Web: http://eas.lrn.ru - Copyright (C) 2004 by E/AS Software Foundation. + Copyright (C) 2004-2006 by E/AS Software Foundation. Author: Andrey Cherepanov <sib...@ma...> - Last change: 31 May 2004. + Last change: 06 Nov 2004. [...3565 lines suppressed...] - <variablelist>&args; - <varlistentry><term><parameter>value</parameter> [Type: <type>number|string|date|boolean|NIL</type>]</term> - <listitem><para>Transformed value.</para></listitem></varlistentry> - <varlistentry><term><parameter>format</parameter> &type_num;</term> - <listitem><para>Format for translation to string. <emphasis>Now is not implemented yet</emphasis>. &optional;</para></listitem></varlistentry> - </variablelist> - </listitem></varlistentry> - <varlistentry><term><function>XMLGetTag(<parameter>root</parameter>, <parameter>path</parameter>)</function></term> - <listitem><para>Get element by specified hierarchy.</para> - <variablelist>&args; - <varlistentry><term><parameter>root</parameter> [Type: <type>XMLTag</type>]</term> - <listitem><para>Element from which lookup is begun.</para></listitem></varlistentry> - <varlistentry><term><parameter>path</parameter> &type_str;</term> - <listitem><para>Hierarchy as tag names (in upper case) delimited by dots. For example, if queried <quote><constant>HEAD.VALUE</constant></quote> will be lookup first child element with name 'head' and its child element with name 'value' will be returned. If tag not found in hierarchy NIL is returned.</para></listitem></varlistentry> - </variablelist> - </listitem></varlistentry> -</variablelist> -</appendix> - </book> --- index.pot DELETED --- --- version.sgml DELETED --- |