<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/</id><updated>2021-06-07T08:47:37.654000Z</updated><subtitle>Recent posts to Codesys writing csv-file to Raspberry/ RPi directory</subtitle><entry><title>Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/?limit=25#a670" rel="alternate"/><published>2021-06-07T08:47:37.654000Z</published><updated>2021-06-07T08:47:37.654000Z</updated><author><name>galexis</name><uri>https://forge.codesys.com/u/galexis/</uri></author><id>https://forge.codesys.com8e4a20cc193a38e8a2164c548308c6cb625591a6</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;It work fine.&lt;br/&gt;
Thank you very much for your help.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/?limit=25#335b" rel="alternate"/><published>2021-06-04T20:04:57.637000Z</published><updated>2021-06-04T20:04:57.637000Z</updated><author><name>wollvieh</name><uri>https://forge.codesys.com/u/wollvieh/</uri></author><id>https://forge.codesys.com2011e8dfca8df8fa8622ac7e1998e111ecdba576</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;i change a little bit and tested it with winV3&lt;/p&gt;
&lt;p&gt;PROGRAM POU_RPi&lt;br/&gt;
VAR&lt;br/&gt;
    bWrite: BOOL;&lt;br/&gt;
    pEnd: POINTER TO STRING;&lt;br/&gt;
    resultdata_csv: ARRAY&lt;span&gt;[1..400000]&lt;/span&gt; OF BYTE;&lt;br/&gt;
    Hfile: DWORD;&lt;br/&gt;
    //szSeperator: STRING(1):=';';&lt;br/&gt;
    FilePathAndName: STRING:= 'c:/temp/test.csv';&lt;br/&gt;
    CRLF: STRING(2):='$R$N';&lt;br/&gt;
    LF: STRING(1):= '$N';&lt;br/&gt;
    fopencreate : FILE.Open;  &lt;br/&gt;
    fopen : FILE.Open;&lt;br/&gt;
    fwrite: file.Write;&lt;br/&gt;
    fclose: file.Close;&lt;br/&gt;
    test: INT :=1;&lt;br/&gt;
    NumAction: INT;&lt;br/&gt;
    code_erreur: INT;&lt;br/&gt;
    NumActTrig : R_TRIG;&lt;/p&gt;
&lt;p&gt;END_VAR&lt;/p&gt;
&lt;p&gt;(&lt;em&gt; ---------------------------- Ecrire les data dans le CSV-------------------------------- &lt;/em&gt;)&lt;/p&gt;
&lt;p&gt;fopencreate(&lt;br/&gt;
    xExecute:= (NumAction=100), &lt;br/&gt;
    xDone=&amp;gt; , &lt;br/&gt;
    xBusy=&amp;gt; , &lt;br/&gt;
    xError=&amp;gt; , &lt;br/&gt;
    sFileName:= FilePathAndName, &lt;br/&gt;
    eFileMode:= FILE.MODE.MWRITE, &lt;br/&gt;
    xExclusive:= , &lt;br/&gt;
    eError=&amp;gt; , &lt;br/&gt;
    hFile=&amp;gt; );&lt;/p&gt;
&lt;p&gt;fopen(&lt;br/&gt;
    xExecute:= (NumAction=1), &lt;br/&gt;
    xDone=&amp;gt; , &lt;br/&gt;
    xBusy=&amp;gt; , &lt;br/&gt;
    xError=&amp;gt; , &lt;br/&gt;
    sFileName:= FilePathAndName, &lt;br/&gt;
    eFileMode:= FILE.MODE.MAPPD, &lt;br/&gt;
    xExclusive:= , &lt;br/&gt;
    eError=&amp;gt; , &lt;br/&gt;
    hFile=&amp;gt; );&lt;/p&gt;
&lt;p&gt;fwrite(&lt;br/&gt;
    xExecute:= (NumAction=3), &lt;br/&gt;
    xAbort:= , &lt;br/&gt;
    udiTimeOut:= 10000, &lt;br/&gt;
    xDone=&amp;gt; , &lt;br/&gt;
    xBusy=&amp;gt; , &lt;br/&gt;
    xError=&amp;gt; , &lt;br/&gt;
    xAborted=&amp;gt; , &lt;br/&gt;
    hFile:= Hfile, &lt;br/&gt;
    pBuffer:=  ADR(resultdata_csv), &lt;br/&gt;
    szSize:=   pEnd - ADR(resultdata_csv), &lt;br/&gt;
    eError=&amp;gt; ); &lt;/p&gt;
&lt;p&gt;fclose(&lt;br/&gt;
    xExecute:= (NumAction=5), &lt;br/&gt;
    xDone=&amp;gt; , &lt;br/&gt;
    xBusy=&amp;gt; , &lt;br/&gt;
    xError=&amp;gt; , &lt;br/&gt;
    hFile:= Hfile, &lt;br/&gt;
    eError=&amp;gt; );&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;NumActTrig&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;CLK&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;bWrite&lt;/span&gt; &lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;Q&lt;/span&gt;&lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="o"&gt;);&lt;/span&gt;




&lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;ADR&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;resultdata_csv&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
&lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'Test n°'&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
&lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;INT_TO_STRING&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;),&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;   
&lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;Lf&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
&lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;CRLF&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt; 
&lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;NumActTrig&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Q&lt;/span&gt;
&lt;span class="nt"&gt;THEN&lt;/span&gt;
 &lt;span class="nt"&gt;NumAction&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_IF&lt;/span&gt;


&lt;span class="nt"&gt;CASE&lt;/span&gt; &lt;span class="nt"&gt;NumAction&lt;/span&gt; &lt;span class="nt"&gt;OF&lt;/span&gt;
&lt;span class="nt"&gt;0&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;bWrite&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="o"&gt;(*&lt;/span&gt;&lt;span class="nt"&gt;Ouvrir&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt;&lt;span class="o"&gt;*)&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;en&lt;/span&gt; &lt;span class="nt"&gt;mode&lt;/span&gt; &lt;span class="nt"&gt;ajout&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;Le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt; &lt;span class="nt"&gt;existe&lt;/span&gt;
    &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;2&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;Erreur&lt;/span&gt;
    &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;AND&lt;/span&gt; &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eError&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span class="nt"&gt;5104&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;4&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;999&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;

    &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eError&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nt"&gt;5104&lt;/span&gt;
    &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;100&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;


&lt;span class="nt"&gt;2&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;


&lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;Ecrire&lt;/span&gt; &lt;span class="nt"&gt;dans&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt;&lt;span class="o"&gt;*)&lt;/span&gt;
    &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;4&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;
    &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;6&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;999&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;

&lt;span class="nt"&gt;4&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;5&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;

&lt;span class="nt"&gt;5&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;Fermer&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt; &lt;span class="o"&gt;*)&lt;/span&gt;
    &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt; &lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;10&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;bWrite&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;999&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;
    &lt;span class="nt"&gt;IF&lt;/span&gt;  &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
      &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;0&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
      &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;0&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
      &lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_IF&lt;/span&gt;


&lt;span class="nt"&gt;100&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;create&lt;/span&gt; &lt;span class="nt"&gt;file&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;en&lt;/span&gt; &lt;span class="nt"&gt;mode&lt;/span&gt; &lt;span class="nt"&gt;ajout&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;Le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt; &lt;span class="nt"&gt;existe&lt;/span&gt;
    &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopencreate&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;fopencreate&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;101&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;Erreur&lt;/span&gt;
    &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopencreate&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;AND&lt;/span&gt; &lt;span class="nt"&gt;fopencreate&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eError&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span class="nt"&gt;5104&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;4&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;999&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;

    &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopencreate&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eError&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nt"&gt;5104&lt;/span&gt;
    &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;100&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;


&lt;span class="nt"&gt;101&lt;/span&gt; &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;



&lt;span class="nt"&gt;END_CASE&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</summary></entry><entry><title>Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/?limit=25#5b2c" rel="alternate"/><published>2021-06-04T06:12:28.260000Z</published><updated>2021-06-04T06:12:28.260000Z</updated><author><name>galexis</name><uri>https://forge.codesys.com/u/galexis/</uri></author><id>https://forge.codesys.comd4873cc9c800b3a3fb29011b9e27379a0dec390c</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I make some changes but don't work more:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;PROGRAM&lt;/span&gt; &lt;span class="nt"&gt;POU_RPi&lt;/span&gt;
&lt;span class="nt"&gt;VAR&lt;/span&gt;
    &lt;span class="nt"&gt;bWrite&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;BOOL&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;POINTER&lt;/span&gt; &lt;span class="nt"&gt;TO&lt;/span&gt; &lt;span class="nt"&gt;STRING&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;resultdata_csv&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;ARRAY&lt;/span&gt;&lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="nx"&gt;..400000&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt; &lt;span class="nt"&gt;OF&lt;/span&gt; &lt;span class="nt"&gt;BYTE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;DWORD&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;szSeperator&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;STRING&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;):=&lt;/span&gt;&lt;span class="s1"&gt;';'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;FilePathAndName&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;STRING&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="s1"&gt;'/home/pi/Downloads/test.csv'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;CRLF&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;STRING&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;2&lt;/span&gt;&lt;span class="o"&gt;):=&lt;/span&gt;&lt;span class="s1"&gt;'$R$N'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;LF&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;STRING&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;):=&lt;/span&gt; &lt;span class="s1"&gt;'$N'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;FILE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Open&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;FILE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Open&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;file&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Write&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;file&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Close&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;INT&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;INT&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;INT&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_VAR&lt;/span&gt;

&lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;----------------------------&lt;/span&gt; &lt;span class="nt"&gt;Ecrire&lt;/span&gt; &lt;span class="nt"&gt;les&lt;/span&gt; &lt;span class="nt"&gt;data&lt;/span&gt; &lt;span class="nt"&gt;dans&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;CSV--------------------------------&lt;/span&gt; &lt;span class="o"&gt;*)&lt;/span&gt;

&lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;bWrite&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;

    &lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;ADR&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;resultdata_csv&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'Test n°'&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;INT_TO_STRING&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;),&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;   
    &lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;Lf&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;CRLF&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt; 

    &lt;span class="nt"&gt;CASE&lt;/span&gt; &lt;span class="nt"&gt;NumAction&lt;/span&gt; &lt;span class="nt"&gt;OF&lt;/span&gt;
    &lt;span class="nt"&gt;0&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="o"&gt;;&lt;/span&gt;

    &lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="o"&gt;(*&lt;/span&gt;&lt;span class="nt"&gt;Ouvrir&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt;&lt;span class="o"&gt;*)&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;en&lt;/span&gt; &lt;span class="nt"&gt;mode&lt;/span&gt; &lt;span class="nt"&gt;ajout&lt;/span&gt;
        &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;sFileName&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FilePathAndName&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eFileMode&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FILE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;MODE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;MAPPD&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xExclusive&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt; &lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;Le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt; &lt;span class="nt"&gt;existe&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;2&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;Erreur&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;AND&lt;/span&gt; &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eError&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span class="nt"&gt;5104&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;4&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;Le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt; &lt;span class="nt"&gt;n&lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="nt"&gt;existe&lt;/span&gt; &lt;span class="nt"&gt;pas&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;créer&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;AND&lt;/span&gt; &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eError&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nt"&gt;5104&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;sFileName&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FilePathAndName&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eFileMode&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FILE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;MODE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;MWRITE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xExclusive&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt; &lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
            &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
                &lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;END_IF&lt;/span&gt;
            &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
                &lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;END_IF&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;2&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;

    &lt;span class="nt"&gt;2&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;Ecrire&lt;/span&gt; &lt;span class="nt"&gt;dans&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt;&lt;span class="o"&gt;*)&lt;/span&gt;
        &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;pBuffer&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;ADR&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;resultdata_csv&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;szSize&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="nt"&gt;-&lt;/span&gt; &lt;span class="nt"&gt;ADR&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;resultdata_csv&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;udiTimeOut&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;100000&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;       &lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;100ms&lt;/span&gt; &lt;span class="nt"&gt;Timeout&lt;/span&gt; &lt;span class="o"&gt;*)&lt;/span&gt;
        &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt; &lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;6&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;

    &lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;Fermer&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt; &lt;span class="o"&gt;*)&lt;/span&gt;
        &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt; &lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;10&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;bWrite&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;

    &lt;span class="nt"&gt;END_CASE&lt;/span&gt;

    &lt;span class="nt"&gt;IF&lt;/span&gt;  &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;0&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;bWrite&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;

&lt;span class="nt"&gt;ELSE&lt;/span&gt;
    &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_IF&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</summary></entry><entry><title>Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/?limit=250#6da8" rel="alternate"/><published>2021-06-03T13:46:55.815000Z</published><updated>2021-06-03T13:46:55.815000Z</updated><author><name>dkugler</name><uri>https://forge.codesys.com/u/dkugler/</uri></author><id>https://forge.codesys.com474696bef176207c4fff044fccbd6af1b7689781</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;the handle is invalid, because your program write nothing to it in this case 😉&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/?limit=25#81f0" rel="alternate"/><published>2021-06-03T10:44:52.586000Z</published><updated>2021-06-03T10:44:52.586000Z</updated><author><name>galexis</name><uri>https://forge.codesys.com/u/galexis/</uri></author><id>https://forge.codesys.com0c7736f3b164a714fbdd668a2abf28fa9f4dd8e6</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I do:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;PROGRAM&lt;/span&gt; &lt;span class="nt"&gt;POU_RPi&lt;/span&gt;
&lt;span class="nt"&gt;VAR&lt;/span&gt;
    &lt;span class="nt"&gt;bWrite&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;BOOL&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;POINTER&lt;/span&gt; &lt;span class="nt"&gt;TO&lt;/span&gt; &lt;span class="nt"&gt;STRING&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;resultdata_csv&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;ARRAY&lt;/span&gt;&lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="nx"&gt;..400000&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt; &lt;span class="nt"&gt;OF&lt;/span&gt; &lt;span class="nt"&gt;BYTE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;DWORD&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;szSeperator&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;STRING&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;):=&lt;/span&gt;&lt;span class="s1"&gt;';'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;FilePathAndName&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;STRING&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="s1"&gt;'/home/pi/Downloads/test.csv'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;CRLF&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;STRING&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;2&lt;/span&gt;&lt;span class="o"&gt;):=&lt;/span&gt;&lt;span class="s1"&gt;'$R$N'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;LF&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;STRING&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;):=&lt;/span&gt; &lt;span class="s1"&gt;'$N'&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;FILE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Open&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;FILE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Open&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;file&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Write&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;file&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;Close&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;INT&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;INT&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;INT&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_VAR&lt;/span&gt;

&lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;----------------------------&lt;/span&gt; &lt;span class="nt"&gt;Ecrire&lt;/span&gt; &lt;span class="nt"&gt;les&lt;/span&gt; &lt;span class="nt"&gt;data&lt;/span&gt; &lt;span class="nt"&gt;dans&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;CSV--------------------------------&lt;/span&gt; &lt;span class="o"&gt;*)&lt;/span&gt;

&lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;bWrite&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;

    &lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;ADR&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;resultdata_csv&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'Test n°'&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;INT_TO_STRING&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;),&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;   
    &lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;Lf&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;StrCatPtr&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;CRLF&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt; 

    &lt;span class="nt"&gt;CASE&lt;/span&gt; &lt;span class="nt"&gt;NumAction&lt;/span&gt; &lt;span class="nt"&gt;OF&lt;/span&gt;
    &lt;span class="nt"&gt;0&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="o"&gt;;&lt;/span&gt;

    &lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="o"&gt;(*&lt;/span&gt;&lt;span class="nt"&gt;Ouvrir&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt;&lt;span class="o"&gt;*)&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;en&lt;/span&gt; &lt;span class="nt"&gt;mode&lt;/span&gt; &lt;span class="nt"&gt;ajout&lt;/span&gt;
        &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;sFileName&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FilePathAndName&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eFileMode&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FILE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;MODE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;MAPPD&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xExclusive&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt; &lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;Le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt; &lt;span class="nt"&gt;existe&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;2&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;Erreur&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;AND&lt;/span&gt; &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eError&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span class="nt"&gt;5104&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;4&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;
        &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;Le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt; &lt;span class="nt"&gt;n&lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="nt"&gt;existe&lt;/span&gt; &lt;span class="nt"&gt;pas&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;créer&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;AND&lt;/span&gt; &lt;span class="nt"&gt;fopenadd&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eError&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nt"&gt;5104&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;sFileName&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FilePathAndName&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;eFileMode&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FILE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;MODE&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;MWRITE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xExclusive&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt; &lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
            &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
                &lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;END_IF&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;2&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;

    &lt;span class="nt"&gt;2&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;Ecrire&lt;/span&gt; &lt;span class="nt"&gt;dans&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt;&lt;span class="o"&gt;*)&lt;/span&gt;
        &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;pBuffer&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;ADR&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;resultdata_csv&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;szSize&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;pEnd&lt;/span&gt; &lt;span class="nt"&gt;-&lt;/span&gt; &lt;span class="nt"&gt;ADR&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;resultdata_csv&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;udiTimeOut&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;100000&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;       &lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;100ms&lt;/span&gt; &lt;span class="nt"&gt;Timeout&lt;/span&gt; &lt;span class="o"&gt;*)&lt;/span&gt;
        &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt; &lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;6&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;

    &lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt;  &lt;span class="o"&gt;(*&lt;/span&gt; &lt;span class="nt"&gt;Fermer&lt;/span&gt; &lt;span class="nt"&gt;le&lt;/span&gt; &lt;span class="nt"&gt;fichier&lt;/span&gt; &lt;span class="o"&gt;*)&lt;/span&gt;
        &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;hFile&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;Hfile&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt; &lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;3&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;
        &lt;span class="nt"&gt;IF&lt;/span&gt; &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xError&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
            &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;10&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;bWrite&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;END_IF&lt;/span&gt;

    &lt;span class="nt"&gt;END_CASE&lt;/span&gt;

    &lt;span class="nt"&gt;IF&lt;/span&gt;  &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nc"&gt;xDone&lt;/span&gt; &lt;span class="nt"&gt;THEN&lt;/span&gt;
        &lt;span class="nt"&gt;code_erreur&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;0&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;bWrite&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt; &lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
        &lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;test&lt;/span&gt;&lt;span class="o"&gt;+&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="nt"&gt;END_IF&lt;/span&gt;

&lt;span class="nt"&gt;ELSE&lt;/span&gt;
    &lt;span class="nt"&gt;fopen&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;fclose&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;fwrite&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;xExecute&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
    &lt;span class="nt"&gt;NumAction&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;1&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_IF&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;I test to open file on efilemode =3, if return error code= 5104 (file not exist), I open file in efilemode=0.&lt;br/&gt;
Open create well file when not exist, but when I want to write on, write return error code = HANDLE INVALID.&lt;br/&gt;
What is the reason ?&lt;br/&gt;
Thanks a lot.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/?limit=25#2765" rel="alternate"/><published>2021-06-03T06:06:53.464000Z</published><updated>2021-06-03T06:06:53.464000Z</updated><author><name>galexis</name><uri>https://forge.codesys.com/u/galexis/</uri></author><id>https://forge.codesys.com5131564660efbef3da38937ac92badc805dd2107</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi,&lt;br/&gt;
yes, if file already exist : efilemode had to be 3 and if it doesn't exist efilemode had to be 0.&lt;br/&gt;
I see fopen.xExecute...&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/?limit=25#5bbf" rel="alternate"/><published>2021-06-03T05:44:21.814000Z</published><updated>2021-06-03T05:44:21.814000Z</updated><author><name>Ingo</name><uri>https://forge.codesys.com/u/ingo/</uri></author><id>https://forge.codesys.comd0471855c947674deb0242090270d0ddae18348f</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Didn't try it, but i expect two problems from the code:&lt;/p&gt;
&lt;p&gt;1st:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;fopen(&lt;/span&gt;
&lt;span class="err"&gt;   xExecute:= TRUE, &lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;xExecute is not toggled, so it is only executed once. maybe this would help:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;fopen(&lt;/span&gt;
&lt;span class="err"&gt;   xExecute:= bWrite, &lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;2nd:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="c"&gt;eFileMode:= 0,&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;if you want to append a line, you need to set the filemode to "append".&lt;/p&gt;
&lt;p&gt;But this was just the first impression, on first sight.&lt;/p&gt;
&lt;p&gt;Cheers,&lt;br/&gt;
Ingo &lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/?limit=25#9dc2" rel="alternate"/><published>2021-06-01T15:45:14.842000Z</published><updated>2021-06-01T15:45:14.842000Z</updated><author><name>galexis</name><uri>https://forge.codesys.com/u/galexis/</uri></author><id>https://forge.codesys.com24b2820c8bbb51d17f2c1627ed4895089525a6a8</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I try to use your code, but it work only one time. I can't to write a other line on csv: csv doesn't change. I need to clean code and reload code on Rpi: it works, but first line of csv is replace. What is the problem ?&lt;br/&gt;
Thank for your help.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/?limit=25#0322" rel="alternate"/><published>2020-02-27T17:25:18.516000Z</published><updated>2020-02-27T17:25:18.516000Z</updated><author><name>SpeedyG</name><uri>https://forge.codesys.com/u/speedyg/</uri></author><id>https://forge.codesys.comc11eca5f3a60bbfc680106238e462ee475c8d8eb</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Ouch, that hurts. I guess it was too obvious. -.- Thank you &lt;a class="user-mention" href="/u/johnlee/"&gt;@johnlee&lt;/a&gt;.   &lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Codesys writing csv-file to Raspberry/ RPi directory</title><link href="https://forge.codesys.com/forge/talk/Runtime/thread/61a73afe62/?limit=25#f3ab" rel="alternate"/><published>2020-02-27T17:25:17.523000Z</published><updated>2020-02-27T17:25:17.523000Z</updated><author><name>johnlee</name><uri>https://forge.codesys.com/u/johnlee/</uri></author><id>https://forge.codesys.com713ea8c43a6d341732af5aaaf4bc27d78e24ff26</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;cd \home\pi\Downloads\test.csv -&amp;gt; /home/pi/Downloads/test.csv&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>