Tenho um sistema de vendas que controla isso da seguinte forma:
Chaves independentes para todas as tabelas pois, como chave primária, tenho os IDs das tabelas + código da filial, que informo em uma janela de configuração, que é inicializada na instalação do sistema.
Tenho uma rotina que inclui, na tabela de ids, uma uma chave para cada tabela envolvida em cadastros, toda vez que crio uma nova filial.
Com isso, a numeração sempre é iniciada a cada nova filial, permitindo que eu tenha dados de todas as filiais em uma única base. Assim tb fiz relatórios gerais ou por filial.
Qualquer dúvida, entre em contato.
Att.