SELECT remote_sys IF RLOCK() ln_invoice_numb = remote_sys.invoice_numb REPLACE remote_sys.invoice_numb WITH remote_sys.invoice_numb+1 UNLOCK ELSE * And what if the RLOCK() fails? ENDIF * AS failed RLOCK() would continue with this code and cause all kinds of * problems INSERT INTO invoice_head (invoice_numb, location_id, customer_id, issue_date, ; shipping, login_id, req_numb) VALUES (ln_invoice_numb,ln_location_id, ; ln_customer_id, DATE(), ' ', 'SMcLaughlin', 0) INSERT INTO invoice_lin (invoice_numb) VALUE (ln_invoice_numb) SELECT invoice_head SET ORDER TO TAG invoice_numb ******** SEEK ln_invoice_numb pn_recno = RECNO()