<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span>Try this:</span></div><div><span>In the interface part of the form unit insert this prototype into the Private declarations:</span></div><div><span></span> </div><div><span>private<br>    { Private declarations } </span></div><div><span>    Procedure OnCalcFields(DataSet: TDataSet);  // insert this</span></div><div><span></span> </div><div style="color: rgb(0, 0, 0); font-family: times new roman, new york, times, serif; font-size: 16px; font-style: normal; background-color: transparent;"><span>Early in the implementation part insert the event procedure:</span></div><div style="color: rgb(0, 0, 0); font-family: times new roman, new york, times, serif; font-size: 16px; font-style: normal; background-color: transparent;"><span></span> </div><div style="color: rgb(0,
 0, 0); font-family: times new roman, new york, times, serif; font-size: 16px; font-style: normal; background-color: transparent;"><span>Procedure TForm1.OnCalcFields(DataSet: TDataSet);  </span></div><div><span>begin</span><span></div><div>     SQLQuery1.FieldByName('calc').AsBoolean := true;</div><div> end;</div><div> </div><div>Then after creating your "f" field:</div><div>   f.DataSet   := SQLQuery1.FieldDefs.Dataset; </div><div>   SQLQuery1.OnCalcFields:=OnCalcFields;  // insert this line</span></div><div>Dealing with events without using the Object Inspector can be tricky!</div><div> </div><div>A. G.</div><blockquote style="padding-left: 5px; margin-top: 5px; margin-left: 5px; border-left-color: rgb(16, 16, 255); border-left-width: 2px; border-left-style: solid;">  <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div style="font-family: times new
 roman, new york, times, serif; font-size: 12pt;"> <div dir="ltr"> <font size="2" face="Arial"> <div style="margin: 5px 0px; padding: 0px; border: 1px solid rgb(204, 204, 204); height: 0px; line-height: 0; font-size: 0px;" class="hr" contentEditable="false" readonly="true"></div>  <b><span style="font-weight: bold;">From:</span></b> Krzysztof <dibo20@wp.pl><br> <b><span style="font-weight: bold;">To:</span></b> Lazarus mailing list <lazarus@lists.lazarus.freepascal.org> <br> <b><span style="font-weight: bold;">Sent:</span></b> Sunday, December 30, 2012 6:26 AM<br> <b><span style="font-weight: bold;">Subject:</span></b> [Lazarus] Can't create calculated field<br> </font> </div> <br>
<meta content="off" http-equiv="x-dns-prefetch-control"><div id="yiv741380732"><div dir="ltr"><div>Hi,</div><div><br></div><div>I have this code:</div><div><br></div><div><div>  f := TField.Create(FDataList);</div><div>  f.FieldName := 'calc';</div><div>  f.FieldKind := fkCalculated;</div><div>
  f.SetFieldType(ftBoolean);</div><div>  f.DataSet   := SQLQuery1.FieldDefs.Dataset; </div><div><br></div><div><br></div><div>procedure TForm1.OnCalc(DataSet: TDataSet);</div><div>begin</div><div>  SQLQuery1.FieldByName('calc').AsBoolean := true;</div>
<div>end; </div></div><div><br></div><div><div>But I get error "Invalid type conversion to Boolean in field calc"</div><div><br></div><div>Regards</div></div></div>
</div><meta content="on" http-equiv="x-dns-prefetch-control"><br>--<br>_______________________________________________<br>Lazarus mailing list<br><a href="mailto:Lazarus@lists.lazarus.freepascal.org" ymailto="mailto:Lazarus@lists.lazarus.freepascal.org">Lazarus@lists.lazarus.freepascal.org</a><br><a href="http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus" target="_blank">http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus</a><br><br><br> </div> </div> </blockquote>   </div></body></html>