Compartilhar via


Etapa 2: Definir entidades, métodos e filtros

Uma linha - de - aplicativo empresa (LOB) registrado na Business Data Catalog define as entidades, os métodos que podem ser executado nas entidades e filtros para habilitar filtragem usuário final. Uma entidade é um objeto corporativo, such as ao cliente ou produto, em um aplicativo LOB. Os métodos são as operações relacionado a uma entidade e limite da Ajuda filtros instâncias de entidade retornadas do método.

Na Business Data Catalog, uma entidade pertence a um único sistema de aplicativos LOB e deve ter um nome exclusivo. Entidades contêm identificadores, métodos, filtros e ações.

Nesta etapa, você definirá um chamado entidade produtos em banco de dados o AdventureWorks2000 e definir um método chamado GetProducts para get uma lista de produtos. Você também poderá adicionar curinga e filtros de comparação para habilitar usuário final filtrando os campos identificação, Nome e ProductNumber.

Pré-requisitos

Etapa 1: conectar ao banco de dados do AdventureWorks2000

Para definir uma entidade, método e filtros

  1. Abra seu metadados AdventureWorks2000.XML arquivo XML a etapa 1.

  2. Insert the following XML to replace the <!--Insert Entity XML Here --> section in that file:

    <Entity EstimatedInstanceCount="10000" name="Product">
          <!-- EstimatedInstanceCount is an optional attribute-->
          <Properties>
            <Property name="Title" Type="System.String">Name</Property>
          </Properties>
          <Identifiers>
            <Identifier name="ProductID" Typename="System.Int32" />
          </Identifiers>
          <Methods>
            <!-- Defines a method that brings back Product data from the 
            back-end database.-->
            <Method name="GetProducts">
              <Properties>
                <Property name="RdbCommandText" Type="System.String">
                  SELECT ProductID, Name, ProductNumber, ListPrice FROM Product WHERE (ProductID &gt;= @MinProductID) AND (ProductID &lt;= @MaxProductID) AND (Name LIKE @Name) AND (ProductNumber LIKE @ProductNumber)
                </Property>
                <Property name="RdbCommandType" Type="System.Data.CommandType">Text</Property>
                <!-- For database systems, can be Text, StoredProcedure, 
                or TableDirect. -->
              </Properties>
              <FilterDescriptors>
                <!-- Define the filters supported by the back-end method 
               (or sql query) here. -->
                <FilterDescriptor Type="Comparison" name="ID" >
                  <Properties>
                    <Property name="Comparator" Type="System.String">Equals</Property>
                  </Properties>
                </FilterDescriptor>
                <FilterDescriptor Type="Wildcard" name="Name">
                  <Properties>
                    <Property name="UsedForDisambiguation" Type="System.Boolean">true</Property>
                  </Properties>
                </FilterDescriptor>
                <FilterDescriptor Type="Wildcard" name="ProductNumber" />
              </FilterDescriptors>
              <Parameters>
                <Parameter Direction="In" name="@MinProductID">
                  <TypeDescriptor Typename="System.Int32" Identifiername="ProductID" AssociatedFilter="ID" name="MinProductID">
                    <DefaultValues>
                      <DefaultValue MethodInstancename="ProductFinderInstance" Type="System.Int32">0</DefaultValue>
                    </DefaultValues>
                  </TypeDescriptor>
                </Parameter>
                <Parameter Direction="In" name="@MaxProductID">
                  <TypeDescriptor Typename="System.Int32" Identifiername="ProductID" AssociatedFilter="ID" name="MaxProductID">
                    <DefaultValues>
                      <DefaultValue MethodInstancename="ProductFinderInstance" Type="System.Int32">99999999</DefaultValue>
                    </DefaultValues>
                  </TypeDescriptor>
                </Parameter>
                <Parameter Direction="In" name="@Name">
                  <TypeDescriptor Typename="System.String" AssociatedFilter="Name" name="Name">
                    <DefaultValues>
                      <DefaultValue MethodInstancename="ProductFinderInstance" Type="System.String">%</DefaultValue>
                      <DefaultValue MethodInstancename="ProductSpecificFinderInstance" Type="System.String">%</DefaultValue>
                    </DefaultValues>
                  </TypeDescriptor>
                </Parameter>
                <Parameter Direction="In" name="@ProductNumber">
                  <TypeDescriptor Typename="System.String" AssociatedFilter="ProductNumber" name="ProductNumber">
                    <DefaultValues>
                      <DefaultValue MethodInstancename="ProductFinderInstance" Type="System.String">%</DefaultValue>
                      <DefaultValue MethodInstancename="ProductSpecificFinderInstance" Type="System.String">%</DefaultValue>
                    </DefaultValues>
                  </TypeDescriptor>
                </Parameter>
                <Parameter Direction="Return" name="Products">
                  <TypeDescriptor Typename="System.Data.IDataReader, System.Data, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" IsCollection="true" name="ProductDataReader">
                    <TypeDescriptors>
                      <TypeDescriptor Typename="System.Data.IDataRecord, System.Data, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" name="ProductDataRecord">
                        <TypeDescriptors>
                          <TypeDescriptor Typename="System.Int32" Identifiername="ProductID" name="ProductID">
                            <LocalizedDisplayNames>
                              <LocalizedDisplayName LCID="1033">ID</LocalizedDisplayName>
                            </LocalizedDisplayNames>
                          </TypeDescriptor>
                          <TypeDescriptor Typename="System.String" name="Name" >
                            <!-- Do not use the AssociatedFilter 
                            attribute in return parameters.-->
                            <LocalizedDisplayNames>
                              <LocalizedDisplayName LCID="1033">Name</LocalizedDisplayName>
                            </LocalizedDisplayNames>
                            <Properties>
                              <Property name="DisplayByDefault" Type="System.Boolean">true</Property>
                            </Properties>
                          </TypeDescriptor>
                          <TypeDescriptor Typename="System.String" name="ProductNumber">
                            <LocalizedDisplayNames>
                              <LocalizedDisplayName LCID="1033">Product Number</LocalizedDisplayName>
                            </LocalizedDisplayNames>
                            <Properties>
                              <Property name="DisplayByDefault" Type="System.Boolean">true</Property>
                            </Properties>
                          </TypeDescriptor>
                          <TypeDescriptor Typename="System.Decimal" name="ListPrice">
                            <LocalizedDisplayNames>
                              <LocalizedDisplayName LCID="1033">List Price</LocalizedDisplayName>
                            </LocalizedDisplayNames>
                          </TypeDescriptor>
                        </TypeDescriptors>
                      </TypeDescriptor>
                    </TypeDescriptors>
                  </TypeDescriptor>
                </Parameter>
              </Parameters>
              <MethodInstances>
                <MethodInstance name="ProductFinderInstance" Type="Finder" ReturnParametername="Products" />
                <MethodInstance name="ProductSpecificFinderInstance" Type="SpecificFinder" ReturnParametername="Products" />
              </MethodInstances>
            </Method>
          </Methods>
          <!-- Enter your Action XML here -->
        </Entity>
    
  3. Salve o arquivo XML.

  4. Adicione o definição de aplicativo à Business Data Catalog. Para obter detalhes, consulte Como a: Adicionar uma definição de aplicativo para o Catálogo de dados comercial.

  5. Teste os metadados, criando uma Web Part de Lista de dados comercial, uma Web Part de Detalhes, uma coluna Business Data de tipo, produto ou qualquer combinação desses elementos. Para obter detalhes, consulte Teste de metadados.

Próxima etapas

Etapa 3 (opcional): definir ações

Consulte também

Outros recursos

Modelo de Metadados Catálogo de dados comerciais:
Exemplo SQL Server 2000 AdventureWorks