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.

