The BA Forum Dashboard includes a link to the Seating Policy Guide:
http://www.flyertalk.com/forum/briti...icy-guide.html
If you don't have BA or Oneworld status then you are limited, in most situations, to 24 hours before unless you purchase a full fare flexible ticket or pay extra for seat slection.
Who can choose their seat at the time of booking and change their seat at anytime up to 24 hours before departure?
•Customers who have booked in F, A, J, C, W, Y
•All customers who travel in First
•Customers travelling on a corporate dealt ticket (using a BACCI code)
•Premier, Gold and Silver Executive Club members and oneworld equivalents
•Customers travelling with infants
•Additional needs customers
See also:
http://www.britishairways.com/en-us/...sing-your-seat