First off I want to thank Razz, Rachael, and Albert for their help. I did get it to work right. Now I have a question, what happened from the last 2 compiler builds. This code I posted I have been using for at least 2 years, at 3 locations, and on more than 10 computers and have never once had this happen. Is it better to use the code you posted and/or is the sqlcode becoming obsolete. I am sure I have sqlcode elsewhere in my app, but obviously employees clock in and out everyday, so it came up first. I have not changed the code or form at all, just re-compiled my startup file with the newer compiler version. Tom Hart
________________________________ From: A. Razzak Memon <[email protected]> To: RBASE-L Mailing List <[email protected]> Sent: Wed, May 12, 2010 1:55:44 PM Subject: [RBASE-L] - Re: Scratch At 09:21 AM 5/12/2010, TOM HART wrote: > On the newest build of compiled app(of which I have changed > nothing, just recompiled my rmd file), something seems to > have happened to the scratch settings. I have scratch set > to tmp in the startup file. Tom, Try the updated code below and see what you find. Make sure to verify all relevant table/column names prior to using this sample. Use TRACE option to go through the whole code and understand each step accordingly. -- Start here ... -- Test Sample For Tom Hart -- Created: 05/12/2010 -- Define All Global Variables SET VAR vEmpID INTEGER = NULL SET VAR vEmpIDTxt TEXT = NULL SET VAR vEmpFullName TEXT = NULL SET VAR vPause2Message TEXT = NULL SET VAR vRows INTEGER = 0 SET VAR vCaption TEXT = 'Employee ID' LABEL Start CLS DIALOG 'Enter Employee ID' vEmpIDTxt=26 vEndKey 1 + CAPTION .vCaption ICON QUESTION + OPTION THEMENAME R:BASE Rocks! IF vEndKey = '[Esc]' THEN GOTO Done ENDIF -- Validate Dialog Entry IF vEmpIDTxt IS NULL THEN PAUSE 2 USING 'Missing Employee ID!' + CAPTION .vCaption ICON STOP + BUTTON 'Click here to enter Employee ID ...' + OPTION MESSAGE_FONT_NAME Verdana + |MESSAGE_FONT_COLOR RED + |MESSAGE_FONT_SIZE 10 + |BUTTON_FONT_COLOR GREEN + |THEMENAME R:BASE Rocks! GOTO Start ENDIF -- Validate Data Type SET VAR vEmpID = (INT(.vEmpIDTxt)) IF vEmpID IS NULL THEN PAUSE 2 USING 'Invalid Employee ID!' + CAPTION .vCaption ICON STOP + BUTTON 'Click here to enter Employee ID ...' + OPTION MESSAGE_FONT_NAME Verdana + |MESSAGE_FONT_COLOR RED + |MESSAGE_FONT_SIZE 10 + |BUTTON_FONT_COLOR GREEN + |THEMENAME R:BASE Rocks! GOTO Start ENDIF -- Validate Employee ID SET VAR vRows = 0 SELECT COUNT(*) INTO vRows INDIC ivRows FROM EmployeeTab + WHERE EmpID = .vEmpID IF vRows = 0 THEN PAUSE 2 USING 'No Employee with such Employee ID!' + CAPTION .vCaption ICON STOP + BUTTON 'Click here to enter correct Employee ID ...' + OPTION MESSAGE_FONT_NAME Verdana + |MESSAGE_FONT_COLOR RED + |MESSAGE_FONT_SIZE 10 + |BUTTON_FONT_COLOR GREEN + |THEMENAME R:BASE Rocks! GOTO Start ELSE SELECT (EmpFName&EmpLName) INTO vEmpFullName INDIC iv1 + FROM EmployeeTab WHERE EmpID = .vEmpID ENDIF -- Check for Existing Record for the current day in AAEmpClock table SET VAR vRows = 0 SELECT COUNT(*) INTO vRows INDIC ivRows FROM AAEmpClock + WHERE EmpID = .vEmpID AND EmpDate = .#DATE -- If exists then Update. If Null then create a new record IF vRows = 0 THEN CLS ENTER USING AAEmpClockIn FOR 1 ROW SET VAR vPause2Message = (.vEmpFullName&'has Clocked-In') CLS PAUSE 2 USING .vPause2Message + CAPTION .vCaption ICON Confirm + BUTTON 'Click here to continue ...' + OPTION MESSAGE_FONT_NAME Verdana + |MESSAGE_FONT_COLOR GREEN + |MESSAGE_FONT_SIZE 10 + |MESSAGE_FONT_BOLD OFF + |BUTTON_COLOR WHITE + |BUTTON_FONT_COLOR GREEN + |THEMENAME R:BASE Rocks! GOTO Done ELSE CLS EDIT USING AAEmpClockOut WHERE EmpID = .vEmpID AND EmpDate = .#DATE SET VAR vPause2Message = (.vEmpFullName&'has Clocked-Out') CLS PAUSE 2 USING .vPause2Message + CAPTION .vCaption ICON Confirm + BUTTON 'Click here to continue ...' + OPTION MESSAGE_FONT_NAME Verdana + |MESSAGE_FONT_COLOR GREEN + |MESSAGE_FONT_SIZE 10 + |MESSAGE_FONT_BOLD OFF + |BUTTON_COLOR WHITE + |BUTTON_FONT_COLOR GREEN + |THEMENAME R:BASE Rocks! ENDIF LABEL Done CLS CLEAR VARIABLES iv%,vEmpID,vEmpIDTxt,vEmpFullName,vPause2Message, + vRows,vCaption RETURN -- End here ... Have fun! Very Best R:egards, Razzak.

