>this.mysqlexec("select * from dbo.ww_sales where CAST(sale_text as varchar(max)) like '%<guest_no>" + transform(m.pnDuplicate) + "</guest_no>%'", ; > 'ww_sales', program()) > this.make_view_updatable('ww_sales', 5) && table buffering > select ww_sales > replace ALL sale_text with strtran(sale_text, "<guest_no>" + transform(m.pnDuplicate) + "</guest_no>", "<guest_no>" + transform(m.pnOriginal) + "</guest_no>",-1,-1,1) > DIMENSION laCommitError[1] > if not tableupdate(2, .t., 'ww_sales', laCommitError) > llError = .t. > = AERROR(laError) > lcErrorMsg = m.lcErrorMsg + "Can not perform update of ww_sales" + CHR(13) + laError(1,2) > > oAppObj.write_log('Some rows in ww_sales table can not be committed: '+TRANSFORM(ALEN(laCommitError,1))+' rows.', 'E', PROGRAM()) > > FOR EACH nRecord IN laCommitError > GOTO nRecord > > * Mark bad record > ENDFOR > > ENDIF > > use in select('ww_sales') >I think Help again it not really clear here - are you saying that tableupdate will return .f. still? I somehow was under impression that tableupdate will return true even if some rows can not be committed.