tablename_read is used to read a random record (READ, not READ NEXT or READ PREVIOUS). The parameters passed to the stored procedure are the values of the primary key, in the order they are listed in the XFD. The expected rowset is the columns in the first table (if secondary tables are used) or the columns of the table (if secondary tables are not necessary).
This stored procedure is very similar to tablename_start.