Community Spring Cleaning week is here! Join your fellow Maveryx in digging through your old posts and marking comments on them as solved. Learn more here!
Free Trial

Fórum

SOLUCIONADO

Dados de saída ODBC (DataWrap2ODBC::SendBatch: Truncamento à direita dos dados...)

gustavogs98
Meteoro

Alguém que já passou por esse problema pode me ajudar?

Estou usando a opção de saída "Agregar existente"

Já tentei mudar os drivers e os tipos de dados e não funcionou, porém quando troco pra "Criar nova tabela" ele funciona normalmente, mas preciso agregar à uma tabela já existente.

 

A mensagem de erro:

 

Error: Dados de Saída (231): DataWrap2ODBC::SendBatch: [Microsoft][SQL Server Native Client 11.0]Truncamento à direita dos dados da cadeia de caracteres Insert into "Tabela" ("nomes das colunas") Values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)

8 RESPOSTAS 8
carlosteixeira
15 - Aurora
15 - Aurora

Boa noite @gustavogs98 tudo bem?

Muito provavelmente, não posso afirmar com 100% de certeza pq nao estou vendo sua tabela, mas você está com problemas de tipo de dados em alguma coluna que está esperando, por exemplo, número e vc está enviando texto.

 

Valida todos os campos e todos os tipos entre o alteryx e a sua tabela no banco!

 

Se quiser posta as imagens e gente analisa com mais calma

 

Abraços

Carlos A Teixeira
gustavogs98
Meteoro

Obrigado pela resposta, quase todas as tabelas tem números e texto juntos pois são códigos

gustavogs98
Meteoro

Captura de tela 2022-08-25 110038.png

 

carlosteixeira
15 - Aurora
15 - Aurora

@gustavogs98 o seu Campo CEP está vindo com '-'????

 

Se ele estiver com vai dar problema no tamanho, você está com tamaho 8 e contando com o '-' você teria 9 aí ele vai truncar

07050060 (8 caracteres) contra 07050-060 (9 caracteres)

 

Consegue checar isso nos seus dados?

 

 

Abraços

Carlos A Teixeira
kendi
Bólide

oi @gustavogs98 

 

Pela mensagem de erro "Truncamento à direita dos dados da cadeia de caracteres " acredito que pode ser o tamanho do campo que está muito maior ao tamanho da coluna na tabela do Banco de Dados.

Fiz um teste aqui tentando escrever no banco uma string maior do que a coluna na tabela fonte. O erro foi um pouco diferente, mas é um mensagem de erro da oracle, talvez a mensagem de erro do seu SGBD seja diferente:

kendi_1-1661473570766.png

 

 

Você consegue consultar a estrutura da tabela no Banco (colunas, tipo do dado, tamanho)? (acredito que você consegue essa informação através do próprio Alteryx, fazendo um extração de dados desta tabela no próprio alteryx:

kendi_0-1661473171585.png

)

Se você não tiver acesso a essa informação, tente diminuir o tamanho das colunas no alteryx. Uma coisa que também tive problemas foi deixar as colunas como V_String e V_WString, pois a tabela estava como String e não varchar. Então tente mudar as strings para o tipo 'String' também.

 

 

Espero que ajude, qualquer coisa mande mais mensagens.

 

Abraços,

Kendi Ito

 

 

gustavogs98
Meteoro

Boa tarde, obrigado pelas respostas.

Era realmente o tipo dos dados, porém agora estou com outro problema, estou confuso em qual tipo colocar pra dar certo

Usei esses tipos e ainda assim não gravou todos.

Captura de tela 2022-08-29 165102.png

 Estao assim no banco

Captura de tela 2022-08-29 165759.png

kendi
Bólide

Oi @gustavogs98 

 

Cara, aparentemente apesar de ser um varchar/V-String nos dois casos, o campo cProd no seu banco é 11 e no Alteryx está 15, este pode ser o problema.

 

O segundo ponto que eu consideraria são os campos que estão como nvarchar(MAX) e no Alteryx está com um tamanho 'gigante', eu tentaria limitar o tamanho no Alteryx para o mínimo possível, acredito que pode haver alguma dificuldade na hora de escrever.

Nesses campos tem um outro ponto que pode ser crucial, mas não sei dizer ao certo se pode ser o que está te atrapalhando ou não.

No banco o tipo está  nvarchar e não simplesmente varchar, no Alteryx o campo está como V_String. O equivalente ao nvarchar no Alteryx seria V_WString.

 

Se nada disso der certo eu tentaria mudar todos os campos de V_String para String.

 

Acredito que o o tamanho diferente do campo cProd e os campos nvarchar deve ser o problema.

Se ainda assim nada der certo, eu choraria rsrs.

 

Espero que tenha ajudado, caso ainda não de certo, fala aí que tentamos outra coisa.

 

Abraços,

Kendi Ito

gustavogs98
Meteoro

Era exatamente a quantidade de caracteres do cProd, alterei no banco e deu certo :)

Obrigado!!

Rótulos