L
Laura Stern
Guest
First of all, you are getting 15607 because you apparently set up the BindingSource at design time as if it were going to bind to a DataSet, giving it a parent table name, but in the end you did not bind to a DataSet. You bound to a query, which I think is what you wanted. Sorry, that I'm a bit unfamiliar with the design-time functionality. So I'm not sure what it should look like when you will have a query that references multiple tables and how you set up the schema at design time to pick fields from those various tables. That is what you need to know. Because you got 15607, setting the Handle property never worked, so the value of the Handle property is still null. That is why you are getting 15607, which is telling you that the object reference in the middle of your chain (i.e., the HANDLE property in bindingsource2:HANDLE:GET-TOP-BUFFER) is resolving to the Unknown value. And I don't understand your final question. As I said, you are not binding the BindingSource to a DataSet. You are binding it to a query that references multiple tables. So why are you asking about a DataSet? Anyway, any DataSet or Temp-Tables live in your ABL code. You should make them accessible via normal ABL mechanisms (i.e., having them as members of your class, etc). You should not be accessing them via the BindingSource, which is an object that lives in .NET managed space and whose job it is to communicate between .NET controls and your ABL data. It should not be used as a mechanism to find/get access to your ABL constructs. Back to the design-time issue - you don't actually need to set this up at design time unless you need to size the data grid columns at design time. Otherwise you can create the BindingSource in your Form's constructor, (see the doc for the constructors) and then binding it to the query, and then binding the DataGrid to the BindingSource (i.e., setting the DataGrid
ataSource property).
Continue reading...
Continue reading...