The use of a prefix digit is done for a number of reasons. It keeps the outbound rules a lot simpler and it allows manual selection of "other" routes if installed. It can also avoid conflicts with internal extension numbers, in some cases.
In countries where the national dialling plan has a prefix digit "naturally", such as zero, then it can be used in routing much like the 9. If local numbers can start with eight or nine different digits, then you have to use digit length , or create a number of rules to accommodate the variations.
In short, it means that you have to take into account, all possible outbound local, national, and international number, along with "special" short numbers, such as emergency access, and create individual outbound rules that will handle them all.
In 3CX you can create these along-side the 9+ rules so you can be sure that all calls will work before removing the old rules.
You may also have to consider any internal (to the set) dialplan, that pre-screens numbers, if your phones are so equiped.