Oi, Rodrigo! Tudo bem?
Peço desculpas pelo tempo que esperou por uma resposta.
Essa questão pode acontecer devido às configurações de exibição padrão no SAS. A limitação de caracteres pode ser uma maneira de melhorar a visualização das informações, tornando a tabela "mais limpa" e enxuta.
Contudo, Rodrigo, reforço que apesar da exibição "truncada", os dados em si não estão sendo alterados ou perdidos, eles continuam na tabela!
Caso queira resolver esse problema, você pode definir, durante a criação da sua tabela, um valor limite de caracteres, fazendo com que todas as informações necessárias sejam apresentadas corretamente no PROC SQL
.
Abaixo, estarei mostrando duas formas de definição de limite:
data dados;
input coluna1 coluna2 $15.;
datalines;
dado1 dado2
dado3 dado4
;
run;
Note que, durante a criação da tabela e de suas respectivas colunas, foi usado $15.
, indicando que as colunas precisam ter, no máximo, 15 caracteres. Lembre-se sempre de escrever o símbolo de cifrão, colocar o número limite e adicionar um ponto final.
Por outro lado, caso a criação da tabela aconteça por meio do PROC SQL
, você pode estabelecer normalmente o número máximo de caracteres, assim como fazemos em um código padrão do SQL:
proc sql;
CREATE TABLE dados (
coluna1 CHAR(10),
coluna2 VARCHAR(20),
);
quit;
Rodrigo, espero que isso possa te ajudar. Contudo, vale ressaltar que como é um assunto externo aos cursos ofertados pela Alura e que não tenho acesso ao cenário completo do seu cenário, outros testes terão de ser feitos a fim de obter o resultado esperado, mas espero que esta resposta seja um bom ponto de partida para a resolução do seu problema!
Abraços.
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!