*********************************************************
** Author : Ramani (Subramanian.G)
** FoxAcc Software / Winners Software
** ramani_g@yahoo.com
** Type : Copyrights reserved.
** Freeware for non commercial use
** Warranty : Nothing implied or explicit
** Last modified : 04 November, 2003
*********************************************************
** Programe gsCode2
** Category : Development Tool
** This program will write all methods from all forms
* included in the open project
* to a text file with same name as project
*********************************************************
** How to Run..
** 1. Save the following code as gsCode2.PRG
** 2. Open the project
** 3. From command window type DO gsCode2
** OR =GSCODE2()
*********************************************************
[COLOR BLUE]
** PROCEDURE gscode2
*
#DEFINE CRLF chr(13)+chr(10)
LOCAL cFormFile, cAlias, cTable, cSaveError, ;
cOutPut, cTitle, Date_time, cLine, cLine1, ;
nFiles, nCount, nLoc
CLOSE TABLES ALL
** Collect files from project
nFiles = application.ActiveProject.Files.Count
cOutPut = application.ActiveProject.Name
cOutPut=FULLPATH(JUSTSTEM(cOutPut))+".txt"
cLine = REPLICATE("*",70)+CRLF
cLine1 = "** procedure end *"+REPLICATE("*",50)+CRLF
cTitle = "** Documentation of the forms in Project: " +JUSTSTEM(cOutPut)+CRLF
date_time = "** Date/Time: "+ TTOC(DATETIME())+CRLF
*Write the headers with formTitle+date+time
STRTOFILE("",cOutput,.F.) && Wipe existing file
STRTOFILE(cTitle,cOutPut,.T.)
STRTOFILE(date_time,cOutPut,.T.)
STRTOFILE(cLine,cOutPut,.T.)
STRTOFILE(CRLF+CRLF+CRLF,cOutPut,.T.)
**
FOR i = 1 TO nFiles
cFormFile = application.ActiveProject.Files(i).NAME
IF UPPER(JUSTEXT(cFormFile)) = "SCX"
** Now we can actually start
cTable=JUSTSTEM(cFormFile)
cAlias="_"+JUSTSTEM(cFormFile)
nCount = 1
USE (cFormFile) IN 0 ALIAS (cALias)
SELECT (cAlias)
** Create a sub-title for the form
cTitle = "** FORM: " +cTable+CRLF
STRTOFILE(cTitle,cOutPut,.T.)
STRTOFILE(cLine,cOutPut,.T.)
**
SCAN
* Look for Methods
DO WHILE .t.
nLoc=AT("PROCEDURE",UPPER(methods), nCount)
IF nLoc>0
cTemp=SUBSTR(methods,nLoc)
cTemp=LEFT(cTemp,AT("ENDPROC",cTemp)+7)
STRTOFILE(cTable+ ;
" *** "+objname+CRLF+cTemp,cOutput,.T.)
STRTOFILE(cLine1,cOutPut,.T.)
STRTOFILE(CRLF+CRLF+CRLF,cOutPut,.T.)
ELSE
EXIT
ENDIF
ncount = nCount+1
ENDDO
nCount = 1
ENDSCAN
STRTOFILE(cLine,cOutPut,.T.)
STRTOFILE("** End of form procedures....: "+ ;
cTable+CRLF,cOutPut,.T.)
STRTOFILE(cLine+cline+cline+cline+cline,cOutPut,.T.)
STRTOFILE(CRLF+CRLF+CRLF,cOutPut,.T.)
USE IN (cAlias)
ENDIF
ENDFOR
MODIFY FILE (cOutPut)
RETURN [/color]
*********************************************************
* EOF
*********************************************************
Evaluate this to make others know how useful is this
*********************************************************
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.