DIAdem Idea Exchange

Community Browser
cancel
Showing results for 
Search instead for 
Did you mean: 
Post an idea

We use scripts extensively to automate many tasks in a consistent manner, so we back these scripts up in a version control system to track changes and revert back to a know version if issues arise.

 

However, because we also use Diadem dialogs we need to create SUD files to house not only the menus but also the scripts that can be built into them. These SUD files are binary in nature and cannot be compared in the version control system, which is primarily a text based tool, and because the fileformat is unknown any differences at the binary level are not easily understood.

 

My idea is to have a tool that can parse a SUD file to extract the script associated with each dialog and export that script to a VBS file in a programmatic manner, such that multiple VBS files can be created quickly instead of having to open each SUD file and its many dialogs and then capturing the scripts. The benefit this brings is that there will now be the ability to track script differences in any text diff tool of your choice, it would not address any changes of a graphical nature within the SUD file, but that is not the motivation for this idea.

I'd like to have the "color palette" object in a DIAdem SUD dialog?

 

It's a great way to choose colors!

It would be a nice featre to do much more comfortable programming. Nearly each Editor suppurt the described feature.

This idea is borrowed from other programmers editors where you can select a sub-routine name or function name and then right click on this name to jump to where it is defined. The path to search for could be based on the currently open scripts within Diadem Script editor or it could be extended to all user commands currently loaded.

Goto Defined

Create a version of Diadem that has no user interface. This version would merely run scripts for use in delivered custom solutions.

It was nice to have a conditional breakpoint, so only if a variable reaches a value

the executions stops and i can continue with debugging.

 

Unbenannt.PNG

 

Thanks a lot.

Errors occuring in Diadem user commands result in all running scripts aborting without any clear sign of the reason. The only means to find out is the log file in Diadem Script.

Support says this in a feature, as user commands are supposed to handle events and there should be no (frequent) error messages.

On the other side, user commands are the ideal place to have a user functions library as it is accessible from everywhere including dialogs. With ScriptInclude command such a library has to be included at every script start and possibly several times as dialogs have a separate script environment.

 

Therefore I would welcome an option to turn on error messages / beep when there is an error in user commands.

The current behaviour of silent abortion of any script is quite confusing, especially for people that are only applying scripts for evaluation.

I've been spoiled by using other scripting environments lately, and thought I'd suggest a few features that I feel would make scripting in DIAdem a little more convenient:

  • Check for un-dimmed variables when Option Explicit is turned on
  • Check for unused dimmed variables (very helpful for cleanup)
  • Check for variables that are used, but never initialized to a value

I feel these would be really useful for identifying and fixing bugs (especially for inexperienced script writers) and cleaning up old scripts, while not requiring major changes to the interface (although they could get really annoying if implemented incorrectly, may be difficult to implement in the back end, and may even require manual compilation to detect?).

 

Thanks!

-Josh

Please include commands to handle INI Files (like CVI)

 

at the moment we have to handle and search for goups completle manual

 

it would be much more easier to get 1 command to geht the Value from "test"

 

[exam]

test = 3

 

Diadem currently has a copy function for curves within the user interface, as shown below: 

 

 

true.png

 

However, there is no copy function within the scripting api. This means to duplicate a curve programmatically multiple functions. one for each of the properties in the curve, need to be called as shown below: 

 

Dim oMyReportObj, oMyNew2DCurve,

Set oMyReportObj = Report.ActiveSheet.Objects.Item(1)

Set oMyNew2DCurve = oMyReportObj.Curves2D.Add(e2DShapeLine, oMyReportObj.Curves2D.Item(oMyReportObj.Curves2D.Count).Name &"_copy")
oMyNew2DCurve.Shape.XChannel.Reference = oMyReportObj.Curves2D.Item(oMyReportObj.Curves2D.Count-1).Shape.XChannel.Reference
oMyNew2DCurve.Shape.YChannel.Reference = oMyReportObj.Curves2D.Item(oMyReportObj.Curves2D.Count-1).Shape.YChannel.Reference
oMyNew2DCurve.Shape.Settings.Line.Width = eLineWidth0100

...

 

It would be far easier if there were a call to copy a curve directly: 

 

Dim oMyReportObj, oMyNew2DCurve,

Set oMyReportObj = Report.ActiveSheet.Objects.Item(1)

Set oMyNew2DCurve = oMyReportObj.Curves2D.Copy(1)

 

 

 

I was using an “assignment” channel as the “ChnEventTrueChn” for “ChnEventCreateFilteredTrueChn” and was really hoping the result channel would also be an assignment channel, but no, it’s not.  

 

My original assignment channel is matched up nicely with some text values, so it would be really helpful to have those values “carry” if I execute a function or calculation on the numeric channel.

 

FYI, Brad Turpin provided a workaround until this is implemented that works just fine for me:

Clone your assignment channel and use the clone for the ResultChannel channel in the “ChnEventCreateFilteredTrueChn”  function.

 

Set OldGroup = Data.Root.ChannelGroups(1)

Set NewGroup = Data.Root.ChannelGroups(2)

Set OldAssignChannel = OldGroup.Channels(1)

Set NewAssignChannel = NewGroup.Channels.AddChannel(OldAssignChannel)

Call ChnEventCreateFilteredTrueChn(NewAssignChannel, ChnEventList, OldAssignChannel, ChnEventFalseValue)

 

 

Dears,

I want to propose a check button in settings which would say something like "Automatic CodeCompletion". If you check that, you will see the hint from CodeCompletion anytime you write code not only when you write and hit ctrl + spacebar.

 

I'd like more events in DIAdem VIEW, similar to REPORT.  The one I'd like most is: OnLayoutLoaded

When entering a bult-in DIAdem command you get a tooltip hint about which command input parameter you are at. It would be great to implement code completion especially for the several enumeration variables where you need to get the script term right.

E.g. ChnOffset - When entering the value for ChnOffsetMode you should be offered "free offset", "first value offset", etc. in a pick list.

it is not possible to search the Diadem Help with

 

 

File*Open

or    *Chn*

or    Fi*Dlg

 

 

 

you always have to know the right word you search.

 

 

the possibility to search with * makes it much more easier to findes command when you only have an idea how they could be named

 

 

 

when i want to compare 2 Script Files i always have to use Notepad++

 

Please include this Funktion into the Script Editor

Simplify how to create a DataPlugin. I should be able to define a binary layout like a telemetry stream and directly assign channels.

 

For example, A new GUI would be created. I define the telemetry stream which has three floating point numbers then an integer, repeat. Assign channel names Volts, Amps, Power Out, and Setting. Perhaps set the built-in properties. Press a button the plug in is automatically created.

Most dialog editors I've used have a "timer" function of sorts, and I would like the DIAdem SUD dialog editor to have a "timer" function.  This would allow an event to happen at a specified interval (example 1 second) 

 

The simplest case would be to simply display the current date/time on a user dialog, and this is not possible right now without using worker objects, and I feel silly using a worker object just as a time-keeper! I would use this function often.

 

 

It would be fantastic if you would develop your own, or put a wrapper around one of the existing public domain, statistics packages and greatly expand on the statistics currently offered in the product.  Evaluating the statistical significance of data seems a natural and powerful feature that should be included as part of data analysis.

Create SQL interface for the datafinder.