Home General
New Blog Posts: Merging Reports - Part 1 and Part 2

how to uncheck a range select dialog checkbox in code

edited August 2009 in General
??The range select dialog presents all ranges with checkboxes checked. Our
PM finds that users too often fail to uncheck and select a range, leading
to unnecessary calls to our support department.

Can the default be set to unchecked? Or checkboxes on the dialog be
checked/unchecked in code?



--- posted by geoForum on http://www.newswhat.com

Comments

  • edited August 2009
    Hi Bill,

    I'm unclear about what you are referring to by the "Range Select Dialog"
    Are you speaking of the AutoSearch dialog set to filter a certain range
    value and the Show All Values checkbox? Please elaborate on what you are
    trying to accomplish and on the details of the application you are creating.

    --
    Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com

    Best Regards,

    Nico Cizik
    Digital Metaphors
    http://www.digital-metaphors.com
  • edited August 2009
    Nico,

    In the reports I have been exploring, there are no AutoSearch parameters
    declared. It appears that the dialog presents suitable panels for each of
    the columns in the pipeline to which such filtering might logically be
    applied. If that is not true, please forgive my misunderstanding, I am new
    to RB.

    The Show All Values checkbox is indeed what I am referring to. Our product
    management tell us that many users see that dialog and click through
    without unchecking, then complain to support that the range is not filtered.

    In my research to now, I have found no means by which we might uncheck the
    box in code. That is the goal.

    Best regards,

    Bill




    --- posted by geoForum on http://www.newswhat.com
  • edited August 2009
    Bill,

    I have corresponded with you quit a bit via email. Have you followed any of
    my recommendations? :)

    One recommendation I had was to run the Demos\EndUser\ReportExplorer example
    installed with the product. Let's start there. Build and run the project.
    From the ReportExplorer select the AutoSearch folder and open the report
    named 'Between: Amount Paid (Currency)'. Access the Data workspace. There is
    a single Query DataView called plOrders.

    Press the Search toolbar button to invoke the Query Designer Search Page.
    The top list displays the available fields, the bottom list displays defined
    search criteria. There is a single search condition defined on the field
    AmoundPaid using the Between SQL operator. A default search value is
    defined. Also note there are boolean options labeled AutoSearch, Mandatory,
    and Show All. When AutoSearch is True, the autosearch dialog will display
    the search condition. When Mandatory is true, the user must specify a value
    (i.e. no 'Show All values' checkbox will be displayed). When Show All is
    true, the search condition will not be applied to the query.

    Preview the report and press the search button on the Preview toolbar to
    dispaly the dialog. Review the dialog and press cancel.

    Now, re-access the Data workpace and the Search page of the Query Designer.
    You can control the behavior of the autosearch dialog by modifying the
    options for Mandatory and ShowAll. When Mandatory is True, then the ShowAll
    values checkbox is not displayed by the autosearch dialog and the user must
    specify a value.

    I recommend spending some time playing around with the demos and then
    compare them to your real reports.

    If you want to modify the autosearch conditions via code, one option is to
    use the Report.AutoSearchFields[ ] array to access the autosearch field
    items.

    Example:

    for liIndex := 0 to myReport.AutoSearchFieldCount-1 do
    begin
    myReport.AutoSearchFields[liIndex].Mandatory := True;
    end;


    You can use the Report.Template.OnLoadEnd event to modify reports as they
    are loaded. The Demos\EndUser\ReportExplorer example contains an example of
    this as well.





    --
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com

    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited August 2009
    Nard Moseley (Digital Metaphors) wrote:


    Yes, I have, without gaining an answer to my specific question.

    I appreciate your replies, and the effort you have made to introduce me
    to your product. However, I am presently tasked with finding a solution
    to one small issue. To that end, I have not been given a charter to
    self-educate on ReportBuilder, nor have I been given a large time
    budget. However much I may wish to go exploring, I am not, at this
    time, able to do so.

    As I refined my understanding of what was wanted by our management, I
    reduced my query to a single question: Is there a way for me to
    interact in code with the default behavior of the "Show all values"
    checkbox in your dialog?

    I have investigated the reports for which the change is required. None
    of them employ AutoSearch variables, and to go down that path is
    considered a substantial rework of existing report designs.

    When I am able to allocate the time, I will happily go exploring in all
    the demos, to achieve a suitable understanding of the broad range of
    your product. But right now, I am two weeks from code freeze in this
    design cycle, and have a very full task list. Consequently, I am
    looking for a very specific solotion, if it exists.

    Our e-mail exchange did not seem to be leading to such a solution, so I
    put a message on your forums. Nico queried me for clarification, and
    when I provided it, made no further reply. In consequence, I launched a
    query on the CodeGear forums. This was an act of desperation, as I have
    no newsgroup access at work, and getting the IT department to open
    ports will take long enough that it will not be done before our code
    freeze.

    The same is true for your newsgroups. Had you not replied to me on the
    CodeGear groups, I would never have found your reply here. I hope that
    these insights will help you to appreciate my immediate problem, and
    that you may be able to frame a succinct reply to that problem.

    Thanks,

    Bill
  • edited August 2009

    Your are faced with a frustrating challenge. You do not know ReportBuilder
    and you did not create the original reports. Reviewing the demos might seem
    like a waste of time to you, but I think it is the quickest path to a
    solution. :)

    1. RB will /not/ display an AutoSearch dialog unless AutoSearchFields are
    defined for the report.

    2. AutoSearch fields can be defined in multiple ways. They can be defined
    via the QueryDesigner. They can be defined via the Report.Parameters[ ]. Or
    they can be defined via code.

    3. If you want to modify the autosearch conditions via code,
    use the Report.AutoSearchFields[ ] array to access the autosearch field
    items. By setting Mandatory to True, you will force the user to specify a
    value.
    No 'Show All values checkbox' will be displayed.

    Example:

    for liIndex := 0 to myReport.AutoSearchFieldCount-1 do
    begin
    myReport.AutoSearchFields[liIndex].Mandatory := True;
    myReport.AutoSearchFields[liIndex].Mandatory := True;
    end;


    You can use the Report.Template.OnLoadEnd event to modify reports as they
    are loaded. The Demos\EndUser\ReportExplorer example contains an example of
    using this event.


    --
    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com


    Best regards,

    Nard Moseley
    Digital Metaphors
    www.digital-metaphors.com
  • edited August 2009
    Nard Moseley (Digital Metaphors) wrote:


    I may havew failed to make myself clear. It is not a matter of thinking
    it is a waste of time. Rather, with the correspondence and with the
    exploring I have done so far, I am already overbudget on time. And
    since I have numerous tasks in my queue, I am laboring on others which
    may be resolved with less uncertainty.

    --

    Bill
This discussion has been closed.