How to trigger value change in event structure

Hii everyone, as the title, how should I trigger the value change event to pop up a message.. below is my connection..
I want to trigger the event structure to pop up the sub-vi, when the flame and led are TRUE state... I using property node but still the event structure not able to execute.. How should I connect? Thank you very much...
Solved!
Go to Solution.

There are several ways you can do it. First you have to configure your sub-vi so that it does whatever you want when it runs  (in the vi properties, top most window for example) and to make sure that it closes completely when finished (when clicking the "OK" button for example).
You than need to make an asynchronous call to the sub-vi. There are several ways to do it. My favorite one is shown below. You go in the "Application control" sub-palette and select Static VI reference. I like this approach because it keeps track of the sub-vi path for you, as long as the sub-vi is in the same project. You then drag the sub-vi onto the empty square that will changes to your sub-vi icon. You then connect to an invoke node from the same sub-palette and select run VI. Set "Wait Until Done" to false and the main VI will keep running after starting the Sub vi. Set "Auto Dispose Ref" is the easiest way to go. Otherwise you have to keep track of the sub-vi reference and close it yourself when you're done.
Marc Dubois
HaroTek LLC
www.harotek.com

Similar Messages

  • How to trigger applet's EVEN_FORMATTED_SMS_PP_ENV  event using kannel?

    How to trigger applet's EVEN_FORMATTED_SMS_PP_ENV event using kannel?

    It seems that the freeze can be atributed to a problem with the limited number of proactive handlers and reentrance problem.
    I see this comment
    How to deal with re-entrance?
    · Requiring an SMS-Submit
    Can be used only: if the application has to send proactive commands only when
    triggered by EVENT_FORMATTED_SMS_PP_ENV.
    The remote server must require a response packet using SMS-Submit when sending a
    message to the application (the card shall implement the 3GPP 43.019 Rel-5)
    Advantages:
    o it is a standard mechanism
    o there is no need to implement anything related to this mechanism in the
    application
    How can I do that? Do I have to tinker the SMSC service and arrange for something like this?

  • LV7: how to catch 'Value change' event for cursor position in XY graph?

    I try to catch an event when the cursor position of a graph's cursor
    changes. I created a reference for the cursor array and registered a dynamic
    event 'Value change' for it. The event does not fire when the cursor changes
    (either by dragging it with the mouse or by direct entry of a new value in
    the cursor's X or Y fields. In contrast, when I register e.g. the 'Mouse Up'
    event for the cursor array, the event IS detected.
    -Franz

    So this is the same behaviour as that of a regular control which also does
    not fire a 'Value changed' event when it gets updated by e.g. writing to a
    local.
    At least the cursor's behavior is consistent then...
    But unfortunately also the direct user interaction with the cursor's numeric
    field does not fire the event, which is NOT consistent.
    I was trying to catch cursor changes in my event loop and had used a 'Mouse
    Up' event of the graph indicator to look for cursor changes (whose last
    position I had kept in a local or shift reg). In order not to miss a direct
    user interaction in the numeric field I added the dynamic event 'Value
    change' to the same event case, but with no success, it missed the direct
    entry ...
    according to what you say this seems to b
    e a bug then...
    -Franz
    "Greg McKaskle" schrieb im Newsbeitrag
    news:[email protected]..
    > > I try to catch an event when the cursor position of a graph's cursor
    > > changes. I created a reference for the cursor array and registered a
    dynamic
    > > event 'Value change' for it. The event does not fire when the cursor
    changes
    > > (either by dragging it with the mouse or by direct entry of a new value
    in
    > > the cursor's X or Y fields. In contrast, when I register e.g. the 'Mouse
    Up'
    > > event for the cursor array, the event IS detected.
    > >
    >
    > The reason is that value change events fire when user action directly on
    > the control changes its value. They do not fire when other programmatic
    > value changes occur. If you are looking at a value change on the cursor
    > palette, user interaction with the numeric should fire it, but updates
    > due to cursor movement are more like programmatic updates.
    >
    > Additional events will likely be added in future
    releases, and these may
    > make it easier to catch cursor movement events on a graph.
    >
    > Greg McKaskle
    >

  • How to implement boolean comparison and event structure?

    Hello all,
    I'm currently developing an undergraduate lab in which a laptop sends out a voltage via USB-6008 to a circuit board with an op-amp, the voltage is amplified, and then sent back into the laptop. The student is going to have to determine an "unknown" voltage which will run in the background (they can do this by a step test, graph V_in vs V_out and extrapolate to the x-axis).
    Currently, I have two loops that are independent in my VI. The first loop is used to "Set the zero." When 0 voltage (V_in) is sent out of the laptop it returns a value around -1.40V (V_out) typically. Thus, I created the first loop to average this value. The second loop, averages the V_out values that come into the laptop as the V_in numeric control changes. Then I take the "set zero" value from the first loop and subtract it from the second loop average to get as close to 0V for V_out when V_in is 0V.
    The problem I'm facing is, the event structure waits for the V_in numeric control value change, but after "SET ZERO" is pressed, if there is an unknown value, it will not be added to the average for V_out until V_in is changed by the user. So, I tried implementing a comparison algorithm in the "[0] Timeout Case." This algorithm works for step tests with positive values for V_in, but there are two problems.
    1) Negative values cannot be used for V_in
    2) If a user uses increasing positive values for V_in there is no trouble, but if they try to go back to 0, the value change event has been called and it is added to V_out as well as the timeout case.
    Sorry for the extremely long post, but I've been banging my head over this and can't figure out how to properly implement this. I'm using LabVIEW 8.0.
    Attachments:
    Average Reset Test.vi ‏371 KB

    OK you have bigger problems than Raven's Fan is pointing out.
    When the first event loop stops ( after pressing "") (the boolean text is "Set Zero")  The second loop may start- (AND PROCESSES all of the events it was registered to process before the loop started!)  that would enclude the value change event from "" (The boolean text is Stop) Being pressed bebore the loop started.  Of course, since the labels of "Set Zero" and Stop are identical nulls....................................................BOTH event trigger at the same time and are processed as soon as the event loop they are registerd to is available.
    Get it ... The two buttons labeled "" both queue Value change events to both loops registered to act on the value change of the control labled ""!
    Both loops will do what you programmed in the case of "" Value Change!  This can, (as you have observered) lead to confusing code actions.
    Do avoid controls with duplicate labels (There is a VI Analizer test for that!)  Do avoid multiple event structures in the same hierarchy. 
    DO NOT bring this to your studients to help you learn LabVIEW!  We get enough studii asking embarassing questions
    VI Analizer will help you provide sound templates.  If you need help with that hit my sig line- e-mail me and I'll always be willing to help.
    Jeff

  • How to read shared variables inside event structure ?

    Hi,
    I have a problem that my shared variables do not update inside event structure. The program(s) I am trying to get working is seen in the attached screenshot. It works as follows:
    0. I start the vi that is unsquared.
    1. I write a string to a shared variable using vi in red square. I make sure that its updated using write-wait-read.
    2. I run the other vi (blue square), this changes the boolean shared variable.
    The unsquared vi has been running the whole time, it has event structure bind to boolean shared variable change (the one in blue vi). After I have runned the blue vi, the unsquared vi should change the indicator values to match the ones in red vi. However I have to start the blue vi multiple times to get it to change, sometimes even 6 times.
    Also, when I change the value in red vi to a third value and start blue vi multiple times, the unsquared vi shows all the variables. I.e. I put "cat" to red then start red, put "mouse" to red then start red,... and then start clicking blue... Unsqured shows cat, mouse,..., dog (dog is the default).
    How can I force the shared variable to update inside event sructure. I want the current value of the variable, not some historical values.
    Attachments:
    Screenshot-5.png ‏108 KB

    Found the buffering... disabling it solved the problem... thanks.
    FYI, there is another solution that I just found out... attached. Adding timeout to the event structure and the variable read outside the event structure... This makes the shared variable strings (one that is read outside and the otherone that is read inside) different.
    Could someone explain why the variables are in different state even if they are used in the same place and looped with 10ms intervals?
    Juha
    Attachments:
    Screenshot-6.png ‏110 KB

  • How to stop While Loop in Event Structure with same button?

    Hello,
    I have a problem. I want to use one control to activate an event in a event structure, and the same control to terminate a while loop in that event.
    It is possible to use 2 controls to do this, but I need it to be only one.
    Thank you  
    Message Edited by Heinen on 02-19-2009 06:16 AM
    Message Edited by Heinen on 02-19-2009 06:20 AM
    The Enrichment Center is required to remind you that you will be baked, and then there will be cake.
    Solved!
    Go to Solution.

    Hello,
    I have a bit different problem.
    I have a tab control, with several buttons on different pages.
    In the current situation, we can talk about two pages, where one page ("Settings") in the Image, has a START and EXIT button, while second page ("Wait") has an EXIT button.
    In a while loop, I have event structure, which handles events of the START and EXIT buttons of the Settings page. This is fine. But I also want to control the Exit button of the Wait page.
    The control works like this:
    When I click on Start in the Settings page, the front panel shows Wait page and attempts to connect to a datasocket server on the remote computer. If the user wants to stop this process, he can click on Exit on Wait page too. But, this doesn't give any immediate effect. On the even of Start button, the front panel is not locked, so the user can actually click the Exit button on the next page when it's visible. But it's of no immediate effect. Means, what the LabVIEW does is, finishes the execution of event in Start button's click, and while this executes, it doesn't consider the Exit button's refreshed value (shown in Red circle in the block diagram).
    Simple question: Is there any way to check the updated (latest/live) value of a control during some event's execution? Or if I write an Event "Value Changed" for the Exit button and pass it to some variable. Is it the only solution?
    Thanks ahead.
    Vaibhav
    Attachments:
    terminate event_diagram.jpg ‏200 KB
    terminate event_front_1.jpg ‏63 KB
    terminate event_front_2.jpg ‏63 KB

  • How to trigger attribute change run manaully

    Hi all,
    i need to update a master data object with new data. i have the flat file. i scheduled info package and exected DTP (datasource -
    >Master data object). now I need to trigger attibute change run manually. How would i do that?
    Pls help
    Please search the forum before posting a thread
    Edited by: Pravender on Feb 4, 2012 11:16 AM

    HI Ramya,
    Activation master data is different than running Attribute change run.
    Activate master data will only activate the master data in info object(Change the records in M version to A version.
    Attribute Change Run will activate the master data in info object and updates the aggregates with new data if you have any aggregates built on this info object.
    Be specific while asking the question.
    Regards,
    Venkatesh

  • Get the new value from an event structure block

    Hello!
    I'm using an event structure block. I've edited an event wich its event sources are an indicator an a variable (a real matrix). I want to get (to catch) the new value of the indicator and the variable from the frame placed at the left top, but the new value attribute is not a real not an integer.....is variant type. I have no idea what i have to do to catch this two values from here. Someone can post a simple example about it?
    Thanks in advance!
    Regards
    Larson 

    If the terminal is INSIDE the event structure, you'll always get the new value. It will NOT be read until the event case executes, at which point the terminal contains the new value. (If the terminal is outside the event structure, and the wire goes inside the event structure, you'll get a stale value when the event for that terminal triggers. This is expected from the dataflow.)
    Put the terminals inside the proper event case, you'll be fine!
    LabVIEW Champion . Do more with less code and in less time .

  • How to handle value change events of select list in custom component?

    My HelloUIComp code...How to handle events for "Select"...if i choose option1 from select then one text box is to be displayed in custom component and if i choose another option then some other text box is to be displayed in custom components...
    public class HelloUIComp extends UIComponentBase {
        public static final String account="custom.account";
        public static final String RENDERER_TYPE = null;
        HtmlCommandButton button = createButton();
        //HtmlSelectOneMenu select=createSelect();
        public void processDecodes(FacesContext context) {
             Calling the lifecycle method "processDecodes" on the
             internal button is absolutely critical to create action events
             button.processDecodes(context);
             super.processDecodes(context);
        private HtmlCommandButton createButton() {
             FacesContext context = FacesContext.getCurrentInstance();
             HtmlCommandButton newButton = new HtmlCommandButton();
             newButton.setId("Add");
             newButton.setValue("Add");
             newButton.setType("submit");
             //newButton.setOnclick("return func_1(this,event);");
             MethodBinding binding = context.getApplication().createMethodBinding("#{pc_MyProjectView.go}", null);
             newButton.setAction(binding);
                  newButton.setParent(this);
             return newButton;
      /*  private HtmlSelectOneMenu createSelect()
             HtmlSelectOneMenu selectCategory=createSelect();
             return selectCategory;
         public void encodeBegin(FacesContext context) throws IOException {
              String style = (String)getAttributes().get("style");
              String startdate = (String)getAttributes().get("startdate");
              String enddate = (String)getAttributes().get("enddate");
              //String add=(String)getAttributes().get("add");
              ResponseWriter writer = context.getResponseWriter();
             writer.startElement("table", this);
            writer.writeAttribute("border","2","2");
            writer.startElement("tbody", this);
            writer.startElement("tr", this);
            writer.startElement("td", this);
            writer.writeText("Account Category", null);
            writer.endElement("td");
              writer.startElement("td", this);
              writer.writeText("Reg-No", null);
              writer.endElement("td");
              writer.startElement("td", this);
            writer.writeText("Account-No", null);
              writer.endElement("td");
              writer.startElement("td", this);
            writer.writeText("", null);
              writer.endElement("td");
              writer.startElement("td", this);
            writer.writeText("Start-Date", null);
              writer.endElement("td");
              writer.startElement("td", this);
            writer.writeText("End-Date", null);
              writer.endElement("td");
              writer.endElement("tr");
              writer.startElement("tr",this);          
              writer.startElement("td", this);
              writer.startElement("select", this);
            if (style!=null)
                   writer.writeAttribute("style", style, null);
            writer.writeAttribute("name","category","category");
            writer.startElement("option", this);
              writer.writeText("Select", null);
              writer.endElement("option");
              //to access data
              Account accountObj;
              AccountData accountDataobj;
              List listOfAccounts;
              int noOfAccounts;
              accountDataobj=new AccountData();
              listOfAccounts=accountDataobj.getAccounts();
              noOfAccounts=listOfAccounts.size();
              for(int i=0;i<noOfAccounts;i++)
              writer.startElement("option", this);     
              accountObj=(Account) listOfAccounts.get(i);
              writer.writeText(accountObj.getCategory(), null);
              writer.endElement("option");
              //System.out.println(accountObj.getRegNo());
              //System.out.println(accountObj.getAccountNo());
              writer.endElement("select");
              writer.endElement("td");
            writer.startElement("td", this);
              writer.startElement("select", this);
              if (style!=null)
                   writer.writeAttribute("style", style, null);
              writer.writeAttribute("name","regno","regno");
              writer.startElement("option", this);
              writer.writeText("Select", null);
              writer.endElement("option");
              for(int i=0;i<noOfAccounts;i++)
              accountObj=(Account) listOfAccounts.get(i);     
              writer.startElement("option", this);
              writer.writeText(""+accountObj.getRegNo(), null);
              writer.endElement("option");
              writer.endElement("select");
              writer.endElement("td");
              writer.startElement("td", this);
              writer.startElement("select", this);
              if (style!=null)
                   writer.writeAttribute("style", style, null);
              writer.writeAttribute("name","accno","accno");
              writer.startElement("option", this);
              writer.writeText("Select", null);
              writer.endElement("option");
              for(int i=0;i<noOfAccounts;i++)
              accountObj=(Account) listOfAccounts.get(i);
              writer.startElement("option", this);
              writer.writeText(accountObj.getAccountNo(), null);
              writer.endElement("option");
              //writer.startElement("option", this);
              //writer.writeText("00200155", null);
              //writer.endElement("option");
              writer.endElement("select");
              writer.endElement("td");
              writer.startElement("td", this);
              button.encodeBegin(context);
             button.encodeChildren(context);
             button.encodeEnd(context);
            writer.endElement("td");
              writer.startElement("td", this);
              writer.startElement("input", this);
              if (style!=null)
                   writer.writeAttribute("style", style, null);
              writer.writeAttribute("type","text","text");
              writer.writeAttribute("name","startdate","startdate");
              writer.writeAttribute("value",startdate,startdate);
              writer.writeAttribute("readonly", "","");
              //writer.endElement("input");
              writer.endElement("td");
              writer.startElement("td", this);
              writer.startElement("input", this);
              if (style!=null)
                   writer.writeAttribute("style", style, null);
              writer.writeAttribute("type","text","text");
              writer.writeAttribute("name","enddate","enddate");
              writer.writeAttribute("value",enddate,enddate);
              writer.writeAttribute("readonly", "","");
              writer.endElement("td");
              writer.endElement("tr");
              writer.endElement("tbody");
              writer.endElement("table");
         public String getFamily() {
              return "HelloFamily";
         }

    NewEclipseCoder wrote:
    How to handle events for "Select"...if i choose option1 from select then one text box is to be displayed in custom component and if i choose another option then some other text box is to be displayed in custom components...Two ways:
    1) submit the form to the server and render the desired textbox depending on the option.
    or
    2) render all textboxes and use Javascript/DOM to display/hide them depending on the option.

  • How to detect value change of item?

    Hi all,
    We want to list all goods that customer chooses, so TileList is used to display all goods information and a custom component MyItem is used as ItemRenderer. Meanwhile a Label is used to display the sum of all the goods. The hierarchy is simply like this:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"  layout="absolute" >
    <mx:TileList id="tl" dataProvider="{acGoods}" ItemRenderer="MyItem"/>
    <mx:Label id="labelSum"/>
    </mx:Application>
    Here, acGoods is an ArrayCollection which I believe is bindable.
    User may change price inside MyItem directly, so the text of the Label need to update as well. I find that acGoods contains latest price. Now the problem is Label text stays the same. I have tried to call calculating function in set acGoods() but it doesn't work.
    Please don't sugguest dispatch event because this is only a simplified scenario. If anybody tell me how to implement this by binding mechaism, that'll be very helpful.
    Best wishes,

    protected function get totalLabelText():string {
        // for each var i:* in acGoods and so on
        return 'Calculated label here';
    <mx:Label id="labelSum" text="{totalLabelText}"/>
    Inside MyItem:
    once you changed something invoke:
    Application.application.executeBindings(true);
    Hope this will work for you

  • How to Trigger SY-UCOMM User Event  in ALV

    Hi Folks,
    Currently I have a classic ALV report where I need to remove all the standard ALV buttons and replace it with one custom button.  Given that, there is a parameter in REUSE_ALV_GRID_DISPLAY that deals with the user command event.  But during the debug/execution of the custom button, the value of sy-ucomm(R_UCOMM in my example below), is always blank.
    Moreover, I did some relevant search here in SDN also before I paste my F1 here.  If you're going to take a look at my code below, it's exactly the same as what the other relevant topic in user event in ALV.
      PERFORM pf_status_kanban  USING rt_extab.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          i_callback_program       = w_repid
          i_callback_top_of_page   = 'F_TOPOF_PAGE'
          i_callback_pf_status_set = 'PF_STATUS_KANBAN'  "Exclude ALV standard buttons      
          i_callback_user_command  = 'F_USER_COMMAND'     "Subroutine for SY-UCOMM
    *      i_callback_top_of_page   = 'TOP_OF_PAGE'
          is_layout                = t_alv_layout
          it_fieldcat              = t_alv_fcat[]
          it_sort                  = t_alv_sort
          is_variant               = t_gs_variant
          it_events                = t_events            "Events for AT USER-COMMAND
    *      IT_EVENT_EXIT            = 'AT USER-COMMAND'
        TABLES
          t_outtab                 = t_output.
    FORM F_USER_COMMAND  USING    p_r_ucomm   LIKE sy-ucomm
                                  rs_selfield TYPE slis_selfield.
      CASE r_ucomm.
        WHEN 'DOWNLOAD'.
          PERFORM f_generate_col USING t_output.
        WHEN OTHERS.
      ENDCASE.
    ENDFORM.                    " F_USER_COMMAND
    FORM F_USER_COMMAND  USING    p_r_ucomm   LIKE sy-ucomm
                                  rs_selfield TYPE slis_selfield.
      CASE r_ucomm.
    *    WHEN 'EXCEL'.
    *      PERFORM f_generate_col USING t_output.
        WHEN 'DOWNLOAD'.
          PERFORM f_generate_col USING t_output.
        WHEN OTHERS.
      ENDCASE.
    ENDFORM.                    " F_USER_COMMAND
    Thanks and regards,
    Jaime

    Hi Martin,
    Yes, I ensure that the function code in my custom button is exactly the same as the condition for the sy-ucomm.
    The call routine for the PF_STATUS_KANBAN is just a test since it seems like Iu2019m chasing a phantom issue here.
    Yes, w_repid is set correctly.
    DATA:
    w_repid LIKE sy-repid.                                              "Report ID.
    INITIALIZATION.
      w_repid = sy-repid.
    It seems like the documentation im reading
    Parameter R_UCOMM contains the function code triggered. is not happening as expected...
    Thanks.
    Jaime
    Edited by: Jaime Cabanban on May 7, 2009 10:16 AM

  • Lightning: How can I permanently change the event organiser's email address when inviting attendees?

    I have two email accounts associated with Thunderbird; one is the default account from which my emails are being sent. However, when attempting to send an event invitation, through Lightning, my secondary email appears in the organiser's field and it cannot be changed.
    Thanks, in advance, for any responses.

    Many sincere thanks for taking the time to reply. Problem solved!

  • How to trigger and change password for AD user after form based login

    Hello,
    We are authenticating against Active Directory with Weblogic 10.3 using FORM based security. Everything is working. I need to now change a password for an authenticated user. For example, I have set a user to have their password expire on next logon from the AD side. The user logs in but somehow I need to trap some info from Active Directory (or an LDAP conversation) to figure out if I need to force the user to change password.
    Do I need to start looking at custom code with LDAP Java SDK's or can I use a canned MBean from Weblogic Server.
    I am looking at http://www.mozilla.org/directory/ for LDAP.
    Can I set/reset an AD user's password with an MBean like the following link?
    http://download.oracle.com/docs/cd/E13222_01/wls/docs92/javadocs/index.html?weblogic/management/security/authentication/UserPasswordEditorMBean.html
    If anyone has any experience with this or can point me in the right direction let me know.
    If anyone else is interested please add to the tread and I'll be sure to keep the found solution(s) updated here.
    Thanks...........
    JJ Everett

    Hello JJ
    Please see document ID 403484.1 in http://metalink.oracle.com. This may help to understand what you are aiming to do. Cheers
    -- Nathan

  • How to trigger a workflow from event - newbie question

    Hi,
    I have a simple workflow, with the start node triggered by an XML event.
    What JMS destination I am supposed to send the XML document to in order for
    the workflow to be triggered. I thought that it was the wlpiEvent, but the
    workflow doesn't start. Also tried WLI_BPM_EVENT, with no joy.
    If anyone can point me in the right direction, then I would be grateful
    Lucy

    If it is one workflow sending a message to another, you can use internal destination.
    If it is another application then it would be WLI_BPM_EVENT ( which goes by the
    jndi name com.bea.wli.bpm.EventQueue in default installation ).
    "Lucy Collins" <[email protected]> wrote:
    Hi,
    I have a simple workflow, with the start node triggered by an XML event.
    What JMS destination I am supposed to send the XML document to in order
    for
    the workflow to be triggered. I thought that it was the wlpiEvent, but
    the
    workflow doesn't start. Also tried WLI_BPM_EVENT, with no joy.
    If anyone can point me in the right direction, then I would be grateful
    Lucy

  • How to move values to two different structured field symbols

    Hi All,
                I have to push my data from one field symbols to another both having different structure, but same data type
    with regards,
    Thambe

    try moving the data with write statement. SAP says write statement dose the type cast for different data types.
    Hope this helps.
    FY

Maybe you are looking for

  • Can not open file download prompt in portal web app.

    Hi folks, I am migrating existing Struts app into portal web app and currently stuck on the following problem. In existing app, Struts action calls servlet that generates excel file, sets response headers: response.setContentType("application/vnd.ms-

  • How to remove values data points from Apex3 Flash Chart

    Hi I am using a Apex 3.2 and I have to put Flash Charts in my application. But since the charts have are smaller in size, I do not want to have the data points coming up in the chart. I have planned to show them using hints. But unfortunately, I am n

  • New Artwork Glitch for 10.6?

    Last night I downloaded the latest edition of iTunes and immediately I noticed something was off. The artwork on some of my albums have some glitch problems around the border of the art. The really odd part is that it's not exactly affecting the same

  • App category for Legal

    Is there a app category for legal?  Apple seems to have a category for other industries/fields.  I see they do have apps for legal so why not add such a category.  Am I missing something?

  • Seperator in report

    I have an Apex page which has a report region on. The source of the report region is some SQL which summarises data in a table, grouping by date, something like this - 26-October-2008 Record 1 26-October-2008 Record 2 26-October-2008 Record 3 27-Octo