Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 表中的计算字段_Database_Delphi_Delphi 7_Calculated Field - Fatal编程技术网

Database 表中的计算字段

Database 表中的计算字段,database,delphi,delphi-7,calculated-field,Database,Delphi,Delphi 7,Calculated Field,我试图在数据库表中为用户输入的值(例如价格和数量)创建一个计算字段(成本),如下例所示: Cost = Price * Quantity 我搜索了,但找不到明确的方法。从字段编辑器创建一个计算字段 双击TTable或TQuery以打开字段编辑器 右键单击字段编辑器,然后从弹出菜单中选择“新建字段”(或按Ctrl+N) 在“新建字段”对话框中,为字段指定一个名称(例如“成本”)和类型(可能是货币),并选中单选按钮进行计算,然后单击“确定” 选择TTable或TQuery后,在对象检查器中选择E

我试图在数据库表中为用户输入的值(例如价格和数量)创建一个计算字段(
成本
),如下例所示:

Cost = Price * Quantity

我搜索了,但找不到明确的方法。从字段编辑器创建一个计算字段

  • 双击TTable或TQuery以打开字段编辑器
  • 右键单击字段编辑器,然后从弹出菜单中选择“新建字段”(或按Ctrl+N)
  • 在“新建字段”对话框中,为字段指定一个名称(例如“成本”)和类型(可能是
    货币
    ),并选中单选按钮进行计算,然后单击“确定”
  • 选择TTable或TQuery后,在对象检查器中选择Events选项卡,找到OnCalcFields事件,然后双击它,在代码编辑器中创建新的空事件处理程序
  • 添加类似于以下代码的内容,根据需要调整字段名称:

    procedure TCustForm.yourQueryCalcField(DataSet : TDataset);
    begin
      DataSet.FieldByName('Cost').AsCurrency :=  
            DataSet.FieldByName('Price').AsCurrency* 
            DataSet.FieldByName('Quantity').AsInteger;
    end;
    

数据库桌面与在Delphi中创建计算字段有什么关系?使用IDE中表单设计器中的字段编辑器创建计算字段。(不过,我可能错了;数据库桌面与BDE有关,BDE已经死了十年,在它最终死之前很久我就停止使用了。)这是一个遗留软件还是一个新软件?如果是新软件,您不应该使用BDE-它的存在只是为了向后兼容旧软件。@KenWhite我使用数据库桌面创建数据库表(对不起,我是delphi的新用户)。计算字段在delphi中使用,而不是在数据库桌面中使用(如上所述)。请参见下面的答案。如果在D7发布时BDE是活动的,而asker正在使用D7,那么使用BDE是否合理?我被困在(TCustForm.yourQueryCalfield)中,我应该在那里放置什么?编辑:我使用了TTable而不是Tquery@FerhatBoutaleb选择您的表,在“对象检查器”窗口上单击“事件”选项卡,然后双击“Calcfields事件区域”,您将看到IDE生成的代码。