<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to "write table" Trigger Issue</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/6d010ec251/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Engineering/thread/6d010ec251/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Engineering/thread/6d010ec251/</id><updated>2020-02-27T13:55:32.281000Z</updated><subtitle>Recent posts to "write table" Trigger Issue</subtitle><entry><title>"write table" Trigger Issue</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/6d010ec251/?limit=100#4157" rel="alternate"/><published>2020-02-27T13:55:32.281000Z</published><updated>2020-02-27T13:55:32.281000Z</updated><author><name>aliazzz</name><uri>https://forge.codesys.com/u/aliazzz/</uri></author><id>https://forge.codesys.comf86a354cafeda6900302011d922241413f1a7390</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I'd go with a crc approach as this is way more flexible with regards of your array/tablesize.&lt;br/&gt;
If the current crc (of your table) differs from the newly calculated crc then you trigger the writing of the table.&lt;br/&gt;
The example @Viacheslav Mezentsev demonstrates this mechanic.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>"write table" Trigger Issue</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/6d010ec251/?limit=25#c0ad" rel="alternate"/><published>2020-02-27T13:55:31.522000Z</published><updated>2020-02-27T13:55:31.522000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.com4948a6339e3bacaa191cf0ebaf5ada8112a5a2f8</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; Viacheslav Mezentsev&lt;/p&gt;
&lt;p&gt;Struct + pointer + mem utils + crc.&lt;/p&gt;
&lt;p&gt;&lt;img alt="IMG: 2018" rel="nofollow" src="https://forum.codesys.com//download/file.php?id=3986"/&gt;&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>"write table" Trigger Issue</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/6d010ec251/?limit=25#2f9e" rel="alternate"/><published>2020-02-27T13:55:31.163000Z</published><updated>2020-02-27T13:55:31.163000Z</updated><author><name>singleton</name><uri>https://forge.codesys.com/u/singleton/</uri></author><id>https://forge.codesys.com632c30493125f1bf15bfc1a410e7f9777675ab46</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi,&lt;br/&gt;
one possibility would be to use a FOR loop and Arrays. Something like this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;VAR&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="n"&gt;mParameter&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;ARRAY&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;..&lt;/span&gt;&lt;span class="n"&gt;ArrayLength&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="k"&gt;OF&lt;/span&gt; &lt;span class="nb"&gt;INT&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="n"&gt;pParameter&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;ARRAY&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;..&lt;/span&gt;&lt;span class="n"&gt;ArrayLength&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="k"&gt;OF&lt;/span&gt; &lt;span class="nb"&gt;INT&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="n"&gt;counter&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;INT&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="n"&gt;writetable&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;BOOL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="n"&gt;END_VAR&lt;/span&gt;
&lt;span class="n"&gt;VAR&lt;/span&gt; &lt;span class="n"&gt;CONSTANT&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="n"&gt;ArrayLength&lt;/span&gt;&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="err"&gt; &lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;INT&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="n"&gt;END_VAR&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;FOR&lt;/span&gt; &lt;span class="nv"&gt;counter&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="nv"&gt;TO&lt;/span&gt; &lt;span class="nv"&gt;ArrayLength&lt;/span&gt; &lt;span class="k"&gt;DO&lt;/span&gt;
   &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;mParameter&lt;/span&gt;[&lt;span class="nv"&gt;counter&lt;/span&gt;] &lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt; &lt;span class="nv"&gt;pParameter&lt;/span&gt;[&lt;span class="nv"&gt;counter&lt;/span&gt;] &lt;span class="k"&gt;THEN&lt;/span&gt;
      &lt;span class="nv"&gt;writetable&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
      &lt;span class="k"&gt;EXIT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;END_IF&lt;/span&gt;
&lt;span class="nv"&gt;END_FOR&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</summary></entry><entry><title>"write table" Trigger Issue</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/6d010ec251/?limit=25#acb4" rel="alternate"/><published>2020-02-27T13:55:30.868000Z</published><updated>2020-02-27T13:55:30.868000Z</updated><author><name>ANU</name><uri>https://forge.codesys.com/u/anu/</uri></author><id>https://forge.codesys.comd742341a7a1d4e4922f392226dd9ea3f9ad60785</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;hello Aliazzz,&lt;/p&gt;
&lt;p&gt;I explain The problem here :&lt;/p&gt;
&lt;p&gt;if at least one parameter changes, send parameters table to Database&lt;/p&gt;
&lt;p&gt;IF( (&lt;br/&gt;
    mParameter1 &amp;lt;&amp;gt; pParameter1   OR&lt;br/&gt;
    mParameter2 &amp;lt;&amp;gt; pParameter2   OR&lt;br/&gt;
    mParameter3 &amp;lt;&amp;gt; pParameter3   OR&lt;br/&gt;
    mParameter4 &amp;lt;&amp;gt; pParameter4   OR&lt;br/&gt;
    mParameter5 &amp;lt;&amp;gt; pParameter5   ))&lt;br/&gt;
THEN&lt;br/&gt;
    writetable := TRUE;&lt;/p&gt;
&lt;p&gt;END_IF&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I Want To improve this logic because For 5 parameter its okk but Now i have more than 20 so its not wise to call write table everytime.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Thank You,&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>"write table" Trigger Issue</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/6d010ec251/?limit=100#69a2" rel="alternate"/><published>2020-02-27T13:55:30.586000Z</published><updated>2020-02-27T13:55:30.586000Z</updated><author><name>aliazzz</name><uri>https://forge.codesys.com/u/aliazzz/</uri></author><id>https://forge.codesys.combf0ad9d0fcddee4cffc47956d22a1ff3e258e55d</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Please explain your purpose/problem a bit more, some more information on what you are trying to achieve would be welcome &lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>"write table" Trigger Issue</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/6d010ec251/?limit=25#07d1" rel="alternate"/><published>2020-02-27T13:55:29.752000Z</published><updated>2020-02-27T13:55:29.752000Z</updated><author><name>ANU</name><uri>https://forge.codesys.com/u/anu/</uri></author><id>https://forge.codesys.com7a33557264839bdbe1124064c7ab87b5e469f898</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hello ,&lt;/p&gt;
&lt;p&gt;I Have Discovered Issue(not really but its not good too) In Old Code That, &lt;/p&gt;
&lt;p&gt;IF Any one of the Variable is Changed &lt;br/&gt;
THEN writetable :=True&lt;/p&gt;
&lt;p&gt;it means Every single time it will go and write value in table, I want to improve that in some better way.&lt;br/&gt;
If Any one Could suggest Anything it will be great.  &lt;/p&gt;
&lt;p&gt;Thank You&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>