Ir para o conteúdo

Detalhes da Conexão do SAP Business ByDesign

Introdução

Versão do conector

Esta documentação é baseada na versão 21.0.8257 do conector.

Começando

Suporte de versão SAP ByDesign

O conector aproveita as APIs SAPByDesign para permitir o acesso bidirecional ao SAPByDesign.

Estabelecendo uma Conexão

Esta seção documenta como fornecer autenticação para sua conta e tipo de serviço e, em seguida, conectar.

Autenticar uma Conta SAPByDesign

Defina as seguintes propriedades de conexão para se conectar ao SAP ByDesign.

Conecte-se a um Serviço Analítico
  • URL: Defina isso para o URL do seu site SAP ByDesign. Por exemplo, https://test.sapbydesign.com.

  • ServiceType: Se você deseja recuperar os relatórios de um serviço analítico, especifique ServiceType=AnalyticsService;.

  • ServiceName: O nome do serviço do qual você deseja recuperar os dados. Apenas nenhum ou um serviço deve ser especificado. Se você deseja especificar uma lista de serviços, consulte BrowsableSchemas.

    Se você não tiver certeza de qual serviço especificar, sempre poderá consultar o sys_schemas para listar os serviços disponíveis.

  • User: Defina isso para o nome de usuário da sua conta.

  • Password: Defina isso como a senha da sua conta.

Exemplo de string de conexão de serviço analítico:

Url=https://test.sapbydesign.com;ServiceType=AnalyticsService;ServiceName=cc_home_analytics.svc;User=Test;Password=test;
Conecte-se a um Serviço Personalizado
  • URL: Defina isso para o URL do seu site SAP ByDesign. Por exemplo, https://test.sapbydesign.com.

  • ServiceType: Se você tiver um serviço personalizado do qual deseja recuperar dados, especifique ServiceType=Serviço Personalizado;.

  • ServiceName: O nome do serviço do qual você deseja recuperar os dados. Apenas nenhum ou um serviço deve ser especificado. Se você deseja especificar uma lista de serviços, consulte BrowsableSchemas.

    Se você não tiver certeza de qual serviço especificar, sempre poderá consultar o sys_schemas para listar os serviços disponíveis.

  • User: Defina isso para o nome de usuário da sua conta.

  • Password: Defina isso como a senha da sua conta.

Exemplo de string de conexão de serviço personalizado:

Url=https://test.sapbydesign.com;ServiceType=CustomService;ServiceName=khsalesorder;User=Test;Password=test;
Conecte-se à API ODataDataSource
  • URL: Defina isso para o URL do seu site SAP ByDesign. Por exemplo, https://test.sapbydesign.com.

  • ServiceType: Se você deseja consultar a API de fonte de dados OData (odata/analytics/ds), especifique ServiceType=ODataDataSource.

  • ServiceName: O nome do serviço do qual você deseja recuperar os dados. Apenas nenhum ou um serviço deve ser especificado. Se você deseja especificar uma lista de serviços, consulte BrowsableSchemas.

    Se você não tiver certeza de qual serviço especificar, sempre poderá consultar o sys_schemas para listar os serviços disponíveis.

  • User: Defina isso para o nome de usuário da sua conta.

  • Password: Defina isso como a senha da sua conta.

Exemplo de string de conexão ODataDataSource:

Url=https://test.sapbydesign.com;ServiceType=ODataDataSource;ServiceName=Customer.svc;User=Test;Password=test;

Adicionar um Novo Serviço ODATA Personalizado

  • Na visão do centro de trabalho do SAP ByDesign, clique em "Gerenciamento de aplicativos e usuários".
  • Selecione "Serviços OData ".
  • Na lista suspensa, selecione "Custom OData Services".
  • Agora você deve ver uma lista de seus serviços personalizados atuais. Para adicionar um novo clique em "Novo".

Acesso a Dados de Ajuste Fino

As propriedades de navegação são propriedades em uma entidade que é uma única entidade relacionada ou uma lista de entidades relacionadas.
Por padrão, eles são expostos como exibições, embora possam ser ocultados pela configuração NavigationPropertiesAsViews para falso.
Esta propriedade só terá efeito ao trabalhar com ServiceType=CustomService, pois não há propriedades de navegação ao lidar com outros serviços.

Anotações Importantes

Procedimentos Armazenados

  • Os recursos de procedimentos armazenados descritos nesta documentação não são suportados no momento.
  • Como os procedimentos armazenados não são suportados atualmente, qualquer recurso dependente de procedimentos armazenados também não é suportado atualmente.

Arquivos de Configuração e Seus Caminhos

  • Todas as referências para adicionar arquivos de configuração e seus caminhos referem-se a arquivos e locais no Harmony Agente onde o conector está instalado. Esses caminhos devem ser ajustados conforme apropriado, dependendo do agente e do sistema operacional. Se vários agentes forem usados em um grupo de agentes, arquivos idênticos serão necessários em cada agente.

Características Avançadas

Esta seção detalha uma seleção de recursos avançados do conector SAP ByDesign.

Visualizações definidas pelo usuário

O conector permite definir tabelas virtuais, denominadas visualizações definidas pelo usuário, cujo conteúdo é decidido por uma consultar pré-configurada. Essas exibições são úteis quando você não pode controlar diretamente as consultas enviadas aos drivers. Consulte Visualizações definidas pelo usuário para obter uma visão geral da criação e configuração de exibições personalizadas.

Configuração SSL

Use Configuração SSL para ajustar como o conector lida com as negociações de certificado TLS/SSL. Você pode escolher entre vários formatos de certificado; Veja o SSLServerCert propriedade em "Opções de cadeia de conexão" para obter mais informações.

Procurador

Para configurar o conector usando configurações de proxy do Agente Privado, selecione os Use Proxy Settings caixa de seleção na tela de configuração da conexão.

Visualizações Definidas pelo Usuário

O Jitterbit Connector for SAP ByDesign permite definir uma tabela virtual cujo conteúdo é decidido por uma consultar pré-configurada. Elas são chamadas de Visualizações Definidas pelo Usuário, que são úteis em situações onde você não pode controlar diretamente a consultar que está sendo emitida para o driver, por exemplo, ao usar o driver do Jitterbit. As Visualizações Definidas pelo Usuário podem ser usadas para definir predicados que são sempre aplicados. Se você especificar predicados adicionais na consultar para a visualização, eles serão combinados com a consultar já definida como parte da visualização.

Há duas maneiras de criar exibições definidas pelo usuário:

  • Crie um arquivo de configuração em formato JSON definindo as visualizações desejadas.
  • declarações DDL.

Definindo Visualizações Usando um Arquivo de Configuração

As visualizações definidas pelo usuário são definidas em um arquivo de configuração formatado em JSON chamado UserDefinedViews.json. O conector detecta automaticamente as visualizações especificadas neste arquivo.

Você também pode ter várias definições de exibição e controlá-las usando o UserDefinedViews propriedade de conexão. Quando você usa essa propriedade, apenas as exibições especificadas são vistas pelo conector.

Este arquivo de configuração de exibição definida pelo usuário é formatado da seguinte forma:

  • Cada elemento raiz define o nome de uma visualização.
  • Cada elemento raiz contém um elemento filho, chamado query, que contém a consultar SQL personalizada para a exibição.

Por exemplo:

{
    "MyView": {
        "query": "SELECT * FROM Account WHERE MyColumn = 'value'"
    },
    "MyView2": {
        "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
    }
}

Use o UserDefinedViews propriedade de conexão para especificar a localização do seu arquivo de configuração JSON. Por exemplo:

"UserDefinedViews", "C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json"

Esquema para Exibições Definidas pelo Usuário

As visualizações definidas pelo usuário são expostas no UserViews esquema por padrão. Isso é feito para evitar que o nome da exibição entre em conflito com uma entidade real no modelo de dados. Você pode alterar o nome do esquema usado para UserViews definindo o UserViewsSchemaName propriedade.

Trabalhando com Exibições Definidas pelo Usuário

Por exemplo, uma instrução SQL com uma Visualização Definida pelo Usuário chamada UserViews.RCustomers lista apenas clientes em Raleigh:

SELECT * FROM Customers WHERE City = 'Raleigh';

Exemplo de consultar ao driver:

SELECT * FROM UserViews.RCustomers WHERE Status = 'Active';

Resultando na consultar efetiva à fonte:

SELECT * FROM Customers WHERE City = 'Raleigh' AND Status = 'Active';

Esse é um exemplo muito simples de uma consultar a uma exibição definida pelo usuário que é efetivamente uma combinação da consultar de exibição e da definição de exibição. É possível compor essas consultas em padrões muito mais complexos. Todas as operações SQL são permitidas em ambas as consultas e são combinadas quando apropriado.

Configuração SSL

Personalizando a Configuração SSL

Por padrão, o conector tenta negociar SSL/TLS verificando o certificado do servidor em relação ao armazenamento de certificados confiáveis do sistema.

Para especificar outro certificado, consulte o SSLServerCert propriedade para os formatos disponíveis para fazê-lo.

Modelo de Dados

Visão geral

Esta seção mostra os objetos de API disponíveis e fornece mais informações sobre como executar SQL para APIs do SAP ByDesign.

Características principais

  • O conector modela o SAP ByDesign Analytics Services como exibições relacionais. As entidades definidas em um serviço personalizado são modeladas usando uma combinação de tabelas e exibições, permitindo que você escreva SQL para consultar dados do SAP ByDesign.
  • A conectividade ao vivo com esses objetos significa que quaisquer alterações em sua conta SAP ByDesign são refletidas imediatamente ao usar o conector.

Mesas

As tabelas são entidades definidas dinamicamente disponíveis no ServiceType=CustomService.

Visualizações

As visualizações são definidas dinamicamente nas propriedades de navegação de um ServiceType=CustomService, ou das consultas em um ServiceType=AnalyticsService, ServiceType=ODataDataSource.

Serviços de análise

Para recuperar relatórios de um serviço analítico, você deve especificar o URL ServiceType=Propriedade do AnalyticsService. Por exemplo: Url=https://my999999.sapbydesign.com;ServiceType=AnalyticsService;ServiceName=cc_home_analytics.svc;. Todos os relatórios são expostos como visualizações. Observe que a filtragem do lado do cliente será desativada se alguém tentar executar um filtro não suportado pela API SAP ByDesign em uma dimensão e, ao mesmo tempo, não incluir essa dimensão na cláusula SELECT. Se você quiser usar a filtragem do lado do cliente (executando filtros que não são suportados pela API do SAP ByDesign), você precisa incluir a dimensão na cláusula SELECT.

Além disso, se a consultar for uma consultar estrela e o número de dimensões for maior que 15, o driver usará apenas a dimensão padrão e ignorará as demais. Isso é feito porque é muito difícil dar sentido a um conjunto de resultados com muitas dimensões. Esse caso de uso é comum quando o driver é usado em várias ferramentas. A dimensão padrão é escolhida dinamicamente de forma aleatória pelo driver.

Tabelas

O conector expõe tabelas para cada conjunto de entidades e singleton definido no URL raiz do SAP ByDesign. As entidades nessas tabelas podem ser inseridas, atualizadas ou excluídas usando as instruções SQL padrão insert, update ou delete.

Executando Inserções Profundas com SQL

O conector oferece suporte a inserções profundas de OData, nas quais você cria simultaneamente uma entidade base e a vincula a entidades relacionadas, especificando as propriedades de navegação. Para especificar Propriedades de navegação para uma entidade, você cria uma tabela temporária para a propriedade de navegação e faz referência à tabela temporária na inserção para a tabela base. Faça referência à tabela temporária na coluna de propriedades de navegação apropriada na tabela base. Cada coluna de propriedade de navegação é prefixada com a palavra "Linked".

Observe que você deve definir as tabelas temporárias e inserir na entidade base dentro da mesma conexão.

Exemplo: Inserções Profundas

Por exemplo, considere uma tabela, Pedidos. Para criar um novo pedido, especifique os produtos solicitados, cliente, funcionário e remetente. Para fazer isso, você precisa especificar as seguintes propriedades de navegação.

Criando Tabelas Temporárias

Insira as entidades relacionadas em tabelas temporárias que correspondem a cada propriedade de navegação. Você pode especificar a chave primária de uma entidade existente ou inserir uma nova entidade.

  • Customer: A seguinte declaração cria um novo Cliente:

    INSERT INTO Customers#TEMP (CustomerID, CompanyName, ContactName, ContactTitle, Address, City, PostalCode, Country, Phone, Fax)
    VALUES ('VINET', 'Vins et alcools Chevalier', 'Paul Henriot', 'Accounting Manager', '59 rue de l''Abbaye', 'Reims', '51100', 'France', '26.47.15.10', '26.47.15.11')
    
  • Order Details: As seguintes declarações adicionam dois Produtos ao Pedido:

    INSERT INTO Order_Details#TEMP (ProductID, UnitPrice, Quantity, Discount) VALUES (72, 34.80, 5, 0)
    
    INSERT INTO Order_Details#TEMP (ProductID, UnitPrice, Quantity, Discount) VALUES (42, 9.80, 10, 0)
    
  • Employee: A declaração a seguir especifica o funcionário existente:

    INSERT INTO Employees#TEMP (EmployeeID)
    VALUES (5)
    
  • Shipper: A declaração a seguir especifica o remetente existente:

    INSERT INTO Shippers#TEMP (ShipperID) VALUES (3) 
    

O Conector Jitterbit para SAP ByDesign assumirá que o Remetente e o Funcionário já existem e vinculará apenas às referências existentes, pois apenas as chaves primárias foram especificadas para ambos. Quando mais do que apenas a chave primária é definida, como os exemplos de Customer e Order_Details, o Jitterbit Connector for SAP ByDesign tentará criar novas entradas - acionando a inserção profunda.

Inserindo a Entidade

Na instrução INSERT para a entidade base, faça referência às tabelas temporárias nas colunas LinkedOrder_Details, LinkedCustomer, LinkedEmployee e LinkedShipper:

INSERT INTO Orders (CustomerID, EmployeeID, ShipVia, ShipName, ShipAddress, ShipCity, ShipPostalCode, ShipCountry, OrderDate, LinkedOrder_Details, LinkedCustomer, LinkedEmployee, LinkedShipper) VALUES ('VINET', 5, 3, 'Paul Henriot', '59 rue de l''Abbaye', 'Reims', '51100', 'France', '07/04/1996', 'Order_Details#TEMP', 'Customers#TEMP', 'Employees#TEMP', 'Shippers#TEMP')
Exemplo de Código

Abaixo está o código completo para criar a nova Ordem:

Connection conn = DriverManager.getConnection("jdbc:sapbydesign:URL=https://my999999.sapbydesign.com;User=username;Password=password;ServiceType=AnalyticsService;ServiceName=servicename;");
Statement stat = conn.createStatement();
stat.executeUpdate("INSERT INTO Customers#TEMP (CustomerID, CompanyName, ContactName, ContactTitle, Address, City, PostalCode, Country, Phone, Fax) VALUES ('VINET', 'Vins et alcools Chevalier', 'Paul Henriot', 'Accounting Manager', '59 rue de l''Abbaye', 'Reims', '51100', 'France', '26.47.15.10', '26.47.15.11')");

stat.executeUpdate("INSERT INTO Order_Details#TEMP (ProductID, UnitPrice, Quantity, Discount) VALUES (72, 34.80, 5, 0)");

stat.executeUpdate("INSERT INTO Order_Details#TEMP (ProductID, UnitPrice, Quantity, Discount) VALUES (42, 9.80, 10, 0)");

stat.executeUpdate("INSERT INTO Employees#TEMP (EmployeeID) VALUES (5)");

stat.executeUpdate("INSERT INTO Shippers#TEMP (ShipperID) VALUES (3)");

stat.executeUpdate("INSERT INTO Orders (CustomerID, EmployeeID, ShipVia, ShipName, ShipAddress, ShipCity, ShipPostalCode, ShipCountry, OrderDate, LinkedOrder_Details, LinkedCustomer, LinkedEmployee, LinkedShipper) VALUES ('VINET', 5, 3, 'Paul Henriot', '59 rue de l''Abbaye', 'Reims', '51100', 'France', '07/04/1996', 'Order_Details#TEMP', 'Customers#TEMP', 'Employees#TEMP', 'Shippers#TEMP')");

stat.close();

Propriedades de Navegação

Em OData, uma propriedade de navegação é uma propriedade em uma entidade que é uma única entidade ou uma lista de entidades.

Uma propriedade de navegação de entidade única significa um relacionamento um-para-um; por exemplo, um serviço OData pode permitir que um Produto tenha apenas uma Categoria. Neste serviço, Categoria pode ser uma propriedade de navegação em Produtos.

Uma propriedade de navegação do conjunto de entidades significa um relacionamento um-para-muitos; por exemplo, muitos Produtos podem pertencer à mesma Categoria. Neste serviço, Produtos podem ser uma propriedade de navegação em Categorias.

Propriedades de Navegação de Modelagem

Por padrão, o conector modela Propriedades de navegação como exibições separadas. As exibições são nomeadas no formato ParentTable_NavigationProperty. Você pode desativar esse comportamento com NavigationPropertiesAsViews.

Trabalhando com Propriedades de Navegação Relacionalmente

Propriedades de navegação em entidades relacionadas ao link OData. Da mesma forma, em um banco de dados relacional, uma chave estrangeira serve para vincular tabelas. Por exemplo, um registro de Produto pode ter uma coluna CategoryId, que identifica exclusivamente a qual Categoria o Produto pertence. No entanto, não há nenhum requisito no OData de que uma entidade deve conter uma referência de chave estrangeira para uma entidade relacionada. Isso significa que às vezes você obterá propriedades de navegação sem ter uma referência de chave estrangeira a essa entidade no pai ou de volta ao pai da entidade relacionada. Em casos sem uma referência de chave estrangeira, a existência da propriedade de navegação é a única coisa que pode ser usada para identificar um relacionamento entre as duas entidades.

Selecione

NavigationPropertiesAsViews é útil para acessar dados em serviços OData que não possuem referências de chave estrangeira. Da mesma forma, pode ser usado para recuperar entidades relacionadas que não existem por si mesmas, como LineItems em uma fatura. Consulte as tabelas para obter mais informações sobre como consultar as propriedades de navegação.

Inserir

O conector oferece suporte a inserções profundas de OData. Veja Tabelas para obter mais informações sobre como especificar propriedades de navegação ao criar uma entidade.

Consultar Propriedades de Navegação

Para obter um exemplo de como trabalhar com uma propriedade de navegação como exibição, considere BusinessPartners. O conjunto de entidades BusinessPartners tem uma propriedade de navegação Orders. O Jitterbit Connector for SAP ByDesign exibirá uma visualização chamada BusinessPartners_Orders para este serviço. A recuperação de dados de BusinessPartners_Orders exibirá todos os pedidos associados a um determinado BusinessPartner. A visão BusinessPartners_Orders tem uma chave primária composta pela chave primária da entidade pai e a chave primária da entidade relacionada.

Tabelas do Sistema

Você pode consultar as tabelas do sistema descritas nesta seção para acessar informações de esquema, informações sobre a funcionalidade da fonte de dados e estatísticas de operação em lote.

Tabelas de Esquema

As tabelas a seguir retornam metadados de banco de dados para SAP ByDesign:

Tabelas de Fonte de Dados

As tabelas a seguir retornam informações sobre como se conectar e consultar a fonte de dados:

  • sys_connection_props: Retorna informações sobre as propriedades de conexão disponíveis.
  • sys_sqlinfo: Descreve as consultas SELECT que o conector pode descarregar para a fonte de dados.

Consultar Tabelas de Informações

A tabela a seguir retorna estatísticas de consultar para consultas de modificação de dados:

  • sys_identity: Retorna informações sobre operações em lote ou atualizações únicas.

Sys_catalogs

Lista os bancos de dados disponíveis.

A consultar a seguir recupera todos os bancos de dados determinados pela string de conexão:

SELECT * FROM sys_catalogs
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados.

Sys_schemas

Lista os esquemas disponíveis.

A consultar a seguir recupera todos os esquemas disponíveis:

SELECT * FROM sys_schemas
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados.
SchemaName String O nome do esquema.

Sys_tables

Lista as tabelas disponíveis.

A consultar a seguir recupera as tabelas e exibições disponíveis:

SELECT * FROM sys_tables
Colunas
Nome Tipo Descrição
CatalogName String O banco de dados que contém a tabela ou exibição.
SchemaName String O esquema que contém a tabela ou exibição.
TableName String O nome da tabela ou exibição.
TableType String O tipo de tabela (tabela ou exibição).
Description String Uma descrição da tabela ou exibição.
IsUpdateable Boolean Se a tabela pode ser atualizada.

Sys_tablecolumns

Descreve as colunas das tabelas e exibições disponíveis.

A consultar a seguir retorna as colunas e os tipos de dados da tabela Account:

SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='Account' 
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém a tabela ou exibição.
SchemaName String O esquema que contém a tabela ou exibição.
TableName String O nome da tabela ou exibição que contém a coluna.
ColumnName String O nome da coluna.
DataTypeName String O nome do tipo de dados.
DataType Int32 Um número inteiro indicando o tipo de dados. Esse valor é determinado no tempo de execução com base no ambiente.
Length Int32 O tamanho de armazenamento da coluna.
DisplaySize Int32 A largura máxima normal da coluna designada em caracteres.
NumericPrecision Int32 O número máximo de dígitos em dados numéricos. O comprimento da coluna em caracteres para caracteres e dados de data e hora.
NumericScale Int32 A escala da coluna ou o número de dígitos à direita do ponto decimal.
IsNullable Boolean Se a coluna pode conter null.
Description String Uma breve descrição da coluna.
Ordinal Int32 O número de sequência da coluna.
IsAutoIncrement String Se o valor da coluna é atribuído em incrementos fixos.
IsGeneratedColumn String Se a coluna é gerada.
IsHidden Boolean Se a coluna está oculta.
IsArray Boolean Se a coluna é uma matriz.

Sys_keycolumns

Descreve as chaves primárias e estrangeiras. A consultar a seguir recupera a chave primária da tabela Account:

SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Account'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém a chave.
SchemaName String O nome do esquema que contém a chave.
TableName String O nome da tabela que contém a chave.
ColumnName String O nome da coluna chave.
IsKey Boolean Se a coluna é uma chave primária na tabela referenciada no campo TableName.
IsForeignKey Boolean Se a coluna é uma chave estrangeira referenciada no campo TableName.
PrimaryKeyName String O nome da chave primária.
ForeignKeyName String O nome da chave estrangeira.
ReferencedCatalogName String O banco de dados que contém a chave primária.
ReferencedSchemaName String O esquema que contém a chave primária.
ReferencedTableName String A tabela que contém a chave primária.
ReferencedColumnName String O nome da coluna da chave primária.

Sys_foreignkeys

Descreve as chaves estrangeiras. A consultar a seguir recupera todas as chaves estrangeiras que se referem a outras tabelas:

SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém a chave.
SchemaName String O nome do esquema que contém a chave.
TableName String O nome da tabela que contém a chave.
ColumnName String O nome da coluna chave.
PrimaryKeyName String O nome da chave primária.
ForeignKeyName String O nome da chave estrangeira.
ReferencedCatalogName String O banco de dados que contém a chave primária.
ReferencedSchemaName String O esquema que contém a chave primária.
ReferencedTableName String A tabela que contém a chave primária.
ReferencedColumnName String O nome da coluna da chave primária.
ForeignKeyType String Designa se a chave estrangeira é uma chave de importação (aponta para outras tabelas) ou de exportação (referenciada de outras tabelas).

Sys_indexes

Descreve os índices disponíveis. Ao filtrar por índices, você pode escrever consultas mais seletivas com tempos de resposta de consultar mais rápidos.

A consultar a seguir recupera todos os índices que não são chaves primárias:

SELECT * FROM sys_indexes WHERE IsPrimary='false'
Colunas
Nome Tipo Descrição
CatalogName String O nome do banco de dados que contém o índice.
SchemaName String O nome do esquema que contém o índice.
TableName String O nome da tabela que contém o índice.
IndexName String O nome do índice.
ColumnName String O nome da coluna associada ao índice.
IsUnique Boolean True se o índice for exclusivo. Falso caso contrário.
IsPrimary Boolean Verdadeiro se o índice for uma chave primária. Falso caso contrário.
Type Int16 Um valor inteiro correspondente ao tipo de índice: estatística (0), agrupado (1), hash (2) ou outro (3).
SortOrder String A ordem de classificação: A para crescente ou D para decrescente.
OrdinalPosition Int16 O número de sequência da coluna no índice.

Sys_connection_props

Retorna informações sobre as propriedades de conexão disponíveis e as definidas na string de conexão.

Ao consultar esta tabela, a string de conexão de configuração deve ser usada:

jdbc:cdata:sapbydesign:config:

Esta string de conexão permite que você consultar esta tabela sem uma conexão válida.

A consultar a seguir recupera todas as propriedades de conexão que foram definidas na string de conexão ou definidas por meio de um valor padrão:

SELECT * FROM sys_connection_props WHERE Value <> ''
Colunas
Nome Tipo Descrição
Name String O nome da propriedade de conexão.
ShortDescription String Uma breve descrição.
Type String O tipo de dados da propriedade de conexão.
Default String O valor padrão, se não houver um definido explicitamente.
Values String Uma lista separada por vírgulas de valores possíveis. Um erro de validação é lançado se outro valor for especificado.
Value String O valor que você definiu ou um padrão pré-configurado.
Required Boolean Se a propriedade é necessária para se conectar.
Category String A categoria da propriedade de conexão.
IsSessionProperty String Se a propriedade é uma propriedade de sessão, usada para salvar informações sobre a conexão atual.
Sensitivity String O nível de sensibilidade da propriedade. Isso informa se a propriedade está ofuscada nos formulários de registro e autenticação.
PropertyName String Uma forma truncada em camel case do nome da propriedade de conexão.
Ordinal Int32 O índice do parâmetro.
CatOrdinal Int32 O índice da categoria do parâmetro.
Hierarchy String Mostra as propriedades dependentes associadas que precisam ser definidas juntamente com esta.
Visible Boolean Informa se a propriedade está visível na UI da conexão.
ETC String Diversas informações diversas sobre o imóvel.

Sys_sqlinfo

Descreve o processamento da consultar SELECT que o conector pode transferir para a fonte de dados.

Processamento de Consulta Colaborativa

Ao trabalhar com fontes de dados que não suportam SQL-92, você pode consultar a exibição sys_sqlinfo para determinar os recursos de consultar das APIs subjacentes, expressas na sintaxe SQL. O conector transfere o máximo possível do processamento da instrução SELECT para o servidor e, em seguida, processa o restante da consultar na memória.

Descobrindo os Recursos SELECT da Fonte de Dados

Abaixo está um exemplo de conjunto de dados de recursos SQL. O conjunto de resultados a seguir indica a funcionalidade SELECT que o conector pode descarregar para a fonte de dados ou processar o lado do cliente. Sua fonte de dados pode suportar sintaxe SQL adicional. Alguns aspectos da funcionalidade SELECT são retornados em uma lista separada por vírgulas, se suportados; caso contrário, a coluna contém NO.

Nome Descrição Valores Possíveis
AGGREGATE_FUNCTIONS Funções de agregação suportadas. AVG, COUNT, MAX, MIN, SUM, DISTINCT
COUNT Se a função COUNT é suportada. YES, NO
IDENTIFIER_QUOTE_OPEN_CHAR O caractere de abertura usado para escapar de um identificador. [
IDENTIFIER_QUOTE_CLOSE_CHAR O caractere de fechamento usado para escapar de um identificador. ]
SUPPORTED_OPERATORS Uma lista de operadores SQL com suporte. =, >, <, >=, <=, <>, !=, LIKE, NOT LIKE, IN, NOT IN, IS NULL, IS NOT NULL, AND, OR
GROUP_BY Se GROUP BY é compatível e, em caso afirmativo, o grau de suporte. NO, NO_RELATION, EQUALS_SELECT, SQL_GB_COLLATE
STRING_FUNCTIONS Funções de string suportadas. LENGTH, CHAR, LOCATE, REPLACE, SUBSTRING, RTRIM, LTRIM, RIGHT, LEFT, UCASE, SPACE, SOUNDEX, LCASE, CONCAT, ASCII, REPEAT, OCTET, BIT, POSITION, INSERT, TRIM, UPPER, REGEXP, LOWER, DIFFERENCE, CHARACTER, SUBSTR, STR, REVERSE, PLAN, UUIDTOSTR, TRANSLATE, TRAILING, TO, STUFF, STRTOUUID, STRING, SPLIT, SORTKEY, SIMILAR, REPLICATE, PATINDEX, LPAD, LEN, LEADING, KEY, INSTR, INSERTSTR, HTML, GRAPHICAL, CONVERT, COLLATION, CHARINDEX, BYTE
NUMERIC_FUNCTIONS Funções numéricas suportadas. ABS, ACOS, ASIN, ATAN, ATAN2, CEILING, COS, COT, EXP, FLOOR, LOG, MOD, SIGN, SIN, SQRT, TAN, PI, RAND, DEGREES, LOG10, POWER, RADIANS, ROUND, TRUNCATE
TIMEDATE_FUNCTIONS Funções de data/hora suportadas. NOW, CURDATE, DAYOFMONTH, DAYOFWEEK, DAYOFYEAR, MONTH, QUARTER, WEEK, YEAR, CURTIME, HOUR, MINUTE, SECOND, TIMESTAMPADD, TIMESTAMPDIFF, DAYNAME, MONTHNAME, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, EXTRACT
REPLICATION_SKIP_TABLES Indica tabelas ignoradas durante a replicação.
REPLICATION_TIMECHECK_COLUMNS Uma matriz de string contendo uma lista de colunas que serão usadas para verificar (na ordem especificada) para usar como uma coluna modificada durante a replicação.
IDENTIFIER_PATTERN Valor de string que indica qual string é válida para um identificador.
SUPPORT_TRANSACTION Indica se o provedor oferece suporte a transações como confirmação e reversão. YES, NO
DIALECT Indica o dialeto SQL a ser usado.
KEY_PROPERTIES Indica as propriedades que identificam o banco de dados uniforme.
SUPPORTS_MULTIPLE_SCHEMAS Indica se vários esquemas podem existir para o provedor. YES, NO
SUPPORTS_MULTIPLE_CATALOGS Indica se vários catálogos podem existir para o provedor. YES, NO
DATASYNCVERSION A versão do Data Sync necessária para acessar este driver. Standard, Starter, Professional, Enterprise
DATASYNCCATEGORY A categoria Data Sync deste driver. Source, Destination, Cloud Destination
SUPPORTSENHANCEDSQL Se a funcionalidade SQL aprimorada além do que é oferecido pela API é suportada. TRUE, FALSE
SUPPORTS_BATCH_OPERATIONS Se as operações em lote são suportadas. YES, NO
SQL_CAP Todos os recursos SQL suportados para este driver. SELECT, INSERT, DELETE, UPDATE, TRANSACTIONS, ORDERBY, OAUTH, ASSIGNEDID, LIMIT, LIKE, BULKINSERT, COUNT, BULKDELETE, BULKUPDATE, GROUPBY, HAVING, AGGS, OFFSET, REPLICATE, COUNTDISTINCT, JOINS, DROP, CREATE, DISTINCT, INNERJOINS, SUBQUERIES, ALTER, MULTIPLESCHEMAS, GROUPBYNORELATION, OUTERJOINS, UNIONALL, UNION, UPSERT, GETDELETED, CROSSJOINS, GROUPBYCOLLATE, MULTIPLECATS, FULLOUTERJOIN, MERGE, JSONEXTRACT, BULKUPSERT, SUM, SUBQUERIESFULL, MIN, MAX, JOINSFULL, XMLEXTRACT, AVG, MULTISTATEMENTS, FOREIGNKEYS, CASE, LEFTJOINS, COMMAJOINS, WITH, LITERALS, RENAME, NESTEDTABLES, EXECUTE, BATCH, BASIC, INDEX
PREFERRED_CACHE_OPTIONS Um valor de string especifica o cacheOptions preferencial.
ENABLE_EF_ADVANCED_QUERY Indica se o driver oferece suporte direto a consultas avançadas provenientes do Entity Framework. Caso contrário, as consultas serão tratadas no lado do cliente. YES, NO
PSEUDO_COLUMNS Uma matriz de cadeia de caracteres que indica as pseudocolunas disponíveis.
MERGE_ALWAYS Se o valor for verdadeiro, o modo de mesclagem será executado à força no Data Sync. TRUE, FALSE
REPLICATION_MIN_DATE_QUERY Uma consultar de seleção para retornar a data e hora de início da replicação.
REPLICATION_MIN_FUNCTION Permite que um provedor especifique o nome da fórmula a ser usado para executar um min do lado do servidor.
REPLICATION_START_DATE Permite que um provedor especifique uma data de início de replicação.
REPLICATION_MAX_DATE_QUERY Uma consultar de seleção para retornar a data e hora de término da replicação.
REPLICATION_MAX_FUNCTION Permite que um provedor especifique o nome da fórmula a ser usado para executar um máximo do lado do servidor.
IGNORE_INTERVALS_ON_INITIAL_REPLICATE Uma lista de tabelas que ignorará a divisão da replicação em blocos na replicação inicial.
CHECKCACHE_USE_PARENTID Indica se a instrução CheckCache deve ser executada na coluna de chave pai. TRUE, FALSE
CREATE_SCHEMA_PROCEDURES Indica procedimentos armazenados* que pode ser usado para gerar arquivos de esquema.

A consultar a seguir recupera os operadores que podem ser usados na cláusula WHERE:

SELECT * FROM sys_sqlinfo WHERE Name='SUPPORTED_OPERATORS'

Observe que tabelas individuais podem ter diferentes limitações ou requisitos na cláusula WHERE; consulte o Modelo de Dados para obter mais informações.

Colunas
Nome Tipo Descrição
NAME String Um componente da sintaxe SQL ou um recurso que pode ser processado no servidor.
VALUE String Detalhes sobre a sintaxe SQL ou SQL suportada.

Sys_identity

Retorna informações sobre tentativas de modificação.

A consultar a seguir recupera os IDs das linhas modificadas em uma operação em lote:

SELECT * FROM sys_identity
Colunas
Nome Tipo Descrição
Id String O ID gerado pelo banco de dados retornado de uma operação de modificação de dados.
Batch String Um identificador para o lote. 1 para uma única operação.
Operation String O resultado da operação no lote: INSERTED, UPDATED ou DELETED.
Message String SUCCESS ou uma mensagem de erro se a atualização no lote falhou.

Propriedades de Configurações Avançadas

As propriedades de configurações avançadas são as várias opções que podem ser usadas para estabelecer uma conexão. Esta seção fornece uma lista completa das opções que você pode configurar. Clique nos links para mais detalhes.

Autenticação

Propriedade Descrição
URL URL para o nome do hospedar do sistema.
User A conta de usuário do SAP ByDesign usada para autenticação.
Password A senha usada para autenticar o usuário.

Conexão

Propriedade Descrição
ServiceType Especifique o tipo de serviço do qual obter relatórios.
ServiceName Especifique o nome do serviço SAP ByDesign com o qual se conectar.

SSL

Propriedade Descrição
SSLServerCert O certificado a ser aceito do servidor ao conectar usando TLS/SSL.

Esquema

Propriedade Descrição
Location Um caminho para o diretório que contém os arquivos de esquema que definem tabelas, exibições e procedimentos armazenados.
BrowsableSchemas Essa propriedade restringe os esquemas relatados a um subconjunto dos esquemas disponíveis. Por exemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC.
Tables Esta propriedade restringe as tabelas reportadas a um subconjunto das tabelas disponíveis. Por exemplo, Tables=TableA, TableB, TableC.
Views Restringe as visualizações relatadas a um subconjunto das tabelas disponíveis. Por exemplo, Views=ViewA, ViewB, ViewC.

Diversos

Propriedade Descrição
MaxRows Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.
NavigationPropertiesAsViews Um booleano indicando as propriedades de navegação deve ser promovido para exibições completas.
Other Essas propriedades ocultas são usadas apenas em casos de uso específicos.
Timeout O valor em segundos até que o erro de timeout seja lançado, cancelando a operação.
UseDisplayNames Booleano determinando se deve ou não usar rótulos SAP.

Autenticação

Esta seção fornece uma lista completa de propriedades de autenticação que você pode configurar.

Propriedade Descrição
URL URL para o nome do hospedar do sistema.
User A conta de usuário do SAP ByDesign usada para autenticação.
Password A senha usada para autenticar o usuário.

URL

URL para o nome do hospedar do sistema.

Tipo de Dados

string

Valor Padrão

""

Observações

URL para o nome do hospedar do sistema.

Do Utilizador

A conta de usuário do SAP ByDesign usada para autenticação.

Tipo de Dados

string

Valor Padrão

""

Observações

Juntamente com Senha, esse campo é usado para autenticação no servidor SAP ByDesign.

Senha

A senha usada para autenticar o usuário.

Tipo de Dados

string

Valor Padrão

""

Observações

O usuário e Password são usados juntos para autenticar com o servidor.

Conexão

Esta seção fornece uma lista completa de propriedades de conexão que você pode configurar.

Propriedade Descrição
ServiceType Especifique o tipo de serviço do qual obter relatórios.
ServiceName Especifique o nome do serviço SAP ByDesign com o qual se conectar.

Tipo de Serviço

Especifique o tipo de serviço do qual obter relatórios.

Valores Possíveis

AnalyticsService, CustomService, ODataDataSource

Tipo de Dados

string

Valor Padrão

""

Observações
  • AnalyticsService : se a propriedade de conexão Url estiver definida como a URL base do serviço analítico do qual você deseja recuperar relatórios.
  • CustomService: se a propriedade de conexão Url estiver definida como a URL base do serviço personalizado que você configurou na interface do usuário e deseja recuperar dados.
  • ODataDataSource: Se você deseja consultar o DataSources (OData Data Source API -> odata/analytics/ds).

Nome do Serviço

Especifique o nome do serviço SAP ByDesign com o qual se conectar.

Tipo de Dados

string

Valor Padrão

""

Observações

Especifique o nome do serviço SAP ByDesign com o qual se conectar. Deixe em branco para recuperar todos os serviços.

SSL

Esta seção fornece uma lista completa de propriedades SSL que você pode configurar.

Propriedade Descrição
SSLServerCert O certificado a ser aceito do servidor ao conectar usando TLS/SSL.

SSLServerCert

O certificado a ser aceito do servidor ao conectar usando TLS/SSL.

Tipo de Dados

string

Valor Padrão

""

Observações

Se estiver usando uma conexão TLS/SSL, esta propriedade pode ser usada para especificar o certificado TLS/SSL a ser aceito do servidor. Qualquer outro certificado que não seja confiável para a máquina é rejeitado.

Esta propriedade pode assumir as seguintes formas:

Descrição Exemplo
Um certificado PEM completo (exemplo abreviado para concisão) -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----
Um caminho para um arquivo local contendo o certificado C:\cert.cer
A chave pública (exemplo abreviado para concisão) -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY-----
O Thumbprint MD5 (os valores hexadecimais também podem ser separados por espaço ou dois-pontos) ecadbdda5a1529c58a1e9e09828d70e4
A impressão digital SHA1 (os valores hexadecimais também podem ser separados por espaço ou dois-pontos) 34a929226ae0819f2ec14b4a3d904f801cbb150d

Se não for especificado, qualquer certificado confiável pela máquina será aceito.

Os certificados são validados como confiáveis pela máquina com base no armazenamento confiável do sistema. O armazenamento confiável usado é o valor 'javax.net.ssl.trustStore' especificado para o sistema. Se nenhum valor for especificado para esta propriedade, o armazenamento confiável padrão do Java será usado (por exemplo, JAVA_HOME\lib\security\cacerts).

Use '*' para indicar a aceitação de todos os certificados. Observe que isso não é recomendado devido a questões de segurança.

Esquema

Esta seção fornece uma lista completa de propriedades de esquema que você pode configurar.

Propriedade Descrição
Location Um caminho para o diretório que contém os arquivos de esquema que definem tabelas, exibições e procedimentos armazenados.
BrowsableSchemas Essa propriedade restringe os esquemas relatados a um subconjunto dos esquemas disponíveis. Por exemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC.
Tables Esta propriedade restringe as tabelas reportadas a um subconjunto das tabelas disponíveis. Por exemplo, Tables=TableA, TableB, TableC.
Views Restringe as visualizações relatadas a um subconjunto das tabelas disponíveis. Por exemplo, Views=ViewA, ViewB, ViewC.

Localização

Um caminho para o diretório que contém os arquivos de esquema que definem tabelas, exibições e procedimentos armazenados.

Tipo de Dados

string

Valor Padrão

"%APPDATA%\\\SAPByDesign Data Provider\\Schema"

Observações

O caminho para um diretório que contém os arquivos de esquema para o conector (arquivos .rsd para tabelas e exibições, arquivos .rsb para procedimentos armazenados). A localização da pasta pode ser um caminho relativo a partir da localização do executável. O Location a propriedade só é necessária se você quiser personalizar definições (por exemplo, alterar um nome de coluna, ignorar uma coluna e assim por diante) ou estender o modelo de dados com novas tabelas, exibições ou procedimentos armazenados.

Se não for especificado, o local padrão é "%APPDATA%\\SAPByDesign Data Provider\Schema" com %APPDATA% sendo definido para o diretório de configuração do usuário:

Plataforma %APPDATA%
Windows O valor da variável de ambiente APPDATA
Mac ~/Biblioteca/Suporte de aplicativos
Linux ~/.config

Esquemas Navegáveis

Essa propriedade restringe os esquemas relatados a um subconjunto dos esquemas disponíveis. Por exemplo, BrowsableSchemas=SchemaA,SchemaB,SchemaC.

Tipo de Dados

string

Valor Padrão

""

Observações

Listar os esquemas de bancos de dados pode ser caro. Fornecer uma lista de esquemas na string de conexão melhora o desempenho.

Tabelas

Esta propriedade restringe as tabelas reportadas a um subconjunto das tabelas disponíveis. Por exemplo, Tabelas=TabelaA,TabelaB,TabelaC.

Tipo de Dados

string

Valor Padrão

""

Observações

Listar as tabelas de alguns bancos de dados pode ser caro. Fornecer uma lista de tabelas na string de conexão melhora o desempenho do conector.

Essa propriedade também pode ser usada como uma alternativa para listar automaticamente as exibições se você já souber com quais deseja trabalhar e, caso contrário, haveria muitas para trabalhar.

Especifique as tabelas que deseja em uma lista separada por vírgulas. Cada tabela deve ser um identificador SQL válido com quaisquer caracteres especiais escapados usando colchetes, aspas duplas ou acentos graves. Por exemplo, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.

Observe que, ao conectar-se a uma fonte de dados com vários esquemas ou catálogos, você precisará fornecer o nome totalmente qualificado da tabela nesta propriedade, como no último exemplo aqui, para evitar ambigüidade entre tabelas que existem em vários catálogos ou esquemas.

Visualizações

Restringe as exibições relatadas a um subconjunto das tabelas disponíveis. Por exemplo, Views=ViewA,ViewB,ViewC.

Tipo de Dados

string

Valor Padrão

""

Observações

Listar as exibições de alguns bancos de dados pode ser caro. Fornecer uma lista de exibições na string de conexão melhora o desempenho do conector.

Essa propriedade também pode ser usada como uma alternativa para listar automaticamente as exibições se você já souber com quais deseja trabalhar e, caso contrário, haveria muitos para trabalhar.

Especifique as exibições desejadas em uma lista separada por vírgulas. Cada exibição deve ser um identificador SQL válido com quaisquer caracteres especiais escapados usando colchetes, aspas duplas ou acentos graves. Por exemplo, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.

Observe que, ao conectar-se a uma fonte de dados com vários esquemas ou catálogos, você precisará fornecer o nome totalmente qualificado da tabela nesta propriedade, como no último exemplo aqui, para evitar ambigüidade entre tabelas que existem em vários catálogos ou esquemas.

Diversos

Esta seção fornece uma lista completa de diversas propriedades que você pode configurar.

Propriedade Descrição
MaxRows Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.
NavigationPropertiesAsViews Um booleano indicando as propriedades de navegação deve ser promovido para exibições completas.
Other Essas propriedades ocultas são usadas apenas em casos de uso específicos.
Timeout O valor em segundos até que o erro de timeout seja lançado, cancelando a operação.
UseDisplayNames Booleano determinando se deve ou não usar rótulos SAP.

MaxRows

Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.

Tipo de Dados

int

Valor Padrão

-1

Observações

Limita o número de linhas retornadas quando nenhuma agregação ou agrupamento é usado na consultar. Isso ajuda a evitar problemas de desempenho em tempo de design.

NavigationPropertiesAsViews

Um booleano indicando as propriedades de navegação deve ser promovido para exibições completas.

Tipo de Dados

bool

Valor Padrão

true

Observações

Essa propriedade pode ser útil para SAP ByDesign, que pode retornar coleções relacionadas de entidades ou propriedades de navegação. Algumas entidades do SAP ByDesign só podem ser acessadas por meio de propriedades de navegação. NavigationPropertiesAsViews fará com que todas as propriedades de navegação descobertas sejam adicionadas como exibições no formato ParentTable_NavigationProperty.

Outro

Essas propriedades ocultas são usadas apenas em casos de uso específicos.

Tipo de Dados

string

Valor Padrão

""

Observações

As propriedades listadas abaixo estão disponíveis para casos de uso específicos. Casos de uso de driver normal e funcionalidade não devem exigir essas propriedades.

Especifique várias propriedades em uma lista separada por ponto e vírgula.

Integração e Formatação
Propriedade Descrição
DefaultColumnSize Define o comprimento padrão dos campos de string quando a fonte de dados não fornece o comprimento da coluna nos metadados. O valor padrão é 2000. Voltar para o início
ConvertDateTimeToGMT Determina se os valores de data e hora devem ser convertidos em GMT, em vez da hora local da máquina.
RecordToFile=filename Registra a transferência de dados do soquete subjacente para o arquivo especificado.

Tempo Esgotado

O valor em segundos até que o erro de timeout seja lançado, cancelando a operação.

Tipo de Dados

int

Valor Padrão

60

Observações

Se Timeout = 0, as operações não expiram. As operações são executadas até serem concluídas com êxito ou até encontrarem uma condição de erro.

Se Timeout expira e a operação ainda não está concluída, o conector lança uma exceção.

UseDisplayNames

Booleano determinando se deve ou não usar rótulos SAP.

Tipo de Dados

bool

Valor Padrão

false

Observações

Booleano determinando se deve ou não usar rótulos SAP.

Se definido como true, os rótulos que você configurou em sua conta para as propriedades OData servirão como nomes de coluna. Caso contrário, o nome da propriedade será o nome da coluna.