Michael,

I have a twofold comment.

1. What is your current build of R:BASE? There was a problem with temp 
tables that was fixed in a version a few months back but I don't remember 
when.

2. The disk-full error is usually a problem with your environment. What are 
your TEMP settings? Check to make sure that the user has the proper 
permissions to the temp folder. Make sure you don't have stray DLL's and 
CFG's floating around.

Jan
 


-----Original Message-----
From: "Michael J. Sinclair" <[email protected]>
To: [email protected] (RBASE-L Mailing List)
Date: Tue, 20 Oct 2009 19:52:54 +0000
Subject: [RBASE-L] - Dropping a temp table within an EEP causes an I/O Error

Hi All,
I have been working with the OnKeyPress Demo, and trying to modify it so 
that I can use 2 fields (lastname and frstname) to narrow down the patient 
selection. For some reason, I am getting an I/O error when I drop the 
temporary table and then recreate the table....but other than showing the 
error message, the EEP seems to work. I did not notice this problem when I 
used the OnKeyPressDemo as it was given to me, only when I added the second 
field. What can I do to track this down? It does happen even when I trace 
the file. The exact error messag is...

-ERROR- I/O problems - Check for a full disk. (2009)

The code in the EEP is (red lines are causing the problem)

SET VAR vlastkey TEXT = (LASTKEY(0))
PROPERTY idnomatch visible 'FALSE'
GETPROPERTY idkey_stroke3 textvalue 'vkey_stroke4'
SET VAR vlike2 TEXT = (.vkey_stroke4 +'%')
SET VAR vtest = NULL
SET ERROR MESSAGE 2059 OFF
--sel LName into vTEST INDI isNULL from customer +
--WHERE lname LIKE .vlike and COUNT = 1
SELECT lastname INTO vtest i1 FROM patinfo +
WHERE lastname LIKE .vlike AND frstname LIKE .vlike2 AND COUNT =1
SET ERROR MESSAGE 2059 ON
IF vtest IS NULL THEN
  PROPERTY idnomatch visible 'TRUE'
  --DELETE FROM patinfo_tmp
  --PROPERTY table patinfo_tmp 'refresh'
  GOTO bypass
ENDIF

SELECT COUNT patnumbr INTO vcount FROM patinfo WHERE +
lastname LIKE .vlike and frstname like .vlike2
IF vcount = 1 THEN
  SET V vpnum = patnumbr, vlastname = lastname, vfrstname = frstname +
  IN patinfo WHERE lastname LIKE .vlike and frstname like .vlike2
  SET V vpnumtxt = (CTXT(INT(.vpnum)))
  PROPERTY id_pnumtxt textvalue .vpnumtxt
  SET V vkey_stroke = .vlastname
  PROPERTY idkey_stroke textvalue .vlastname
  SET V vkey_stroke3 = .vfrstname
  PROPERTY idkey_stroke3 textvalue .vfrstname
  PROPERTY id_doctype set_focus 'TRUE'
ENDIF

DROP TABLE patinfo_tmp
PROJECT TEMP patinfo_tmp FROM patinfo +
USING patnumbr lastname frstname midlname birthday +
WHERE lastname LIKE .vlike and frstname like .vlike2 +
ORDER BY lastname frstname midlname birthday
--DELETE FROM patinfo_tmp
--APPEND patinfo TO patinfo_tmp WHERE lastname LIKE .vlike
PROPERTY table patinfo_tmp 'refresh'
LABEL bypass
RETURN

My hard drive is not full.
I can use the Delete from table and the APPEND commands that follow but are 
commented out, but I lose the nice alphabetized list. Is there a way to make 
the APPEND produce an alphabetized list??

TIA!
Mike 

Reply via email to