In layout mode select the field; in the Inspector Data tab select "As Entered" in the Format dropdown in the Data Formatting area.
Thanks for the timp, I tried it, and unfortunalty the format dropdown is greyed out, I guess becuase the field typ that holds the UUID is a text field. Or am I missing something?
From your description (and screen shot), I'm not 100% sure what you have. I don't see a value list with only a series of single characters; I see a value list of what look like product codes. I think what you have is the product code ("cost code"?) as the second value, and the UUID (which looks like what's in the field) as the actual entered value?
If that's correct, then this is the expected behavior. It's also, as you pointed out, a little confusing for the average user. I would also recommend against using this strategy without some additional safeguards (like validating the key field against the value list). It's never really a good idea to give users direct access to key fields in your database; the chances of damaging the relational setup are pretty high.
Instead, I suggest presenting a list view of all options, then using scripting to store the selected value in the required field. Spawn a temporary window (or a popover) with the relevant choices. You can use variables as temporary storage; when the users pick the item they want, insert that value's key into the correct field in the child table.
This problem really effects all my dropdown lists. and you are right, it exposes the ID to possible user entry, which of course I don't want. I tried using a popup list on the field I originally posted about and that works fine there because the will only be 5 values in the list. but my select company list has 100 items at present, so a popup list isn't an option there. I definatly need help and suggestions.
A drop-down starts to be awkward after around 25 - 30 values. For any more than that, you really need to look at a list view approach. You can augment this approach by using a search utility to narrow the list (just program a Quick Search to take the user's input from a global field and narrow the list down).
1. Present a (modal) dialog to choose the value from a portal or list, incl. type-ahead functionality (in FM13: a popover!).
Consider reversing the order of events: instead of selecting a value in the portal row which creates a related record, have the user choose a product in a dialog, then create the related record (only if a selection has actually been made). That would allow you to get rid of the spare portal row by disallowing "creation of related records via this relationship".
2. Instead of using the value list for name resolution, display the related product name field (the one the foreign key references) in the portal; format it as a button, where a click goes to a minimized version (1x1 px) of the actual foreign key field (positioned directly adjacent) to open the dropdown list; that should prevent your users from typing into the field, but lets them utilize type-ahead on the product name.
I definatly need help and suggestions.
What you definitely need is a better spellchecker.
Yeah, kind of a bummer you can't use a different context for a popover. Stuck with a portal ...