А вот если использовать при вызове strfmt промежуточную строковую переменную, то работает
X++:
System.Data.OleDb.OleDbCommand command;
System.Data.CommandType t;
str s;
;
new InteropPermission(InteropKind::ClrInterop).assert();
command = new System.Data.OleDb.OleDbCommand();
command.set_CommandTimeout(300);
command.set_CommandText("select * from t");
t = command.get_CommandType();
s = t.ToString();
info(strfmt("%1", s));
command.set_CommandType(System.Data.CommandType::StoredProcedure);
t = command.get_CommandType();
s = t.ToString();
info(strfmt("%1", s));