Re: Calling two Sub VIs using Test sequence

Hii All,
I created main vi and one sub vi...i wanna to call sub vi from main vi using test sequence and controller is Bollean.
Means when the test sequence detects true condition it will run main vi and when test sequence detects False condition, it will run sub vi.. But sub vi is nit running...can some one tell me the solution...
With Regards
Puneet Kapoor
CLA 2014
CCVID 2014
Solved!
Go to Solution.
Attachments:
main.vi ‏18 KB
sub vi.vi ‏6 KB

thans for the suggestion...
i got the solution for it n the VIs is in the attachment.
Message Edited by puneet.kapoor on 12-12-2007 10:10 PM
CLA 2014
CCVID 2014

Similar Messages

  • Running two sub vis in parallel

    I need to run two sub vis of a main vi simultaneously in parallel.
    one sub vi is to run a demo and the other subvi is an application.The demo should run as a small window and the application should run in background

    As i said
    "If you have the demo vi as floating and the other vi as Default (not floating), the demo vi will allways stay on top"
    If you still have problems, just post your vis, (without any unnecessary code), or ask something specific
    Message Edited by Pnt on 04-21-2009 08:18 PM
    Attachments:
    Clipboard-2.jpg ‏44 KB

  • Calling two Business service using split join in osb

    Hi,
    While trying to call two business service using Split Join in osb i am getting selection failure message in Bpel em console. i am using invoke activity to invoke the BS and assign to assign the input. in the assign i am assigning *$request.payload/input* to input.payload . In the em console i am getting input like this
    receiveInput
    Jun 19, 2012 5:05:45 PM Received "process" call from partner "bpelprocess1_client"
    <payload>
    <inputVariable>
    <part name="payload">
    <client:process>xxxxx</client:process>
    </part>
    </inputVariable>
    Assign (pending)
    Jun 19, 2012 5:05:48 PM Error in evaluate <from> expression at line "65". The result is empty for the XPath expression : "/client:process/client:input".
    <payload>
    <client:process>xxxxxx</client:process>
    Jun 19, 2012 5:05:48 PM The following exception occurred while attempting to execute operation copy at line 63
    <payload>
    <bpelFault>
    <faultType>0</faultType>
    <selectionFailure/>
    </bpelFault>
    Jun 19, 2012 5:05:57 PM "BPELFault" has not been caught by a catch block.
    Jun 19, 2012 5:06:00 PM The transaction was rolled back. The work performed for bpel instance "650002" was rolled back, but the audit trail has been saved for this instance.If this is a sync request, please resubmit the request from the client. If it is an async request, please recover from the recovery console by resubmitting the invoke message.
    Can anyone help on this?
    Thanks in Advance...

    maybe this one helps a bit, it's the same pattern
    http://www.xenta.nl/blog/2011/07/03/oracle-service-bus-implementing-aggregator-pattern-by-use-of-split-join/
    if you're using a dynamic split join easiest way is to do something like
    assing <yourresponse/> to $response
    at this moment your assign an empty placeholder to the response variable
    now you go into the for-each looping and for each iteration you need to insert the response of your bpel call in the $response variable
    so in the looping as last step you add something like
    insert $mybpelresponse/rootelement into $response/yourresponse
    with the insert it will insert the reponse 1..x times into the $response variable (so actually aggregating all the responses for you)

  • How to bring a VI front panel to the front (of all open windows) when the parent VI calls a sub-VI in Test Stand.

    In Test Stand when I call a sub-VI front panel, the pop-up window goes behind all the windows and the user just waits for the screen. I want the pop-up to come to the front so that the user can know what to do. I couldn't find any property that I can set which would make the called VI go to the front.

    What version of TestStand are you using? Here are the TestStand palettes in LabVIEW for TestStand 2.0 and 3.1. You can also set a VI to be modal in  VI Properties>Window Appearance. Select Dialog or go to Cutomize and change the Window Behavior.
    Message Edited by Dennis Knutson on 03-07-2006 10:32 AM
    Attachments:
    TestStand palettes.JPG ‏37 KB

  • How do I run two sub-VIs in parallel and have the faster VI continue to execute while the slower one completes?

    I have two sub-VI's - one that makes a laser distance measuring device turn on and return a distance, and another that moves a platform upon which a target is mounted that the laser reflects against. The laser VI takes well under 5 seconds to complet. The platform-moving VI, on the other hand, requires about 30 second. I would like to be able to have the laser on AS the platform moves. Of course, I can accomplish this by running the VIs seperately. However, I would like to control them from a master VI. Currently, the laser turns on as the platform begins to move but then turns off, since the master VI waits on the platform-moving VI to
    complete. Any help with this seemingly simple dilemma would be greatly appreciated.

    In order to synchronize the two VI's I would recommend using a global variable. By creating a global boolean, you can make reference to it in both programs, and control when your "laser" subVI terminates.
    Basically, have your "laser" subVI wait until the global boolean goes true to stop execution. Have the boolean initialized false, and then have your "platform" subVI write a true to the global boolean when it has finished running. This will keep you laser running until the platform has completed its move. Good luck!

  • Synchronization of two sub-vis!

    I am working under LV 7.0 and I have to acquire videos through FireWire. The cameras are included into LV via an ActiveX control. So far so good. Because I have to control 2 cameras I have to start the capturing simultaneously. I have written to sub-vis where I initialize the cameras and start the capturing. Now I am wondering how to synchronize these sub-vis because sometimes the files have different lengths, up to 5 frames or about one second. Is there a way to get this thing to work?
    Thanks a lot in advance,
    Henning

    Hi Henning,
    Please take a look at the example included with LV that can be found at
    Help >>> Find Examples...
    Optimizing Applications >>> Syncronizing Tasks >>> Rendezvous with SubVIs.vi
    The help for this VI follows
    This VI is a demonstration of using a rendevouz. It creates a rendezvous of size 3 and then calls three parallel subVIs using this rendevouz.
    These subVIs use the rendezvous to synchronize the beginning of their loops. Each one displays integers to a graph. Finally, they all use the rendevouz to exit at the same time.
    Please note that this will get sub-VI sync'd up at the begining of each cycle. I have to raise the concern that the actual interaction of the sub-VI's with their respective activeX service may end up se
    quential if they all execute in the user interface thread.
    The technique illustrated in my cited example should get all of your files sizes to match up.
    I hope this helps,
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • How to call two smartforms with using a single print program

    Hi,
       I have a requirement wherein I need to call two smartforms using a single print program.
       The interface parameters are different in two smartforms.
       I presently solved the issue using the smartform names as the reference.
       Can anyone let me know if there is any other way to solve it.
       I heard something about global params. But not sure.
       Please let me know the best possible way to solve this issue.
    Thanks and Regards,
       Debabrata

    Hi Debabrata,
    Based on the condition in your print program you can call the below code
    fname1 TYPE rs38l_fnam.
    IF -
    call function 'SSF_FUNCTION_MODULE_NAME'
      exporting
        formname                 = 'ZSMARTFORMS'
    importing
       fm_name                  = fname1
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.*
    CALL FUNCTION FNAME
    EXPORTING
      ARCHIVE_INDEX              =
      ARCHIVE_INDEX_TAB      =
      ARCHIVE_PARAMETERS =
      CONTROL_PARAMETERS=
      MAIL_APPL_OBJ              =
      MAIL_RECIPIENT              =
      MAIL_SENDER                 =
      OUTPUT_OPTIONS           =
      USER_SETTINGS             = 'X'
    IMPORTING
      DOCUMENT_OUTPUT_INFO =
      JOB_OUTPUT_INFO             =
      JOB_OUTPUT_OPTIONS      =
    EXCEPTIONS
      FORMATTING_ERROR         = 1
      INTERNAL_ERROR              = 2
      SEND_ERROR                    = 3
      USER_CANCELED              = 4
      OTHERS                             = 5
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    ELSE.
    fname2 TYPE rs38l_fnam.
    call function 'SSF_FUNCTION_MODULE_NAME'
      exporting
        formname                 = 'ZSMARTFORMS'
    importing
       fm_name                  = fname2
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.*
    CALL FUNCTION FNAME
    EXPORTING
      ARCHIVE_INDEX              =
      ARCHIVE_INDEX_TAB      =
      ARCHIVE_PARAMETERS =
      CONTROL_PARAMETERS=
      MAIL_APPL_OBJ              =
      MAIL_RECIPIENT              =
      MAIL_SENDER                 =
      OUTPUT_OPTIONS           =
      USER_SETTINGS             = 'X'
    IMPORTING
      DOCUMENT_OUTPUT_INFO =
      JOB_OUTPUT_INFO             =
      JOB_OUTPUT_OPTIONS      =
    EXCEPTIONS
      FORMATTING_ERROR         = 1
      INTERNAL_ERROR              = 2
      SEND_ERROR                    = 3
      USER_CANCELED              = 4
      OTHERS                             = 5
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    ENDIF.

  • How to prevent running a sequence two times by using "Test UUTs or F5"?

    How can prevent that a user can press "F5 or Test UUTs" more than one time???
    Greets
    Matthias

    Hi Matthias,
    If you haven't made any changes to your SequentialModel.seq then before you start make a copy of the SequentialModel.seq found in C:\TestStand\Components\NI\Models\TestStandModels and copy this to C:\TestStand\Components\USER\Models\TestStandModel​s.
    Now launch the SeqEditor.
    If you open the SequentialModel.seq file found in the C:\TestStand\Components\USER\Models\TestStandModel​s folder. With the
    Test UUTs sequence active. Select the Menu Item Edit | Sequence Properties.
    You should have the Test UUTs Properties dialog visible. Select the Model Tab. Enable the Hide Entry Point Execution control. Ok the changes and save the SequentialModel.seq file.
    Now when you run your Sequence you will only beable to run one execution.
    Hope this helps
    Regards
    Ray Farmer
    Regards
    Ray Farmer

  • The same file with the same name need to call two RFC's with the sequence

    i have to pick up the same file with the same name  and call the two RFC in sequence
    scenario.i have xxx.txt file.file should be proces first calling the first rfc .
    I created two different communication channels
    for the first sender file communication channel i should not use processing mode archive,delete,Test
    and only option is set read only.
    if i set the read only the file ..then i can not use the same file again to call second RFC.
    how we can acheive the above scenario?
    Regards,
    Hyma

    If you want to file need to be picked up twice in same folder, it seems it is hard for PI adapter to achieve it, you should look for API's that control adapters availibility.
    But if you have different folder, then it make your scenario simpler since you can process first time, then output to another folder, configure another adapter to pick up from different folder.
    Regards
    Liang

  • How to skip a particular node in a script using test manager

    Hi,
    We are testing a script recorded for custom forms in R12 on two different instances using test manager.For one instance its running fine.
    But in the second instance one message note is not coming (one note which was present during recording is not there after the instance was refreshed). During Playback that node is not matching with recorded script so "object not found error is coming".Is there any way we can bypass that recording during playback through test manager ? Any kind of help is appreciated.
    Regards,
    Vishal

    Sorry for the inconvenience, Below Find detailed explanation of the issue,
    INSERT INTO XMLTABLE VALUES (4,'<?xml version="1.0"?>
    <Node_1 empID="202" empName="Pro1" oper="Update">
    <Node_2 empID="20" empName="Pro2" oper="Update">
    <Bode_3 empID="2" empName="Pro3" oper="Update">
    <Bode_4 empID="22" empName="Pro4" oper="Update">
    <Bode_5 empID="12" empName="Pro5" oper="Delete"/>
    <Bode_6 empID="223" empName="Pro6" oper="Insert"/>
    <Bode_7 empID="201" empName="Pro7" oper="All"/>
    <Node_3 empID="21" empName="Pro71" oper="ll">
    </Bode_4>
    </Bode_3>
    </Node_2>
    </Node_1>');
    I have a sequence seq_i
    seq_i start with 1 increment by 1
    am able to display output as below,
    Node|EMPID|OPER|EMPNAME|MGRID
    Node_1|202|Update|Pro1|Null
    Node_2|20|Update|Pro2|Node_1
    Bode_3|2|Update|Pro3|Node_2
    Bode_4|22|Update|Pro4|Bode_3
    Bode_5|12|Delete|Pro5|Bode_4
    Bode_6|223|Insert|Pro6|Bode_4
    Bode_7|201|All|Pro7|Bode_4
    Node_3|21|ll|Pro71|Bode_4
    Now I want below one as output
    All nodes starting with Bode_, I need to replace that with sequence, seq_i
    so for the seq_i (starting with i and incrementing by 1)
    Node|EMPID|OPER|EMPNAME|MGRID
    Node_1|202|Update|Pro1|Null
    Node_2|20|Update|Pro2|Node_1
    1|2|Update|Pro3|Node_2
    2|22|Update|Pro4|1
    3|12|Delete|Pro5|2
    4|223|Insert|Pro6|2
    5|201|All|Pro7|2
    Node_3|21|ll|Pro71|2
    Thanks,

  • How to run two sub vi simultaneously??

    i need to run two sub vi simultaneously in one main vi, becasue it is a must the two sub vi run exactly at the same time, but now i find that if i put they in one diagram ,in fact they are not exactly run at the same time. if you see in high light mode Just like the attached simple example code.  any one can help me to handle this to run the two subvi exactly at  the same time ? how to do it ? thanks so much.
    Attachments:
    how to run subvi simultaneously.vi ‏11 KB

    You are correct, they will not run at exactly the same time.  What is it you are actually trying to do?  What platform are you developing on? What version of LabVIEW? What processor does your target system have? This information is vital in order for us to assist you.  In a nutshell, unless you are running a real-time OS, then the OS you are running is not deterministic.  When you say "at the same time", what are you actually referring to? As a note, when executing parrallel operations in LabVIEW, the execution order may or may not be the same with the highlight bubble on as it is when it is running without highlight execution.  It is highly unlikely that you will be able to just run two sub-vis at the exact same nS.  If you are using DAQ boards, you accomplish this through triggering.  Please give a detailed description of what you are doing, and what you see the road blocks being.
    Thanks
    Paul <--Always Learning!!!
    sense and simplicity.
    Browse my sample VIs?

  • How to creat multiple sub VIs'

    I have a VERY large VI that finaly crashed due to the large size. What is the best way to create "Sub VIS"? I have almost 800K of code. Should I create all the sub vis and then add them to my Project? I want the program to call the sub vis automaticaly.
    Thanks
    Philip

    Hi Philip,
    Backups:
    As Lynn (johnsold) said, local backups are a minimum requirement.
    A service like Dropbox is better in case of computer crash.
    Note: Temporarily disable Dropbox syncing when doing builds in a Dropbox folder as this may cause builds to fail.
    The best solution is true source control like the free TortiseSVN.
    For sub vis I suggest:
    Identify code sections that perform one specific function. This makes a logical sub vi. If you can easily come up with a name to describe the
    section (like "Parse Input String" for example) then you are on the right track. With some practice you will be creating sub vis that can be used
    in other programs and save you time in the future. This is a good reason to NOT include unrelated code in a sub vi just because it will fit.
    Take note of the number of inputs and outputs in the code section. Ideally you want a small number of inputs and the same for outputs (3 or 4). Use clusters to reduce the number of I/O items.
    Standardize on a connector pane layout - this makes wires line up better. The 4224 pattern works well. When LabVIEW creates sub vis it only creates the number of inputs and outputs that are required. So you will normally have to change the connector pattern and rearrange the controls and indicators every time you create a sub vi.
    Include error in and error out in their standard places even if you don't need them for the particular application. When you use that sub vi later
    you may need them.
    Good practice is to use Type Defines for controls and indicators that go to more than 1 place. In your case, it is a jugement call if it is worth the trouble to do this on an existing program. Once you start using sub vis more, Type devs become very important. If you don't use them, changing a data structure will require manually changing every sub vi that uses that data structure.
    steve
    Help the forum when you get help. Click the "Solution?" icon on the reply that answers your
    question. Give "Kudos" to replies that help.

  • How to use ODI sequences ??

    I have an interface which need an ODI sequence.
    When I execute it the value of the sequence is always the same.
    I have seen on another thread that it may pass by an agent but...
    I have 2 tables (source and target) from the same connexion which don't and won't have agent.
    How can I do ??
    My connexion is on an Oracle 10g RDBMS and I'm using an IKM SQL Control Append.
    This is not the first time I have problem with the ODI Sequence but this time I can't create an RDBMS one ...
    Thanks in advance,
    BM

    Hi guys,
    I have some questions, I am trying to create a dimension and it should use a sequence, but I am getting the same issue as you guys. I can't not generate a unique key because my sequence is the same value for all rows.
    So if I really understood there are two ways to use a sequence in ODI. One is using ODI sequence (creating it inside ODI) and other is using a RDBMS sequence.
    First: What I have to do to use a RDBMS sequence? (Step by step please)
    Second: I can't use an IKM SQL to SQL append in my interface. This interface is pretty simple - source is a flat file target is an Oracle table, I just need to move all flat files columns to Oracle table adding a sequence. I understood that my Staging area should be different than my Target area based on posts above. I already created a new datastore to be my new staging area, but I don't know how to make an association between interface and new stage area.
    Can you please provide me the easiest solution?
    Thanks
    Leo

  • How to call test Sequences developed by using CVI Test Execuitve toolkit in Test Stand?

    There is a feature in TestSatnd which can convert CVI sequence to test Stand Sequences. But test stand is not recognising these sequences saying " not a valid CVI test sequence". Is there any version Issues, while converting these sequences to TestStand?

    Hi Scott
    In continuation of previous question..
    As per the suggestion, when I am trying opening one sequence(.SQU) file,developed in CVI Test Executive V 1.0.1., in CVI Test Execcuitve V 2.0.1, Executive is throwing error.
    The Pop Error is " Section [Sequence] missing from sequence file c:\xxx.squ"..
    and when I am trying opening these sequence file in sequence editor, the tool it self is crashing.
    Please suggest!!
    Is there any specific tokens which we need to add in .SQU files of V 1.0.1, so that V 2.0.1 can understand them? Just to check the possibility of manual updation of .SQU files.
    Regards
    Amit

  • I am trying to debug HTBasic code modules while using Test Stand, how do I refresh the subs that have been loaded in memory?

    I am writing an application for Test Stand, we are using modules previously written in HTBasic. Whenever I make a change to the code and try to re-run the program, it just runs the old version of the code. The only way to refresh the code is to close Test Stand down and restart it. Is there a way to flush the memory of modules?

    Hi,
    I haven't used HTBasic with TestStand 2.0.x, but I'm assuming that you have the steps in the sequence set to unload when sequence file is closed (look under the step properties -> run options tab).
    If you're still prototypeing, use the File->Unload all modules option. Have a look at page 4-3 in the user manual - it refers to .DLLs, but I'm assuming the HTBasic falls into the same methodology.
    Altering the run options from it's default will affect the memory useage and speed of execution of the test sequence. Have a look at page 5-22 (page 158 in the .pdf) in the TestStand user manual - basically, if a code module is loaded into memory already, when the step gets to execute, the loading overhead is already done. If it stays in memory after this, then it's avail
    able for next time (quicker second run 'cos it doesn't need to load again. However, the balanceing factor is the sequence is useing more memory at a time, by haveing the module ready.
    My usual setting is to use Load dynamically, and Unload after sequence executes. I use this is only during development however, as this is not the most speed friendly, but a compromise so that if I don't call a step I don't load it, but if I do use a step, I'm sure it's free again when I need to modify the .dll modules I create. If you have a look on page 5-7 (143) of the user manual you can set the sequence file to effectively over-ride each step's load and unload settings - useful if you want to revert back again later. If you use this, you'll see that the top two run options for the step are greyed out, but if you set it back with the sequence file options, they do revert back to their original settings.
    Hope that helps (and works!!)
    S.
    // it takes almost no time to rate an answer

Maybe you are looking for

  • How Much To Set Up A Company, How Much To Set Up A Limited Company

    Market specialists stated, find enormous opportunities associated with Fb shoulds 't be impaired go after pluralism, should certainly still concentrate on key enterprise in order to Yahoo release potent concern. Despite the fact that about Fb Boss Ho

  • Use TV as monitor

    Hello everyone. I wanna connect my laptop Satellite L635-SP3001L to my TV using any of the video outputs of my laptop (HDMI or VGA). My TV has s-video input and RCA input (yellow, white and red) (no video component input). How should I proceed to con

  • My itunes does no recognise my ipad

    my itunes does no recognise my ipad. it appears like a camera.

  • Can i install mountain lion operating system in Macpro 2014 model.

    Hello, can i install mountain lion operating system in Macpro 2014 model? and currently operating system is mavrick.

  • Unable to play/import mp3 into iTunes

    Hi All, This is what I am trying to do. I have a CD that needs to be transferred to my iPad. I figured I need to have the music in iTunes and then I can copy over. I used my Windows 7 laptop to rip the CD and put the mp3 songs on a shared network dri