2016-10-04 60 views
0

我以非常有限的工具工作,因为我对我们的企业环境,努力创造我们的主数据库自动生成报告。报表设计器是全球设置为C#的DevExpress。使用在单DevExpress的报告多数据表的报告

我在生成报表使用导致不同的数据表的两个查询。这些数据表的内容在本质上是以下

+----------+------+-----+  +----------+----------+---------+-----+ 
| PersonId | Name | ... |  | PersonId | JobTitle | Company | ... | 
+----------+------+-----+  +----------+----------+---------+-----+ 
| 1  | John | ... |  | 1  | Clerk | ACME |  | 
+----------+------+-----+  | 1  | Janitor |Umbrella |  | 
           +----------+----------+---------+-----+ 

所以我有了个人的个人信息数据表,并列出其先前的立场另一个表。 我对构建一个自动化的CV构建器感兴趣,在给定数量的人员的报告页面中提供当前和最新的三个职位。我遇到的问题是我无法通过DevExpress UI中Table2中的PersonId过滤表2中的记录。我可以为人们创建一页简历,它精美地列出了表1中的所有个人详细信息,然后输入表2中的所有记录,并为所有个人简历页面重复此操作。作为一个例子,我有三个人,都有三个职位,然后报告会给我九个以上的职位给所有的候选人。

我试着表2和脚本中创建一个计算字段它的PERSONID当前与PERSONID的详细报告匹配的母版页。但我无法从内部访问其它表,将所计算放慢参数被称为

private void Previouspositions_GetValue(object sender, DevExpress.XtraReports.UI.GetValueEventArgs e) { 
    e.Value = Convert.ToString((e.Row as DataRowView).Row["Table1.PersonId"]); 
    return; 
} 

计算字段是能够从“PERSONID”中获得的价值,但它会自动从表2得到它。添加Table1。 prefic给出错误信息。

欢迎所有帮助!提前

回答