Jump to content

Sergey Kolbunov

  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by Sergey Kolbunov

  1. I've tried hard, but I could not find how to register for sessions this year. I had no problems with that last year. Could you point me where to click?
  2. Because I seriously started to use LabVIEW just from version 8.2 and just barely touched 7.1 as self education, I don't feel 8.x are worst. But I'm having unrecognized problem with building applications in 2009. Old projects converted from 8.6, no matter big or small, just can not be built in 2009 that main vi would not be broken. Workaround is to turn on debug option in build, that helps but make executables 3 times bigger. I didn't try 2010 yet to see if this issue is fixed there.
  3. I like your sentence about QWERTY vs Dvorak layout. Good example of "standards pressure" and misoneism.
  4. I'm not sure if it is a dupe or not. I found this topic yesterday. I've never seen so sincere stream of hate. How dreadful to live in this world. Quite interesting reading though.
  5. I put together a little example of how to use my modification of MC ListBox XControl (see post #7) to create a UI element of two lists, left with available items and right with selected items, using Select, Unselect buttons to move elements between lists. (I don't know an official name for this UI structure). The vi should be put into the MC_ListBox_XControl folder. The vi is in LV 2009. MC_ListBox_XCtrl_example.vi
  6. It's not too hard to learn and follow. Personally, I treat 12/9/2010 (slashes) as US notation (Dec 9), but 12.9.2010 (dots) as European notation (12 Sep).
  7. One drawback I found in the code: TSPopup.Update Cell String.vi uses Replace Array Subset primitive to update Listboxes, MCListboxes and Tables. That makes impossible to insert new rows into control. Says, if the control doesn't have any data initially, then popups appears and allows to select/type a value, but the control is not updated.
  8. I'm only dealing with different databases on the same server. In this case you actually don't need to care about "linking" of these databases, they may have foreign keys across databases for integrity and that's it. SQL query can join tables from different databases, you just need to specify the database name before the table and field name. The queries can be sent from you LabVIEW application or be in stored procedures in database, no matter. I preffer to move as much logic as possible from LabVIEW application to SQL queries/Stored Procedures. LabVIEW is much slower in case of complex queries. My initial version which using just SELECT and manipulating with data in LabVIEW required 40 sec to get data out of DB, compare to fraction of second for the replacement SQL query. Learn SQL, there is no way to avoid this in the Relational Databases world. As a 'link' solution for your remote database you may try to create views in your 'local' database for all required tables from 'remote' database, there is no duplication of the data tables in this case and data in views is always actual. Then, from LabVIEW you establish connection to the 'local' database only and works with it. But this solution is Read Only.
  9. I'm using NI toolkit to interact with DB. Most of time I just execute my own SQL queries and don't use NI toolkit's select or insert or other built in utilities. Sorry, I can not find any built-in code for inserting clusters into DB tables in the NI DB toolkit. OpenG variant configuration looks like what I need to manipulate with cluster's data. To clarify my question, I'm looking for known and proven DB schemas to store LabVIEW clusters in Database, may be some examples to learn from. Store as key=value list in a string field?
  10. Need to store clusters is MySQL database. I don't want to store a whole cluster, but just some of cluster's elements what need to be checked in test. So far I'm thinking about XML and .ini file formats.
  11. Got my CLA exam results yesterday. I PASSED!!!
  12. Hi All, I just want to announce what a LabVIEW Object-Oriented Programming System Design class is scheduled in Downers Grove, IL on May 17-18. If you or somebody from your company are interesting in taking this course, you may join and save on traveling. This is not too often when advanced LabVIEW classes take place in Illinois. The course is open for enrollment and posted at ni.com. http://sine.ni.com/a...&p_continue.y=5 Thank you, Sergey
  13. Here we go. I'm sorry for lack of documenting. I'm not sure is it right to post this code here in certified repository, but this is just enhancement of the original Multi-Column Listbox XControl. Pay attention to Value Filters. Enhancin of this feature was the main reason I did the modification. MC_ListBox_XControl.zip
  14. Yair, Your comments sounds very reasonable. I did modification of Karissa's code for my needs, but my changes doesn't include anything what you mentioned. I do deffer FP updates outside the xcontrol code. What about autowidth feature, I simply don't need it and made it disableable. Still using listbox as a storage area. Your last suggestion is the best. What changes I did, besides the enabling of some native listbox properties like Visible Items group, I made columns width ajustable programmatically in addition to autowidth. A column can be made hidden. Also, I modified the Value Filter greatly. The original one could do AND opearation only, but I was needed OR. So now my filter can process AND/OR logic but does it sequentially (doesn't undestand brackets). Also, UI for value filters displays column names now instead of number and doesn't display hidden columns (while you still can filter by hidden columns programmatically). One more addition, selected row kept selected through sorting or filtering process. All these changes might be not made the optimal way, but works great for my purposes (if don't forget to deffer FP updates). If somebody interested, I may post the code.
  15. Sergey Kolbunov (LAVA) = skof (NI Forum) I mostly visit LAVA for LabVIEW and NI Forum for TestStand.
  16. Zoe, Mikael, Thank you, I'll try to update the ODBC driver tomorrow. I thought about stored procedures. My queries getting bigger, so I'll try them. Sergey
  17. I'm creating utility tool to add/update data in MySQL database. I'm using the Database Connectivity toolkit in LabVIEW. I never had problems with it, but I always used just single SQL queries. Now I tried to send multiple semicolumn delimited queries to the DB Tools Execute Query.vi and got the error -2147217900 :"You have an error in your SQL syntax" while the queries run perfectly in phpmyadmin. Then I tried to change Cursor Type for DB Tools Execute Query.vi from the default "forward-only" to "dynamic" or other kind of bidirectional cursors. In this case I got the error -2147217887 : "Exception occured in Microsoft OLE DB Provider for ODBC Drivers: ODBC driver does not support the requested properties." Both errors are gone in the case of single query. Here is my query: SET @NewTestID = (SELECT TestID+1 FROM `TestSteps` WHERE TestID BETWEEN (100000) AND (199999) ORDER BY TestID DESC LIMIT 1); INSERT INTO `TestSteps` (TestID , Description , Test_Name ) VALUES ((@NewTestID), 'test', 'test'); Select @NewTestID; Is that a principial limitation of the Database Connectivity toolkit or limitation of my drivers? I'm using MySQL 5 and ODBC 3.51 drivers.
  18. Do you pass that address as numeric? Try string then. P.S. I just found your description of the problem in the neighbour topic. Sounds mysterious for me, I have no idea, sorry.
  19. Both methods will work with calling other sequence file. It is no difference for TestStand to call a sequence from the same sequence file or a sequence from other sequence file. Oh, no, the difference is what you can not use FileGlobals for different files. But if you don't have a bad habit of using globals, you are ok.
  20. Hi Clio, I can not open your sequence because I'm still using TS4.0. What about your question "how to handle the values between the sequence?", I'm using two ways, passing parameters or propagating locals. I suppose what you are using a top level sequence which calls your instrument sequences as sub sequences. Than for the passing parameters method, you need to call each subsequence and pass by reference the variable as parfameter. If the parameter is modified in a first subsequence, the second subsequence will use the modified value. Propagating locals method is even easyer to implemet. You need to define a local in the top level subsequence and check Propagate to Subsequence for this local (right click on the local). Than just use this locals in subsequences, you even don't need to define it there if you are not going to run these subsequences by itself. If you still define the local in subsequences, the Allow Propagation from Caller should be checked. This method works the same way as passing parameter, the modified local is used in later called subsequences. TestStand will highlight the propagated local as invalid, it is valid at runtime. Personally I preffer the propagate locals method, it is less maintanance for subsequences, parameters don't need to be changed for sequence call steps each time when data type is modified. I've attached the examples (TS4.0) Parameter Passing Example.seq Propagate Local Example.seq
  21. Congratulations Mark! I found you yesterday in the CLA list at ni.com P.S. Mark Y. and me are going to take the CLA exam in two weeks...
  22. Your status may be a part of problem as well. From my experience, employers avoid to hire someone with no permanent status. You statement what you will get green card doesn't mean too much for them untill you could say "I have a green card". I had a similar situation few years ago. Definitely, you must say truth about you status but unfortunately that is not improve your position. I have nothing to add but say with others: improve and tailor your resume and keep trying.
  23. CLAD is a multiple choice exam, so be prepared to it as to other exams of that type. Pay attention to LabVIEW environment and all specific functional areas mentioned in the preparation list, you may be asked some really simple questions what you never thought about before and without LabVIEW running it is hard to guess the answers. For the CLD my impression is the same, the style is more important. I personally paid more attention to style and documentation and then to functionality. Simple calculation - Style is 15 points, Doc is 10 points, and Functionality is 15 points. You will be very limited in time and if you concentrate on functionality first you will probably miss style and docs and fail finally. About the style: The LabView Style Book
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.