<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Wert in berechnetes Feld eines TTables schreiben]]></title><description><![CDATA[<p>Hallo,<br />
habe in meinem Programm ein TTable, in dem u.a. die Felder Kurs (aktien) und Anteile drin stehen. Nun habe ich, um es nachher im DBGrid darzustellen, ein neues Feld &quot;Betrag&quot; der TTable hinzugefügt.<br />
Wie bekomme ich dieses Feld Betrag nun gefüllt? Es soll jeweils der Wert Kurs*Anteile des aktuellen Datensatzes dort drin stehen.<br />
Schöne grüße<br />
Tobi</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/209834/wert-in-berechnetes-feld-eines-ttables-schreiben</link><generator>RSS for Node</generator><lastBuildDate>Thu, 20 Aug 2026 15:31:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/209834.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 03 Apr 2008 19:06:10 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wert in berechnetes Feld eines TTables schreiben on Thu, 03 Apr 2008 19:06:10 GMT]]></title><description><![CDATA[<p>Hallo,<br />
habe in meinem Programm ein TTable, in dem u.a. die Felder Kurs (aktien) und Anteile drin stehen. Nun habe ich, um es nachher im DBGrid darzustellen, ein neues Feld &quot;Betrag&quot; der TTable hinzugefügt.<br />
Wie bekomme ich dieses Feld Betrag nun gefüllt? Es soll jeweils der Wert Kurs*Anteile des aktuellen Datensatzes dort drin stehen.<br />
Schöne grüße<br />
Tobi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486026</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486026</guid><dc:creator><![CDATA[Blace]]></dc:creator><pubDate>Thu, 03 Apr 2008 19:06:10 GMT</pubDate></item><item><title><![CDATA[Reply to Wert in berechnetes Feld eines TTables schreiben on Thu, 03 Apr 2008 19:51:06 GMT]]></title><description><![CDATA[<p>falls es umbedingt ein TTable sein muß, kannst du vielleicht das Ereignis <em>OnAfterOpen</em> verwenden, z.B. (ungetestet)</p>
<pre><code class="language-cpp">void __fastcall TChildAURe::Table1AfterOpen(TDataSet *DataSet)
{
double Kurs = DataSet-&gt;FieldByName(&quot;Kurs&quot;)-&gt;AsFloat;
double Anteile = DataSet-&gt;FieldByName(&quot;Anteile&quot;)-&gt;AsFloat;
DataSet-&gt;FieldByName(&quot;Betrag&quot;)-&gt;AsFloat = Kurs*Anteile;
}
</code></pre>
<p>allerdings ist es besser du verwendest ein Query und eine einfache SQL-Abfrage:</p>
<pre><code class="language-cpp">Query1-&gt;SQL-&gt;Clear();
Query1-&gt;SQL-&gt;Add(&quot;select *, (kurs*anteile) as betrag from tabelle&quot;);
Query1-&gt;Open();
</code></pre>
<p>dann brauchst du nichtmal eine neue Spalte im TTable zu erzeugen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486054</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486054</guid><dc:creator><![CDATA[Linnea]]></dc:creator><pubDate>Thu, 03 Apr 2008 19:51:06 GMT</pubDate></item><item><title><![CDATA[Reply to Wert in berechnetes Feld eines TTables schreiben on Thu, 03 Apr 2008 20:17:31 GMT]]></title><description><![CDATA[<p>danke schonmal für die Antwort.<br />
Das Problem ist momentang, dass jedesmal durch folgende Zeile die Errormeldung 'Table2: Datenmenge weder im Editier- noch im Einfügemodus' erscheint:</p>
<pre><code>FieldByName(&quot;Betrag&quot;)-&gt;AsFloat = Kurs*Anteile;
</code></pre>
<p>mir ist schon klar, dass die Daten nicht readonly sein dürfen aber readonly ist beim TTable2 auch auf false gesetzt.<br />
Wo könnte ich sonst noch readonly auf false setzen müssen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486065</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486065</guid><dc:creator><![CDATA[Blace]]></dc:creator><pubDate>Thu, 03 Apr 2008 20:17:31 GMT</pubDate></item><item><title><![CDATA[Reply to Wert in berechnetes Feld eines TTables schreiben on Fri, 04 Apr 2008 05:47:53 GMT]]></title><description><![CDATA[<p>das Problem ist, das mit dieser Zeile der Wert in die Datenbank geschrieben werden würde und da du kein Edit() verwendest kann er natürlich den Wert nicht zuweisen, d.h du müßtest eher so etwas verwenden:</p>
<pre><code class="language-cpp">void __fastcall TChildAURe::Table1AfterOpen(TDataSet *DataSet)
{
double Kurs = DataSet-&gt;FieldByName(&quot;Kurs&quot;)-&gt;AsFloat;
double Anteile = DataSet-&gt;FieldByName(&quot;Anteile&quot;)-&gt;AsFloat;
DataSet-&gt;Edit();
DataSet-&gt;FieldByName(&quot;Betrag&quot;)-&gt;AsFloat = Kurs*Anteile;
DataSet-&gt;Post();
}
</code></pre>
<p>allerdings wird jetzt der Wert in die Datenbank geschrieben...<br />
[Edit]wobei wahrscheinlich nicht alle Zeilen dabei aktualisiert werden, sondern nur die Erste[/Edit]</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486157</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486157</guid><dc:creator><![CDATA[Linnea]]></dc:creator><pubDate>Fri, 04 Apr 2008 05:47:53 GMT</pubDate></item><item><title><![CDATA[Reply to Wert in berechnetes Feld eines TTables schreiben on Fri, 04 Apr 2008 16:35:28 GMT]]></title><description><![CDATA[<p>Schau dir mal die Eigenschaft &quot;TField::Calculated&quot; und das zugehörige Ereignis &quot;TDataset::OnCalcFields&quot; an. Dann brauchst du keine zusätzliche Spalte in die Tabelle eintragen, sondern diese wird nur während der Anzeige der Daten benutzt.<br />
Du solltest dann die Felder der Tabellen (innerhalb des IDE) mit dem Feld-Editor anlegen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486616</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486616</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Fri, 04 Apr 2008 16:35:28 GMT</pubDate></item><item><title><![CDATA[Reply to Wert in berechnetes Feld eines TTables schreiben on Fri, 04 Apr 2008 19:12:05 GMT]]></title><description><![CDATA[<p>Hi,<br />
Vielen dank für eure hilfe!<br />
habs jetzt so gemacht wie Th69 beschrieben hat mit Linneas befehlen. (also in der OnCalcFields methode drin)<br />
musste nichtmal edit und post aufrufen.<br />
danke danke funzt alles wunderbar.<br />
Schöne grüße<br />
Tobi</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486694</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486694</guid><dc:creator><![CDATA[Blace]]></dc:creator><pubDate>Fri, 04 Apr 2008 19:12:05 GMT</pubDate></item></channel></rss>