<h1>Tech Notes</h1><h2>Swap doesn't always (...swap)</h2><p>It is OK to use FBII's well worn pseudo records in the cube (FB^3), but you need to keep in mind that some of the old limitations that were inherent in such a structure still remain. For instance, FBII stored a type (but not a size) for its string records.</p>
<pre>
DIM RECORD myRecord
DIM 26 myString$ // This won't work!
DIM myOtherVarIsAVolvo%
DIM END RECORD .myRecordSize
DIM myArray.myRecordSize(100)
SWAP myArray.myString$(1),myArray.myString$(2)
</pre>
<p>If you are going to use <code><span class="pre">SWAP</span></code>, possible solutions are:</p>
<li><span class="pre">DIM</span> all strings in <i>old</i> records without a size limit so that they are 256 bytes long.</li>
<li>Handle the <span class="pre">SWAP</span> manually by transferring data into another variable during the process.</li>
<li>Use true records instead of the old pseudo records.</li>