** cursor for holding hours ** note, the third column "nTotal" is just a bogus column but needs to be there CREATE CURSOR cHours (nRegular i, nOvertime i, nTotal i) ** adding some test data INSERT INTO cHours VALUES (8,0,0) INSERT INTO cHours VALUES (8,2,0) INSERT INTO cHours VALUES (8,5,0) INSERT INTO cHours VALUES (8,1,0) INSERT INTO cHours VALUES (8,0,0) INSERT INTO cHours VALUES (8,3,0) ** go to the top record LOCATE ** Create the form with a grid PUBLIC loForm loForm = NEWOBJECT("form") loForm.Width = 400 loForm.Height = 400 WITH loForm ** add the grid .AddObject("grdTimeSheet", "grid") WITH .grdTimeSheet ** format the grid .Visible = .T. .Top = 5 .Left = 5 .Width = 390 .Height = 390 ** set record source .RecordSource = "cHours" ** force column 3 to display the sum of columns 1 and 2 .Column3.ControlSource = "nRegular + nOvertime" ENDWITH ENDWITH ** show the form loForm.Show