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

Similar Messages

  • How can i modify a step type description?

    I need to modify the description of some custom step types. I saw how this is made in the Basic Ivi step types. What i want to do is to display the current selected operation for an ivi step type as is done in the basic Ivi step type. Isaw that this is done just evaluating the vriable instrOperation and depending on the value you guys insert a name corresponding to that value.
    I tried to do the same and modified a custom step's description in order to display the currently selected oparation. The problem is that i can't display any label...instead of the label i want to appear i get a "String not found in Table" message in the step's description. What table is this?...Do i need to make the changes i want in a table or i can just use some predefined labels?...this is because with simple words like FREQUENCY or INIT the description seems to work fine. What can i do to solve the problem?
    This is the description i have in the step:
    ResStr("IVI_STEP_TYPE", "IVI", "IVI") + " " + ResStr("IVI_STEP_TYPE", "Counter", "Counter") + ": " + ((Step.LogicalName=="") ? ResStr("IVI_STEP_TYPE", "UNSPECIFIED LOGICAL NAME", "UNSPECIFIED LOGICAL NAME") : LocalizeExpression(Step.LogicalName)) + ", " + ResStr("IVI_STEP_TYPE", ((Step.Operation==0) ? "CONF FREQUENCY" : ((Step.Operation==1) ? "MEASURE" : ((Step.Operation==2) ? "READ" : ((Step.Operation==3) ? "INIT" : ((Step.Operation==4) ? "STATUS" : ((Step.Operation==5) ? "ABORT" : ((Step.Operation==6) ? "FETCH" : ((Step.Operation==7) ? "PERIOD" : ((Step.Operation==8) ? "CONF. VERTICAL" : ((Step.Operation==9) ? "CONF. INPUT IMPEDANCE" : ((Step.Operation==10) ? "CONF. BANDPASS FILTER" : ((Step.Operation==11) ? "CONF. LOWPASS FILTER" : ((Step.Operation==12) ? "CONF. HIGHPASS FILTER" : ((Step.Operation==13) ? "UNCONFIGURE FILTER" : ((Step.Operation==14) ? "SECONDARY EVENT" : ((Step.Operation==15) ? "RISE TIME" : ((Step.Operation==16) ? "FALL TIME" : ((Step.Operation==17) ? "POSITIVE PULSE" : ((Step.Operation==18) ? "NEGATIVE PULSE" : ((Step.Operation==19) ? "CONF. INTERVAL X TO Y MEAS" : ((Step.Operation==20) ? "CONF. PHASE X TO Y MEAS" : ((Step.Operation==21) ? "MEASURE X TO Y" : ((Step.Operation==22) ? "CONF. EXT. START ARM" : ((Step.Operation==23) ? "CONF. IMM START ARM" : ((Step.Operation==24) ? "CONF. EXT. STOP ARM" : ((Step.Operation==25) ? "CONF.TIME STOP ARM" : ((Step.Operation==26) ? "CONF. DIGITS STOP ARM" : "INVALID OPERATION"))))))))))))))))))))))))))))
    and this is the description i get in some of the steps:
    Ivi Counter, "Sample Counter", String not found in table

    Eromero -
    The ResStr function retrieves a string from the TestStand language resource files. We call this a table. The funtion requires a category and tag value name. Review the Creating String Resource Files section in Chapter 3, page 6 of the User Manual for more details.
    So the strings that you are already referencing are in the IviStepTypes.ini file in the
    Components\NI\Language\English directory. You could add your new strings that you require to a sister file that you would create under the Components\User\Language\English directory, or you can remove the call to ResStr and just hardcode the string with your step type if you do not want the ability to translate the string for other languages.
    The call that is probably failing is:
    ResStr
    ("IVI_STEP_TYPE", ((Step.Operation==0) ? "CONF FREQUENCY" : ...
    Also, right now the call to ResStr("IVI_STEP_TYPE", "Counter", "Counter") is probably failing and just using the default value you supply in the call.
    Scott Richardson - NI
    Scott Richardson
    National Instruments

  • 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

  • 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

  • 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.

  • How to strongly protect the step types from being modified by others?

    how to strongly protect the step types from being modified by others?

    Hi Jacky,
    You can make a property of a step uneditable by changing the property
    flags for the step.  First, you want to be able to view the hidden
    properties so that you can change the flags for these properties as
    well.  You do this by going to Configure>>Station Options
    and selecting the Preferences tab.  Check the box for Show Hidden
    Properties.  Once you have done this you can select the step type
    from the types palette.  In the window to the left, you can expand
    the tree for the type to see all the properties of that step. 
    Right click on the property that you do not want users to be able to
    edit, select Properties.  Then click the Advanced button. 
    Here you will see a list of the setable flags.  Check the box for
    PropFlag_NonEditable.  You can then do this for all the properties
    of the step that you do not want users to edit.
    Thanks,
    Caroline Tipton
    Data Management Product Manager
    National Instruments

  • How can I create a custom data type that is a 2D array of string by using TestStand API?

    Hi all,
    I'm new in TestStand:
    I'm able to create a custom data type that is a 1D array of string but I cannot find the way to create a 2D array of string.
    Can anyone help me?
    Thank you in advance.
    Federico

    I made it!!
    Indeed my 2D array is an item of a container:
    /*  Create a new container */
    RunState.Engine.NewPropertyObject(Locals.NewDataType,PropValType_Container,False,"",0)
    /*  Create an array of strings as item of the container */
    Locals.NewDataType.NewSubProperty("Array_2D",PropValType_String,True,"",0)
    /*  Reshape the array as an empty 2D array */
    Locals.NewDataType.GetPropertyObject("Array_2D",0).Type.ArrayDimensions.SetBoundsByStrings("[0][0]","[][]")
    being:
    NewDataType a local property (type Object)
    Attachments:
    AddCustomTypeAndCreateFileGlobals.seq ‏11 KB

  • Custom step types and custom step data.

    Hello.
    I have a good understanding of how TestStand allows custom step types to allow users to store custom data.
    I have also read numerous posts about users asking for the ability to store some custom data associated with steps.
    In my scenario I am required to write a sequence using a few third party supplied step types.
    To assist in developing and debugging this sequence, we would like to store a container of custom data with each steps.
    Option 1: Create custom step types.
    This is really not an option, relying on third party step types. Any customization made to their step types will magically disappear, along with any custom data, the next time I install one of them service packs.
    You may argue that I just have to ensure all custom fields are recreated before opening a sequence file. This works in my office when everyone is at edge with this, but in a few months someone will "take responsibility"
    and upgrade the 3rd party packs without reading the entire upgrade procedure.
    Option 2: Create links in Sequence Locals
    This does work, but is not very associative. To work, the name of the Locals entry would need to be the unique ID of the step it refers to.
    Also, it requires some more maintenance to insert new steps, and to remove stale references.
    I really hope that someone in TestStand R&D reads this, and enables users to store step custom data, for example by adding a "CustomData" container to the TS property of the step.
    Regards,
    Ivar S.

    Ray:
    Thanks for answering.
    I am aware that I can extend a custom step type by creating a new step type based on the first type.
    For example, I have this 3rd party JtagExecuteTest step type, supplied by another solution vendor.
    In my sequence, I want a custom error & failure handler, that needs information about each step as they fail.
    For handling and logging purposes, I need each step in my sequence to carry information in addition to the setup required by JtagExecuteTest.
    So I set forth, and modify the step type JtagExecuteTest step, along with some other 10-15 step types that the other solution vendor has put in their package.
    This works like a charm until I have to reinstall or upgrade the package.
    Because I modified the steps using their original name, all data I put into the steps are lost.
    Next attempt, I follow your advice and create MyJtagExecuteTest step, based on the original steps. Again, I repeat this customization for 10-15 step types.
    This works like a charm until I have to upgrade the package.
    Now some wise guy at the other solution vendor has renamed a DLL or a function call, breaking down every step that I have customized.
    Mush better, though, because I can repeat the customization process and the data does not disappear.
    Still, this is just too much hassle just to put TestStand to some decent use.
    If I could just click on a step, add my custom properties, and have TestStand retain those data as a user customization that particular step instance.
    Much like you have Sequence.Locals, it would be extremely useful to have a Step.Locals container for the users to use at will.
    Regards,
    Ivar Svendsen.

  • 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

  • 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

  • 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

  • "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

  • 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.

  • 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

Maybe you are looking for

  • Downloading Spool of a report scheduld in background on Appllication server

    Dear Experts, I have a requiremnt as below. 1. A simple ABAP report is scheduled to run in the background daily. 2. This report is simple classical report. 3. Once the job is run successfully, the report output will be generated in the spool. Now the

  • REG: Solman_Setup Issue in SOLMAN 7.1

    Hi All, I have installed SolutionManager 7.1 and when performing the solution Manager configuration using the solman_setup, in the phase managed system configuration, we are struck in step user creation, with the error " /SDF/READ_USER_ASSIGNMENT doe

  • IPhone viewing PDF forms

    Hi guys, I have a PDF form that was filled out and saved with Acrobat Premium and then e-mailed. I can view the form attachment normally on a PC, but the iPhone merely shows the PDF without any of the form data filled in. Am I missing something or is

  • Missing parts related

    Hi For one finished product manufacturing one child part is required and is availble in storrage location. while creation of productin order system reserved this one child part. For the same finished product one more production order created by other

  • IE issues with Spry horizontal men

    Hi..I created a spry horizontal nav bar and its works fine in FF, but in IE7 the pull down menus are going all over the place! The first sub menu goes in the wrong direction and the sub sub menu flys off to the right. Does anyone have any suggestions