How do I register an event as a value in an array?

I have a boolean which is True whenever data I am recording exceeds a certain value. What I want to do is keep a log of every time this happens and store it into an array, preferably in a way that each event has a new number (e.g. first event is logged as 1, second as 2, etc.).
The aim is that every time this condition is met, an output signal is sent to another DAQ card, and the signal is dependent on the current event iteration (the computer reading from the other DAQ card can interpret this with if statements for the voltage ranges, which seems to work).
I would be very grateful if you had any input as to how to go about this.
Thank you very much!
Solved!
Go to Solution.

Try something like this ...
LabVIEW Champion . Do more with less code and in less time .
Attachments:
RecordThresholdEvent.vi ‏21 KB

Similar Messages

  • How can I register a Event for TAB???

    Hi,
    my problem is, that i search for an solution to register an Event for Tabulator (Tab Key).
    If i klick to tab, than it must be trigger the event!!
    I have found in forum following:
    http://webcache.googleusercontent.com/search?q=cache:fk2pfn0bhiwj:www.sdn.sap.com/irj/scn/thread%3fmessageid%3d1078796eventtabulatoralvgrid&cd=50&hl=de&ct=clnk&gl=de
    How must I register my TAB Event ????
    Please give an example!
    Thanks in forwards.
    Ersin

    Thanks for Help:-)

  • How can I register an EVENT for ALV-GRID?????

    Hi,
    i have create Events for my ALV-Grid Table (cl_gui_alv_grid).
    But there is one Problem!!!!
    Which Event must i create, if users write something in the ALV row and press to key "enter" ???
    With kind regards
    Ersin

    Did you set the handler for one of forementioned events? If no, please suplement your code with the following
    "create handler class
    CLASS lcl_gui_alv_event_receiver DEFINITION.
      PUBLIC SECTION.
        METHODS:
    "        Controlling data changes when ALV Grid is editable
              handle_data_changed FOR EVENT data_changed OF cl_gui_alv_grid
                                  IMPORTING er_data_changed e_onf4 e_onf4_before e_onf4_after,
    "       To be triggered after data changing is finished
              handle_data_changed_finished FOR EVENT data_changed_finished OF cl_gui_alv_grid
                                           IMPORTING e_modified ,
    ENDCLASS.                  
    "implement you handler methods
    CLASS lcl_gui_alv_event_receiver IMPLEMENTATION.
      METHOD handle_data_changed .
        MESSAGE 'Data changed' TYPE 'I'.
      ENDMETHOD.
      METHOD handle_data_changed_finished .
         MESSAGE 'Data changed finished' TYPE 'I'.
      ENDMETHOD .
    ENDCLASS.
    data:  g_alv_event_ref TYPE REF TO lcl_gui_alv_event_receiver.
    CREATE OBJECT g_alv_event_ref.
    "set handlers for these events
    SET HANDLER:
      g_alv_event_ref->handle_data_changed FOR g_alv_grid_ref,
      g_alv_event_ref->handle_data_changed_finished FOR g_alv_grid_ref,
    "register the events after pressing enter
    CALL METHOD g_alv_grid_ref->register_edit_event
          EXPORTING
            i_event_id = cl_gui_alv_grid=>mc_evt_enter.
    Regards
    Marcin

  • How to make mouse click event to display image on 2D array?

    Hi! beginner programmer here looking for some guidance, hints and tips.
    I'm making a game of "Connect 4" and using a 2D array to display the board which is 7x6 in size.
    What i want to do is that when the player clicks on one of the squares, one of the 2 game pieces(red.png or yellow.png) will appear on the respective coordinates of the 2D array and check if the square in the first row is empty and if true, places/display
    the game piece, else it places the piece on the first empty square.
    Since i've never worked with WinForms or 2d arrays before i'm not sure how to initiate it.
    What i was considering in pseudocode was:
    pb_Mouseclick(object sender, MouseEventArgs e)
    if(e.Button==MouseButtons.Left)
    Picturebox pb=(Picturebox)sender;
    clickLocation.X= e.Location.X + pb.Location.X, pieceArray[row];
    clickLocation.Y=e.Location.Y + pb.Location.Y, pieceArray[col];
    if(pieceArray[row, col] == null)
    if(player1.IsStarter==true) selectedimage(@"yellow.png")
    else
    selectedimage(@"red.png")
    else {
    bool empty= false;
    for(int row=0; row<height - 1; row++)
    for(int col=0; col<width; col++)
    if(pieceArray[row, col] ==null)
    empty=true;
    (Add gamepiece)
    This is what i've come up with so far, but it's just some theorycrafting, not sure if i should use a while-loop instead...
    Hope anyone can give me some insight on how to make it work and if the logic of my pseudocode is correct for what i want according to my earlier explanation.
    Many thanks in advance!
    Regards
    Gabbelino
    Student at the University of Borås, Sweden

    Hi Gabbelino,
    I could not understand your game rule clearly, and could you make explanation for me?
    1.>> when the player clicks on one of the squares
    What were the squares? Did it like dice or anything else?
    2.>> one of the 2 game pieces(red.png or yellow.png) will appear on the respective coordinates of the 2D array
    What is the 2 game pieces? Could you show us the two pictures?
    3.>> check if the square in the first row is empty and if true, places/display the game piece, else it places the piece on the first empty square
    Could you show us where places/display the game piece?
    Best Regards,
    Tony
    Help each other

  • How to register "Enter" event  in sap xrpm

    all expert:
    how to register "Enter" event  in sap xrpm

    all expert:
    how to register "Enter" event  in sap xrpm

  • HT1338 Purchased a used macbook pro with Mountain Lion. My old Mac runs Snow Leopard is backed up to Time machine. How do I register the operating system to me and how do I use Time Machine to move my files to the new used computer?

    Purchased a used macbook pro with Mountain Lion. My old Mac runs Snow Leopard is backed up to Time machine. How do I register the operating system to me and how do I use Time Machine to move my files to the new used computer?

    If you look at the User Tips tab, you will find a write up on just this subject:
    https://discussions.apple.com/docs/DOC-4053
    The subject of buying/selling a Mac is quite complicated.  Here is a guide to the steps involved. It is from the Seller's point of view, but easily read the other way too:
    SELLING A MAC A
    Internet Recovery, and Transferability of OS & iLife Apps
    Selling an Old Mac:
    • When selling an old Mac, the only OS that is legally transferable is the one that came preinstalled when the Mac was new. Selling a Mac with an upgraded OS isn't doing the new owner any favors. Attempting to do so will only result in headaches since the upgraded OS can't be registered by the new owner. If a clean install becomes necessary, they won't be able to do so and will be forced to install the original OS via Internet Recovery. Best to simply erase the drive and revert back to the original OS prior to selling any Mac.
    • Additionally, upgrading the OS on a Mac you intend to sell means that you are leaving personally identifiable information on the Mac since the only way to upgrade the OS involves using your own AppleID to download the upgrade from the App Store. So there will be traces of your info and user account left behind. Again, best to erase the drive and revert to the original OS via Internet Recovery.
    Internet Recovery:
    • In the event that the OS has been upgraded to a newer version (i.e. Lion to Mountain Lion), Internet Recovery will offer the version of the OS that originally came with the Mac. So while booting to the Recovery Disk will show Mountain Lion as available for reinstall since that is the current version running, Internet Recovery, on the other hand, will only show Lion available since that was the OS shipped with that particular Mac.
    • Though the Mac came with a particular version of Mac OS X, it appears that, when Internet Recovery is invoked, the most recent update of that version may be applied. (i.e. if the Mac originally came with 10.7.3, Internet Recovery may install a more recent update like 10.7.5)
    iLife Apps:
    • When the App Store is launched for the first time it will report that the iLife apps are available for the user to Accept under the Purchases section. The user will be required to enter their AppleID during the Acceptance process. From that point on the iLife apps will be tied to the AppleID used to Accept them. The user will be allowed to download the apps to other Macs they own if they wish using the same AppleID used to Accept them.
    • Once Accepted on the new Mac, the iLife apps can not be transferred to any future owner when the Mac is sold. Attempting to use an AppleID after the apps have already been accepted using a different AppleID will result in the App Store reporting "These apps were already assigned to another Apple ID".
    • It appears, however, that the iLife Apps do not automatically go to the first owner of the Mac. It's quite possible that the original owner, either by choice or neglect, never Accepted the iLife apps in the App Store. As a result, a future owner of the Mac may be able to successfully Accept the apps and retain them for themselves using their own AppleID. Bottom Line: Whoever Accepts the iLife apps first gets to keep them.
    SELLING A MAC B
    Follow these instructions step by step to prepare a Mac for sale:
    Step One - Back up your data:
    A. If you have any Virtual PCs shut them down. They cannot be in their "fast saved" state. They must be shut down from inside Windows.
    B. Clone to an external drive using using Carbon Copy Cloner.
    1. Open Carbon Copy Cloner.
    2. Select the Source volume from the Select a source drop down menu on the left side.
    3. Select the Destination volume from the Select a destination drop down menu on the right
    side.
    4. Click on the Clone button. If you are prompted about creating a clone of the Recovery HD be
    sure to opt for that.
    Destination means a freshly erased external backup drive. Source means the internal
    startup drive. 
    Step Two - Prepare the machine for the new buyer:
    1. De-authorize the computer in iTunes! De-authorize both iTunes and Audible accounts.
    2, Remove any Open Firmware passwords or Firmware passwords.
    3. Turn the brightness full up and volume nearly so.
    4. Turn off File Vault, if enabled.
    5. Disable iCloud, if enabled: See.What to do with iCloud before selling your computer
    Step Three - Install a fresh OS:
    A. Snow Leopard and earlier versions of OS X
    1. Insert the original OS X install CD/DVD that came with your computer.
    2. Restart the computer while holding down the C key to boot from the CD/DVD.
    3. Select Disk Utility from the Utilities menu; repartition and reformat the internal hard drive.
    Optionally, click on the Security button and set the Zero Data option to one-pass.
    4. Install OS X.
    5. Upon completion DO NOT restart the computer.
    6. Shutdown the computer.
    B. Lion and Mountain Lion (if pre-installed on the computer at purchase*)
    Note: You will need an active Internet connection. I suggest using Ethernet if possible because
    it is three times faster than wireless.
    1. Restart the computer while holding down the COMMAND and R keys until the Mac OS X
    Utilities window appears.
    2. Select Disk Utility from the Mac OS X Utilities window and click on the Continue button. 
    3. After DU loads select your startup volume (usually Macintosh HD) from the left side list. Click
    on the Erase tab in the DU main window.
    4. Set the format type to Mac OS Extended (Journaled.) Optionally, click on the Security button
    and set the Zero Data option to one-pass.
    5. Click on the Erase button and wait until the process has completed.
    6. Quit DU and return to the Mac OS X Utilities window.
    7. Select Reinstall Lion/Mountain Lion and click on the Install button.
    8. Upon completion shutdown the computer.
    *If your computer came with Lion or Mountain Lion pre-installed then you are entitled to transfer your license once. If you purchased Lion or Mountain Lion from the App Store then you cannot transfer your license to another party. In the case of the latter you should install the original version of OS X that came with your computer. You need to repartition the hard drive as well as reformat it; this will assure that the Recovery HD partition is removed. See Step Three above. You may verify these requirements by reviewing your OS X Software License.

  • HOW TO TRIGGER CHECK BOX EVENT IN BLOCKED LIST OUT PUT

    Hi Abapers,
    I am developing ALV Blocked list using 3 internal tables.
    in output list my requirement is if I click one check box in one intrrnal table the below internal table checkboxes should be checked.
    how to solve this problem this is very urgent to me I hope somebody will help me.
    Regards
    Shashikumar.G

    Hi
    First you need to register the events of clicking of the checkbox.
    Once registerred, you can capture that event and when occured, you can set the checkboxes for below internal table.
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/95/34eb7feb6211d3a7270000e83dd863/frameset.htm">http://help.sap.com/saphelp_nw04/helpdata/en/95/34eb7feb6211d3a7270000e83dd863/frameset.htm</a>
    Regards
    Raj

  • How can I get the events from a java program?

    I want to make a monitor to watch a java program.How can I get the events from the GUI of this program some as mouse cliking, keyinput. So I can watch these in my monitor.
    Thanks

    Hi,
    To put a monitor to the events occuring in the GHUI u need to register required components with the appropriate EventListeners.
    Liek if u want to get notified when a mouse is clicked, then u need to add The MouseListener to the component which u want to be monitored.
    Say
    myFrame which is the JFrame object which shuld be monitored for the events.
    Then in ur program u have to add following code
    myFrame.addMouseListener( someObectReference );
    Here the someObjectReference should be an instance to a concrete class ..i.e. U write a class like the following
    public class MyMouseListener implements MouseListener {
    // override the followig methods
    public void mouseClicked(MouseEvent me){ sop("MOUSE CLICKED ON THE FRAME");}
    public void mousePressed(MouseEvent me){}
    public void mouseReleased(MouseEvent me){}
    If u dont want to use another class for listening to the events. Then u can make teh current class monitor the events. To do so ur class should implement the appropriate listener and should override the required methods.
    and u should say myFrame.addMouseListenet( this );
    thats it

  • How to suppress 'spurious' update events where the entry is identical

    We often have clusters with event listeners on reference data caches. These caches are refreshed by calling putAll() to update values efficiently. Although this is efficient, and keeps refresh code simple, many unwanted 'spurious' update events are generated. Spurious in the sense that in most of update events the old and new values are the same.
    We considered using a MapTrigger to suppress these uninteresting update events. The problem is how to implement a 'veto' in the MapTrigger.process method. What we'd like to do from a trigger is:
    if (old value == new value)
      ignore new entry
    else
      process, enrich, or validate new entry as desired...
    end ifWe'd like a clean way to signal from a MapTrigger that an entry should be ignored (rather than rejected). The Javadoc shows two possibilities:
    *(1)* undo the pending change by resetting the entry value to the original value obtained from MapTrigger.Entry.getOriginalValue();
    *(2)* reject the pending change by throwing a RuntimeException, which will prevent any changes from being committed, and will result in the exception being thrown from the operation that attempted to modify the map
    Of these *(2)* Causes a put() failure in the client. That is appropriate for something like a validation failure, but not for simply ignoring an unwanted update. Option *(1)* unfortunately generates an update event!
    Our current workaround is a MapEventTransformer to suppress the spurious updates:
    public class UpdateSupressionTransformer implements MapEventTransformer {     
      /** Avoid sending an update event if the value is unchanged */
      public MapEvent transform(MapEvent e) {
        if (e.getId() == MapEvent.ENTRY_UPDATED) {
          if (e.getNewValue().equals(e.getOldValue())) {
            return null;
        return e;
    }This works well but requires client code to register event listeners correctly. It also means that the unecessary change is still generated in the cache. For example a cache stores will be called needlessly.
    Can a feature be considered to allow a clean way for identical updates to be ignored, or to not generate events?
    Ideally this would be before the update is made - like a trigger. It seems a pity the MapTrigger design does not allow this.
    Such a feature would allow simple cache refresh logic using putAll() - without having to check for deltas - avoiding large numbers of unwanted update events. We think this is likely to be a common requirement.
    Cheers,
    phil

    Hi,
    I dont think that this is the problem associated with portal.You are working on BI queries in portal but BI screen that you are working on is of SAP R/3 correct me is i am wrong??And the message you are getting is of R/3 screen,BI screens are shown in an iview and an iview cant show any message..
    Regards,
    Ameya

  • How to Generate a ReportError Event

    I'm sure I'm just missing something here.  Our LabVIEW GUI has a registered event Callback for ReportError.  In TestStand I handle errors with SequenceFilePostStepRuntimeError and ProcessModelPostStepRuntimeError callbacks.  I used the error handling example and modified to basically just show a popup with the error message.  My problem is how to generate the ReportError event so our GUI can take the appropriate action.
    I don't see it listed under the given UIMessage event codes.  I can't find it anywhere.  So the questions is where do I generate the ReportError event within TestStand?
    Thanks.

    Hi Sir Mutt,
    If my understanding is correct, you are using LabVIEW as your operator interface to start the Teststand Application and you want to do Teststand Error Handling in LabVIEW. The most common way that this is achieved is through ActiveX Invoke and Property nodes as well as ReportError events. I have attached two screenshot examples of this. Does this sufficiently address your question or did I misinterpret your question?
    Regards,
    Jackie
    DAQ Product Marketing Engineer
    National Instruments
    Attachments:
    ReportError Callback.png ‏8 KB
    Teststand Error Handling.png ‏20 KB

  • Register Control events?

    Hallo,
    I've discovered that I can connect a control reference to the EventSource
    input of the RegisterForEvents function. This event (e.g Button1:MouseUp)
    appears as dynamic event in the EventStructure editor. Up to this point it
    seems to be possible to dynamically register for control events. But
    register another event (e.g Numeric1:ValueChanged) in the Button1:MouseUp
    handler fails and LabVIEW tells "Cannot connect different refnum types".
    Dynamically register for control events is something I'm desperately
    searching for.
    1. Is it just an unwanted behaviour that I can connect a control reference
    to a RegisterForEvents function or is this the first step to an
    undocumented feature.
    2. If it is intended behaviour, how can I complete to
    register another
    event in a handler?
    Thank you
    Oliver Friedrich

    > I've discovered that I can connect a control reference to the EventSource
    > input of the RegisterForEvents function. This event (e.g Button1:MouseUp)
    > appears as dynamic event in the EventStructure editor. Up to this point it
    > seems to be possible to dynamically register for control events. But
    > register another event (e.g Numeric1:ValueChanged) in the Button1:MouseUp
    > handler fails and LabVIEW tells "Cannot connect different refnum types".
    >
    > Dynamically register for control events is something I'm desperately
    > searching for.
    >
    > 1. Is it just an unwanted behaviour that I can connect a control reference
    > to a RegisterForEvents function or is this the first step to an
    > undocumented feature.
    >
    > 2. If it is intended behaviour, how can I
    complete to register another
    > event in a handler?
    The register for events lets you specify which object(s) you are
    interested in receiving events on. If you have a VI event, you can
    register and reregister at various points in your program to specify
    which you are currently interested in. If the events is a Boolean
    event, then any Boolean will work, but numerics aren't Booleans. If you
    define the initial event to take a Control reference, then both Booleans
    and Controls can be wired up since both inherit from Control.
    Also note that wiring a not-a-refnum will unregister everything meaning
    you don't want events for any particular control.
    As for whether or not it is unintended or undocumented. It is
    definitely intended, and I suspect that it is documented. Also, I'm
    pretty sure the examples show how to do this.
    Greg McKaskle

  • How do i register the macbook pro which i just bought

    i just bought  a macbook pro from apple reseller how do i register it as the have not yet done
    Message was edited by: tilitymarie

    Hello, again:
    If you have set up the computer, and are online using it with your Apple ID, then it should
    be registered even if the seller did not record that item as of yet into an Apple database.
    If you have set up the computer and have it running under your Apple ID (to access and
    record upgrade/update and also purchase through the App Store and iTunes store) you
    may have to contact Apple directly such as I indicated in my post (yesterday, 17 APR '15,
    11:40 PM local time) above. -- The time on my earlier reply is not correct, so it may have
    been somehow changed by the site host, as that is an odd error; just saying it was prior
    to 3:51AM AKDT when I posted that information here; but that's what it implies now.
    Usually when you go online and set up the computer, it will automatically go to Apple and
    when it checks for software and updates the OS and all that, by use of your Apple ID, it
    should be registered then. And you should be able to see evidence of it where warranty
    coverage under the Complementary (not extended optional AppleCare, if you are not
    enrolled in that, or did not buy it where a reseller could have offered Auto-Enroll Applecare.
    So without more information on what you may have done, or if the computer has put in use
    by you (to check the authorization of your registration, then, at Apple) I can't add much now
    that does not retrace methods to check that've already been posted. Local time: 11:16AM
    If you are in the US or Canada, the Apple Store online should be called via the 800-number.
    In other countries or regions that have an official presence (an online Apple Store page, not
    an independent sales organization) you may have to contact the reseller you bought it from.
    If you have questions about your apple product warranty, you may (depending on region) be
    able to use the https://getsupport.apple.com/ServiceOptionAction.action get support pages
    and if logged into the Apple site, have options (with apple ID used to gain access) to check it.
    Pending more information, if the computer has been put into first-use, and if you have used
    that online with an Apple ID (yours) then information should verify due to contact with Apple
    App Store, so the other pages should automatically reflect that. And the opposite, if not.
    So, I am still not certain if you have followed the usual practice of setup and use of Apple ID
    with the computer, or if it is still in a sealed retail carton, and the online looking may have
    been done by some other computer.  In either case, according to the Apple page that IIIaass
    posted (that I see, which contains english and german) suggests that if you have not already
    gone online to check for updates via App Store with the computer, but if it is set up and working
    online, it may not be necessary to have it registered to have the complementary coverage...
    Yet when I use that page, I also see as she did, that my visiting computer is registered, since
    it was when I put mine online after purchase and had it set up via my Apple ID initially.
    Back to the question, where are you located? Local official 800-numbers for US and other
    countries' Apple Store contact are different, based on region or country page; so if you are
    not in the US, a number I could post so you could get help (maybe) could be the wrong one.
    To contact the reseller (in whatever region you are in) to ask about valid registration as new
    computer in your name, may be some place to check. But to contact Apple, Inc. by use of
    the official Apple Store online page wherever you are, should be possible, to get local phone
    number for Apple sales support (if online store exists, not some independent seller site.)
    You said to lllaass that you've been online with the new MacBook Pro, and if you can get
    into the App Store to check for and get system updates, then it should be registered.
    And if it had been previously sold to someone else, and not wiped, their Apple ID would be
    what's in use, if you did not have to set it up from scratch and personalize the computer. If
    by odd chance this may be the case, return the computer to the reseller and ask for another.
    There are other questions this situation could pose, which may require other action, if so.
    In any event...
    Hopefully this matter can be worked out, one way or another!

  • How can we trace the event

    Hello Expert,
    We have a lot of process chain which was trigger by one event with different variant. However, since the last two days, the process chain did not run. it seems the event was not triggered.
    How can we trace the event? I mean, if it is triggered or not within one day.
    As I checked the process chain, some of the process chain was successfully triggered by the same event. it is really weird...
    Thanks
    XY
    Edited by: xy chen on Nov 6, 2008 3:24 AM
    Edited by: xy chen on Nov 6, 2008 3:30 AM

    Hi......
    Copy the event...........then go to SE16 >> RSEVENTHEAD............there in the event field give the event name.........then execute............from there you will get the event collector name................
    If you don't get it here then search in table RSEVENTCHAIN.........
    Copy the event and go to RSA1OLD(if you are in 7.0)............otherwise go to RSA1...............from there go to the Event collector........give the event collector name and check whether it registered or not............if registered when last it was registered.............if you are unable to find this event in these two chains............then go SM37................from there choose the event..........and in the Job field write BI_PROCESS_TRIGGER..............from there check when this job last triggered for this event.............
    Hope this helps.........
    Regards,
    Debjani........
    Edited by: Debjani  Mukherjee on Nov 6, 2008 4:44 AM

  • How can i use LINK_CLICK event

    Hi,
    how can i use event LINK_CLICK in list tree.
    Plz help me.
    Regards ,
    Venkat.

    use this....
    CLASS cl_event_receiver DEFINITION.
      PUBLIC SECTION.
        METHODS on_expand_no_children
                FOR EVENT expand_no_children OF cl_gui_simple_tree
                IMPORTING node_key sender.
        METHODS on_node_double_click
                FOR EVENT node_double_click OF cl_gui_simple_tree
                IMPORTING node_key sender.
    ENDCLASS.
    CLASS    cl_event_receiver
    IMPLEMENTATION
    CLASS cl_event_receiver IMPLEMENTATION.
    Triggering event:      expand_no_children
    Handling method:       on_expand_no_children
    Description:
    The handling method is called whenever a node is supposed to be
    expanded (by clicking on the expander icon) while subordinate entries
    are not yet known in the GUI.
    In this case the node table must be complemented with the respective
    entries.
      METHOD on_expand_no_children.
        IF SENDER <> obj_simple_tree.
          EXIT.
        ENDIF.
    Determine subnodes
        REFRESH t_gui_node.
        LOOP AT t_node INTO wa_node WHERE relatkey = node_key.
          APPEND wa_node TO t_gui_node.
        ENDLOOP.
    Send node table to GUI
        CALL METHOD obj_simple_tree->ADD_NODES
          EXPORTING
            TABLE_STRUCTURE_NAME           = 'MTREESNODE'
            NODE_TABLE                     = t_gui_node
          EXCEPTIONS
            ERROR_IN_NODE_TABLE            = 1
            FAILED                         = 2
            DP_ERROR                       = 3
            TABLE_STRUCTURE_NAME_NOT_FOUND = 4
            others                         = 5.
        IF SY-SUBRC <> 0.
          MESSAGE i398(00) WITH 'Error' sy-subrc
                                'at methode ADD_NODES'.
        ENDIF.
      ENDMETHOD.
    Triggering event:      node_double_click
    Handling method:       on_node_double_click
    The handling method is called every time a double-click is executed
    on a node or a leaf.
      METHOD on_node_double_click.
        IF SENDER <> obj_simple_tree.
          EXIT.
        ENDIF.
    Output message for selected node or leaf
        CLEAR wa_node.
        READ TABLE t_node
          WITH KEY node_key = node_key
          INTO wa_node.
        IF SY-SUBRC = 0.
          IF wa_node-isfolder = 'X'.
            MESSAGE i398(00)
              WITH 'Double-click on node' wa_node-node_key.
          ELSE.
            MESSAGE i398(00)
              WITH 'Double-click on leaf' wa_node-node_key.
          ENDIF.
        ELSE.
          MESSAGE i398(00)
             WITH 'Double-click on unknown node'.
        ENDIF.
      Trigger PAI and transfer function code (system event)
        CALL METHOD cl_gui_cfw=>set_new_ok_code
             EXPORTING new_code = 'FCODE_DOUBLECLICK'.
      ENDMETHOD.
    ENDCLASS.
    *&      Module  STATUS_0100  OUTPUT
          GUI status for dynpro
    MODULE STATUS_0100 OUTPUT.
      SET PF-STATUS 'DYN_0100'.
      SET TITLEBAR 'DYN_0100'.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    *&      Module  create_objects  OUTPUT
          Create instances
    MODULE create_objects OUTPUT.
      IF NOT obj_custom_container IS INITIAL.
        EXIT.
      ENDIF.
          Create instance for custom container
      CREATE OBJECT obj_custom_container
        EXPORTING
        PARENT                      =
          CONTAINER_NAME              = 'DYNPRO_CONTAINER'
        STYLE                       =
        LIFETIME                    = lifetime_default
        REPID                       =
        DYNNR                       =
        NO_AUTODEF_PROGID_DYNNR     =
        EXCEPTIONS
          CNTL_ERROR                  = 1
          CNTL_SYSTEM_ERROR           = 2
          CREATE_ERROR                = 3
          LIFETIME_ERROR              = 4
          LIFETIME_DYNPRO_DYNPRO_LINK = 5
          others                      = 6.
      IF SY-SUBRC <> 0.
        MESSAGE i398(00) WITH 'Error' sy-subrc
                              'when creating the custom container controls'.
      ENDIF.
          Create instance (back-end) for Simple Tree Model
      CREATE OBJECT obj_simple_tree
        EXPORTING
          NODE_SELECTION_MODE = CL_SIMPLE_TREE_MODEL=>NODE_SEL_MODE_SINGLE
        HIDE_SELECTION              =
        EXCEPTIONS
          ILLEGAL_NODE_SELECTION_MODE = 1
          others                      = 2.
      IF SY-SUBRC <> 0.
        MESSAGE i398(00) WITH 'Error' sy-subrc
                              'when creating the Simple Tree Model'.
      ENDIF.
          Create instance (representative object for control at front end)
      CALL METHOD obj_simple_tree->CREATE_TREE_CONTROL
        EXPORTING
        LIFETIME                     =
          PARENT                       = obj_custom_container
        SHELLSTYLE                   =
      IMPORTING
        CONTROL                      =
        EXCEPTIONS
          LIFETIME_ERROR               = 1
          CNTL_SYSTEM_ERROR            = 2
          CREATE_ERROR                 = 3
          FAILED                       = 4
          TREE_CONTROL_ALREADY_CREATED = 5
          others                       = 6.
      IF SY-SUBRC <> 0.
        MESSAGE i398(00) WITH 'Error' sy-subrc
                              'when creating the Simple Tree Control'.
      ENDIF.
    ENDMODULE.                 " create_objects  OUTPUT
    *&      Module  register_events  OUTPUT
          Event handling
    MODULE register_events OUTPUT.
          Register events as system event at CFW                         *
      CLEAR t_events.
    Register event for double-click
      CLEAR wa_event.
      wa_event-eventid = CL_SIMPLE_TREE_MODEL=>EVENTID_NODE_DOUBLE_CLICK.
      wa_event-appl_event = ' '.
      APPEND wa_event TO t_events.
    Register events at CFW and control at front end
      CALL METHOD obj_simple_tree->SET_REGISTERED_EVENTS
         EXPORTING
            EVENTS                   = t_events
         EXCEPTIONS
           ILLEGAL_EVENT_COMBINATION = 1
           UNKNOWN_EVENT             = 2
           others                    = 3.
      IF SY-SUBRC <> 0.
        MESSAGE i398(00) WITH 'Error' sy-subrc
                              'when registering the events'.
      ENDIF.
          Create event handler and register events
      IF obj_event_receiver IS INITIAL.
        CREATE OBJECT obj_event_receiver.
        SET HANDLER obj_event_receiver->on_node_double_click
                FOR obj_simple_tree.
        SET HANDLER obj_event_receiver->on_expand_no_children
                FOR obj_simple_tree.
      ENDIF.
    ENDMODULE.                 " register_events  OUTPUT
    *&      Module  create_tree  OUTPUT
          Create node table with root and 1st level
    MODULE create_tree OUTPUT.
      IF NOT t_node IS INITIAL.
        EXIT.
      ENDIF.
          Create node table
      PERFORM fill_node_table.
          Fill node table t_gui_node for control
      REFRESH t_gui_node.
      t_gui_node = t_node.
          Transfer entire node table to Simple Tree Model
      CALL METHOD obj_simple_tree->ADD_NODES
        EXPORTING
          NODE_TABLE          = t_gui_node
        EXCEPTIONS
          ERROR_IN_NODE_TABLE = 1
          others              = 2.
      IF SY-SUBRC <> 0.
        MESSAGE i398(00) WITH 'Error' sy-subrc
                              'at methode ADD_NODES'.
      ENDIF.
    ENDMODULE.                 " create_tree  OUTPUT

  • In iCal how do i set an event every 3 months

    In iCal how do i set an event every 3 months.

    Sk8trdad,
    I presume that your question relates to the Calendar App on the iPad.
    You have to use the "repeat>Custom" setting on the Desktop version of iCal.

Maybe you are looking for