I am racking my brain and still can't figure out why I am getting this error - 1814.
I thought it might be because I am copying data from a table in one dbc to another so I created some temp files, but I still get the error. The wierd thing is that I can cut and past the delete and insert into the command window and they work fine. But from within my program, they pop the error message.
fromdir = appendfromdirectory+'distributors.dbf'
IF FILE(fromdir)
Use distributorstemp Excl
Zap
Append From &fromdir
Sele distributorstemp
ENDIF
fromdir = appendfromdirectory+'dcatalogs.dbf'
IF FILE(fromdir)
Use dcatalogstemp Excl
Zap
Append From &fromdir
Sele dcatalogstemp
ENDIF
IF FILE(fromdir)
DELETE FROM dcatalogs WHERE manu_code in ;
(SELECT ds.manu_code FROM distributors ds JOIN distributorstemp ods ON ds.manu_code = ods.manu_code)
INSERT INTO dcatalogs (manu_code,itemdesc,style,sizecolor,page,other,cost1,cost2,cost3,price1,price2,price3) ;
SELECT manu_code,itemdesc,style,sizecolor,page,other,cost1,cost2,cost3,price1,price2,price3 FROM dcatalogstemp ;
WHERE manu_code in ;
(SELECT ds.manu_code FROM distributors ds JOIN distributorstemp ods ON ds.manu_code = ods.manu_code)
ENDIF
>Try
>DELETE FROM dcatalogs
> WHERE manu_code in (select ds.manu_code FROM distributors ds
> JOIN (olddistributors) ods ON ds.manu_code = ods.manu_code)
>
>INSERT INTO dcatalogs (manu_code,itemdesc,style)
> SELECT manu_code,itemdesc,style FROM (fromdir)
> WHERE manu_code in (select ds.manu_code FROM distributors ds
> JOIN (olddistributors) ods ON ds.manu_code = ods.manu_code)
>
BTW, there's no need to use macro substitution for table/cursors names.
>
>>Can anyone tell me why I get error 1814 - Queries of this type are not supported on line 10 (and I assume also on line 15). Is there a good workaround? I need to overright records on table A if records with the same manu_code are on table B. Both tables have the same name. Table A is the current file used in the application, table B is from a backup table.
>