Try
REPLACE cPX_PRODUCTS.REFERENCE WITH ALIAS.REFERENCE in cPX_PRODUCTS
>Hi Guys
>
>A customer has a few times now got the system error handler message "ERROR: (111) Cannot update the cursor CPX_PRODUCTS, since it is read-only." on the following replace command:
>
>
>IF TYPE("cPX_PRODUCTS.Reference") = "C"
> REPLACE cPX_PRODUCTS.REFERENCE WITH ALIAS.REFERENCE
>ENDIF
>
>
>Now this cursor is
ALWAYS created ReadWrite, and, unfortunately, in several places, in several sets of circumstances and slightly differently, in the form code, typically
>
>
>SELECT cPX_PRODUCTS.*,;
> IIF(!EMPTY(cPX_PRODUCTS.CatID),cPX_PRODUCTS.CatSellPrice,0000000000.0000) as SellPrice, ;
> !EMPTY(cPX_PRODUCTS.CatID)as SellCalculated,;
> IIF(EMPTY(cPX_PRODUCTS.CatID),ThisFOrmset.SellingPriceLstInclusive,cPX_PRODUCTS.CatInclusive) as SellInclusive ;
> FROM cPX_PRODUCTS ;
> INTO CURSOR cPX_PRODUCTS READWRITE
>
>
>and I can't be sure without exhaustive tracking which is used in these cases, as it's hard to predict exactly what the cust did just prior to this error.
>
>The cust has confirmed that there is plenty of disk space.
>
>Not my code, of course. I've rarely come across the replace construct:
>
>
>Replace TableName.FieldName with ...
>
>
>as used above (and frequently throughout the system).
>
>Note also that cPX_PRODUCTS is selected from to produce the cursor cPX_PRODUCTS
>
>Any ideas why this may happen?
>
>'ppreciate it
>
>Terry