科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道利用关联来过滤MOSS中的BDC数据 (4)

利用关联来过滤MOSS中的BDC数据 (4)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

BDC允许我们为特定的LOB(line-of-business)系统定义多个实体。而且,在元数据文件中,我们可以创建关联来定义实体间的层次关系。如,有两个实体的定义,customers和orders。

作者:sunmoonfire 来源:blog 2007年9月2日

关键字: MOSS 关联 SharePoint2007 SharePoint Office

  • 评论
  • 分享微博
  • 分享邮件
创建一个ListItem实体

添加下面的XML内容到SalesOrder实体下面。正如之前提到的,这里实体间的顺序很重要。这个实体必须放在SalesOrder 实体下面,因为它的特定方法包含到SalesOrder 标识的引用。
<Entity Name="LineItem">
   
<Properties>
      
<Property Name="Title" Type="System.String">Name</Property>
   
</Properties>
   
<Identifiers>
      
<Identifier Name="LineItemID" TypeName="System.Int32"/>
   
</Identifiers>
   
<Methods>
      
<Method Name="GetLineItemsForSalesOrder">
         
<Properties>
            
<Property Name="RdbCommandText" Type="System.String">
               SELECT
                  sod.SalesOrderDetailID,
                  p.Name,
                  p.ProductNumber,
                  sod.CarrierTrackingNumber,
                  sod.OrderQty,
                  sod.UnitPrice,
                  sod.LineTotal
               FROM
                  Sales.SalesOrderDetail sod
                  INNER JOIN Production.Product p
                  on sod.ProductID = p.ProductID
               WHERE
                  sod.SalesOrderID = @salesorderID
            
</Property>
            
<Property Name="RdbCommandType" Type="System.String">Text</Property>
         
</Properties>
         
<Parameters>
            
<Parameter Direction="In" Name="@salesorderID">
               
<TypeDescriptor TypeName="System.Int32" Name="salesorderID" 
                  IdentifierEntityName
="SalesOrder" 
                  IdentifierName
="SalesOrderID">
               
<!-- Note that we don't have any default values for this. -->
               
</TypeDescriptor>
            
</Parameter>
            
<Parameter Direction="Return" Name="LineItems">
               
<TypeDescriptor TypeName="System.Data.IDataReader, System.Data, 
               Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
 
                     IsCollection
="true" Name="LineItemDataReader">
                  
<TypeDescriptors>
                     
<TypeDescriptor TypeName="System.Data.IDataRecord, System.Data, 
                     Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
 
                        Name
="LineItemDataRecord">
                        
<TypeDescriptors>
                           
<TypeDescriptor TypeName="System.Int32" 
                              IdentifierName
="LineItemID" 
                              Name
="SalesOrderDetailID" />
                           
<TypeDescriptor TypeName="System.String" 
                              Name
="Name" />
                           
<TypeDescriptor TypeName="System.Int32" 
                              Name
="CarrierTrackingNumber" />
                           
<TypeDescriptor TypeName="System.Int16" 
                              Name
="OrderQty" />
                           
<TypeDescriptor TypeName="System.String" 
                              Name
="UnitPrice" />
                           
<TypeDescriptor TypeName="System.String" 
                              Name
="LineTotal" />
                        
</TypeDescriptors>
                     
</TypeDescriptor>
                  
</TypeDescriptors>
               
</TypeDescriptor>
            
</Parameter>
         
</Parameters>
         
<!-- Note that we have no finder or specific finder.  
            This is because we don't need the line item to show up 
            in anything other than a Related List Web Part. 
-->
      
</Method>
   
</Methods>
</Entity>
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章