Custom Step Type Execution

I've made a custom step type which calls a .NET module. In the Properties>>SubSteps tab I added an Edit type which opens a dialog for the user to enter parameters when they edit that step type. Then I added a Post-stpe type which I thought was what gets called when the step is actually executed in a sequence. When I run a sequence that uses one of these types, the edit dialog pops up again, then only after I close the edit dialog does the post-step run. I assume I read something wrong because I thought the edit step type should only get called when one is editing the custom step type in the sequence editor prior to actually running the sequence that uses that step.

Josh,
   I think the issue is with the Edit step. Before the custom step type ever runs in a sequence the desire is to be able to edit parameters via some custom mechanism. i.e. one of the main reasons for creating a custom step type is to override and customize the parameter enter\select functionality. When a user adds a step, usually the next thing he or she does is immediately right click and select to edit it and enter parameters. When one of these custom steps is added and you try to 'edit' it, here is where the problems start. If, as you say, the .NET object will not get instantiated until the sequence is actually run, you will never be able to access it and call its functions at edit time. I guess that's why all the examples I've seen use calls to C\C++ style dlls so no objects are involved.
   Clearly the problem stems from my misunderstanding of when a .NET object can and\or will be created in custom steps in Test Stand. It just seemed logical to me that one should be able to force creation of an object in a pre-step but I now know that isn't true. However, there has to be some step or event (possibly when the Test Stand environment loads for example) in which I can create any .NET objects I want to use in custom steps. Maybe I'll look into that. If it turns out to be too much trouble to do so, I will stick to doing things via direct C\C++ dll function calls. Most of our .NET modules are just wrappers of multiple C\C++ dlls anyways. If you have any more info or I'm mistaken in my thinking please let me know. Thanks again.

Similar Messages

  • Custom Step Type: Sequence Call

    OK, I'm primarily a LabVIEW programmer, but in TestStand I understand how to:
    * Create a Custom Step Type
    * Link a LabVIEW Module for execution, post substep, edit substep, etc.
    * Prevent the user from selecting a different module for an instance of my Custom Step Type.
    All good stuff.
    Now here's what I want to do: the exact same thing, except that I want the custom step to call a subsequence instead of a LabVIEW VI during execution. Yes, I want to use a LabVIEW VI for the edit substep (to set certain parameters for this instance of the subsequence call. Yes, I want to use a LabVIEW VI for the post substep.
    Can this be done?

    Hi,
    Short answer, yes.
    When you create your step type, for the Specify Module you would use a SequcenceCall Adapter instead of your labview adapter.
    You would have to have your sequencefile with your sequences already created seperately and you would set the sequencefile not to use a process model in the sequencefile properties.
    Regards
    Ray Farmer
    Regards
    Ray Farmer

  • Creating a step type "launcher" that would insert the appropriate built-in or custom step type at edit time

    Hi everybody,
    I'm looking for tips, pointers,directions... to be able to perform this operation in TS 4.0 sequence Editor, if it's even possible...
    I'm managing a test system with a "home-made" virtual instruments abstraction Layer complementary to IVI classes for instruments which do not have classes defined, customizing the sequence editor accordingly for developpers of my department.
    So basically when the instrument is IVI, the developper uses the built-in IVI step-type type and when it is not, he uses the the custom step types that I developped for this particular class of instruments.  
    However there are classes where I do have both IVI and specific drivers available and I do need to use both in the test sequence.
    For example let's say there are two sources of DC power available in the testbench, one being a programmable IVI compliant DC power supply, and the other one composed of fixed "blocks" of DC power supply managed by externals relays and you need to use them both in the test sequence.
    What I would like to be able to do in the sequence editor is inserting the appropriate step type at edit time just by selecting the source of power supply (by a ring or enum for eg), and if the first ressource is selected, it inserts IVI step type, and if the second ressource is chosen, it inserts the appropriate custom step type.
    Any Ideas on how to accomplish this ?
    Regards,
    Cyril
    Cyril Bouton
    Active LabVIEW Developper
    Solved!
    Go to Solution.

    Hello Cyril,
    Here is an idea that could be done:
    You could create a dynamic step by having a step that holds all the properties for both configurations (the superset of the necessary variables) and an extra one that indicates which 'mode' the step is in.  Then you create the main Edit substep in whichever language you desire.  That substep window will then have a box/dropdown/etc. at the top you can use to choose between modes A & B.  When the user changes the value, you would dynamically change the rest of the window to contain the appropriate properties for mode A or B.  You then copy the property values in that window to the Step properties, and copy the mode to your variable and you can run the step in that mode.  When the step then runs, it checks the mode variable, and depending on its value, it will run the step in mode A or B.
    Now we could add a dialog that allows us to choose when we put a step down but we should still allow the user to change later via the Edit substep we create.
    I don't think we can create something that inserts a completely different step, but we can have one step that has the ability to do both and we can pick which one we execute.  Also note we still don't have the ability to edit the Panels for a step, so we have to use a new window that we call from our Edit substep to complete the step.
    Hope this helps.
    Regards,
    Olivier L. | Certified LabVIEW Developer

  • How can I include multiple limits in the sequence file documentat​ion for custom step type?

    Hi,
    I have a custom Step Type that contains Measurements property under Results. Its type is Array of NI_LimitMeasurement.
    I would like to see the values in the sequence file documentation like NI_MultipleNumericLimitTest type.
    Is there any trick to do that?
    Thanks,
    Andras

    Hi Andras,
    I have made  a slight change to the sequencefile 'docgen_txt.seq'.
    In the Sequence 'Step Doc' is a section which handles MultipleNumericLimit step type. There is a precondition check on the step 'Add Multiple Numeric Limits' if the step is of type 'NI_MultipleNumericLimit'. As your step type is based on the MultipleNumeric Limit type, I have just removed this precondition and just relied on the existence of Parameters.Step.Result.Measurement. Equally you could add a new section in this sequence to handle your Custom Step Type which is only called when the precodition match your type name.
    Now when you run the DocGen tool it handles your custom step type.
    Find attached my modified sequencefile 'docgen_txt.seq'.
    Just copy the contents of '..\National Instruments\TestStand 3.5\Components\NI\Tools\DocGen' to the User folder. Then place the attached file in the User\Tools\DocGen overwritting the version that is in that folder.
    Then launch TestStand and try it out on your sequence file.
    If you are using the html version, then you will have to make the same change into Step Doc sequence of the docgen_html sequence file.
    Hope this helps
    Regards
    Ray Farmer
    Message Edited by Ray Farmer on 05-19-2007 05:28 PM
    Regards
    Ray Farmer
    Attachments:
    docgen_txt.seq ‏184 KB

  • "Disable tracing" as part of custom step type behavior

    Hi !
    Currently writing custom step types based on sequences (my step type's default adapter is a sequence), I would like to set the "disable tracing" right in my step type definition.
    The problem is that this option isn't visible in the 'Default Run Options" tab... The only way I found to do this is using Pre and Post Expression to set 'ThisContext.Tracing = True /False'.
    But I don't like the fact to use Pre/Post Expressions in my step type (I would prefer to let it blank for end users).
    Is there any way to achieve this without using Expressions ?
    Solved!
    Go to Solution.

    Here a printscreen on the properties available for my custom step... No TS container...
    Am I missing something ?
    Attachments:
    Step Prop.png ‏15 KB

  • Stationglobals in a Labview custom step type inside a new thread do not get updated

    Hi,
    I have a Custom Step type which I use to pass parameters to TestStand from a VI and vice-versa through some step fields. I run the VI inside a sequence in a new thread and expect the VI to update the parameters when I change them through the TestStand StationGlobals.
    For example, I have a waveform injection custom step. I want to continuously inject a signal while I do some measurements on it. So, I put this step type in a sequence and ran it in a new thread. 
    I pass the VI parameter 'Stop_Injection' through a step field as shown in image 1. And I expect the step field to get updated when the new thread is run continuously by passing the corresponding stationglobal in the Pre-expression of the custom step (image 2). But this fails to happen. The VI does not get updated.
    On the other hand, if I do not bother with the step field and directly pass the stationglobal (figure 3), it works perfectly. 
    Any idea why this is happening?
    I hope I was clear in my question.
    LabVIEW 8.6.1
    TestStand 4.1.1
    Message Edited by Changi on 08-06-2009 12:50 AM
    Attachments:
    1.JPG ‏92 KB
    2.JPG ‏42 KB
    3.JPG ‏91 KB

    Hi,
    In image 3 you are linked directly to the StationGlobal of which you are continually updating therefore seeing the changes.
    In the other you are only linked to the Step.Stop_Injection and are only updating this valve from the stationglobals once in the pre-expression. You are not changing the reference.
    Regards
    Ray Farmer
    Regards
    Ray Farmer

  • The custom step type

    How can I possibly do the custom step type with MS VB and after that to use this with ActiveX Automation Adapter?
    "Only a life lived in the service to others is worth living..." - Albert Einstein

    Hi,
    The process of generating custom steps is basically the same what every adapter you use. ( See user manual chapter 9)
    As an example I've taken the Computer Demo sequence found in the TestStand\Examples\ for VB and created a custom step for the Power On test.
    Attached is the an ini file called MyTest.ini. Places this in Teststand\cfg\TypePalettes folder.
    Then launch TestStand and you should find the new step in the palette.
    (This is for TestStand 2.0.1)
    Hope this get you started
    Regards
    Ray Farmer
    Regards
    Ray Farmer
    Attachments:
    MyTypes.ini ‏41 KB

  • How do I modify custom step type that is part of a sequence?

    I have an example sequence that has a custom step type called "LabView Reentrant Action". My interest is to modify this step type to my needs. Because this custom step type is part of the sequence there is no definition in global type palette. I was told that I could copy this step into global type palette. But, I don't think I could.
    I can copy the step from the sequence space but I do not have an option to paste it in the palette.
    In sequence space I have options to choose LabView Reentrant Dialog Steps under Insert Step pull-down menu. When I open Step Type Menu Editor in the palette space, all types are listed except LabView Reentrant Dialog Steps. I think these are not showing in the palette because they are custom types built into the sequence.
    How can I extract the custom step type into global palette so that I could modify to my needs?

    Hello,
    If you already have the customer step type "LabView Reentrant Action" then to modify it all you need is to go in "Type Palette" (Ctrl-T) and make modifications in the step type.
    In case you are not able to see the step type in type palette then you need to add the step type in a custom ini file. You can add that ini file by clicking on customize in "Palettes" drop down menu. The you can copy paste a step in the step type and make modifications to the step.
    I would recommend going through Tutorial: How Do I Make a Custom Step Type? for more reference.
    I hope it helps..
    Rajiv

  • Automatically Installing Custom Step Types in TestStand 4.2

    We have developed Custom Step types that needs to be integrated in a deployed TestStand System (customized UI with TestStand RunTime Engine) . We can customize the palette manually and add the related INI file. We also understand that the information gets saved in Testexec.ini in Cfg folder @ C:\ProgramData\National Instruments\TestStand 4.2\Cfg. What I am curious is how this process can be automated.
    Thanks

    dug9000 wrote:
    I just want to add to the above that there are very good reasons to use type palettes even in a deployment. Using a type palette in a deployment ensures that all of the sequences on the deployed machine will use the version of the type in the type palette file... Using type palettes is recommended as a way to control which type versions are being used and to keep types more organized and centralized.
    Absolutely - that's exactly why we're doing it this way.  Our customer is in a regulated industry, and we need to control their development environment configuration very tightly.  Speaking of which, so when will there be VIPM (TestStand Edition)?
    Copyright © 2004-2015 Christopher G. Relf. Some Rights Reserved. This posting is licensed under a Creative Commons Attribution 2.5 License.

  • Insert a specified built-in or custom step type in Teststand using CVI

      I try to build a step type . this step type specifies an adapter of DLL, which is developed under CVI. I want to use Teststand API functions in CVI to fulfill the following functions.
      1, insert a specified built-in or custom step type into current sequence;
      2, insert a specified built-in or custom step type into another sequence.
    Thanks!
    Jacky

    Hi Jacky,
    There is an example program called Programmatically Inserting a Step into a TestStand Sequence Using LabWindows/CVI and a KnowledgeBase called Programmatically Inserting a New Step in the Currently Executing Sequence that should answer your question.
    Hope this helps!
    Best Regards,
    Jonathan N.
    National Instruments

  • Put the report into shape for custom step type

    Hi All,
    I created a custom step type and also managed to get the results logged into the report file.
    In the report file(See ‘[15 33 14][22 10 2007].xml.vi’ please remove the 'vi' extension) the 'StepResult' (created by my custom step type) appears just below the status. Is it possible to get it displayed somehow the cell(measurement column) next to it, like in a Numeric Limit Step? I’m using the ‘horizontal.xsl’ stylesheet and Teststand 3.5.
    Furthermore, is it possible to change the name of the column headers? Or the structure of the header?
    Cheers
    Attila
    Attachments:
    [15 33 14][22 10 2007].xml.vi ‏17 KB

    Hi again Attila,
    Further to my above post, I've collaborated with colleagues here and have been able to modify the horizontal.xls stylesheet such that it is suitable for what you require. This modification will ensure that all properties named StepResult will be displayed as you described, in line in the table.
    To ensure compatibility with your results in TestStand, a small modification to your sequence file is required. In your sequence file, right click the value for your custom step, go to Advanced > Edit Flags and uncheck all boxes. The text in the bottom of the window should now read "0x0". This should mean that your data is displayed correctly.
    I am attaching the modified horizontal.xls for you to use [remove the .vi extension]; please make sure a backup is created before you replace it. The file should be placed in your TestStand directory under Components\NI\Models\TestStandModels\StyleSheets. Modifications to column headers as described in the above post can be made to this file.
    I hope this soultion is satisfactory and that you are able to implement it. If you have any further questions please don't hesitate to reply.
    Regards,
    Tom
    Applications Engineering, NI UK
    Attachments:
    horizontal.xsl.vi ‏84 KB

  • Where to place custom step types in teststand 4.1?

    Hi,
    I have placed custom step types like ieee ssh etc, in the folder c:/documents....../components/user  folder.
    But i  could view them, when i use insert step in sequence editor.
    Please let me know is there any other location for teststand 4.1?
    Thanks in advance.
    Kris. 

    This link shows you the default paths for TestStand 4.1
    Regards
    Ray Farmer
    Regards
    Ray Farmer

  • Custom step type

    Hi,
    I am using TS4.0.1. and LV 7.1.
    I tried to create a custom step type (MultipleNumericTest_VBATPXI), which similiar to NI_MultipleNumeriLimitTest.  The difference is, I have two additional measured data. (I don't want to check those against Limit, but want to log to the database. )
    So I created the custome Datatype (Limit_test_VBATPXI) similar to "NI_LimitMeasurement" and add required two fields.  This datatype is passed to the "MultipleNumericTest_VBATPXI" steptype for Result.Measurement  type.
    In property browser it shows Results.Measurement as Limit_test_VBATPXI type. But when I add one value in Limit window, Result.Measurements.Measurement[0] becomes type of NI_LimitMeasurement !
    How to solve this?
    br,
    Vishal
    Attachments:
    Test_Type1.seq ‏30 KB
    test38.vi ‏13 KB

    Hello Vishal,
    When you click the "Add Measurement" button on the Limits tab of this step, it is actually calling the EditSubstep of the NI Multiple Numeric Limit Step type.  This Edit substep function, EditMultiNumericMeasurementStepUsingExpr(), is located in the  "<TestStand>\Components\NI\StepTypes\CommonSubsteps\CommonSubsteps.dll" file.  If you wanted to change the behavior of your custom step type, you would need to make your own dll (all of the source code for the CommonSubsteps.dll is provided) that would add your custom type instead of the NI_LimitMeasurement type.  I hope this helps alleviate any confusion.
    Best Regards,
    Software Engineer
    Jett R

  • Custom Step Type SubSteps Bug ?

    Hi,
    I'm having what I think is a bug. I'm doing a custom step type in teststand 4.2 and I can't put the pre-step substep before the post-step. I also know that TestStand are not executing them correctly since my pre-step create an object and the two post-step uses this object to set informations.
    Please look at the picture below

    Hi Crusader,
    Though the Pre-Step is being listed after the Post-Step substeps in your image, it will execute before them because of its very nature as a Pre-Step.  As per the TestStand Reference Manual, the Pre-Step substep will execute immediately before the module, and the Post-Step substep will execute immediately after the module.  
    The Move Up and Move Down buttons on the dialog are meant to function only when you have multiple substeps of the same type, in which case order of operation becomes important.  For example, if you were to highlight one of your Post-Step substeps, these buttons would make themselves available.
    Derrick S.
    Product Manager
    NI DIAdem
    National Instruments

  • Custom step type revision

    I have created several custom step types, but the names are not displayed correctly when I insert a step in a sequence. This worked fine in TS 2.0, but not in 3.0. Is there something that needs to be done with the version of the step type to be correctly recognized in TS 3.0.
    Thanks,
    Scott Trosper

    Scott -
    I am not aware of any issues like this. The version of the step type should not make a difference. Basically the Default Step Name Expression on the General tab of the Step Type Properties dialog box defines the name of the step at insert time.
    Could you append a sequence with the step type in it?
    Could you specify what you got in TS 2.x and now what you get in 3.0 for the step name when you insert a new step?
    Scott Richardson (NI)
    Scott Richardson
    National Instruments

Maybe you are looking for

  • How do I stop my iTunes from crashing

    Hey can some one help me out my iTunes keeps crashing and I don't know how to fix it

  • TS4062 I cannot find my IPOD touch listed on ITunes (there is no "Device" menu option - any advice?

    I cannot find my IPOD touch listed on ITunes (there is no "Device" menu option in iTunes- any advice?). Using IPOD touch (32gb) and connecting with a laptop using Windows Vista. Downloaded the latest ITunes and it wiped all my music. I was able to re

  • Os 10.3.1 problems after update.

    after updating my z10 stl100-1 to the latest official os 10.3.1, i have noticed a few problems with my phone. 1. when i receive a call and after i pressed answer it delays a while. 2. when i am using the default browser, randomly it will restart my p

  • Ocs mail server not forwading email

    Hi all, I have OCS email server with a mail domain. OID has em forwarding set for users to forward em to external mail domain. The OCS web email client works, sending em to local domain i.e. [email protected] forwards to [email protected] Problem is

  • Airport Express Bigpond USB modem

    I just bought the airport express to stream music. I set up the network and it worked great. However when I went to connect to the internet I had lost the connection, I have telstra's Next G modem connected directly to my laptop via USB. I then went