Bom dia pessoal, Estou tendo um problema no meu banco de dados, na hora que o usuario digita uma informação, ele está dando CTRL+C e CTRL+V de uma planilha do Excel, e está vindo um caracter especial junto. Este é um campo alfanumerico. Na hora de exportar esses dados para um arquivo texto percebi que este caracter que está a mais está fazendo quebrar a linha do arquivo. A mesma coisa acontece se eu dou em export só pra ver os dados. Se eu altero pelo editor, esse caracter aparece como um quadradinho preto, e eu conigo deletar ele por ai. Mas como já tenho vários na minha base, precisava fazer um programa pra deletar vários de uma vez, em vez de entrar registro por registro. Já tentei com trim, mas ele só retira espaços em branco ou se eu determinar qual caracter eu quero apagar, mas como não sei que caracter é esse, ainda não descobri como fazer isso. Se alguem tiver alguma sugestão eu agradeço muito!
Bom dia Ana, Tente remover usando o replace. Segue exemplo Código: Assign c-coment = item-fornec.narrativa. c-coment = REPLACE(c-coment, CHR(10), ' '). /*Substitui enter por espaço*/ É possivel que o caracter que vc tenha nao seja o 10, tenta com o 13 também. Caso nao seja nenhum dos dois... melhor fazer um programa pra ler os dados e te mostrar qual é o caracter.... Abraço
Obrigada Fabio, Funcionou certinho, só tive q fazer assim pq tinha os 2 caracteres: c-coment = REPLACE(c-coment, CHR(10), ' '). c-coment = REPLACE(c-coment, CHR(13), ' '). Valeu! Ana Paula
obrigado pelas dicas. fiz o seguinte Código: IF LENGTH(SUBSTRING(c-narrativa-operacao,1,130)) <> 0 THEN DO: display stream str-rp SUBSTRING(c-narrativa-operacao,1,130) FORMAT "x(130)" with DOWN NO-LABEL WIDTH 132 STREAM-IO FRAME f-ficha-oper-narrativa. DOWN STREAM str-rp WITH NO-BOX STREAM-IO FRAME f-ficha-oper-narrativa. END. IF LENGTH(SUBSTRING(c-narrativa-operacao,131,262)) <> 0 THEN DO: display stream str-rp SUBSTRING(c-narrativa-operacao,131,262) FORMAT "x(130)" with DOWN NO-LABEL WIDTH 132 STREAM-IO FRAME f-ficha-oper-narrativa. DOWN STREAM str-rp WITH NO-BOX STREAM-IO FRAME f-ficha-oper-narrativa. END. IF LENGTH(SUBSTRING(c-narrativa-operacao,263,393)) <> 0 THEN DO: display stream str-rp SUBSTRING(c-narrativa-operacao,263,393) FORMAT "x(130)" with DOWN NO-LABEL WIDTH 132 STREAM-IO FRAME f-ficha-oper-narrativa. DOWN STREAM str-rp WITH NO-BOX STREAM-IO FRAME f-ficha-oper-narrativa. END. apresentou o que eu precisava. mas está dando um espaçamento grande entre as linhas. o que pode ser? obrigado.
utilizei a função pi-print-editor. esta função tem no manual de padrões da DDK. Código: for each tt-editor: delete tt-editor. end. run pi-print-editor (input ficha-oper.desc-linha, input 131). for each tt-editor: if tt-editor.linha = 1 then do: disp stream str-rp tt-editor.conteudo @ ficha-oper.desc-linha with stream-io frame f-relat-09-132. down stream str-rp with frame f-relat-09-132. end. else put stream str-rp unformatted tt-editor.conteudo at 001. end. down stream str-rp with frame f-relat-09-132. DISP SKIP with stream-io frame f-relat-09-132. down stream str-rp with frame f-relat-09-132.