Can't copy to table (OpenInsight 32-bit Specific)
At 02 APR 2003 09:36:45AM Kauko Laurinolli wrote:
I have shared Arev/OI32 tables.
Everything has worked OK until few days ago my main tables became un-accessible.
In entry forms I couldn't bring up any rows, form just beeps.
I deleted all rows and used Arev: copyrow clients_old * to:(clients
It appears that copyrow happens (I can do it multiple times) but Clients table will remain empty.
There was a DICT.TEMP_CLIENTS which I deleted but it didn't help.
What can be wrong and how to debug this kind of bizarre behaviour?
At 02 APR 2003 10:01AM Don Miller wrote:
Couple of questions:
1. Can you see the copied rows from AREV?
If you can, then the data portion of the table is intact.2. Are there any Indexes on the table in question?
If so, have you tried removing the indexing and re-installing.3. Are there any GFE's in the Dictionary?
If the DICT has any GFE's, AREV might not care (unless you have indexes) until you use the dictionary. OI, however, won't attach a table if the dictionary has any GFE's. You DID remove any instances of the TEMP file .. at least that's what you said. You might check the media map in AREV to be sure.Sometimes in OI, you can remove (but not delete) the table from the application and then re-install it and save the .DBT table. Then exit OI and try again.
Don M.
At 03 APR 2003 08:36AM Kauko Laurinolli wrote:
As I said: It appears that copyrow (AREV) happens (I can do it multiple times without (O) parameter) but Clients table will remain empty. No, I can't see the rows in AREV.
I removed indexes but no help.
If I try to run FIXLH CLIENTS * in AREV I get error DUMPFIX0 table not created or attached. So that doesn't work.
In OI32 if I run LHverify I get FS145 error for !CLIENTS and FS210 error for CLIENTS and it will not let me run GFE fix.
I can edit dict w/o any problems.
Thanks.
At 03 APR 2003 09:08AM [url=http://www.sprezzatura.com" onMouseOver=window.status= Click here to visit our web site?';return(true)]The Sprezzatura Group[/url] wrote:
The ! file for the table has problems.
World Leaders in all things RevSoft
At 03 APR 2003 10:03AM Kauko Laurinolli wrote:
Well, !CLIENTS is gone but nothing still works?
At 03 APR 2003 11:33AM Don Miller - C3 Inc. wrote:
And how did you make it go away? Are there still any dictionary dependencies around? Here is a little DICT item that I put in VOC to check to see if anything has an index on it:
VOC name is INDEXED
XX=@RECORD
YY=@RECORD ;* B-Tree
ZZ=@RECORD ;* Relational
@ANS='
IF INDEX('FS',XX,1) ] 0 THEN
IF YY EQ 1 OR ZZ NE '' THEN @ANS=1END
So .. LIST INDEXED WITH TYPE=F""S" will spot any dict dependencies. You can use Edit to repair these.
Just a thought. Sometimes, removing indexing from a file leaves things behind.
Another question:
What happens if you do the following in AREV or OI R/BASIC:
DECLARE SUBROUTINE MSG
OPEN "YOURFILE" TO FILE_IN THEN
RK=0SELECT FILE_INL0:READNEXT @ID, THENREAD @RECORD FROM FILE_IN,@ID THENRK+=1END ELSE
ERROR READING RECORDENDGOTO L0END ELSE
END OF READNEXTMSG("Read ":RK:' RECORDS" in LOOP")ENDEND ELSE
MSG("RBASIC SELECT FAILED!!")END
Don M.
At 04 APR 2003 08:10AM Kauko Laurinolli wrote:
"And how did you make it go away?"
run delete_table '!CLIENTS'
Indexes are gone but I can't copy to the table?
It appears that copyrow (AREV) happens (I can do it multiple times without (O) parameter) but Clients table will remain empty.
What is this FS210 error in OI32 LHverify?
At 04 APR 2003 09:18AM Don Miller - C3 Inc. wrote:
When you deleted the !table, you still left pointers in the DICT of that table indicating that Indexing was present. Sometimes you can get around this problem temporarily by renaming the DICT.yourtable to something else and making a new DICT.yourtable with ONLY the key-field definition. Then you can re-attach and you should be able to copy the data portion to a new table. Then, you need to manually edit the DICT.[list=1] to remove the indexing information. You will need to delete anything in fields 6 and 23 and recompile the dict item. You can use CD or DICTCOMPILE to do this from the TCL. Next try LIST USING DICT. (which you've just fixed). If every thing is hunky-dory then
SELECT DICT. WITH TYPE=F""G""S" and COPY DICT. (O) TO:(DICT..
Sorry for the long post ..
Don M.