Write/ Read Keys problem

hi all,
I am looking for your advise for the attached vi for writing/ reading keys.
Facing problem:
Since the input/ output is of cluster of mixed control types, I am having problem to write & read all settings correctly. I am sure that I must have missed out something IMPORTANT
I have tried indexing "TypeDesc" to Variant's "Type" input as well as Fixed it DBL/ I32. However, both methods do not seem working well. I am still having problems with "Use Dirty Transmitter"(Boolean) and "arrays" types.
Any suggestion would be very much appreciated.
Best regards
ian.f
Ian F
Since LabVIEW 5.1... 7.1.1... 2009, 2010
依恩与LabVIEW
LVVILIB.blogspot.com
Attachments:
P&P_Update_2t.vi ‏145 KB

Hi Ian.f,
I always welcome the chance to help a fellow enthusiast. Unfortunetly I think I will be of limited use.
First let me say that the best resource to answer this question is probably Jeane-Piere Drolet becuase I think he has cracked this nut in some of his code from "OpenG".
That being said, let me do what I can for now. There are a number of issues that are hitting you. First is the arrays. You are currently reading them as a variant and attempting to convert (this is where Jeane-Piere may be able to help). The data is coming to you as a variant because the array of refnums for the cluster are generic types that handle all data types. If you use a "to more specific" node you can convert these nodes to the actual class of data used. The complication them becomes "which tpye do I convert which ref to?" Agian I think Jeane-Piere has got this figured.
I have accomplished what you appear to be attempting in a more specific fashion. I will try to outline my approach below.
1) Make the cluster a strict type def. My appraoch usese the same cluster in more than one place and this will simplify support.
2) Instead of using refnums to the individual cluster elements, use a refnum for the entire cluster.
3) When trying to update the cluster, update the ENTIRE cluster. I have not figured out how to update just a part of a cluster using control refs.
4) When trying to save use a "unbundle" by name to break-out your parts and save them as required for each type.
5) For the arrays I will create a new section for each array. In that section I will have at minimum a field called "number_of elements" or similar. This filed will get the array length. If there are elements in the array, I will start writing them as "element1",..
This gives me enough data to put things back together at restore time.
I am curious how you end up solving this challenge. I have successfully written code that will automatically locate all of the controls and indicators on the front panel of a VI of my choosing and save/restore them from file BUT, it does not support the complex data types like clusters and arrays. I still have to do these explicitely.
I will watch this question to see if I can help or learn more.
Ben
Ben Rayner
I am currently active on.. MainStream Preppers
Rayner's Ridge is under construction

Similar Messages

  • Xcode writting/reading file problem

    Hi,
    im using xcode to compile in c  language, but im having problem with files, writting/reading simply doesnt work (to be exact i have to say that i copied source code to dev-c++ on windows platform to check the code and it works normaly as it should) any suggestions?
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    int main (int argc, const char * argv[])
      char tekst[]="tujesttekstktorychchcezapisacdopliku";
              char tekst2[20];
      FILE *plik;   /*r=read, w=write, rwx-obydwachyba, wb-tryb binarny*/
              if ((plik=fopen("text", "w"))==NULL)
      printf("plik nie zostal otworzony");
              fprintf(plik, "%s" ,tekst);  /*wpisanie tekstu*/
              fscanf(plik, "%s",tekst2);
      printf("tekst2: %s\n", tekst2);
              if (fclose(plik)!=0)
      printf("blad przy zamykaniu");
        printf("Hello, World!\n");
        return 0;
    the result of this program is "hello world" ONLY.
    file is clean, same thing with test2 variable.
    in copied code opening mode is "w" but ive checked almost all options ofc including binary file modes (both doesnt work)
    any suggestions?
    Message was edited by: Entwu

    while( (len = in2.read(b,0,1024)) != -1 )
    bytcount=bytcount+1024;
    inFile.write(b,0,1024);
    } This is where you go wrong ... suppose you're reading, say 100 bytes instead of the maximum 1024;
    you're still writing 1024 bytes instead of those 100 bytes; your 'bytcount' goes berzerk too. Have a
    look at this -- while( (len = in2.read(b,0,1024)) != -1 ) {
       bytcount=bytcount+len;
       inFile.write(b,0,len);
    } kind regards,
    Jos

  • Write/Read Synchronization Problem

    Hi there,
    we have a little problem reading objects from the DB shortly after updating them.
    After we commit the UnitOfWork we do a ReadObjectQuery. Sometimes (about evry 6-10th time) the ReadObjectQuery return an object with outdated data (the state like before the commit).
    I inserted an initializeAllIdentityMaps() between the write and the read, but that didn't help.
    I inserted a Thread.sleep() after the write which fixes the problem, but I'm not willing to accept this as a solution. There must be a better way than active waiting for the changes to complete.
    I'm looking for notification mechanism to find out if the commit is complete and the read-cache is ready to use.
    Any suggestions?
    Thanks,
    Tassilo.

    Thanks for your help, Don.
    I think we can exclude race conditions. This happens in a single thread in a single Method.
    But I forgot to post one important information (I'm sorry for that): We are still using TOPLink 3.6
    I tried to boil the problem down to a minimal test that reproduces the effect: The following code reads an object form the DB, sets on of its reference to null, commits it, sets the reference back to the original value and commits again.
    Then it reads the same object again from the DB and in 4 out of 20 tries the reference is still null. A second read always brings up the right reference. The ratio 4 of 20 is not constant, sometimes it's over 10 fails in 20 tries, in some rare cases all 20 tries work out fine.
    I have no clue what is going on here. I'll appreciate any help.
    public void testMethod(){
    for (int i = 0; i < 20; i++) {
    long myOid = 19618;
    ClientSession clientSession = ServerSession.getClientSession();
    UnitOfWork uow = clientSession.acquireUnitOfWork();
    CoObject object = CoObject.findWhereObjectIdExists(clientSession, myOid); /* this is a ReadObjectQuery*/
    CoContent content = object.getCoContent();
    CoObject objectClone = (CoObject) uow.registerObject(object);
    CoContent contentClone = (CoContent) uow.registerObject(content);
    objectClone.setCoContent(null);
    uow.commitAndResume();
    objectClone.setCoContent(contentClone);
    uow.commit();
    // uow.initializeAllIdentityMaps(); /* doesn't make a difference */
    /* now we read the same Object the DB again */
    object = CoObject.findWhereObjectIdExists(clientSession, myOid);
    System.out.println(i + "object.getCoContent(): " + object.getCoContent()); /* ouch! */
    try {
    Thread.sleep(500); /* this helps, but hurts! */
    catch (Exception e) {
    object = CoObject.findWhereObjectIdExists(clientSession, myOid);
    System.out.println(i + "neu object.getCoContent(): " + object.getCoContent());
    0 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    0 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    1 object.getCoContent(): null
    1 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    2 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    2 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    3 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    3 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    4 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    4 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    5 object.getCoContent(): null
    5 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    6 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    6 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    7 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    7 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    8 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    8 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    9 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    9 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    10 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    10 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    11 object.getCoContent(): null
    11 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    12 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    12 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    13 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    13 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    14 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    14 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    15 object.getCoContent(): null
    15 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    16 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    16 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    17 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    17 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    18 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    18 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    19 object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]
    19 neu object.getCoContent(): CoFlexTyp[ID=16226.0 Name=Checkthisout, Object-Id=19618.0]

  • Read Key and Write Key not working as expected with paths on RT

    The configuration file VIs Read Key (Path) and Write Key (Path) don't seem to work as expected (at least not as I was expecting them to) on an RT target.
    When working on my WinXP PC with these two VIs, paths are translated to what looks like is supposed to be a device-independent format before being written to disk. The path C:\dir\file.txt becomes /C/dir/file.txt when writing and vice versa when reading. On my RT target, however, that same path is written to disk as C:\dir\file.txt, unchanged from the native format.
    The translaton of a native path to and from the device-independent format appears to be the responsibility of Specific Path to Common Path and Common Path to Specific Path. These both use the App.TargetOS property to determine the operating system. In the case structure for these two VIs, however, there is no case for PharLap or RTX. (My RT hardware is runnng PharLap; I don't know enough about RTX to comment.) This means that the results of String to Path or Path to String are used without translating between the device-independent format to the native path format.
    This isn't a problem if you create a configuration file on one machine and use it on that same machine. I noticed this only when tranferring a config file from my PC to the RT target, where the target would not open the file paths it loaded from the configuration file.
    This occurs on 7.1.1 and 8.0.  I don't have 8.20 to see if happens there, too.

    In LV 8.2, this was fixed.
    The problem is App.TargetOS returns "Pharlap" on RT systems, and "Pharlap" is handled by the default case ("invalid OS target") in LV 8.0.  In LV 8.2 the default case is "Windows 95/NT", however.  The reason you could write and read an .ini file on RT in LV 8.0 and earlier is because these two VIs (listed below) were both running the default case of "invalid OS target".
    vi.lib\Utility\config.llb\Common Path to Specific Path.vi
    vi.lib\Utility\config.llb\Specific Path to Common Path.vi
    As you saw, this fails when you perform one operation in Pharlap but the other in Windows.  You can fix this by modifying the two VIs listed above.  Just go to the case structure and make "Windows 95/NT" the default case.

  • "write on" behavior problem

    I’ve drawn shapes many times with the “write on” behavior. All of a sudden, it’s not working. Here’s the problem. “Write On” completes drawing and then reverses a little bit on the last frame. I included frame shots. If anyone can help, I would appreciate it.
    Side note: I know I can do the same thing with key frames. However, I’d rather solve the “write on” behavior problem.

    Ah, nevermind! I think I may have solved the issue myself. It seems if you click on the Group tab to the left of the main timeline as opposed to the clip within the timeline, it allows you to change the group and scale it while also keeping different elements together. Could be helpful for anyone with a similar question.

  • Follow up to my Luma Key problem

    Hi again,
    Tom has answered to my Luma Key problem of bad quality by recomending me to put the oval form under my clip instead from above, and it worked verz well.
    But now I have another problem, I want now my oval to cross disolve to have the full scene that is now under to come gradually fully on screen. I have a cross disolve at the begining and at the end of the oval. Its fine for the oval to come gradually from full black screen to an oval with behind the 2nd scene, but when it shall starts to disolve, nothing happens. I also try with the pen, adding points and then pulling down in order to have the oval clip gradually dissolving, but nothing works ! Any clue ?
    Thanks,
    Nic

    Nicolas,
    One way to do this is:
    - Oval on V1
    - Clip1 on V2 with Composite Mode > Travel Matte Luma
    - Clip1 also on V3. Change it's opacity so it is 0 until the required number of frames before the end of the Oval. Then increase it's opacity to 100 at the end of the Oval.
    There might be a more efficient way to do this.

  • How can I read "Keys" from a Config File that have square brackets in them?

    I'm using the "Read Key (String).vi" from the config.llb and I'm having a problem because the key names in my file have square brackets in them. I'm creating an VI to read certain pieces of the TestStand �StationGlobals.ini� file and array elements appear as %[0] = "blah blah blah". It looks like they're not getting recognized at all. Is there a way to handle this?

    I was just looking at the code inside the configuration VIs and the way they work under V6 is that the Open VI actually reads the contents of the configuration file, parses it (in nice-platform independent G) and stores it in a fancy LV2-style global called the "Config Data Registry.vi". The routine that does the parsing is called "String to Config Data.vi". My gut reaction is that this code is going to be the same in your version because between sometime prior to V6 of LV, NI changed the location of a couple terminals on the low-level Match String function and it looks like when this code was originally written the terminals were in the old configuration.
    In any case, if your square-bracket containing strings are getting lost, this is probib
    ly where it's happening at. The other place to check is in the read VI itself. The V6 VI for reading the configuration registry is called "Config Data Get Key Value.vi". It's output is then further parsed by a function called "Parse Store String.vi" if the "read raw string?" input is set to False (the default position).
    Given that all the code for these functions are written in LV, you should be able to fix your VIs to read the strings you have in the ini file now. Which IMHO is actually the way they should work.
    Mike...
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • READ statement problem

    TYPES : BEGIN OF itab,
             matnr LIKE eban-matnr,
             menge LIKE eban-menge,
           END OF itab.
    TYPES : BEGIN OF itab2,
              maktx LIKE makt-maktx,
            END OF itab2.
    DATA : it_eban TYPE STANDARD TABLE OF itab.
    DATA : it_makt TYPE STANDARD TABLE OF itab2.
    DATA : wa_eban TYPE itab.
    DATA : wa_makt TYPE itab2.
    START-OF-SELECTION.
      SELECT matnr menge INTO CORRESPONDING FIELDS OF TABLE
                            it_eban FROM eban.
      SELECT maktx INTO  CORRESPONDING FIELDS OF TABLE
                           it_makt from makt.
    PERFORM display TABLES it_eban it_makt.
    FORM display TABLES eban_tab makt_tab.
    LOOP AT eban_tab INTO wa_eban.
      WRITE :/ wa_eban-matnr, wa_eban-menge.
      READ TABLE makt_tab with key matnr = wa_eban-matnr.
      "here I'm getting error like
      "the specified type has no structure and therefore no component called "MATNR"
      "How can I write READ statement here to read makt_tab.
    ENDLOOP.
    ENDFORM.

    Try that
    TYPES : BEGIN OF itab,
             matnr LIKE eban-matnr,
             menge LIKE eban-menge,
           END OF itab.
    TYPES : BEGIN OF itab2,
              <b>matnr like mara-matnr,</b>
              maktx LIKE makt-maktx,
            END OF itab2.
    DATA : it_eban TYPE STANDARD TABLE OF itab.
    DATA : it_makt TYPE STANDARD TABLE OF itab2.
    DATA : wa_eban TYPE itab.
    DATA : wa_makt TYPE itab2.
    START-OF-SELECTION.
      SELECT matnr menge INTO CORRESPONDING FIELDS OF TABLE
                            it_eban FROM eban.
      SELECT <b>matnr</b> maktx INTO  CORRESPONDING FIELDS OF TABLE
                           it_makt from makt.
    PERFORM display TABLES it_eban it_makt.
    FORM display TABLES eban_tab makt_tab.
    LOOP AT eban_tab INTO wa_eban.
      WRITE :/ wa_eban-matnr, wa_eban-menge.
      READ TABLE makt_tab into <b>wa_makt</b> with key matnr = wa_eban-matnr.
      "here I'm getting error like
      "the specified type has no structure and therefore no component called "MATNR"
      "How can I write READ statement here to read makt_tab.
    ENDLOOP.
    ENDFORM.
    Message was edited by:
            Jacek Slowikowski

  • Write/Read Database with "Jeffrey"-VIs

    Hello,
    i want to write/read a sql-database without-the NI-Toolkit.
    I found while searching here the Tools from Jeffrey which are available here: http://jeffreytravis.com/lost/index.html
    Now i unocked the files and wanted to try t he example "Example - Fetch a Table.vi".
    There is also a demo-database included called: "SampleDatabase.mdb"
    My current problem is that i dont know what to set to the parameter "connection-string" (somehow the filename, but how?)
    Does someone know how to use these files?
    Thx for your help
    Attached the downloaded zip-file with all the data
    Attachments:
    LabSQL-1.1a.zip ‏1132 KB

    I tried to do what the readme says, but i think there is a problem with my windows-installation or something is missing.
    a. Go to
    your Windows Control Panels, and open "ODBC Data Sources"
    b. Click on the "System DSN" tab
    c. Click on the "Add..." button.
    d. From the list of drivers, choose
    "Microsoft Access Driver"
    No problem up to this point, but after i selected the "Microsoft Access Driver" and press "Fertig stellen" the window closes and it look like before, there is nothing like a dialog box (see attached screenshot), so i can´t continue with th points e..g.
    e. At the dialog box, type in
    "myDB" for the Data Source Name. Then click on "Select..."
    button, and find the file "Sample Database.mdb" included with the
    LabSQL examples. Leave everything else as it is, and hit OK.
    f. Close the ODBC control panel
    g. Test the connection by running one of
    the examples provided.
    Is there a way to re-install this part of windows?
    Thanks for your help
    Attachments:
    empty.jpg ‏76 KB

  • Prologix LabVIEW write/read error

    Hello,
    I am a student/research assistant working on a LabVIEW program that was passed on to me from another student. I am not sure what happened between taht time and now but I am having problems with a write/read step from a Prologix GPIB. I have attached the vi code as well as several screen shots. I have checked the read/write module without running the program and I get a green arrow but still get a error code. After running the program, I get an error that is visible in the block diagram. I am really not sure what to do about this. By the way, I am taking measurements from a Homodyne setup. I will appreciate any help or suggestions. Thank you for your time.  
    Solved!
    Go to Solution.
    Attachments:
    Prologix_LabVIEW_Block.jpg ‏150 KB
    Prologix_LabVIEW_read_write.jpg ‏224 KB
    Prologix_LabVIEW_write_read_buffer.jpg ‏216 KB

    I wanted to add more attachments
    Attachments:
    PiezoMeas1_prologix.vi ‏37 KB
    Prologix_LabVIEW_Front.jpg ‏139 KB
    Prologix_driver_software.jpg ‏175 KB

  • Write / read files to RAM memory

    Dear all,
    I want to write a text file to RAM memory and after read it from RAM memory.
    Why? Because, I want to read my text files quickly, in short time.
    if I use default method for reading files it take long time for reading the file and for write the file.
    But, if I use write / read files to RAM memory, I can read my files quickly and read my files from RAM for processing and write my files to HDD.
    Can you help me?
    I searched on the Internet this problem and I did not find any one solution.
    From my searching on the Internet, I understand that Java can not do that.

    The problem with this program is that it load 1 minutes, but I want to load a second.
    Here is my java code:
    import java.io.*;
    public class File {
    public static void main(String[] args) {
    // Start to reading the file
          try{
        FileInputStream fstream1 = new FileInputStream("big.txt");
        DataInputStream in = new DataInputStream(fstream1);
            BufferedReader br = new BufferedReader(new InputStreamReader(in));
        String strLine;
        while ((strLine = br.readLine()) != null)   {
    // Start to replacing method
        String strreplace = "%";
        String result = strLine.replaceAll("a", strreplace);
    // End of replacing method
    // Start to writing to file
          try{
        FileWriter fstream2 = new FileWriter("out.txt", true);
            BufferedWriter out = new BufferedWriter(fstream2);
        out.write(result); // Write to file the result
        out.close();
        }catch (Exception e){
          System.err.println("Error: " + e.getMessage());
    // End of writing to file
        in.close();
        }catch (Exception e){
          System.err.println("Error: " + e.getMessage());
    // End of reading from file
    } // Here is the end...Please to do the following steps:
    1. Copy my code;
    2. Download text file from: [http://norvig.com/big.txt|http://norvig.com/big.txt]
    3. Open the text editor and select all text (Ctr+A) and dublicate the text 10 times for creating a big text file (30-40 MB);
    4. As a java developer, You know what to do next.
    I'm waiting your solution.
    Thanks in advance!

  • Failure to read multiline string with Read Key.vi

    I converted 2D array into a spreadsheet string and attempetd to write it as a key value into a configuration file. This worked just fine. However, when I attempted to read this multiline string using Read Key.vi, I got just the first line in return (see two vi's attached).
    As sufficient documentation on configuration file vi's is all but missing, could you please advise on their (undocumented) features? What do I miss?
    Thank you.
    Michael
    Attachments:
    Save_2D_array_in_config_file.vi ‏29 KB
    Read_2D_array_from_config_file.vi ‏31 KB

    Hi Michael,
    MichaelS wrote in news:506500000008000000F7980000-
    [email protected]:
    > I converted 2D array into a spreadsheet string and attempetd to write
    > it as a key value into a configuration file. This worked just fine.
    > However, when I attempted to read this multiline string using Read
    > Key.vi, I got just the first line in return (see two vi's attached).
    I use Config files all the time. Much more user-friendly than the
    Registry. They are a Microsoft thing really, rather than LabView, and
    come from Windows 3.11. Each value is limited to one line, so when you
    write a spreadsheet string with end-of-line characters in it, you're
    effectively breaking the .inf file
    The solution? Try putting a "Search and Replace String
    " after your
    "Array To Spreadsheet String". Wire "Replace All" with a TRUE constant,
    and wire "Search String" with a string in "\" view and enter \r\n (or do
    0A0D in Hex view) and then then wire Replace String with a ";"
    Now your .inf file will look like:
    [Array]
    Data=1.0000,0.0000,0.0000;0.0000,2.0000,0.0000;0.0000,0.0000,3.0000;
    When reading it, just reverse the search and replace strings above.
    I hope this helps,
    Andrew

  • Error 43 when accessing LabVIEW 2009 write/read file functions through the web server functionality

    Is there any way around to avoid Error 43, "Operation cancelled by user" when using Web server?
    I am using the example VI:s RemotePanelMethods-Server.vi and RemotePanelMethods-Client.vi to acces the MainGUI.vi from my workstation to a lab computer. * LabVIEW 2009 is installed in both machines.
    * MainGUI.vi is wired to the VI access list in the Server VI but it also contains a hierarchy below that isn't, is this a problem?
    * Several functions in MainGUI calls file read and write operations
    The problem ocurrs when file read/write operations with no preselected path are selected through the Client. The traditional popup window requesting the file to read or write is never seen in the Client, but only the Error 43.
    Thanks in advance

    See this

  • Authorization for the user to write/read/create a file in application serve

    Hi experts.
    I am uploading some data to a file in a folder in application server, created in AL11 tcode.
    In my program i need to restrict the unauthorized users to create/write/read a file in app server.
    I dont know how to do this.
    Kindly give me the code, please it wil be helpfull for you all.
    I dont know how to use the auth object or function module, to do this.
    Is the basis/security people need to do something.
    Kindly revert me back ASAP.
    KK

    Or use AUTHORITY_CHECK_DATASET function module before the open data set
    This function module allow you to check the user's authorization to access files (with the key words OPEN DATASET, READ DATASET, TRANSFER and DELETE DATASET). A check should be performed before opening a file.
    The authorization check is performed uwing the authorization object S_DATASET.
    Description of function parameters:
    PROGRAM: Name of the ABAP/4 program that contains the file access. If no program name is specified, the system assumes the current program.
    ACTIVITY: Access type. The possible values are:
    READ: Read file
    WRITE: Change file
    READ_WITH_FILTER: Read file with filter function
    WRITE_WITH_FILTER: Change file with filter function
    DELETE: Delete file
    FILENAME: Name of accessed file
    Example
    Notes
    The values to be passed as the ACTIVITY are defined as constants in the TYPE-POOL SABC.

  • Read key (variant) - OpenG

    Can anyone help with this? I've already posted it to the OpenG forums and Jim Kring thinks it's probably a LV bug. Can anyone confirm?
    The problem occurs when I set the data type to VISA session - LabVIEW crashes just before the read key (variant) vi runs.
    I'm using LV 7.1, and I've attached an example to show what I mean.
    Any ideas what's going
    on? And if someone could try it in a later version of LabVIEW that would be really interesting too.
    Thanks & regards,
    Jon
    Attachments:
    Variant config test.llb ‏1507 KB
    Options test.txt ‏1 KB

    OK,I feel a bit on an idiot because I got the filename wrong in the VI.
    Anyway, I tried it in 8.5 (I only have 7.1 at home) and I can see exactly where the problem is. In 8.5 it gives an error rather than a  complete crash. 
    I've attached a much simplified version.  I get Error 116:
    "Error 116 occurred at Flattened String To Variant in Variant config test2.vi
    Possible reason(s):
    LabVIEW:  Unflatten or byte stream read operation failed due to corrupt, unexpected, or truncated data.
    Any idea what's going on? 
    Jon.
    Attachments:
    Variant config test2.vi ‏17 KB
    Options test.txt ‏1 KB

Maybe you are looking for

  • Mac Pro Dual Monitors in Boot Camp Windows 8.1 Pro

    I just set up my 2013 Mac Pro with Bootcamp using Windows 8.1 Pro x64 and so far everything works great (albeit the initial setup was a struggle) except that Windows won't use my 2nd monitor.  In device manager I see both displays but one has the exc

  • 1.1 Upgrade question

    I have a large deployment with 2 filr appliances 1 search and one mysql. My question is can the vastorage for the filr appliance still be on a nfs mount? I already have vastorage for the mysql appliance on a separate disk. reading through the upgrade

  • FBRA / FB08 - vobelnr,fm_document_close. Error

    HI, I have implemented FM, Scenario is - PO- MIGO- MIRO & F-53 for payment, when i am making payment through F-53, i have cosidered a discount from the Vendor for round up purpose . at that time systeme is giving the warning message payments are not

  • Set up of IDS

    Hi, I have a good background of IDS and Documaker Development. I wanted to set up IDS for retrieval and Wip Processing in AIX, can somebody guide me with the proper document or the step by step guide for IDS setup

  • Crystal Reports for windows 7

    Hi, I work with vb.net 2008 in windows 7 and found that the crystal reports 9 that I used in vb6 is incompatible. I need help to make a decision about which version of the program to buy that is compatible with  vb.net 2008 in windows 7. thanks Dov