INIT formos koregavimo lange
** Formos INIT-as
** Griežtai reikalauti filtravimo failo
bind_command("EXECSCRIPT(thisform.ShowTest,thisform)",thisform,"Show")
thisform.AddProperty("ShowTest",SUBSTR(komanda_v,ATC(CHR(13),komanda_v,ij_k+1)))
EXIT
LPARAMETERS _thisform
LOCAL lcFileName, _err
_err=.F.
** Priskirti filtravimo failą
m.lcFileName="C:\RIV_GAMA\imone\padalinys001.FIL"
IF !FILE(lcFileName)
_thisform.hide()
MESSAGEBOX("Nerastas filtravimo failas "+lcFileName,16,"Klaida!")
RETURN .F.
ENDIF
** Patikriname ar filtravimo lentelė atitinka
IF USED("temp_fil")
USE IN temp_fil
ENDIF
_err=.F.
TRY
USE (m.lcFileName) SHARED IN 0 ALIAS temp_fil
mas=_thisform.filtravimo_salygos.failumasyvas
IF !EMPTY(mas)
mas=STRTRAN(mas,"thisform.","m._thisform.")
_err=.T.
FOR m.i=1 TO ALEN(&mas,1)
SELECT temp_fil
GO TOP
LOCATE FOR LOWER(L7)=LOWER(&mas(m.i,1))
IF FOUND("temp_fil")
_err=.F.
EXIT
ENDIF
ENDFOR
ENDIF
CATCH TO _err
ENDTRY
IF USED("temp_fil")
USE IN temp_fil
ENDIF
IF TYPE("m._err")="O" OR m._err
_thisform.hide()
MESSAGEBOX("Klaidingas filtravimo failas "+lcFileName,16,"Klaida!")
RETURN .F.
ENDIF
** Uždėti filtravimo sąlygas
_thisform.filtravimo_salygos.fil_from(m.lcFileName)
*_thisform.filtravimo_salygos.Command1.enabled=.F.
RETURN .T.
Pateikiamas pavyzdys, kaip automatiškai priskirti papildomas filtravimo sąlygas, kurios buvo išsaugototos faile C:\RIV_GAMA\imone\padalinys001.FIL
Jeigu reikalingas klavišas, kurį paspaudus užsideda tam tikros filtravimo sąlygos, jis užprogramuojamas taip:
_thisform=thisform
EXECSCRIPT(SUBSTR(komanda_v,ATC(CHR(13),komanda_v,ij_k+1)))
EXIT
** Priskirti filtravimo failą
m.lcFileName="C:\RIV_GAMA\imone\padalinys001.FIL"
IF !FILE(lcFileName)
_thisform.hide()
MESSAGEBOX("Nerastas filtravimo failas "+lcFileName,16,"Klaida!")
RETURN .F.
ENDIF
** Patikriname ar filtravimo lentelė atitinka
IF USED("temp_fil")
USE IN temp_fil
ENDIF
_err=.F.
TRY
USE (m.lcFileName) SHARED IN 0 ALIAS temp_fil
mas=_thisform.filtravimo_salygos.failumasyvas
IF !EMPTY(mas)
mas=STRTRAN(mas,"thisform.","m._thisform.")
_err=.T.
FOR m.i=1 TO ALEN(&mas,1)
SELECT temp_fil
GO TOP
LOCATE FOR LOWER(L7)=LOWER(&mas(m.i,1))
IF FOUND("temp_fil")
_err=.F.
EXIT
ENDIF
ENDFOR
ENDIF
CATCH TO _err
ENDTRY
IF USED("temp_fil")
USE IN temp_fil
ENDIF
IF TYPE("m._err")="O" OR m._err
_thisform.hide()
MESSAGEBOX("Klaidingas filtravimo failas "+lcFileName,16,"Klaida!")
RETURN .F.
ENDIF
** Uždėti filtravimo salygas
_thisform.filtravimo_salygos.fil_from(m.lcFileName)
RETURN .T.