Woody,
The others have posted a number of alternatives, but the one that fits the needs of your post is the secondary index.
As you know primary keys do two things: they provide uniqueness between records and they sort the table.
When that initial sort isn't what you want, you create a secondary index containing the fields that give you the sort order you want.
If you're doing this with your form's primary table, e.g. the master table, you select the secondary index from the Filter dialog box. To do so:
1. Open your form in a View window. That is, not in a Design window.
2. Choose Record | Filter from the main menu (Paradox 10).
3. Place a checkmark in the Order By checkbox.
4. Highlight the secondary index you want to use in the list below the Order By checkbox.
5. Choose OK.
Your data should now appear in the order you want.
If you're doing this with a detail table, you need to:
a) Make sure the seoncdary index contains the linking field(s) as the first field(s).
b) Use the index as the linking index in your form's data model. To do this,
1) Open your form in a Design window.
2) Choose Format | Data model.
3) If necessary, drag the windows around so you can find the linking arrow connecting the detail table to your master table.
4) Double-click the linking arrow to open the Link Property dialog box.
5) Choose the secondary index from the Child Index list.
6) Choose OK, save your changes, and then run your form.
Your data should now sort properly.
Hope this helps...
-- Lance