DevExpress Maintenance Form and Browse Dialog


Author
Message
Bruce Palmer
Bruce Palmer
StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)
Group: Forum Members
Posts: 18, Visits: 33
A few questions for you. I'm using the DevExpress 6.1.5 inherited controls.



1. Possible bug. The GradientFormHeader in a maintenance form keeps forgetting the value of it's Title property. I've worked around it for now by setting the property manually in the Load event.



2. I'm using a Browse Dialog and one of my search fields is a boolean field. I can enter "true" or "false" (without the quotes) and it works find. If I make a mistake, e.g. I enter "fals", I get an exception error screen and the little searching progress window stays visible. How would you avoid this type of user input error on a boolean search field?



3. When defining the seach fields for a Browse Dialog, what is Enum Type used for? It's not mentioned in the help topic "Using the Browse Dialog", which seems a bit out of date.



4. After successfully adding a new record in a maintenance form, the new record is appended to the end of the data held by the business object. How do I get it sorted into the correct position?



5. The StrataFrame help file I have doesn't seem to have an index. Is this correct? An index would be a big help, as would more detail on all the various classes and their members. A big task I know, but its very frustrating to look up class members and only find short descriptions. Better than nothing, but could definitely be better. A product with the class of StrataFrame should have documentation to match.



6. Finally, how is v1.5 for DevExpress 6.2 progressing? I'm very keen to get this update as soon as possible.



Regards,

Bruce

Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
1. Possible bug. The GradientFormHeader in a maintenance form keeps forgetting the value of it's Title property. I've worked around it for now by setting the property manually in the Load event.

You have something else going on here.  This control is used everywhere, so I know that it is not a bug.  The problem you are having is that the form designer is not properly serializing that property...which can stem from a number of different things.  To prove this, drop the same control on another form and see if the title sticks.  You can then start working from there.

2. I'm using a Browse Dialog and one of my search fields is a boolean field. I can enter "true" or "false" (without the quotes) and it works find. If I make a mistake, e.g. I enter "fals", I get an exception error screen and the little searching progress window stays visible. How would you avoid this type of user input error on a boolean search field?

This is ultimately an integer value.  What we generally do is use a Enum Value that may read "Yes" or "No".  When you setup a search field, you can specify an enum value to use for selection.  On the BrowseDialog property sheet, you will also see a property for the EnumTopMostValue text.  You can set this property so that you can still excluded this field from the search if you so desire.

3. When defining the seach fields for a Browse Dialog, what is Enum Type used for? It's not mentioned in the help topic "Using the Browse Dialog", which seems a bit out of date.

See previous answer.

4. After successfully adding a new record in a maintenance form, the new record is appended to the end of the data held by the business object. How do I get it sorted into the correct position?

I don't know what you mean by "Correct Position" but you have control over this by setting the Sort proeprty of a business object.  If you want to sort your BO, the just set the property and all new or existing records will follow suit.

5. The StrataFrame help file I have doesn't seem to have an index. Is this correct? An index would be a big help, as would more detail on all the various classes and their members. A big task I know, but its very frustrating to look up class members and only find short descriptions. Better than nothing, but could definitely be better. A product with the class of StrataFrame should have documentation to match.

There is an index, but it depends on how the file is opened.  We are already aware of this and it will be resolved soon.

6. Finally, how is v1.5 for DevExpress 6.2 progressing? I'm very keen to get this update as soon as possible.

This is why we give you the source code so you do not have to wait on use to update all versions of the DevExpress updates.  In fact, there are some posts on this forum where some of our users have already moved forward to 6.2.  Regardless, this will more than likely be released with 1.5.

Bruce Palmer
Bruce Palmer
StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)
Group: Forum Members
Posts: 18, Visits: 33
Hi Trent, thanks for your reply.



Item 1.



My GradientFormHeader is still forgetting it's Title property. Note that this is a StrataFrame Inherited GradientFormHeader on an SF DevEx Maintenance Form. I have rebuilt the form from scratch a number of times, and always at some point the Title property comes unstuck and remains so. The problem does not occur with a standard GradientFormHeader and an SF Maintenance Form.



I believe you that its not a bug in GradientFormHeader. Maybe its some subtle interaction with DevEx.Blink I don't have the time to dig into it in detail at the moment, so I will continue with my previous work around.



Items 2. & 3.



When you say "...ultimately an integer value", this implies to me that the type of your underlying field is an integer rather than a boolean. My underlying field is a System.Boolean, so my Enum named constants must convert to strings that can be parsed by System.Boolean, i.e. True and False. I wouldn't expect named constants of Yes and No to work with a boolean field (although I prefer them to True and False for presenting to the user).



So I created an Enum with True and False named constants, and successfully hooked it up to my search fields in my browseDialog. Everything displays correctly, and the selections in the combo boxes work fine. When I hit enter to do the search, however, I get the following exception:



FormatException

String was not recognized as a valid Boolean.



Source : mscorlib



Stack Trace:

at System.Boolean.Parse(String value)

at MicroFour.StrataFrame.UI.Windows.Forms.DevEx.BrowseDialogWindow.BuildWhereElement(Int32 ParameterIndex)

at MicroFour.StrataFrame.UI.Windows.Forms.DevEx.BrowseDialogWindow.BuildSearchWhereClause()

at MicroFour.StrataFrame.UI.Windows.Forms.DevEx.BrowseDialogWindow.Search()

at MicroFour.StrataFrame.UI.Windows.Forms.DevEx.BrowseDialogWindow.ExecuteSearch()

at MicroFour.StrataFrame.UI.Windows.Forms.DevEx.BrowseDialogWindow.HandleKeyDown(Object Sender, KeyEventArgs e)

at System.Windows.Forms.Control.OnKeyDown(KeyEventArgs e)

at System.Windows.Forms.ComboBox.OnKeyDown(KeyEventArgs e)

at System.Windows.Forms.Control.ProcessKeyEventArgs(Message& m)

at System.Windows.Forms.ComboBox.ProcessKeyEventArgs(Message& m)

at System.Windows.Forms.Control.ProcessKeyMessage(Message& m)

at System.Windows.Forms.Control.WmKeyChar(Message& m)

at System.Windows.Forms.Control.WndProc(Message& m)

at System.Windows.Forms.ComboBox.WndProc(Message& m)

at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)



I don't know what I'm doing wrong here. Is there a way to make it work with boolean fields, or do I need to convert any database boolean fields that I want to search on to integers?



Item 4.



BlushOops! Didn't see that particular tree for the rest of the forest. Thanks for your patience with dumb questions.



Item 5.



BigGrinAh! I've been opening the StrataFrame Documentation from the Start|All Programs|MicroFour StrataFrame menu. No index that way. I've been doing this so that I can have StrataFrame help in one window and VS2005 help in another, and just click between the two without losing my place in either. If I filter the VS2005 help by StrataFrame, there's the index.



Item 6.



OK, I'll give that a go late next week after my next demo to my client. Is there a list somewhere of new stuff we can expect in v1.5?



Regards,

Bruce

Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
I don't know what I'm doing wrong here. Is there a way to make it work with boolean fields, or do I need to convert any database boolean fields that I want to search on to integers?

What I meant by saying that booleans are ultimately integer is that all booleans are either 0 for false or 1 for true.  If you are using SQL Server, then your field should have a Bit data type.  When the query is generated, and you enums respected the info mentioned above, then the query will respect your enum and Bit field.  Does that make sense?

6. Finally, how is v1.5 for DevExpress 6.2 progressing? I'm very keen to get this update as soon as possible.

There is a What's New in 1.5 article that includes all enhancements and bug fixes.  So you will be able to see at a glance what has changed.  This will be released next Friday (September 22, 2006).

Bruce Palmer
Bruce Palmer
StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)
Group: Forum Members
Posts: 18, Visits: 33
Hi Trent,



Sorry, I'm still not getting it regarding boolean fields and the browse dialog. To that end I have created a test project (see attached Test1_VB.zip). It uses the StrataFrame sample database and includes a single maintenance form. Run the app and click on the Browse button in the toolbar to get the browse dialog up. You will see two search fields, one for Name and one for IsActive. Try setting the IsActive field to Yes or No and do a search. I get the exception I posted previously.



I'm hoping that you can tell from this test project what steps I'm not doing and let me know what they are.



As a side issue, if you do a successful search you will notice in the results at the bottom of the dialog that the IsActive column is left aligned. If you open up the Browse Results Layout Editor, however, you will notice that the IsActive column has a column text alignment of centre. This seems to be a bug to me, the centre alignment setting being ignored at run time.



Regards,

Bruce

Attachments
Test1_VB.zip (135 views, 26.00 KB)
Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
I will take a look at this.  Thanks.
Bruce Palmer
Bruce Palmer
StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)
Group: Forum Members
Posts: 18, Visits: 33
Hi Trent,



Is any action happening with this issue, and my other one? (Post #2863)



I really want to know if I've done something stupid or if these are genuine issues. As far as I can tell I'm not trying to do anything clever or tricky. As the two test apps I sent you show, there is virtually no code involved. I'm just setting various properties in the StrataFrame classes I'm using. Yet I'm getting exceptions, non-firing events and database corruption.



I have had a bit of trouble figuring some things out, mainly because they are not covered in the documentation. These issues I've sent you have resulted from following your answers to my questions as best I can with the limited information I have. Needless to say, I'm getting frustrated.Crazy (Our 15 hour time difference doesn't help matters either.)



I've been using StrataFrame to put together the beginnings of a major project for my main client. They like what they see. And in general I like what StrataFrame can do. But until these issues can be resolved I am hesitant to progress much further, however much I like StrataFrame. My client's project is big, and I need to be confident in the quality and capability of the tools I choose to use.



I appreciate that you guys are busy. Your working on your companies medical apps, your working on new versions of StrataFrame, and your trying to help all your StrataFrame users, including newbies with dumb questions like me.BigGrin I want to keep using StrataFrame (I have bought it after all) and I want to keep moving ahead with my clients project. I really hope these issues can be resolved quickly.



Regards,

Bruce

Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
Bruce,

Thanks for your patience.  We have been working literally around the clock lately trying to get the 1.5 release ready for shipping.  I have looked at the sample that you gave me and there are a couple of things that I thought I would point out.

First, there is an issue when attempting to search on a boolean field.  This has been added to the list for enhancements and we will included this soon after the 1.5 release.  In addition to this the BrowseDialog will have another enhancement that you have not run into yet...to my knowledge, which is combo box population to provide support for a foreign key field while searching.  We have actually run into this ourselves and know that this is a must.  So adding the boolean support at the same time will not be difficult and will be easy to do.

As a side issue, if you do a successful search you will notice in the results at the bottom of the dialog that the IsActive column is left aligned.

This is only an issue with the DevExpress wrapper because of the grid.  I will look at this the same time as the above items.

Thanks for taking the time to provide a sample and I appologize for my delayed response.  This is not our "norm" but this has not bee an normal week either Smile Bottom line is that these enhancements will be made because they really are necessary for the BrowseDialog as a whole.  Thanks for your patience and I will keep you and the forum at large posted on the progress.  Keep in mind that this will not be included in the 1.5 release, but will be a minor point release afterwards and it may be as long as 30-45 days before the update is available.  But it will be coming.  Thanks!

Bruce Palmer
Bruce Palmer
StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)StrataFrame Beginner (20 reputation)
Group: Forum Members
Posts: 18, Visits: 33
Hi Trent,



Thanks for your reply. And thanks for your openess and honesty. I do appreciate how busy you must be working on the 1.5 release.Cool



Yes, I had encountered the browse dialog issue of combo box population by foreign key. I found a post somewhere else on your forum that indicated it couldn't be done yet. I agree with you that this is a must have feature. Address this and some other issues and the browse dialog will become a really valuable feature of your framework.



I asked this of Ben in another thread, but I will ask you as well, in case Ben is lying semi-comatose somewhere recovering from his latest marathon coding session.Wink How far away is the 1.5 release?



Regards,

Bruce

Trent Taylor
Trent Taylor
StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)StrataFrame Developer (14K reputation)
Group: StrataFrame Developers
Posts: 6.6K, Visits: 7K
I asked this of Ben in another thread, but I will ask you as well, in case Ben is lying semi-comatose somewhere recovering from his latest marathon coding session. How far away is the 1.5 release?

I think that we are all "semi-comatose" at the moment Smile  You wil be able to download it tomorrow sometime since you are 15 hours ahead of us. Smile

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Similar Topics

Reading This Topic

Login

Explore
Messages
Mentions
Search