>******************************************************************** >* Description.......: SearchScx - searches all SCX files for sSearchString in MethodToSearch >* Calling Samples...: >* Parameter List....: pcSearchString, pcMethodToSearch >* Created by........: Ed Rauh >* Modified by.......: Nadya Nosonovsky 10/18/2000 03:01:23 PM >******************************************************************** >lparameters pcSearchString, pcMethodToSearch >if vartype(pcSearchString)'C' > pcSearchString=upper("SetFocus") >else > pcSearchString=upper(pcSearchString) >endif >if vartype(pcMethodToSearch)'C' > pcMethodToSearch=upper("Init") >else > pcMethodToSearch=upper(pcMethodToSearch) >endif >=GetAllFiles1('\redp\appl','scx') && Creates cursor filesADIR of all scx files >local oReg, lcTextString >oReg = createobject('VBScript.RegExp') >oReg.global = .t. >oReg.IgnoreCase = .t. >oReg.pattern = 'PROCEDURE '+pcMethodToSearch+'([^\0]*)ENDPROC' >#define CRLF chr(13)+chr(10) >lcTextString = '' >select FilesAdir && cursor with all scx files >scan > if file(forceext(cFileName,'sct')) && Memo file is where > use (cFileName) alias ThisSCX in 0 noupdate > select ThisSCX > scan for 'form' $ lower(baseclass) and ! empty(Methods) > Matches=oReg.Execute(ThisSCX.Methods) > for each oMatch in Matches > if pcSearchString $ upper(oMatch.value) > lcTextString = lcTextString + FilesAdir.cFileName+ ': ' +ThisSCX.ObjName + CRLF + ; > oMatch.value + CRLF + CRLF > replace flag with .t. in FilesAdir > endif > endfor && each match > endscan && each form rec in SCX > use in ThisSCX > endif > select FilesAdir && safety meassure >endscan && each app dir >if len(lcTextString) > 0 > =strtofile(lcTextString,'Result.TXT') > modi file 'Result.TXT' >endif