>>>******************************************************************** >>>* 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