GithubHelp home page GithubHelp logo

benji667 / open-dqmh-request-message-diagram Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 1.52 MB

Home Page: https://benji667.github.io/Open-DQMH-Request-Message-Diagram/

License: Other

LabVIEW 28.88% HTML 1.46% CSS 56.39% JavaScript 13.26%

open-dqmh-request-message-diagram's People

Contributors

benji667 avatar brouffet avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

brouffet

open-dqmh-request-message-diagram's Issues

Implementation problems in version 1.0.0.6

There are implementation issues with version 1.0.0.6:

  1. In the "find message text.vi" you still have a conditional terminal in the for loop so it will exit for the first string it finds (the output array will always have one element only). So its pretty much the same as it was before because: if you have more than one string constants in your EHL then it only finds one of them. To fix this the conditional terminal needs to be removed as well as the case structure surrounding the second for loop cause it will only executes if the last reference is a string constant reference and there is no guarantee to it at all.

  2. In "open dqmh request message diagram qd.vi" the string array is wired the for loop. The array will always have zero or one elements because of the problem described in (1). If you fix that then the array might have multiple elements, but because a shift register is used on the for loop if the first string is not the string we are looking for then the "set visible case vi" outputs an error which rolls to all the following iterations and the MHL case swith will never happen.

  3. Not an implementation problem but a new feature: The purpose of the QD is to open the right MHL of the Main.VI, but I believe it would be benefitial to also swith the EHL.

I have implemented all the fixes and the new feature. Changes are commented. Find the files under the link below.
Files changed:

  • Open DQMH Request Message Diagram QD.vi
  • Find message text.vi
  • Set Visible Case.vi

https://drive.google.com/drive/folders/1vlecC5Nulc7V-I9ERcz-7A8Y8p0BUY03?usp=sharing

Right-click plugin does not select correctly the Main.vi

Hi Benjamin,

First, thanks for implementing this great idea, I think this will be a big time saver for my team who uses DQMH a lot !

I found a bug in the code of the plugin VI named "Get DQMH Main VI.vi", the Main VI is not selected correctly:
image

While it works most of the time (because the Main VI SHOULD always be the last item in the library), there are cases where it does not. For example in this case, the "Create Test Log File" VI is selected instead of the Main VI:

image

Keyboard shortcut doesnt work if theres a second string CONSTANT in the EHL

I have noticed that the shortcut (ctrl+k) works for some of the requests and doesnt work for others.

After checking the source I have found that Find message text.vi searches until it finds the first string constant and then exits from the for loop. The problem with this is that if you for whatever reason I put another string constant to the EHL (and I usually do) then it becomes the first string the Find text message finds and because there is obviously no matchig case in the MHL to this second string the plugin does nothing.

(it is very counter intuitve but true: if you have one string constant on your BD and then you add another one then this new one will be the first and the original is the second. If you put a third one than that becomes the first etc)

How to reproduce:

  • put a string constant to the EHL of the module main and try running the plugin on that given request. It will do nothing.

How to solve the problem:
https://imgur.com/a/1E1KJae

quite self explanatory.

Another thing I've changed is that I open the BD of the module main even if I cant find request case. I believe opening the main still has a lot of value cause you dont need to go to the project explorer and dig for the main VI. This partially solves the other issue with cloneable modules cant be opened with the plugin. With this change at least the module main opens which is still useful.

By the way great job creating this plugin, I have found it very useful.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.