Os dados de acesso ao sistema de banco de dados SQL são especificados em um arquivo XML. O nome desse arquivo XML é transferido para a ferramenta de linha de comando como um argumento.
O formato do arquivo XML é especificado pela seguinte DTD:
Elemento ou atributo |
Descrição |
Exemplo |
jdbcconf |
Configuração do sistema JDBC especificando os sistemas de banco de dados e as conexões de banco de dados a serem usadas |
- |
databasesettings |
Configurações gerais para o sistema de banco de dados usado |
- |
name |
Nome único das configurações do sistema de banco de dados geral |
setting_oracle |
dbtype |
Tipo de banco de dados usado; valores válidos: ORACLE | DB2 | SQLSERVER | OTHER |
ORACLE |
driverclass |
Classe de driver a ser usada no sistema de banco de dados |
oracle.jdbc.driverOracleDriver |
maxconditionlength |
O valor especificado limita o comprimento do componente WHERE de uma consulta SQL |
1000 |
fetchsize |
Número de registros de dados transferidos simultaneamente do servidor DB para o cliente Java. Para a maioria dos sistemas de banco de dados, o valor padrão é 10. |
1000 |
databaseconnection |
Informações sobre a conexão de banco de dados |
- |
name |
Nome único da conexão de banco de dados |
oracle_connection1 |
dbsettings |
Nome único das configurações do sistema de banco de dados geral |
setting_oracle |
url |
URL da conexão de banco de dados |
Ver o extrato de arquivo abaixo |
user |
Nome do usuário do banco de dados |
ppmoracle |
password |
Senha do usuário do banco de dados |
ppmoracle |
encryptpw |
Senha criptografada como uma combinação de valores após avaliação do elemento <password> |
62 -62 -56 |
lastreaddate |
Data a partir da qual os dados são extraídos. Não aplicável quando usar um formato fonte de dados: aaaammdd |
20050131 |
lastreadtime |
Hora a partir da qual os dados são extraídos. Não aplicável ao usar uma fonte de dados, formato: hhmmss |
152917 |
language |
Idioma dos campos de texto extraídos |
EN |
O tipo de banco de dados pode ser um dos valores predefinidos para servidor Oracle, IBM DB2, MS SQL ou sistemas de banco de dados MS Access. O valor OTHER deve ser usado se quiser extrair dados de um banco de dados de um tipo diferente dos quatro mencionados acima.
O parâmetro maxconditionlength permite especificar um valor que limita o comprimento do componente WHERE de uma consulta SQL ao valor especificado. Isso é necessário para cumprir as restrições de comprimento nos diferentes sistemas de banco de dados. Se a consulta SQL for maior que o comprimento máximo especificado, ela será dividida em várias consultas menores executadas separadamente.
O parâmetro fetchsize permite especificar quantas linhas de dados serão transferidas simultaneamente do banco de dados para o extrator JDBC, por cada operação de leitura.
A senha do usuário do banco de dados tem de ser especificada em forma não criptografada e texto simples no elemento XML password. Durante a extração a seguir, e após avaliação, a senha é gravada de volta na configuração do sistema JDBC, em formato criptografado, no elemento XML encryptpw. A entrada password é então excluída. A qualquer momento, a configuração do sistema pode incluir apenas uma das duas entradas.
Para alterar uma senha existente, adicione uma nova entrada password ao arquivo de configuração atual e exclua a entrada encryptpw. A nova senha é criptografada como parte da extração seguinte.
O parâmetro idioma é opcional. Se especificar um valor, este será comparado com o nome de campo da configuração da tabela (langfieldname) (ver o capítulo Configuração da tabela JDBC). Por exemplo, se langfieldname="LANG" for especificado em uma tabela e <language>EN</language> for especificado na configuração do sistema JDBC, apenas serão extraídos os registros de dados para os quais LANG tem o valor EN.
O extrato de arquivo seguinte mostra uma configuração de exemplo do sistema JDBC:
<jdbcconf>
<databasesettings name="setting_sqls" dbtype="SQLSERVER">
<driverclass>com.microsoft.jdbc.sqlserver.SQLServerDriver
</driverclass>
<maxconditionlength>1000</maxconditionlength>
<fetchsize>1000</fetchsize>
</databasesettings>
<databasesettings name="setting_oracle" dbtype="ORACLE">
<driverclass>oracle.jdbc.driver.OracleDriver</driverclass>
<maxconditionlength>1000</maxconditionlength>
<fetchsize>1000</fetchsize>
</databasesettings>
<databaseconnection name="sqls_connection">
<dbsettings>setting_sqls</dbsettings>
<url>jdbc:microsoft:sqlserver:
//PC3:1433;SelectMethod=Cursor;
DatabaseName=ppmdb
</url>
<user>ppmuser</user>
<password>ppmuser</password>
<lastreaddate>20050228</lastreaddate>
<lastreadtime>000000</lastreadtime>
<language />
</databaseconnection>
<databaseconnection name="oracle_connection1">
<dbsettings>setting_oracle</dbsettings>
<url>jdbc:oracle:thin:@pcppm:1521:orappm_test
</url>
<user>ppmoracle</user>
<password>ppmoracle</password>
<lastreaddate>20051231</lastreaddate>
<lastreadtime>235959</lastreadtime>
</databaseconnection>
<databaseconnection name="oracle_connection2">
<dbsettings>setting_oracle</dbsettings>
<url>jdbc:oracle:thin:@pcppm:1521:orappm_produktiv</url>
<user>ppmoracle2</user>
<encryptpw>48 -62 -76 -60 -108 -57 -92</encryptpw>
<lastreaddate>20050228</lastreaddate>
<lastreadtime>000000</lastreadtime>
</databaseconnection>
</jdbcconf>
Para que PPM Process Extractor JDBC-2-PPM possa usar os dados de configuração para conectar ao banco de dados, terá de copiar os drivers JDBC (arquivos JAR e/ou ZIP) para o seguinte diretório da instalação.
<PPM installation directory>\ppm\server\bin\work\data_ppm\drivers