Deve ser um comentário, na verdade, mas por muito tempo.
Você não diz como está usando seus controles de conteúdo ou se deseja que os usuários atualizem seus valores por meio de qualquer documento ou apenas por meio do documento "compartilhado".
Se algum dos seus usuários estiver no Mac, os campos INCLUDETEXT provavelmente são o único caminho a ser seguido, e até mesmo eles causarão dificuldades devido às diferentes convenções de nomenclatura de caminho e arquivo.
AFAIK não há facilidade para vincular controles de conteúdo a controles de conteúdo em outros documentos, exceto por meio de campos LINK ou campos INCLUDETEXT. Hoje em dia, eu evitaria os campos LINK porque eles costumam causar problemas. Também não é possível mapear um controle de conteúdo para uma parte XML personalizada em outro documento (até onde eu sei).
Se o conteúdo controlar e o fato de que o Word faz propagação automática de valores é o que você quer, pessoalmente, eu provavelmente faria as coisas dessa maneira:
- Defina seus dados comuns e uma estrutura XML para abrigá-los.
- Decida que devem ser dados somente leitura, exceto na cópia "mestre" do XML.
- Dependendo de quem ou do que a mantém, você pode transformar o "mestre" em um documento XML independente ou em um documento do Word com uma parte XML personalizada. No último caso, eu criaria um único documento do Word com um controle de conteúdo atualizável vinculado a cada item na Parte. Você obtém uma documentação barata dos valores, e as atualizações podem, em teoria, acionar a cópia dos dados para outros documentos compartilhando os valores.
- Certifique-se de que sua estrutura XML tenha um único elemento filho no elemento Documento, por exemplo, como isso: %código%
- Use esse XML para criar o
<xmlOuter><xmlInner><your elements.../></xmlInner></xmlOuter>
em cada documento no qual você precisa compartilhar os valores. Nesses documentos, faça todos os controles de conteúdo vinculados aos dados não atualizáveis. - Sempre que você modificar seus dados comuns, substitua a subárvore secundária
CustomXMLPart
do<xmlInner>
. Isso deve evitar que o problema em que a substituição do XML (por exemplo, excluindo / recriando a peça) rompa os links entre os controles de conteúdo e a parte XML. Mas eu verificaria isso por você mesmo. - Todo documento poderia, em teoria, ter código AutoOpen que pegou a versão atual dos dados comuns.