Free Trial

Fórum

SOLUCIONADO

Remover " . " de um código

lestephany
Meteoro

Boa noite pessoal, eu estou com uma base de dados que após unificar todos os excel ele faz um filtro de uma coluna. Porém essa coluna está vindo com ponto e no filtro não consta esse ponto dando o erro de Tipo inválido no operador ==.

 

lestephany_0-1665184509902.png

lestephany_1-1665184534606.png

 

Eu já olhei os arquivos e lá não tem esse ponto, não sei se é alguma ferramenta do fluxo que está colocando, ou o formato dessa coluna no excel. Porque olhei no select e ela está como DOUBLE. Alguém tem alguma ideia do que pode ser?

 

 

8 RESPOSTAS 8
Garabujo7
Alteryx
Alteryx

Opa @lestephany ,

 

O ponto é só um separador de milhares no Designer.

Você pode apagar isso clicando nos três pontos da direita.

 

Garabujo7_0-1665188183450.png

 

 

Garabujo7_1-1665188206260.png

 

 

Gabriel

lestephany
Meteoro

Na versão que eu utilizo não consegui encontrar essa opção :/ 
Mas muito obrigada pelo retorno.

Olá @lestephany  tudo bem?

 

Para retirar o ponto é só seguir a dica do @Garabujo7 .

 

Seu fluxo esta dando errado, não por conta do ponto. Porque como você mesmo mencionou o tipo de dado está como DOUBLE.

Se você olhar no seu fluxo, todos os números você utilizou no filtro estão entre aspas. Ex: "1500", transformando assim tudo em STRING.

 

Então para resolver é só usar, CFOP = 1500 OR CFOP = 1450 sem os "".

 

Fiz um exemplo pra ti. 

Qualquer coisa avisa que pensamos em outra forma.

 

Abraço.

 

 

lestephany
Meteoro

Obrigada pelo retorno, os ajustes das aspas deram certo, o filtro parou de dar erro... Porém a saída veio em branco, vou precisar verificar internamente essa questão, mas obrigada pela ajuda!!

kendi
Bólide

@lestephany, acredito que a dica do @nicolascorreiacolombo deveria ter funcionado.

 

Algumas coisas que eu pensei que pode ter acontecido:

1) Você tem certeza de que nesta base de dados tem a ocorrência de algum das CFOPs do seu filtro?

 

2) A coluna CFOP não precisa ser Double pois sempre será número inteiro, eu mudaria então o tipo de dado para int. Não acho que seja o caso, mas a depender das casas decimais no número as vezes o alteryx pode arredondar o número na visualização, mesmo não sendo um número redondo. Não acho que seja o seu caso, pois normalmente ele indica que o número está arrendondado e não teria porque a CFOP ter casa decimal no seu arquivo de origem, mas vai que.

 

Exemplo:A setinha vermelha indica que o número foi arredondado:

kendi_0-1665274139924.png

 

3) No meu Alteryx o ponto é separador decimal de números decimais não de milhares. Ou seja, o CFOP 1.151 do seu print no meu Alteryx seria: um VíRGULA cento cinquenta e um, não mil centro cinquenta e um.

Pode ser que no seu Alteryx esteja com a configuração diferente, e o ponto seja o serador decimal.

 Tente mudar para inteiro, pois se o ponto for separador decimal igual ao meu alteryx o seu CFOP virará apenas um número ( 1 ou 2 ou 3...), se o número se manter igual o seu alteryx utiliza o ponto como separador de milhar.

Você também pode ver essa configuração aqui:

kendi_1-1665274626548.png

kendi_2-1665274658535.png

 

 

 

 

Uma dica para o seu filtro ficar um pouco mais clean (na minha opinião rsrs). Você pode usar o operador IN para não precisar repetir toda vez o OR [CFOP] = XXXX.

Iria ficar assim:

[CFOP] IN (5101 ,5102, 5103, 5104, 5106, 5109,....

@kendi sua solução me deu outra ideia.

Também é possível criar uma base auxiliar chamada CFOP e lá colocar todos os dados que precisa filtrar e usar join. Dessa forma não precisa ficar mudando e conferindo no filter toda vez, já que são muitos CFOPS.

lestephany
Meteoro

Pessoal, vocês são incríveis... vou tentar tudo e depois aviso se deu certo. Muuuito obrigada por toda ajuda 🤗

Ranyaky-Vilela
Bólide

@lestephany boa tarde, tudo bem?

 

Você precisa verificar alguns pontos antes do Filter, o seu resultado está retornando sem valor é porque não existe nenhum campo com esta condição que você utilizou.

Se isso não for verdadeiro, alguns dos arquivos pode estar fora do padrão, porque se vc transformar o campo [CFOP] para Double, e ele tiver algum . (ponto) e terminar em 0 ele vai eliminar o 0 após a virgula, se tiver , (virgula) ele transformar o numero em inteiro, removendo tudo após a vírgula.

 

Pelas imagens você tem muitos registros, então após o input dos dados eu transformaria este campo [CFOP] em String,  usaria um Data Cleasing e removeria pontuação e depois com select transformaria em Double. Dessa forma você padroniza esse campo e tem a certeza que não vai ter falso/positivo.

 

Caso ainda tiver duvidas ou gerar erros se você poder anexe um exemplo do fluxo para podermos analisar.

 

Abraços.

Rótulos