Hi guys, would like to ask why i cant convert numeric to character with decimal places of 2 ?
i use the wrong format ?
Numeric value = 0.250000
Value (character) i want = 0.25
extract from my code:
put(from_numeric_value,20.6)
%let sdis6_decimal_0 = "loanpurpose","original_tenure","principal_repay_term","specific_dfi_financing_details","startup_financing","refinance";
%let sdis6_decimal_2 = "interest_rate","rebate_rate","value_of_asset_purchase","dsr","refinance_value","eir","pod_original";
data work.AuditLog_Mart_SDIS6 (/*drop=from_numeric_value to_numeric_value*/
rename=(update_field=Variable)
compress=yes
);
set prccris.ccris_audit_log;
where sdis_filename = "SDIS6" and position_dt="&position_dt"d;
/* Note: Transform numeric to string and remove blanks space*/
if update_field in (&sdis6_decimal_0) then do;
from_numeric_value_c = strip(ifc(missing(from_numeric_value),"",put(from_numeric_value,20.0)));
to_numeric_value_c = strip(ifc(missing(from_numeric_value),"",put(from_numeric_value,20.0)));
deci_tag = "0 deci";
end;
else if update_field in (&sdis6_decimal_2) then do;
from_numeric_value_c = strip(ifc(missing(from_numeric_value),"",put(from_numeric_value,20.6)));
to_numeric_value_c = strip(ifc(missing(from_numeric_value),"",put(from_numeric_value,20.6)));
deci_tag = "2 deci";
end;
from_character_value = strip(from_character_value);
to_character_value = strip(to_character_value);
run;
... View more