If you say, it doesn't work / giving incorrect output, what does this mean in more detail?
I believe a string value mapping should be possible, seems to work for me:
upper(trim(FIRST_NAME)) as First_NAME,
upper(trim(FIRST_NAME)) as FIRST_NAME,
ApplyMap('CUST_NAME_MAP',upper(trim(FIRST_NAME)),'NO') as CUST_MEM_FLAG