[firebase-br] Remover o ultimo caractere de uma string
Moacir - GMAIL
prismars em gmail.com
Qui Fev 18 06:15:38 -03 2016
Gladiston,
Veja se a procedure abaixo te ajuda:
SET TERM ^ ;
create or alter procedure STRLEN (
TEXTO varchar(1000))
returns (
TAM integer)
as
declare variable BUF varchar(1000);
BEGIN
TAM = 0;
BUF = '';
WHILE (NOT TEXTO LIKE BUF) DO
BEGIN
TAM = TAM + 1;
BUF = BUF || '_';
END
suspend;
END^
SET TERM ; ^
Sucesso,
Moacir
Em 17/02/2016 20:58, Gladiston Santana escreveu:
> Alguém aí sabe como remover o ultimo caractere de uma string ?
> Mas calma ai, antes de recomendar left(var, length(var)-1) ou algo do
> genero, o que eu quero está limitado a um campo calculado, o exemplo:
>
> CREATE TABLE BLA(....
>
> STATUS_COMENTARIO COMPUTED BY ((trim(
> CASE
> WHEN (STATUS='A') THEN
> iif(SE_AUTORIZAR='S', 'autorizar,', '')||
> iif(SE_CALCULAR='S','[re]calcular,','')||
> iif(SE_VENCER='S','vencer','')
> WHEN (STATUS='I') THEN 'Informativo'
> WHEN (STATUS='C') THEN 'Cancelado'
> WHEN (STATUS='F') THEN 'Concluído'
> ELSE 'Desconhecido'
> END)
> ))
>
> Na linha acima você pode ver uma concatenação de palavras terminadas com
> virgulas, assim gerará resultados como:
> autorizar,[re]calcular,vencer,
>
> E não consigo remover o ultimo caractere.
> Ja tentei concatenar ASCII_CHAR(8), replace ,\n, e realmente parece ser sem
> saida, mas antes de desistir, resolvi colocar a questão na lista e saber se
> alguém conhece outra forma.
>
---
Este email foi escaneado pelo Avast antivírus.
https://www.avast.com/antivirus
Mais detalhes sobre a lista de discussão lista