[firebase-br] função STUFF (SOLUÇÃO)
Hélio Oliveira
hpensador em gmail.com
Qui Set 13 09:20:38 -03 2018
Bom dia Colegas!
Com base no que está descrito aqui http://www.oohg.org/cl53/nga2123.html
criei a função abaixo. Nos testes feitos com os valores do exemplo do
material encontrado no link acima, a mesma está funcionando 100% - deixo
aqui como uma contribuição.
Fiz uma SP por estar usando o FB 2.5 neste projeto, se fosse no 3.0
seria uma Function.
CREATE PROCEDURE STUFF (
WP_texto VARCHAR(1000),
WP_Start INTEGER,
WP_Delete INTEGER,
WP_Insert VARCHAR(100))
RETURNS (
WW_Stuff VARCHAR(1000) )
AS
DECLARE VARIABLE WW_P1 VARCHAR(1000);
DECLARE VARIABLE WW_P2 VARCHAR(1000);
BEGIN
WW_Stuff = '';
if (WP_Delete > 0) then begin
WW_P1 = SUBSTRING(WP_texto FROM 1 FOR WP_Start-1);
WW_P2 = SUBSTRING(WP_texto FROM (WP_Start+WP_Delete) FOR
CHAR_LENGTH(WP_texto));
end else if (WP_Delete = 0) then begin
WW_P1 = SUBSTRING(WP_texto FROM 1 FOR WP_Start-1);
WW_P2 = SUBSTRING(WP_texto FROM WP_Start FOR CHAR_LENGTH(WP_texto));
end
WW_Stuff = WW_P1 || WP_Insert || WW_P2;
SUSPEND;
END;
Em 12/09/2018 13:49, Hélio Oliveira escreveu:
> Boa tarde Colegas!
>
> Temos alguma função nativa no Firebird que faço o mesmo que essa função
> do C http://www.oohg.org/cl53/nga2123.html.
>
> [ ]'s,
>
> Hélio
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas:
> http://www.firebase.com.br/pesquisa_lista.html
>
Mais detalhes sobre a lista de discussão lista