1

我在 Crystal Reports 应用程序中遇到问题,我在 DatabaseTable 对象的 Fields 属性中没有获得任何字段。Fields.Count 为每个表返回零。这仅发生在我们用户的一台计算机上。它适用于办公室中的所有开发人员。我们看不到任何不同的东西。我也想知道我是否在做一些根本错误的事情。文档说对于 Fields 属性“报表访问的每个数据库字段的集合中都存在一个对象”,但我们看到每个表的数据库中存在的每个字段都有一个对象,而不仅仅是由报告(顺便说一句,这确实是我们想要的)。我们正在使用 CR 运行时版本 11.5。任何想法,将不胜感激。这是我们正在使用的代码(Delphi):

    procedure TfrmPCMSCrystalReportViewer.BuildColumnList;
    { Populate slColumns with the list of column. 
      For each table in the report, add every column. }
    var
      I, J: Integer;
      Tbl: DatabaseTable;
    begin
      slColumns.Clear;
      with crReport1.Database do begin
        for I := 1 to Tables.Count do begin
          Tbl := Tables[I];
          //process each column in table
          for J := 1 to Tbl.Fields.Count do   
            //add column to list
            slColumns.Add(Tbl.Fields[J].DatabaseFieldName);  
        end; //for
      end; //with
    end;
4

0 回答 0