Wait until done

Hi,
When I launch a subvi from a vi using a call by reference node, how can I tell it I am not interesting in wait until done, similar to invoke Method:run VI where I can set wait until done to false.
Thanks,
ToNi.

My problem is that from one vi I call another subvi and I pass several parameters using a call by reference node. I want from subvi, close reference of the vi but I can't.
Using a invoke node I can't pass parameters to subvi but I don't need to wait until subvi done, but the problem is that I want to call subvi with a call by reference node because I need to pass parameters to subvi but if I use a call by reference I have to wait the subvi to finish execution and then I can't close the vi reference from my subvi.
How Can I do it? I want to pass parameters from my vi to my subvi and from my subvi I want to close the vi that has called my subvi.
Thanks,
A lot of people from here have helped me with a lot of examples, but the problem is that these examples don't work when I pass parameters from my vi to a subvi and from my subvi close the reference of the vi that has called my subvi.
ToNi.

Similar Messages

  • Halt VI when Wait Untill Done.VI is waiting

    This program is for digitally triggered analog acquisition - N samples,
    N channels.
    There are 2 loops, one for the acquisition and one for user controls
    for the graphs. When the user presses the STOP button the VI will not
    stop because the WaitUntilDone VI is still waiting for the next
    trigger.(Therefore it will only stop after the next trigger) Is there
    anyway to interupt the wait until done and halt the VI?
    Another question: When I stop this VI using the STOP button(The one I
    have put) and then run the VI again the 2nd loop(controls for the
    graphs) does not execute!
    I am attaching the 3 VIs used. The main VI is skeletonv4.1. The other 2
    are used as sub VIs.
    Thanks!
    Attachments:
    skeletonv4.1.vi ‏286 KB
    8_channel_splitter.vi ‏56 KB
    formula.vi ‏42 KB

    Loop 1 sets a local variable (X) to TRUE when it quits.
    Loop 2 sees X = TRUE and quits.
    You start the program again - BUT X IS STILL TRUE.
    Loop 2 finishes before loop 1, sees X = TRUE and quits.
    Loop 1 finishes, sets X = FALSE, but it's too late.
    You need to set X FALSE, before either loop starts.
    You are using code to set X.Visible to FALSE, you can do the same thing by popping up on the X terminal and choosing HIDE INDICATOR - you don't need code to do it.
    Steve Bird
    Culverson Software - Elegant software that is a pleasure to use.
    Culverson.com
    Blog for (mostly LabVIEW) programmers: Tips And Tricks

  • Is there any way to call a sub vi which has input parameters and not wait until it finishes executing?

    Hi,
    I have a main vi that I would like to call a sub vi from and have the main vi continue on without waiting for the sub vi to finish. I can open a reference to the sub vi and invoke the "run" method, but in this fashion, I cannot pass any parameters to the sub vi. Or, I can use a call by reference node where I can pass parameters, but there is no option to not "wait until done". How can I do this? Is global variables the only way?
    Thanks!

    Use the method Set Control Value before you invoke Run. You specify the exact name of the control and the data you want to pass needs to be flattened to a string.

  • How to wait until the 1st part of the processing is done

    Hi,
    I had a hard time to combine two parts of processing in one .vi file, and thus would like to get some advice/help through the forum.
    Attached is the partial finished vi file I made. You can see that it is composed of two parts. The upper part is to run a bat file (check_result.bat), which generates a result.txt file. The lower part is to use the result.txt file as an input file, and check if the key word called "test case passed" is included in the result.txt file or not. So I want to run the upper part firstly, and then run the lower part after the upper part is finished.
    However, I don't know how to connect the two parts in a right way that the lower part only starts running after the upper part is finished. Any comments/help is highly appreciated.
    Thank you in advance.
    Xuedong 
    Attachments:
    question.vi ‏49 KB

    The magic of dataflow!
    All you need is a data dependency between the two parts. Often critical parts of each section contain error terminals, so you can just string em along in the proper order and each part must wait until the previous node has finished.
    In your particular case, the read operation has no error input, so you can recruit any other input. Create a fake data dependency by strategically placing a small sequence frame containing common code. The sequence cannot start until all code that provides imputs has finished, serving your purpose.
    Of course it seems silly to even try to read the file if the previous node failed. Right? So simply place the second part inside a case and hook it up to the error output. Now the second part (1) waits until the first part has finished AND (2) execute only of the first part succeeded. No sequence needed.
    All clear?  
    Message Edited by altenbach on 02-07-2007 02:34 PM
    LabVIEW Champion . Do more with less code and in less time .
    Attachments:
    dataflow.gif ‏4 KB
    dataflow2.gif ‏4 KB

  • Setup.exe does not wait until the installation is done

    Hi,
    I downloaded ODAC 10.2.0.2.21 from here:
    http://download.oracle.com/otn/other/ole-oo4o/ODAC1020221.exe
    And after extracting all files, I use this command on cmd:
    setup.exe -silent -noconsole -waitforcompletion -force -responsefile <Path>
    Furthermore, I have BOOTSTRAP=FALSE on oraparam.ini but setup.exe does not wait until the installation is done.
    I only want a way to wait for the installation to complete...
    Cheers,
    Joan

    DBMS Direct wrote:
    What's the main reason you want to do a silent install for ODAC?To launch it from a bigger installer of an application which uses ODAC.

  • My iPad Air have a screen problem so I sent it to iService (I'm Thai) but they told me that they don't know how long that I have to wait until I will get a new one? Can anyone help me?

    My iPad Air have a screen problem so I sent it to iService (I'm Thai)
    but they told me that they don't know how long that I have to wait until I will get a new one?
    Because they said there's no stock in Singapore
    Can anyone help me?
    Just bought on 15/11/2013

    You can call iService and ask to speak with a manager.

  • No more than 1 sessions at a time are allowed. Please wait until open sessions expire.

    I have been unable to log into my Actiontec MI424WR router this week, The router returns the message "No more than 1 sessions at a time are allowed. Please wait until open sessions expire." every time I try to log in. This has been going on for days.  Even pulling the power to reboot it did no change.  I'm the only user in the household that would log into it, so I don't understand how this could occur.  How can I get in?
    GLN2

    I really don't want to do a hard reset as I have a handful of custon port forwarding rules that I had created. I'm not a wiz at that, so it would take me too much time to re-create!  I may have no choice. Next time I can get in I will try the backup of the config file. I hope it contains the port forwarding rules.
    The backup function should work fine, I have used it to save my Steam port  forward rules to my hard drive, after a pin hole reset I was able to restore successfully. I did configure mine to 1 session & ALWAYS   logout when I am done.  I have never had any problems logging into the router. But in your case you may need more than 1 session allowed.
    Are you using a native or 3rd party app to remember your router ID/password? IF you are do not do this, you are "defeating" the built in security of the router
    If a forum member gives an answer you like, please give them the Kudos they deserve. If a member gives you the answer to your question, mark the answer as Accepted Solution so others can see the solution to the problem. Thanks !!!
    http://forums.verizon.com/t5/Verizon-net-Email/Fix-for-Missing-Inbox-sent-folders-etc-with-Internet-Explorer-11/m-p/647399

  • File Adapter -- Picking has to wait untill it get fully loaded/write.

    Hi All,
    I need to pick the files from a folder and I need to pick the files only which has been written completely.
    I should not pick the file in the middle while writing, I need to wait untill it finishes the writing completely.
    Is there any setting I can put in Sender File adapter to do this?
    Thanks
    Seema

    Nithya,
    >> Try to increase the processing time in the sender communication channel, so that it allows you to completely load the file. Check the time which is needed to upload the file to the directory manually and correspondingly change the processing time.
    We do not know exactly at what time the file will be placed in the folder. It may be at any time. So I cannot put the processing time accurately.
    Aamir,
    >> If you are picking from FTP,MSecs wont work there.the sender program which writes the file must write the file in some temporary format like .dat etc and once the file is complete it should change the filename to .txt,configure the sender file adapter to pick only *.txt files.
    This is a good idea. But I don't think I can ask them to change at the other end as it is working previously with other middleware.
    Guys,
    Can you please advice which is the best thing we can do at this point of time.?
    Thanks
    Seema.

  • How to wait until an Entourage Schedule item completed

    I am trying to script the "Send & Receive All" operation in Entourage, and I have found that I can trigger the process off (from within my script) by:
    tell application "Microsoft Entourage"
    execute schedule "Send & Receive All"
    end tell
    However, the script continues to process while the scheduled actions take place.
    Is there any way to wait until the schedule actions complete and then process the rest of the script?
    Thanks
    Susan

    Glad to help, Susan
    I found out about "connection in progress" by looking at the properties of "application" in the Entourage dictionary:
    connection in progress boolean [r/o] -- Are there any network connections in progress?
    (In fact I searched through the dictionary for the phrase "connect".) The property is a boolean (true/false), and my script uses a "repeat while" loop to test for that boolean condition.
    As well as properties, the Entourage application object also has elements. These include "POP account", "IMAP account", "Exchange account" and "Hotmail account". These can be referred to "by numeric index, test". So if you pass a list of accounts to the "connect" command, Entourage will connect and download mail from those accounts. For example, if you have two POP accounts, this works:
    tell application "Microsoft Entourage" to connect to {POP account 1, POP account 2}
    AppleScript lists are contained in curly braces.
    But it's simpler (and less prone to error) to do this:
    tell application "Microsoft Entourage" to connect to every POP account
    Alternatively, the "test" lets you refer to individual accounts by name - a list isn't essential, despite what the dictionary says:
    tell application "Microsoft Entourage" to connect to POP account "My Account"
    There's many ways of skinning a cat.
    To answer your more general question, though, there is no one "user guide" for AppleScript. You can learn the about the basics of the language from the AppleScript Language Guide. But that will tell you nothing about how to script particular applications. This is because every developer, if they do implement AppleScript in their application (and lots don't), implements it in different ways.
    So as well as learning AS, for each application that you want to script you have to learn a slightly different set of commands. There's an awful lot of trial and error involved, but one way to learn is to look at scripts that others have written. There are good resources at Apple's own AppleScript page and at AppleScript Central among others. For specifically scripting Entourage, try Paul Berkowitz's scripts.
    Different people will also recommend different books. My recommendation is AppleScript: The Definitive Guide by Matt Neuberg, but again it's not application-specific.
    Hope this helps, at least to give you some pointers.
    H

  • How to wait until html page is completely rendered

    I use a JEditorPane to display HTML and i want to print it to an image. so i tried to load the page (JEditorPane.setPage(URL url)) and wait until the property "page" is fired. Then i printed the component to an image.
    My problem is that the page wasn't completely loaded (rendered?) when i tried to print it.
    Is there a way to be notified when the page is completely rendered?
    thx in advance
    ~elchaschab

    However, you might consider setting the document property for it to be
    loaded synchronously.i've already used my own HTMLEditorKit for synchronous document loading.
    class MyHTMLEditorKit
    extends HTMLEditorKit
    public Document createDefaultDocument()
    Document doc = super.createDefaultDocument();
    ((HTMLDocument)doc).setAsynchronousLoadPriority( -1);
    return doc;
    You probably already played around with calling repaint() and
    validate() before printing.i tried to call repaint and validate before printing but
    still it doen't work. :(
    As a last resort, you could experiment with calling the printing
    routine written as a thread passed to invokeLater(), although there is
    no obvious reason why this would make a difference. i don't understand what i should do with invokeLater().
    could you please give me a short example?
    thx,
    elchaschab

  • How to wait until setPage(number) is finished

    SR 3-8311228061
    When calling getStrings, found I need to iterate the pages of the doc/xls/etc
    However Autovue Support tells me that setPage() is asynchronous
    I asked how to wait until setPage() is complete, they suggested I post the question here
    Note, at the time its called the viewer (desktop version 20.2.2) is on the task tray, but not rendering the document
    Its only loaded to extract the text
    here is the blip of code
    for( curPage = 1; curPage <= pages; curPage++)
    vueBean.setPage( curPage ); //its necessary to call setPage even for page 1
    //If setpage fails stop (per Daniel/Oracle)
    int thisPage = vueBean.getPage();
    if( curPage != thisPage )
    //This message never shows up
    String msg = String.format("Pages[%d] thisPage[%d] curPage[%d] ", pages, thisPage, curPage);
    AdeptApplication.INSTANCE.publishEvent("file-event", msg,
    new SystemEvent(this.fileName, "GETTEXT_PAGEFAILED"));
    break;

    The code you have is to know whether changing pages succeeded or not, and unless you are trying to set a page number that is out of the page count it will always succeed
    So, yes, your test is the same as if (false)
    Now, page loading is done in an asynchronous manner
    1. you ensure that the page (the container for all the page artifacts) is created, synchronously
    2. the page content are streamed on another thread
    3. once the page is loaded, an event is sent VueEvent(VueEvent.FILEEVENT, VueEvent.ONPAGELOADED)
    So you should be able to query for info after you received the page loaded event
    Now, word documents are an special kind of documents, so you need to be aware of some specific issues.
    The same way ms-word does not know the total number of pages until the ENTIRE document is loaded, AutoVue will not be able to notify you either.
    And as Word, AutoVue allows you to display the pages that are already loaded, and you may query for some of its contents too.  BUT you can not query for page info when the page is been loaded (or obviously not yet loaded)
    The loading is a 2 phase one, part is done on the server (native code) and part is on the java side (display)
    So you will not be able to iterate
    for( curPage = 1; curPage <= pages; curPage++)
    simply because page count is not known.  You need to query doc info more than once.
    If page count = -1, you need to iterate for each page and then, test whether setPage() != getPage() and/or page count has been updated.

  • Should I just wait untill the Intel Mini's are out to make the switch over?

    I have been somewhat active on this board for the last month or so looking at the Apple Mini. I want a computer that never really slows down, or crashes a lot. Also, I want a computer that can do some light video editing, and some light gaming (think: Battlefield 1942!).. I'm thinking about waiting till the New Intel Mini's come out but I really don't know when that will be! I don't know if I can hold on for 8 more months with this crappy thing they call an OPERATING SYSTEM.
    Do you guys know when the Intel's are coming out? When they do, thats when I might make the switch from XP to mac OX.
    Thank you all!

    Though a bit belatedly, I thought it might be worth pointing out an issue that ought to cross the minds of those considering buying a mini but not sure whether to wait for the Intel models or not.
    Aside from the fact that no-one knows when the Intel minis will be announced and what specs (thus performance) they will have, and the fact that as soon as the first models are out, there will be a tendency to want to wait until the next revision for the 'rev.a' bugs to get ironed out and some speed bumps ironed in, one important extra consideration is the software that's intended to be run.
    All software at this time is G4 compatible, and many titles are either already in universal binary, or about to be so, thus would run natively on an Intel-mini. But some, Adobe CS and Microsoft Office (to name a couple of significant examples) are not universal yet, and while they likely will become so, it's not at all clear when. Until they ARE universal, those apps will run in emulation on an intel Mac, and performance is not reported to be stellar.
    So I'd suggest to anyone considering the issues, to look at the titles you want to run, and make sure all the important ones are Intel-native already, or going to become so very soon. If they are, then waiting for an Intel mini is perfectly reasonable as long as you don't have any immediate need and can wait however long it takes. But if any crucial apps are PPC only and likely to stay that way, I'd buy a G4-powered mini while they're still available, and trade it later when the crucial apps go Universal and the Intel models have settled down.

  • What is going on "under the hood" of the 'Wait Until Next ms Multiple' vi?

    Hi,
    This question is really for the developers of LabVIEW, and I don't know if they are willing to divulge what might be considered "trade secrets". Anyway, I just thought there's no harm in asking.
    I use the Wait Until Next ms Multiple vi and it works great. For example, if I set my program to output a character on the serial port every 20 millisecond (mS), and check the output on an oscilloscope, I see the output at 20 +/-2 mS (that is, 18 to 22 mS). That's quite good and is all that can be expected on a PC running a non-real-time OS such as Windows.
    My question is this: Since the default Windows timer has a tick rate of 15.625 (1/64th of a second) (some PC's may default to 10 mS), how does LabVIEW attain roughly 1 mS accuracy? If the same thing is coded in any .NET framework program, such as C# or Visual Basic using any of the available timers (the System.Windows.Forms timer or the .System timer), the timer interval may be set in 1 mS increments, but if you time it you will see it actually has a granularity of 15.625 mS. So instead of getting 20 mS I get 2 ticks, or about 31 mS. So I can get an output every 15.6, 31, 47, 62.5, etc. but nothing in between.
    The System.Diagnostics.Stopwatch timer can be use to time code with very high resolution, or to create a high-CPU usage delay loop, but I haven't been able to find an easy way of generating an interrupt (timer tick) at say 1 mS. There are Win API functions that can set the timer to 1 mS on XP and 0.5 mS on Windows 7 and 8 Microsoft, but I have not tried them. (They come with the caveat that another program or process can come along and reset your timer!) There is the "multi-media" timer (now the HPET or High Performance Event Timer"), but it is meant for sound and video at the driver/kernel level, and not for the UI level, as LabVIEW or C# are.
    So how does the 'Wait Until Next ms Multiple work? It obviously is timer interrupt-driven because it yields to other processes (which is a primary reason for putting it in your overall While loop). And is it guaranteed on all recent OS versions (mine was timed on an dual core XP OS)?
    Thanks for any insight.
    Your typical curious engineer,
    Ed

    Ian,
    Thanks for your reply. Yes, I'm sure LabVIEW uses the (default) Windows timer. And yes, 1 mS is not guaranteed due to the preemptive nature of Windows (and even "RTOSs" to varying degrees), which is why I see about plus or minus 2 mS. 
    Apparently the Windows timer can be set by API calls. See: http://www.lucashale.com/timer-resolution/. Here's a screen shot of his TimerResolution.exe on a Windows 7 PC:
    Here it is on my Windows XP PC after I set it to "Maximum" (initially it was 15.625 mS):
    Notice that it sets the Maximum to less than 1 mS, which is supposed to be the max, so there are some bugs. Plus the Default button does not reset it in XP, but does work on Windows 7 or 8. (I know this is not the place to "debug" non-LabVIEW applications!)
    I'll bet LabVIEW sets it, too. The only caveat, as I said, is it looks like another application can change it, since the hardware timer is a "global" timer. I have not seen this issue in my LabVIEW applications, have you?
    I guess I need to do some more digging to see the code to set the timer, but it looks like the developers of LabVIEW have it figured it out.
    (FYI, I did notice that running my LabVIEW app (which gives about 2 mS resolution) or a C# app, which gives 15.625 mS resolution, does not affect what TimerResolution.exe reports, so I'm not sure if it's really working correctly. If I figure it out I'll post the results.)
    Ed

  • Measure time of an measurement and if measurement time is less than 90 second wait until 90 second and then proceed to next steps or stop.

    Hi
    I am trying to make a program
          During execute a measurement count the time.
          If  measurement time is more than 90 second proceed to the next steps (or stop the measurement)
          If measurement time is less than 90 second, wait until 90 second and then proceed to next steps or stop
    I appreciate deeply if some help me.

    What sort of measurement are you talking about? What affects the time of your measurement? The very basic description you have is of a state machine and there are numerous examples of that
    1. Actually I would like measure the time of "Alignment" function done by wafer test equipment name Prober ( the model is "UF3000" made by TOKYO SEIMITSU CO., LTD.
    2.. Right now  the "Alignment" function is started when a  GPIB command is written as "N" and wait for resposne 70 in polling.
    Please refer to the attachment for Alignement function if it help you.
    In the attahement
    For Alignment error delay we are using =600
    Alignment counter =30000
    align loop cnt = 30000
    This is a program wriiten by another person and he is not availabe any more. What I am trying to do is
    1.  During execute a "Alignment " function count the time.
    2. If  "Alignment " function time is more than 90 second proceed to the next steps
    3.  If "Alignment " function is less than 90 second, wait until 90 second and then proceed to next steps
    Attachments:
    Alignment function.xlsx ‏153 KB

  • How to make a slide wait until user has answered a question correctly, even after activating a smartshape?

    Background:
    I have created a quiz in which the user must answer each question correctly before proceeding to the next slide. This is what I did:
    Set preferences to Settings > Required > Answer All - The user must answer every question to continue
    Set the number of attempts on the question level to Infinite
    Made the Next button invisible and disabled the playbar
    This way, the user can only proceed to the next question slide with the Submit process – and, since attempts are infinite, that means only after successfully answering the question.
    Current goal: 
    I want the user to be able to click on a prompt for a hint. To set this up, I did the following:
    Created a smartshape labeled “click_for_hint” displaying text that says, “Click here for a hint”
    Created a smartshape labeled “hint” displaying text hint
    Set “click_for_hint” to show “hint” on success
    Now, when the user clicks on the text that says, “Click here for a hint,” the hint pops up. So, that works – awesome! However, once the hint is activated, I would like for the user to be able to continue infinite attempts until successfully answering the question… and only then, after answering correctly, proceed to the next slide.
    The problem:
    If the user has submitted one or more incorrect answers and then activates the hint, the slide no longer waits until the user has answered the question correctly. Instead, it automatically resumes playing, proceeding to the next slide. I tried setting the smartshape “hint” to pause on success, but that did not work.
    Is there a way to make the slide wait until the question is answered correctly before proceeding to the next slide, even after the hint has been activated?

    Are you aware of the fact that your Required setting can cause problems, blocking the user? It is also totally unnecessary, because you have infinite attempts on question level, and did hide the Next button (hope you don't need Review, otherwise I would recommend not to hide that button but to drag it under the Clear button: Question Question Slides in Captivate - Captivate blog)
    The hint problem is linked with the fact that a simple action will release the playhead. I would like to see the timeline of the slide, to compare the pausing points of the shape button and the question slide. And maybe this blog post can also clarify difference between simple/advanced: Why choose Standard over Simple action? - Captivate blog
    As for shape buttons on question slides: Buttons on Question/Score Slides in Captivate 6? - Captivate blog

Maybe you are looking for

  • Auditioning wav loops at correct tempo

    Hi Forum I have been a Protools user for several years, but because of all the usual annoyances with PT I have decided to join the Logic camp, just today in fact. However one feature I am immediately missing is the protools equivalent of "Calculate E

  • Slideshow on tv with accompanying music

    How do you get music to play along with a photo slideshow either on tv or on the ipod itself ipod 5th generation 30 gb    

  • Unbound namespace prefix error

    I am using CS4 InDesign. I have a letter that I am trying to use the data merge function to merge data from in excel csv file. For some reason every time i try to link my csv file it gives me a "unbound namespace prefix" error. Anyone have any ideas

  • Create Window with Textbox and Button For getting Input Value

    Hi All, I have create plugin application but i want to take input from user. Therefore i want to create window with textbox and button. please may i get solution...

  • How can I download gps-master in my macbook?

    How can I download gps-master in my macbook? Thanks.