Olá, Perdão pelo tempo da resposta, espero que já tenhas resolvido! Se não, tenho duas considerações para lhe ajudar: 1. Você está transferindo um código do SQL antes desse código, isso? Pois suas bases no subselect estão apontando seu repositório temporário no SAS (WORK.MAPA_FATURA e WORK.RESUMO_MANUAL). Por isso sugeri em ajustar elas antes (no select de importação) e depois "apenas juntar" elas já tratadas (com o DATA SET que mencione no post anterior)! 2. Quanto ao union, teste dessa forma para ver se resolve: PROC SQL;
CREATE TABLE corp_union AS
SELECT
num_ano_mes_referencia as Ano_Mes ,
cod_ciclo_faturamento as ciclo,
CASE WHEN browsing = 1 and ('Serviço Detalhado'n = "Dados Pacote" or 'Serviço Detalhado'n = "Dados Extra Pacote") and num_ano_mes_referencia>= 202004 THEN "Browsing"
WHEN browsing = 1 and num_ano_mes_referencia <202004 THEN "Browsing"
WHEN 'Serviço Detalhado'n IN("Dados Pacote","Dados Extra Pacote","SMS/MMS","Descontos VAS") THEN "Grupo Smart"
WHEN conta = "M201065170" THEN "Provider Ebook"
ELSE 'Serviço Detalhado'n
END as servico_ajustado,
'Serviço Detalhado'n,
Vlr_final,
Sr_acounting,
fat_consumer
FROM
(
SELECT
num_ano_mes_referencia,
cod_ciclo_faturamento,
conta,
'Serviço Detalhado'n,
Browsing,
fat_consumer,
Sr_acounting,
vlr_final
FROM WORK.MAPA_FATURA
WHERE fat_consumer <> 1 and Vlr_final <> 0 and num_ano_mes_referencia = 202207
/*UNION*/ OUTER UNION CORR
SELECT
num_ano_mes_referencia,
cod_ciclo_faturamento,
conta,
'Serviço Detalhado'n,
browsing,
COALESCE(fat_consumer, fat_consumer,0) as fat_consumer,
COALESCE(sr_acounting ,sr_acounting,0) as sr_acounting,
vlr_final
FROM WORK.RESUMO_MANUAL
WHERE Vlr_final <> 0 and num_ano_mes_referencia = 202207
) i
;QUIT; Obs.: * Seu Case When final tem alguns tratamentos com dados tipo texto (usando o IN) onde deve-se ter extrema cautela pois qq caractere diferente (maiúsculo, minúsculo, espaço em branco, etc) vai sair do loop e ir parar no Else. Recomendo ajustar esse ponto para variável categórica ou chave primária para sua validação. Espero que ajude,
... View more