Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa tarde, estou com dúvidas em um campo string.
Existe uma tabela em meu banco e tenho um campo String :
Ao ler esse campo no Qlik ele mostra assim :
1561 FLEISCHMANN
12032 FISCHER
13568 MADEVALI
30540,30194 LAMINADOS AB
114,171 WOODEX
114,176 WOODEX
Preciso Deixar dessa forma
1561 FLEISCHMANN
12032 FISCHER
13568 MADEVALI
30540 LAMINADOS AB
30194 LAMINADOS AB
114 WOODEX
171 WOODEX
114 WOODEX
176 WOODEX
Atenciosamente
Maicon Mello
Olá Maicon!
Acho que isso pode ajudar:
Base:
LOAD * Inline [
MyColumn
"1561 FLEISCHMANN"
"12032 FISCHER"
"13568 MADEVALI"
"30540,30194 LAMINADOS AB"
"114,171 WOODEX"
"114,176 WOODEX"
];
Temp:
// apenas campos com a vírgula
LOAD
MyColumn,
Trim(PurgeChar(MyColumn,'0123456789,')) as Nome,
Trim(PurgeChar(MyColumn,'ABCDEFGHIJKLMNOPQRSTUVXWYZ')) as Id
Resident Base
Where WildMatch(MyColumn,'*,*')>0;
Concatenate
// apenas campos sem a vírgula
LOAD
MyColumn,
Trim(PurgeChar(MyColumn,'0123456789,')) as Nome,
Trim(PurgeChar(MyColumn,'ABCDEFGHIJKLMNOPQRSTUVXWYZ')) as Id
Resident Base
Where WildMatch(MyColumn,'*,*')=0;
Final:
LOAD
MyColumn,
Id,
Nome,
IterNo() as Posicao,
SubField(Id,',',IterNo()) as Codigo
Resident Temp
While not IsNull(SubField(Id,',',IterNo()));
DROP Tables Temp,Base;
Olá Maicon!
Acho que isso pode ajudar:
Base:
LOAD * Inline [
MyColumn
"1561 FLEISCHMANN"
"12032 FISCHER"
"13568 MADEVALI"
"30540,30194 LAMINADOS AB"
"114,171 WOODEX"
"114,176 WOODEX"
];
Temp:
// apenas campos com a vírgula
LOAD
MyColumn,
Trim(PurgeChar(MyColumn,'0123456789,')) as Nome,
Trim(PurgeChar(MyColumn,'ABCDEFGHIJKLMNOPQRSTUVXWYZ')) as Id
Resident Base
Where WildMatch(MyColumn,'*,*')>0;
Concatenate
// apenas campos sem a vírgula
LOAD
MyColumn,
Trim(PurgeChar(MyColumn,'0123456789,')) as Nome,
Trim(PurgeChar(MyColumn,'ABCDEFGHIJKLMNOPQRSTUVXWYZ')) as Id
Resident Base
Where WildMatch(MyColumn,'*,*')=0;
Final:
LOAD
MyColumn,
Id,
Nome,
IterNo() as Posicao,
SubField(Id,',',IterNo()) as Codigo
Resident Temp
While not IsNull(SubField(Id,',',IterNo()));
DROP Tables Temp,Base;
@Marcelo Fonseca muito obrigado , isso mesmo.
Abraço