This is my first sample form of Activity Log in FoxPro. My current project which is a General ledger required me to have Activity Log. It is easy to make a log but requires me to update the table from different form and command such as login, logout, add, edit, delete and post. But will be handy of traceability purpose.
Search This Blog
Showing posts with label vfp code. Show all posts
Showing posts with label vfp code. Show all posts
Changing Signatory Code
Most of the program I made out of FoxPro required signatory. This signatory can be achieve upon login into the system.
SELECT Signatory
LOCATE FOR signnum = 1
IF FOUND()
REPLACE SignName WITH THISFORM.Text1.Value
REPLACE SignPostion WITH THISFORM.Text2.Value
ENDIF
LOCATE FOR signnum = 2
IF FOUND()
REPLACE SignName WITH THISFORM.Text3.Value
REPLACE SignPostion WITH THISFORM.Text4.Value
ENDIF
LOCATE FOR signnum = 3
IF FOUND()
REPLACE SignName WITH THISFORM.Text5.Value
REPLACE SignPostion WITH THISFORM.Text6.Value
ENDIF
=MESSAGEBOX("Signatories successfully save.")
SELECT Signatory
LOCATE FOR signnum = 1
IF FOUND()
REPLACE SignName WITH THISFORM.Text1.Value
REPLACE SignPostion WITH THISFORM.Text2.Value
ENDIF
LOCATE FOR signnum = 2
IF FOUND()
REPLACE SignName WITH THISFORM.Text3.Value
REPLACE SignPostion WITH THISFORM.Text4.Value
ENDIF
LOCATE FOR signnum = 3
IF FOUND()
REPLACE SignName WITH THISFORM.Text5.Value
REPLACE SignPostion WITH THISFORM.Text6.Value
ENDIF
=MESSAGEBOX("Signatories successfully save.")
Determining First Character
If you wwould like to determine the first character or first three characters etc of your textbox, you can use below foxpro codes:
THISFORM.Text1.VALUE = LEFT(TRANS(THISFORM.Text2.Value),1)
THISFORM.Text1.VALUE = LEFT(TRANS(THISFORM.Text2.Value),1)
Day Month Year Code
THISFORM.TEXT1.VALUE = DAY(DATE())
THISFORM.TEXT2.VALUE = CMONTH(DATE())
THISFORM.TEXT3.VALUE = YEAR(DATE())
THISFORM.TEXT2.VALUE = CMONTH(DATE())
THISFORM.TEXT3.VALUE = YEAR(DATE())
Main Program
SET CLASSLIB TO C:\GenLed\Classlib\frame
SET CLASSLIB TO C:\GenLed\Classlib\basectrl ADDITIVE
SET CLASSLIB TO C:\GenLed\Classlib\DeBrief
_screen.picture = "C:\GenLed\Images\background.bmp"
SET CENTURY ON
SET CENTURY TO 19 ROLLOVER 60
SET EXCLUSIVE OFF
RUN NumToWords
DO FORM "C:\GenLed\Forms\Login"
ON SHUTDOWN QUIT
MainApp = CREATEOBJECT("DEBRIEF", "FMLFC GENLED - Accounting Systematic Tool")
MainApp.ReadEvents()
SET CLASSLIB TO
RETURN
SET CLASSLIB TO C:\GenLed\Classlib\basectrl ADDITIVE
SET CLASSLIB TO C:\GenLed\Classlib\DeBrief
_screen.picture = "C:\GenLed\Images\background.bmp"
SET CENTURY ON
SET CENTURY TO 19 ROLLOVER 60
SET EXCLUSIVE OFF
RUN NumToWords
DO FORM "C:\GenLed\Forms\Login"
ON SHUTDOWN QUIT
MainApp = CREATEOBJECT("DEBRIEF", "FMLFC GENLED - Accounting Systematic Tool")
MainApp.ReadEvents()
SET CLASSLIB TO
RETURN
Public
Recently I learned how to use PUBLIC in getting info or data from another form to another form. And it was very usable for me since my program has a login and branch name requirements.
On Login Form
PUBLIC pBranchName
pBranchName = ALLTRIM(THISFORM.Combo1.Value)
On Branch Setting Form
PUBLIC pBranchName
THISFORM.Label18.Caption = pBranchName
On Journal Entry Form
PUBLIC pBranchName
LOCATE FOR ALLTRIM(BranchName) = ALLTRIM(THISFORM.Combo1.Value)
pBranchName = ALLTRIM(BranchName)
= MESSAGEBOX("You select "+ALLTRIM(pBranchName)+" Office?", "Confirmation")
THISFORM.Release()
Opening a PDF File
You can open a PDF file in VFP b using below codes. Just specify the location of your PDF file on cFileName
DECLARE INTEGER ShellExecute IN shell32.dll ;
INTEGER hndWin, ;
STRING cAction, ;
STRING cFileName, ;
STRING cParams, ;
STRING cDir, ;
INTEGER nShowWin
cFileName = "c:\GenLed\Images\CC.pdf"
cAction = "open"
ShellExecute(0,cAction,cFileName,"","",1)
DECLARE INTEGER ShellExecute IN shell32.dll ;
INTEGER hndWin, ;
STRING cAction, ;
STRING cFileName, ;
STRING cParams, ;
STRING cDir, ;
INTEGER nShowWin
cFileName = "c:\GenLed\Images\CC.pdf"
cAction = "open"
ShellExecute(0,cAction,cFileName,"","",1)
Edit Save Code
Most of the time neophyte VFP Programmers know how to add, edit and save data on the table. But how can we improve the form design? This is a sample I usually used, to ask or confirm if the User want to edit dat. A confirmation message box will appear with a 'Yes' or 'No'. From that the User can choose which will be the next function.
lAnswer = MESSAGEBOX("Save and update Counter Dispatch?", 4, "Confirmation")
IF lAnswer = 6
SELECT sviewbranch
LOCATE FOR IdNum = THISFORM.Text12.Value
IF FOUND()
REPLACE beginbal WITH THISFORM.TEXT1.Value
REPLACE branchname WITH THISFORM.TEXT2.Value
REPLACE branchaddress WITH THISFORM.TEXT3.Value
REPLACE branchdesc WITH THISFORM.TEXT4.Value
REPLACE debit WITH THISFORM.TEXT5.Value
REPLACE credit WITH THISFORM.TEXT6.Value
REPLACE netchange WITH THISFORM.TEXT7.Value
REPLACE ending WITH THISFORM.TEXT8.Value
REPLACE branchdescnum WITH THISFORM.TEXT9.Value
THISFORM.REFRESH
ENDIF
Retrieve Code
If you want to have an easy way to retrieve data and have it appear in a text box or combo box just by clicking a single data from that row, there is a simple remedy for that. Just follow the following code and paste it on click.
THISFORM.Text1.VALUE = sviewbranch.beginbal
THISFORM.Text2.VALUE = sviewbranch.branchname
THISFORM.Text3.VALUE = sviewbranch.branchaddress
THISFORM.Text4.VALUE = sviewbranch.branchdesc
THISFORM.Text5.VALUE = sviewbranch.debit
THISFORM.Text6.VALUE = sviewbranch.credit
THISFORM.Text7.VALUE = sviewbranch.netchange
THISFORM.Text8.VALUE = sviewbranch.ending
THISFORM.Text9.VALUE = sviewbranch.branchdescnum
Subscribe to:
Posts (Atom)