I think you can achieve that by using Rule and then using the calculator functions and load it to respective combination (you can make the rule run for the specific combination of that specific form (only change would be the SmartList member)
I asked around with the Planning folks and this is what they said:
Not sure but sounds like he is trying to save a smart list value as a number as part of a RTP. Not sure if he realizes that a smart list entry is stored as a number so all he needs to do is use a RTP of type smartlist and bound it to the Company smartlist if the intent is to capture which company. If the smartlist is associated with Acc1 then he can use that value to determine where the value was loaded. It would be helpful if he used meaningful member names like LoadedFromCompany rather Acc1. Otherwise he can use another member if Acc1 is not the correct member to capture this fact.
The issue with this approach is you'll have to preload all your company member names as smartlist members for Acc1.
Now since you are trying to assign a member name as (which is a string) a data value, you'll have to convert it to number. I've a cdf to do this.
Why do you need to do this, the data is already at the company name, so you already know that it is loaded at that company code.
I loaded the smartlist with the initial list of members from my company dimension. Since this dimension will have minimal additions / exclusions, the code is currently written to check the smartlist value using IF condition.
Since writing custom CDF was not an option due to clients reservations of that, I hardcoded the smartlist values in script.
Thanks for all inputs