I'm not sure what you problem is but you need to look at your where clause. Using the SUBSTR function is going to slow your statement to a crawl. Remove the SUBSTR and the query should run fine and much faster. Also change the EMPTY(Articlesend.d_sent) = .T. to Articlesend.d_sent={}. Of course you should have an index on c_product_id and d_sent.
In your query with multiple records does/can an c_orderid show more than once. If so, you need to select an additional update key like the c_product_id field.
HTH
Larry
>I have the following SQL view statement:
>
>SELECT Customer.c_id, Articlesend.c_orderid, Articlesend.d_sent,;
> Articlesend.l_resend, Articlesend.i_quantity, Customer.c_first_name,;
> Customer.c_last_name, Customer.c_suffix, Customer.c_title,;
> Customer.c_street1, Customer.c_street2, Customer.c_city,;
> Customer.c_state, Customer.c_zip_code, Customer.c_zip_suffix,;
> Articlesend.c_product_id, Customer.c_organization,;
> Orders.c_order_id AS orderid, Orders.d_order_date;
> FROM subscription!articlesend INNER JOIN subscription!orders;
> FULL JOIN subscription!customer ;
> ON Orders.c_id = Customer.c_id ;
> ON Articlesend.c_orderid = Orders.c_order_id;
> WHERE SUBSTR(Articlesend.c_product_id,1,3) = ?c_region_id;
> AND EMPTY(Articlesend.d_sent) = .T.;
> OR (Articlesend.l_resend = .T.)
>
>On the update criteria I have Articlesend.c_orderid as the key and articlesend.d_sent and articlesend.l_resend as the write to fields. This seems to work fine when I am only working with one record that exists in the articlesend table but when I have multiple record I get update conflict error 1585. The situation is this in the articlesend table I can multiple records which I want to update put am only pulling out info from the customer table for label creation. The view is table buffered. Any ideas on what I am doing wrong here.