Solucionado (ver solução)
Solucionado
(ver solução)
14
respostas

Leitura Tabela de Fato 001.0 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Unexpected error

Estou com erro no Spoon , quando tento visualizar tabela de fato 001, rodei a query no SQL Server da certo , porem no Spoon da o erro abaixo :

Fato_001 - Dispatching started for transformation [Fato_001] Leitura Tabela de Fato 001.0 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Unexpected error Leitura Tabela de Fato 001.0 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : org.pentaho.di.core.exception.KettleDatabaseException: Leitura Tabela de Fato 001.0 - An error occurred executing SQL: Leitura Tabela de Fato 001.0 - SELECT * FROM [TAB_FATO001] WHERE YEAR(DATA_FATO) >=2013 AND MONTH(DATA_FATO) >=1 AND YEAR(DATA_FATO) <=2013 AND MONTH(DATA_FATO) <=1; Leitura Tabela de Fato 001.0 - O tamanho da busca não pode ser negativo. Leitura Tabela de Fato 001.0 - Leitura Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.openQuery(Database.java:1763) Leitura Tabela de Fato 001.0 - at org.pentaho.di.trans.steps.tableinput.TableInput.doQuery(TableInput.java:236) Leitura Tabela de Fato 001.0 - at org.pentaho.di.trans.steps.tableinput.TableInput.processRow(TableInput.java:140) Leitura Tabela de Fato 001.0 - at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62) Leitura Tabela de Fato 001.0 - at java.lang.Thread.run(Unknown Source) Leitura Tabela de Fato 001.0 - Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: O tamanho da busca não pode ser negativo. Leitura Tabela de Fato 001.0 - at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:191) Leitura Tabela de Fato 001.0 - at com.microsoft.sqlserver.jdbc.SQLServerStatement.setFetchSize(SQLServerStatement.java:1757) Leitura Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.openQuery(Database.java:1741) Leitura Tabela de Fato 001.0 - ... 4 more Leitura Tabela de Fato 001.0 - Finished reading query, closing connection. Leitura Tabela de Fato 001.0 - Finished processing (I=0, O=0, R=0, W=0, U=0, E=1) Fato_001 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Errors detected! Spoon - The transformation has finished!! Fato_001 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Errors detected! 2021/06/16 11:56:05 - Fato_001 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Errors detected! 2021/06/16 11:56:05 - Fato_001 - Transformation detected one or more steps with errors. 2021/06/16 11:56:05 - Fato_001 - Transformation is killing the other steps!

Conexão : https://i.ibb.co/Nj5zZLX/conex-o.png

Tabela de Fato _ Spoon : https://i.ibb.co/D1LcW6B/Leitura-Tabela-de-Fato-001.png

Consulta dentro do SQL : https://i.ibb.co/Jk7HkK1/sql-server-fato-001.png

Erro : https://i.ibb.co/P4PB8pG/erro.png

14 respostas

Oii Helio, tudo bom?

Esse erro está sendo retornado ao rodar o job da fato ou ao clicar no preview?

Eu não encontrei a raíz do erro e nem consegui replicar o erro aqui em minha máquina. Então queria pedir para você fazer um teste:

  • Altere o tipo de conexão da fonte das fatos, coloque JDBC e coloque as credenciais e verifique se o erro continua.

Fico aguardando :)

Gabi

Boa tarde

Estou testando roda a preview e estava dando este erro , colei o drive sqljdbc42.jar na pasta treinamento\designer-tools\data-integration\Data Service JDBC Driver e a preview rodou .

https://i.ibb.co/qysm9tT/fao01.png

Agora esta com outro erro

2021/06/17 11:54:46 - Leitura Tabela de Fato 001.0 - Finished processing (I=1613, O=0, R=0, W=1613, U=0, E=0) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : Error in step, asking everyone to stop because of: 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - ERROR (version 8.2.0.0-342, build 8.2.0.0-342 from 2018-11-14 10.30.55 by buildguy) : org.pentaho.di.core.exception.KettleDatabaseException: 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - Error inserting/updating row 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - Cannot add or update a child row: a foreign key constraint fails (dwsucos.fato_001, CONSTRAINT dim_tempo_fato_001_fk FOREIGN KEY (Cod_Tempo) REFERENCES dim_tempo (Cod_Tempo) ON DELETE NO ACTION ON UPDATE NO ACTION) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.insertRow(Database.java:1319) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.insertRow(Database.java:1243) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.insertRow(Database.java:1231) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.insertRow(Database.java:1219) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.trans.steps.insertupdate.InsertUpdate.lookupValues(InsertUpdate.java:114) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.trans.steps.insertupdate.InsertUpdate.processRow(InsertUpdate.java:299) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.trans.step.RunThread.run(RunThread.java:62) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at java.lang.Thread.run(Unknown Source) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - Caused by: java.sql.SQLIntegrityConstraintViolationException: Cannot add or update a child row: a foreign key constraint fails (dwsucos.fato_001, CONSTRAINT dim_tempo_fato_001_fk FOREIGN KEY (Cod_Tempo) REFERENCES dim_tempo (Cod_Tempo) ON DELETE NO ACTION ON UPDATE NO ACTION) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:117) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1092) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1040) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate(ClientPreparedStatement.java:1348) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate(ClientPreparedStatement.java:1025) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - at org.pentaho.di.core.database.Database.insertRow(Database.java:1286) 2021/06/17 11:54:46 - Gravação de Tabela de Fato 001.0 - ... 7 more

Oi Helio,

Ahh, então era um erro de driver. Nossa, nada a ver com o erro retornado.

Agora esse erro retornado, é de chave estrangeira, referente a dimensão tempo.

foreign key constraint fails (dwsucos.fato_001, CONSTRAINT dim_tempo_fato_001_fk FOREIGN KEY (Cod_Tempo) REFERENCES dim_tempo (Cod_Tempo)

O ideal seria olhar as relações e a tabela da dimensão tempo, se as colunas estão por lá.

Oi Gabi ,

Vou dar uma olhada , mas nos passos anteriores adimensão tempo tinha dado certo , vamos ver ,

Ja posto o resultado , to parado neste curso , esta dando muito erro

Oi Gabi ,

Ja li todas as mensagens do Forum , ja exclui a tabela Dim_tempo , refiz a mesma , deu carga , comparei as tabelas e não achei erro .

Criei uma pasta no Google Drive ( https://drive.google.com/drive/folders/1686knfombJnEyF4Xg33WL54Ql3VMzYam?usp=sharing )esta com os Spoon Fato_001, DimensãoTempo, as querys .

Se puder dar uma olhada e me dar um retorno eu agradeço .

Oi Helio,

Eu olhei seus arquivos. Até rodei a dimensão tempo e fato 001 e foi de boa. Não estou encontrando o erro também :(

Vou pedir pra você fazer um outro teste, apague as tabelas dimensão tempo e fato 001 e recrie usando esse código:

CREATE TABLE `dim_tempo` (
  `Cod_Tempo` varchar(50) NOT NULL,
  `Data` date NOT NULL,
  `Numero_Dia_Semana` varchar(50) NOT NULL,
  `Numero_Mes` varchar(50) NOT NULL,
  `Numero_Ano` varchar(50) NOT NULL,
  `Nome_Mes` varchar(250) NOT NULL,
  `Numero_Trimestre` varchar(50) NOT NULL,
  `Nome_Trimestre` varchar(250) NOT NULL,
  `Numero_Semestre` varchar(50) NOT NULL,
  `Nome_Semestre` varchar(250) NOT NULL,
  PRIMARY KEY (`Cod_Tempo`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `fato_001` (
  `Cod_Fabrica` varchar(50) NOT NULL,
  `Cod_Tempo` varchar(50) NOT NULL,
  `Cod_Cliente` varchar(50) NOT NULL,
  `Cod_Organizacional` varchar(50) NOT NULL,
  `Cod_Produto` varchar(50) NOT NULL,
  `Faturamento` double NOT NULL,
  `Unidade_Vendida` double NOT NULL,
  `Quantidade_Vendida` double NOT NULL,
  `Imposto` double NOT NULL,
  `Custo_Variavel` double NOT NULL,
  PRIMARY KEY (`Cod_Fabrica`,`Cod_Tempo`,`Cod_Cliente`,`Cod_Organizacional`,`Cod_Produto`),
  KEY `dim_organizacional_fato_001_fk` (`Cod_Organizacional`),
  KEY `dim_produto_fato_001_fk` (`Cod_Produto`),
  KEY `dim_tempo_fato_001_fk` (`Cod_Tempo`),
  KEY `dim_clinete_fato_001_fk` (`Cod_Cliente`),
  CONSTRAINT `dim_cliente_fato_001_fk` FOREIGN KEY (`Cod_Cliente`) REFERENCES `dim_cliente` (`Cod_Cliente`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  CONSTRAINT `dim_fabrica_fato_001_fk` FOREIGN KEY (`Cod_Fabrica`) REFERENCES `dim_fabrica` (`Cod_Fabrica`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  CONSTRAINT `dim_organizacional_fato_001_fk` FOREIGN KEY (`Cod_Organizacional`) REFERENCES `dim_organizacional` (`Cod_Organizacional`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  CONSTRAINT `dim_produto_fato_001_fk` FOREIGN KEY (`Cod_Produto`) REFERENCES `dim_produto` (`Cod_Produto`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  CONSTRAINT `dim_tempo_fato_001_fk` FOREIGN KEY (`Cod_Tempo`) REFERENCES `dim_tempo` (`Cod_Tempo`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Depois, tente fazer as cargas. Me avise qualquer coisa :)

Oi Gabi

Fiz o que vc pediu , quanto a dimensão Tempo du certo , ja na gravação da tabela Fato 001 deu o mesmo erro

Gravação de Tabela de Fato 001.0 - Cannot add or update a child row: a foreign key constraint fails (dwsucos.fato_001, CONSTRAINT dim_tempo_fato_001_fk FOREIGN KEY (Cod_Tempo) REFERENCES dim_tempo (Cod_Tempo) ON DELETE NO ACTION ON UPDATE NO ACTION)

Alguem com este erro e conseguiu resolver ?

Estou parado neste curso .

Oi Helio, desculpa a demora em responder.

Ainda não consegui localizar o erro :(

Seus processos estão ok. Revisei e fiz a carga aqui em minha máquina e dá tudo certo.

Carga Fato 001

O erro que retorna, é um erro de chave estrangeira. Pode ser por não estar encontrando a tabela, algum tipo de dado errado. Maaass, você recriou as tabelas com o código que enviei e ainda continua o erro.

No SQL Server, como está a sua tabela de Fato 001? Poderia me mandar um print por favor?

Fico no aguardo :)

Gabi

Não deu certo ainda não . Não consigo avançar no restante dos cursos da Formação , pois dependo dessa base de dados preenchida

Refiz as tabelas duas vezes , testei nos banco , ambos roda as querys , veja abaixo

Tabela de Fato_001- Configuração no Spoon : https://i.ibb.co/D1LcW6B/Leitura-Tabela-de-Fato-001.png

Tabela de Fato_001- Preview no Spoon : https://i.ibb.co/cJ9NpHw/fao01.png

Consulta dentro do SQL Server: https://i.ibb.co/30N2Yh5/Fato-001.png

Consulta dentro do SQL Server c/ filtro de data : https://i.ibb.co/Jk7HkK1/sql-server-fato-001.png

Gabi

Boa tarde Consegue me dar uma luz quanto a este problema ?

No aguardo .

Helio

Oi Helio, desculpa a demora.

Cara, olhei isso de tudo quanto é jeito. Não encontro o erro de forma alguma, está tudo certo :/ confesso que tô quase chorando por não encontrar kk

Vou pedir outro teste, vou te mandar meus jobs e você tenta rodar eles ai, vamos ver se esse erro continua. Segue o link: Arquivos Pentaho

Me avisa qualquer coisa e desculpa novamente pela demora.

solução!

Gabi

Obrigado pelo retorno , tambem to louco aqui .

Ja olhei tudo , deletei banco de dados , criei novamente e nada

As query´s rodam certinho no banco , mas quando joca no pentaho da este erro

Vou olhar seu codigo e te respondo

Gabi

Deu certo com seus codigos .

Valeu

Obrigado .