Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
What method to use instead of Refresh?
Message
 
 
To
21/06/2012 12:20:50
General information
Forum:
Visual FoxPro
Category:
Other
Environment versions
Visual FoxPro:
VFP 9
Miscellaneous
Thread ID:
01546511
Message ID:
01546544
Views:
36
>>>>As to your confusion. Here is why I don't/can't bind to the field. The field to which this textbox is "bound" is a PK field. But the value displayed should be a name field (another field). So I have to "seek" in the base table for the PK value and display the Name field on every record pointer move.
>>>
>>>Ummm...I'm really hoping this is something you inherited, but I'm gonna ask the obvious question(s).
>>>
>>>Why don't you just change what the textbox is bound to? Or is it a case of the user enters the PK and you seek the PK and then display the data found in the same textbox? If so, why not just add a PK entry textbox?
>>
>>I probably didn't explain myself correctly. Here is a very simplified example. Imagine Order Table. In the order table I will store only the Customer PK (meaningless for the user). When the Order screen is shown the text box should show Customer Name and not PK. As user navigates (goes to next, previous, etc.) records in the Order Table, the Customer Name should appear in this text box. So in the Refresh method of this textbox the code will take the PK value stored in the Order table, find the Customer record in the Customer Table and display the Customer Name. So I can't really use ControlSource of the textbox but have to do it in code.
>
>You can have ControlSource = mytable.CustomerName
>
>Then in the Click method of the Next/Previous buttons (assuming you are using buttons) you put the code
>
>skip &&or skip-1 - and any and all BOF/EOF stuff
>sele CustomerTable
>seek OrderTable.CustPK
>thisform.Refresh()
>
Yes, I could do it as you described above. But I want all code to be "contained" within the textbox. Because it is used in many screens. As I mentioned before, the example I described is very simplified.
"The creative process is nothing but a series of crises." Isaac Bashevis Singer
"My experience is that as soon as people are old enough to know better, they don't know anything at all." Oscar Wilde
"If a nation values anything more than freedom, it will lose its freedom; and the irony of it is that if it is comfort or money that it values more, it will lose that too." W.Somerset Maugham
Previous
Reply
Map
View

Click here to load this message in the networking platform