BGP not announcing prefixes

If I change the routing table anything other than “main” the connection doesn't announce any prefixes but can receive. RouterOS 7.18.2.

Need this to keep some prefixes to a specific table.

You need to put the prefixes to advertise into that other table as well. There unfortunately is no way to automate that.

So when your main table as a connected route to a local network, open that route in winbox, hit COPY, change distance from 0 to 1 and routing table from main to your table, and save it.

Suppose I have router A and B. I am sending all connected routes to router A and router A is receiving the prefixes and in router A changed the routing table other than main . Now I also announcing some prefixes to router B, but there's no prefixes received in router B. If change back the routing table to main in router A, router B receives all the prefixes router A is announcing.

What you are suggesting is I need to put all the prefixes I am announcing from router A to that table with higher distance or blackhole?

It is only about announcing locally originated routes, not about forwarding those routes further on to other routers.

When you use a different routing table, all locally originated routes must be in that table.

i have put all my connected routes to the routing table by copying them and put distance 250, it didn’t work.

No prefixes on my router B. If i change back the routing table to main on router A, i get all prefixes on router B. Any other solutions?