Mira...
IF .NOT. FUSE("80","CADPARAM") // CADPARAM.DBF
MsgStop( OemToAnsi( "ATENۂO: MANUTENۂO DO PLENO:" ) +CRLF+ ;
OemToAnsi( "SISTEMA EM MANUTEN€ÇO... PAR¶METROS." ) +CRLF+ ;
OemToAnsi( "ENQUANTO NÇO SAIREM DA MANUTEN€ÇO, " ) +CRLF+ ;
OemToAnsi( "NENHUM USUµRIO PODERµ ENTRAR NO PLENO." ) +CRLF+ ;
OemToAnsi( "PE€A PARA SAIREM DA MANUTEN€ÇO->PLENO." ) +CRLF+ ;
OemToAnsi( "PAR¶METROS DO PLENO BLOQUEADO. OOOPS!" ) +CRLF+ ;
OemToAnsi( "TECLE <ENTER> PARA SAIR DO PROGRAMA. " ), ;
OemToAnsi( "SISTEMA EM MANUTEN€ÇO - PAR¶METROS. " ) )
LIBERA_TUDO()
RETURN NIL
ENDIF
FUNCTION FUSE( W_SEL, W_ARQ, C_ALIAS )
PRIVATE W_TEM
IF C_ALIAS=NIL
IF SUBS(W_ARQ,1,4)="AAUX"
c_Alias:= "AAUX"+W_SEL
ELSE
IF RAT("\",W_ARQ)>0
c_Alias:= SUBS(W_ARQ,RAT("\",W_ARQ)+1,LEN(W_ARQ)-(RAT("\",W_ARQ)+IF(AT(".",W_ARQ)>0,4,0)))
ELSE
c_Alias:= SUBS(W_ARQ,1,LEN(W_ARQ)-IF(RAT(".",W_ARQ)>0,4,0))
ENDIF
ENDIF
ENDIF
IF WFILIAL
WTARQ="CADCLIEN;CADTRANS;CADVENDE;CADREGIO;CADPRODU;CADCLAES;CADIPIES;" + ;
"CADTRIES;CADCOMPO;CADFORPR;CADFORNE;CADOBRIG;CADTPFOR;CADOBSER;" + ;
"CADTPSER;CADCUSTO;CADCONDI;CADHISBA;CADTPCLI;CADETIQU;CADFICHA;" + ;
"CADEMPGD;CADASTCO;CADEXMED;CADREAJU;CADATCON;CADSINDI;CADPENDE;" + ;
"CADEXAUD;CADEXPER;CADEXUNI;CADENDER;CADPROFI;CADAVULS;CADMEDIC;" + ;
"CADJUSTI;CADSENHA;CADBANCO;CADMOVBA;CADCCVEN;CADDESCO;" // CADMOEDA;"
IF AT(W_ARQ,WTARQ)#0
W_ARQ="..\"+W_ARQ
ENDIF
ENDIF
SELE &W_SEL
USE(W_ARQ) SHARED ALIAS(c_Alias) VIA "DBFCDX"
IF.NOT.NETERR()
RETURN( .T. )
ENDIF
W_TEM=0
WHILE W_TEM <= 3
SYSREFRESH()
USE(W_ARQ) SHARED ALIAS(c_Alias) VIA "DBFCDX"
IF.NOT.NETERR()
RETURN( .T. )
ENDIF
W_TEM := W_TEM + 1
SysWait( .5 )
ENDDO
RETURN( .F. )
Regard, saludos.