01 Ago 2017 17:36
// ===============================================================
FUNCTION RdRec()
// ===============================================================
DO WHILE 1 = 1
IF REC_LOCK(5)
ARQLOCOK = 'T'
RETURN(.T.)
ELSE
ARQLOCOK = 'F'
OK = ' '
STORE VAL(SUBSTR(TIME(),7,2)) TO TIMEANT
IF TIMEANT >= 39
TIMEANT = TIMEANT - 40
ELSE
TIMEANT = TIMEANT + 20
ENDIF
DO WHILE 1 = 1
OPCAO:=MsgYesNo('Registro em USO. Tentar novamente ?')
DO CASE
CASE OPCAO==2
*.OR. VAL(SUBSTR(TIME(),7,2)) = TIMEANT
OK = 'N'
EXIT
CASE OPCAO==1
OK = 'S'
EXIT
CASE OPCAO # 0
ENDCASE
ENDDO
IF OK = 'S'
LOOP
ELSE
RETURN(.F.)
ENDIF
ENDIF
ENDDO
RETURN
// ===============================================================
FUNCTION RDADD()
// ===============================================================
// LOCK-ADD
DO WHILE 1 = 1
IF ADD_REC(5)
ARQLOCOK = 'T'
RETURN(.T.)
ELSE
ARQLOCOK = 'F'
OK = ' '
STORE VAL(SUBSTR(TIME(),7,2)) TO TIMEANT
IF TIMEANT >= 39
TIMEANT = TIMEANT - 40
ELSE
TIMEANT = TIMEANT + 20
ENDIF
DO WHILE 1 = 1
OPCAO:=MsgYesNo('Registro em USO. Tentar novamente ?')
DO CASE
CASE OPCAO==2
OK = 'N'
EXIT
CASE OPCAO==1
OK = 'S'
EXIT
CASE OPCAO # 0
ENDCASE
ENDDO
IF OK = 'S'
LOOP
ELSE
RETURN(.F.)
ENDIF
ENDIF
ENDDO
RETURN
// ===============================================================
FUNCTION RDUSE()
// ===============================================================
// LOCK-USE
DO WHILE 1 = 1
cor := setcolor()
//@ 24,01 SAY 'A b r i n d o ... '+ARQALIAS
IF NET_USE("&ARQ",.F.,5)
DO CASE
CASE ARQNIND = 0
*
CASE ARQNIND = 1
SET INDEX TO (ARQ1)
CASE ARQNIND = 2
SET INDEX TO (ARQ1),(ARQ2)
CASE ARQNIND = 3
SET INDEX TO (ARQ1),(ARQ2),(ARQ3)
CASE ARQNIND = 4
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4)
CASE ARQNIND = 5
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5)
CASE ARQNIND = 6
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5),(ARQ6)
CASE ARQNIND = 7
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5),(ARQ6),(ARQ7)
CASE ARQNIND = 8
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5),(ARQ6),(ARQ7),(ARQ8)
CASE ARQNIND = 9
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5),(ARQ6),(ARQ7),(ARQ8),(ARQ9)
OTHERWISE
MsgInfo('+>+>+>+>+>+ E R R O = ARQNIND ERRADO')
ENDCASE
ARQLOCOK = 'T'
GOTO TOP
RETURN
ELSE
ARQLOCOK = 'F'
OK = ' '
STORE VAL(SUBSTR(TIME(),7,2)) TO TIMEANT
IF TIMEANT >= 39
TIMEANT = TIMEANT - 40
ELSE
TIMEANT = TIMEANT + 20
ENDIF
DO WHILE 1 = 1
OPCAO:=MsgYesNo('Registro em USO. Tentar novamente ?')
DO CASE
CASE OPCAO==2
OK = 'N'
EXIT
CASE OPCAO==1
OK = 'S'
EXIT
CASE OPCAO # 0
ENDCASE
ENDDO
IF OK = 'S'
LOOP
ELSE
EXIT
ENDIF
ENDIF
ENDDO
RETURN
// ===============================================================
FUNCTION RDFIL()
// ===============================================================
/*
** Não foi necessário modificar nada nessa função.
**
*/
// LOCK-FIL
DO WHILE 1 = 1
IF FIL_LOCK(5)
ARQLOCOK = 'T'
EXIT
ELSE
ARQLOCOK = 'F'
OK = ' '
STORE VAL(SUBSTR(TIME(),7,2)) TO TIMEANT
IF TIMEANT >= 39
TIMEANT = TIMEANT - 40
ELSE
TIMEANT = TIMEANT + 20
ENDIF
DO WHILE 1 = 1
OPCAO:=MsgYesNo('Registro em USO. Tentar novamente ?')
DO CASE
CASE OPCAO==2 .OR. VAL(SUBSTR(TIME(),7,2)) = TIMEANT
OK = 'N'
EXIT
CASE OPCAO==1
OK = 'S'
EXIT
CASE OPCAO # 0
ENDCASE
ENDDO
IF OK = 'S'
LOOP
ELSE
EXIT
ENDIF
ENDIF
ENDDO
RETURN
// ===============================================================
FUNCTION RDEXC()
// ===============================================================
// LOCK-EXC
DO WHILE 1 = 1
IF .NOT. leto_File(TRIM(ARQ)+'.DBF') // file(cFile) -> leto_File(cFile)
MsgInfo('ARQUIVO ['+ARQ+'.DBF] NAO EXISTE !!')
INKEY(5)
ARQLOCOK='F'
RETURN
ENDIF
USE (ARQ) EXCLUSIVE ALIAS &ARQALIAS
XX=1
DO WHIL XX <= ARQNIND
XXX=SUBS(STR(XX,1),1,1)
INDICE = ARQ&XXX
tipo_ext = indexext()
IF .NOT. leto_File(TRIM(INDICE)+trim(tipo_ext))
MsgInfo('ARQUIVO ['+INDICE +tipo_ext + '] NAO EXISTE !!')
INKEY(5)
ARQLOCOK='F'
RETURN
ENDIF
XX=XX+1
EXIT
ENDDO
IF NET_USE("&ARQ",.T.,5)
DO CASE
CASE ARQNIND = 0
*
CASE ARQNIND = 1
SET INDEX TO (ARQ1)
CASE ARQNIND = 2
SET INDEX TO (ARQ1),(ARQ2)
CASE ARQNIND = 3
SET INDEX TO (ARQ1),(ARQ2),(ARQ3)
CASE ARQNIND = 4
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4)
CASE ARQNIND = 5
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5)
CASE ARQNIND = 6
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5),(ARQ6)
CASE ARQNIND = 7
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5),(ARQ6),(ARQ7)
OTHERWISE
MsgInfo('+>+>+>+>+>+ E R R O = ARQNIND ERRADO')
ENDCASE
ARQLOCOK = 'T'
GOTO TOP
EXIT
ELSE
ARQLOCOK = 'F'
OK = ' '
STORE VAL(SUBSTR(TIME(),7,2)) TO TIMEANT
IF TIMEANT >= 39
TIMEANT = TIMEANT - 40
ELSE
TIMEANT = TIMEANT + 20
ENDIF
DO WHILE 1 = 1
OPCAO:=MsgYesNo('Registro em USO. Tentar novamente ?')
DO CASE
CASE OPCAO==2
OK = 'N'
EXIT
CASE OPCAO==1
OK = 'S'
EXIT
ENDCASE
ENDDO
IF OK = 'S'
LOOP
ELSE
EXIT
ENDIF
ENDIF
ENDDO
RETURN
// ===============================================================
FUNCTION NET_USE()
// ===============================================================
PARAMETERS file, ex_use, wait
PRIVATE forever
forever = (wait = 0)
WHILE (forever .OR. wait > 0)
IF ex_use // Exclusive.
USE (file) EXCLUSIVE ALIAS &ARQALIAS
// ALERT("ALIA CRIADO -> " + ARQALIAS)
ELSE
USE (file) ALIAS &ARQALIAS // Shared.
// ALERT("ALIA CRIADO -> " + ARQALIAS)
ENDIF
IF ! NetErr() .AND. ! EMPTY(ALIAS())
return .t.
ELSE
alert("Erro ao abrir tabela.")
QUIT
ENDIF
INKEY(1)
wait = wait - 1
ENDDO
RETURN (.F.) // USE fails.
// ===============================================================
FUNCTION FIL_LOCK()
// ===============================================================
PARAMETERS wait
PRIVATE forever
IF FLOCK()
RETURN (.T.) && locked
ENDIF
forever = (wait = 0)
DO WHILE (forever .OR. wait > 0)
INKEY(.5) && wait 1/2 second
wait = wait - .5
IF FLOCK()
RETURN (.T.) && locked
ENDIF
ENDDO
RETURN (.F.) && not locked
// ===============================================================
FUNCTION REC_LOCK()
// ===============================================================
PARAMETERS wait
PRIVATE forever
IF RLOCK()
RETURN (.T.) && locked
ENDIF
forever = (wait = 0)
DO WHILE (forever .OR. wait > 0)
IF RLOCK()
RETURN (.T.) && locked
ENDIF
INKEY(.5) && wait 1/2 second
wait = wait - .5
ENDDO
RETURN (.F.) && not locked
// ===============================================================
FUNCTION ADD_REC()
// ===============================================================
PARAMETERS wait
PRIVATE forever,ord_ind
ord_ind = iif(indexord()=0,0,indexord())
set order to 0
APPEND BLANK
set order to (ord_ind)
IF .NOT. NETERR()
RETURN (.T.)
ENDIF
forever = (wait = 0)
DO WHILE (forever .OR. wait > 0)
APPEND BLANK
IF .NOT. NETERR()
RETURN .T.
ENDIF
INKEY(.5) && wait 1/2 second
wait = wait - .5
ENDDO
RETURN (.F.) && not locked
02 Ago 2017 18:12
No_Save_WA = 1 - server mode of internally handling database tables
1 each dbUseArea() will cause a real file open operation by the OS,
identical to what client requested, so workareas at the server are same as
at client side. [ WA number, alias, filter conditions, relations ]
0 each table is opened only one time, this workarea 'exchanged' in between client
requests. so only one connection will have access to the table at a time.
No relations active at server, Alias names at server are different from
the client.
Recommend '1' if you plan to execute functions at server side ( UDF ).
--------
Share_Tables = 0 - other software simultanous access tables used by server,
which changes logical or physical locking -- in dependance:
# No_Save_WA = 0
0 server open all tables in exclusive mode, what leads to
performance increase as e.g. record-/ file- locks are not applied by OS.
1 tables are opened in the same mode [shared/exclusive] as client
applications opened them, what allows LetoDB to work in coexistence with
other applications [ non LetoDB users ] simultanous on the same DBF tables.
# No_Save_WA = 1
1 physical record-/ file- locks set with the OS are viewable for other
0 only logical internally locking
03 Ago 2017 15:23
Itamar M. Lins Jr. escreveu:Mas vou adiantando que precisa do No_Save_WA = 1
Server = xxx.xxx.x.xx
IP = xxx.xxx.x.xx
Server = xxx.xxx.x.xx
IP = xxx.xxx.x.xx
Port = 2812
DataPath = C:\DADOS
;LogPath = /tmp
Default_Driver = CDX
;Lock_Scheme = 6
;Memo_Type = FPT
Share_Tables = 0
No_Save_WA = 1
Lower_Path = 0
EnableFileFunc = 1
EnableAnyExt = 1
Allow_UDF = 1
Pass_for_Login = 0
Pass_for_Manage = 0
Pass_for_Data = 0
;Pass_File = "leto_users"
Cache_Records = 60
;Max_Vars_Number = 1000
;Max_Var_Size = 67108864
;Tables_Max = 999
;Users_Max = 99
Debug = 1
Optimize = 1
;AutOrder = 0
;ForceOpt = 0
;TimeOut = 360
;Zombie_Check = 0
;Server_User = advantage
;Server_UID = 1000
;Server_GID = 4
DataBase = C:\DADOS
Backup = backup
Mask = *.dbf,*.dbt,*.ntx
Lock = 1
Seconds = 30
Wait = 1
ArcCmd = tar -cvzf /tmp/backup/leto.tar.gz /tmp/backup/*
08.01.2017 12:58:36 LetoDBf Server try to start ...
08.01.2017 12:58:36 UDF file: C:\Users\legna\Documents\GitHub\LetoDBf\bin\letoudf.hrb have been loaded.
08.01.2017 12:58:36 INFO: LetoDBf Server 3.00, will run at IP 192.168.0.13:2812 ( internal also used :2813 )
08.01.2017 12:58:36 INFO: DataPath=C:\DADOS, ShareTables=0, NoSaveWA=1, max database=999
08.01.2017 12:58:36 INFO: LoginPassword=0, CacheRecords=60, LockExtended=0
08.01.2017 12:58:36 ERROR hb_socketBind() port 2812 used -- often a short temporary problem
08.01.2017 12:58:36 Socket error OK
08.01.2017 12:58:36 Server has been closed.
08.01.2017 13:06:57 LetoDBf Server try to start ...
08.01.2017 13:06:57 UDF file: C:\Users\legna\Documents\GitHub\LetoDBf\bin\letoudf.hrb have been loaded.
08.01.2017 13:06:57 INFO: LetoDBf Server 3.00, will run at IP 192.168.0.13:2812 ( internal also used :2813 )
08.01.2017 13:06:57 INFO: DataPath=C:\DADOS, ShareTables=0, NoSaveWA=1, max database=999
08.01.2017 13:06:57 INFO: LoginPassword=0, CacheRecords=60, LockExtended=0
08.01.2017 13:06:57 DEBUG second socket: 352 for errors established
08.01.2017 13:06:57 DEBUG thread3() with pipe handle: 304 started ..
08.01.2017 13:11:22 INFO: connected 192.168.0.13:50013 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 13:11:53 INFO: disconnect 192.168.0.13:50013 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:18:58 INFO: connected 192.168.0.13:50757 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:19:31 INFO: disconnect 192.168.0.13:50757 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:22:38 INFO: connected 192.168.0.13:50773 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:24:45 INFO: disconnect 192.168.0.13:50773 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:26:31 INFO: connected 192.168.0.13:50805 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:27:50 INFO: disconnect 192.168.0.13:50805 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:30:22 INFO: connected 192.168.0.13:50843 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:32:43 INFO: disconnect 192.168.0.13:50843 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:37:02 INFO: connected 192.168.0.13:50903 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:37:47 INFO: disconnect 192.168.0.13:50903 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:38:05 INFO: connected 192.168.0.13:50906 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:38:15 INFO: disconnect 192.168.0.13:50906 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:44:21 INFO: connected 192.168.0.13:50947 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 15:06:29 INFO: disconnect 192.168.0.13:50947 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 17:56:23 DEBUG thread3() ending ..
08.01.2017 17:56:24 Server has been closed.
08.02.2017 13:12:43 LetoDBf Server try to start ...
08.02.2017 13:12:43 UDF file: C:\Users\legna\Documents\GitHub\LetoDBf\bin\letoudf.hrb have been loaded.
08.02.2017 13:12:43 INFO: LetoDBf Server 3.00, will run at IP 192.168.0.13:2812 ( internal also used :2813 )
08.02.2017 13:12:43 INFO: DataPath=C:\DADOS, ShareTables=0, NoSaveWA=1, max database=999
08.02.2017 13:12:43 INFO: LoginPassword=0, CacheRecords=60, LockExtended=0
08.02.2017 13:12:43 ERROR hb_socketBind() port 2812 used -- often a short temporary problem
08.02.2017 13:12:43 Socket error OK
08.02.2017 13:12:43 Server has been closed.
08.02.2017 14:26:16 LetoDBf Server try to start ...
08.02.2017 14:26:16 UDF file: C:\Users\legna\Documents\GitHub\LetoDBf\bin\letoudf.hrb have been loaded.
08.02.2017 14:26:16 INFO: LetoDBf Server 3.00, will run at IP 192.168.0.13:2812 ( internal also used :2813 )
08.02.2017 14:26:16 INFO: DataPath=C:\DADOS, ShareTables=0, NoSaveWA=1, max database=999
08.02.2017 14:26:16 INFO: LoginPassword=0, CacheRecords=60, LockExtended=0
08.02.2017 14:26:16 DEBUG second socket: 344 for errors established
08.02.2017 14:26:16 DEBUG thread3() with pipe handle: 356 started ..
08.02.2017 14:27:27 INFO: connected 192.168.0.13:50199 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.02.2017 14:30:01 INFO: disconnect 192.168.0.13:50199 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.02.2017 15:04:20 INFO: connected 192.168.0.13:50668 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.02.2017 15:04:42 INFO: disconnect 192.168.0.13:50668 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.02.2017 17:57:41 DEBUG thread3() ending ..
08.02.2017 17:57:42 Server has been closed.
03 Ago 2017 17:28
08.01.2017 12:58:36 ERROR hb_socketBind() port 2812 used -- often a short temporary problem
08.01.2017 12:58:36 Socket error OK
08.01.2017 12:58:36 Server has been closed.
08.01.2017 13:06:57 LetoDBf Server try to start ...
03 Ago 2017 17:33
04 Ago 2017 13:12
// ===============================================================
FUNCTION RDUSE()
// ===============================================================
// LOCK-USE
DO WHILE 1 = 1
cor := setcolor()
//@ 24,01 SAY 'A b r i n d o ... '+ARQALIAS
IF NET_USE("&ARQ",.F.,5)
DO CASE
CASE ARQNIND = 0
*
CASE ARQNIND = 1
SET INDEX TO (ARQ1)
CASE ARQNIND = 2
SET INDEX TO (ARQ1),(ARQ2)
CASE ARQNIND = 3
SET INDEX TO (ARQ1),(ARQ2),(ARQ3)
CASE ARQNIND = 4
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4)
CASE ARQNIND = 5
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5)
CASE ARQNIND = 6
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5),(ARQ6)
CASE ARQNIND = 7
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5),(ARQ6),(ARQ7)
CASE ARQNIND = 8
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5),(ARQ6),(ARQ7),(ARQ8)
CASE ARQNIND = 9
SET INDEX TO (ARQ1),(ARQ2),(ARQ3),(ARQ4),(ARQ5),(ARQ6),(ARQ7),(ARQ8),(ARQ9)
OTHERWISE
MsgInfo('+>+>+>+>+>+ E R R O = ARQNIND ERRADO')
ENDCASE
ARQLOCOK = 'T'
GOTO TOP
RETURN
ELSE
ARQLOCOK = 'F'
OK = ' '
STORE VAL(SUBSTR(TIME(),7,2)) TO TIMEANT
IF TIMEANT >= 39
TIMEANT = TIMEANT - 40
ELSE
TIMEANT = TIMEANT + 20
ENDIF
DO WHILE 1 = 1
OPCAO:=MsgYesNo('Registro em USO. Tentar novamente ?') // Executa este bloco
DO CASE
CASE OPCAO==2
OK = 'N'
EXIT
CASE OPCAO==1
OK = 'S'
EXIT
CASE OPCAO # 0
ENDCASE
ENDDO
IF OK = 'S'
LOOP
ELSE
EXIT
ENDIF
ENDIF
ENDDO
RETURN
08 Ago 2017 18:31
O que acontece é que o programa ao abrir cai no ELSE, como no exemplo abaixo:
08 Ago 2017 18:43
08 Ago 2017 19:14
use new shared
use new exclusive
ou simplesmente
DbUseArea(.T.,"LETO",cServidor+db,cAlias,.T.,.F.,'PTISO')
08.01.2017 13:11:22 INFO: connected 192.168.0.13:50013 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 13:11:53 INFO: disconnect 192.168.0.13:50013 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:18:58 INFO: connected 192.168.0.13:50757 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:19:31 INFO: disconnect 192.168.0.13:50757 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:22:38 INFO: connected 192.168.0.13:50773 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:24:45 INFO: disconnect 192.168.0.13:50773 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:26:31 INFO: connected 192.168.0.13:50805 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:27:50 INFO: disconnect 192.168.0.13:50805 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:30:22 INFO: connected 192.168.0.13:50843 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:32:43 INFO: disconnect 192.168.0.13:50843 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:37:02 INFO: connected 192.168.0.13:50903 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:37:47 INFO: disconnect 192.168.0.13:50903 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:38:05 INFO: connected 192.168.0.13:50906 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 14:38:15 INFO: disconnect 192.168.0.13:50906 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
08.01.2017 14:44:21 INFO: connected 192.168.0.13:50947 ADMCFG.exe CP: PT850 DF: DD/MM/YYYY conn-ID 0
08.01.2017 15:06:29 INFO: disconnect 192.168.0.13:50947 ADMCFG.exe users=(1 : 1 : 1), tables=(0 : 4)
15 Ago 2017 16:36
Date:14/08/2017 Time: 16:26:30
Error LETO/1021 Erro de abertura: LOGSIGA
Called from DBUSEAREA(0)
Called from NET_USE(329)
Called from RDEXC(272)
Called from ACESSOAOSISTEMA(457)
Called from (b)MAIN(4)
Called from _PROCESSINITPROCEDURE(5828)
Called from _ACTIVATEWINDOW(5579)
Called from DOMETHOD(8990)
Called from MAIN(88)