Show Menu
TÓPICOS×

Extensão de um esquema

Alguns esquemas incorporados não devem ser estendidos: principalmente aquelas para as quais são definidas as seguintes configurações: dataSource="file" e mappingType="xmlFile" . Não devem ser prolongados os seguintes regimes: xtk:entityBackupNew , xtk:entityBackupOriginal , xtk:entityOriginal , xtk:form , xtk:srcSchema , nncm:publishing, nl:monitor, intercalar:calendárioTrms:remoteTrms , nms:userAgentRules, xtk:builder, xtk:conexões, xtk:dbInit, xtk:funcList, xtk:fusion, xtk: jst , xtk:navtree , xtk:queryDef , xtk:resourceMenu , xtk:schema , ​xtk:scriptContextContext, xtk:session, xtk:sxtk:Schema, xtk:strings. Esta lista não é exaustiva.
Há dois métodos para estender um esquema existente:
  1. Modificando o esquema de origem diretamente.
  2. Criando outro esquema com o mesmo nome, mas com um namespace diferente. A vantagem é que você pode estender uma tabela sem precisar modificar o esquema original.
    O elemento raiz do esquema deve conter o atributo ExtendedSchema com o nome do esquema a ser estendido como seu valor.
    Um esquema de extensão não tem seu próprio esquema: o esquema gerado do esquema de origem será preenchido com os campos do esquema de extensão.
    Você não tem permissão para modificar os esquemas incorporados do aplicativo, mas sim o mecanismo de extensão do esquema. Caso contrário, os schemas modificados não serão considerados no momento das atualizações futuras do aplicativo. Isso pode resultar em falhas no uso do Adobe Campaign.
    Exemplo : extensão do esquema nms:receipt .
    <srcSchema extendedSchema="nms:recipient" name="recipient" namespace="cus">
      <element name="recipient">
        <attribute name="code" label="Branch code" type="long"/>
      </element>
    </srcSchema>
    
    
    O esquema estendido nms:customer é preenchido com o campo preenchido no esquema de extensão:
    <schema dependingSchemas="cus:recipient" name="recipient" namespace="nms">
      ...
      <attribute belongsTo="cus:recipient" label="Branch code" name="code" sqlname="iCode" type="long"/>
      ...
    </schema>
    
    
    O atributo dependendoEsquemas no elemento raiz do esquema faz referência às dependências nos esquemas de extensão.
    O atributo pertenceTo no campo preenche o esquema em que é declarado.
Para que as modificações sejam levadas em conta, é necessário regenerar esquemas. For more on this, refer to the Regenerating schemas section. Se as modificações afetarem a estrutura do banco de dados, será necessário executar uma atualização. Para obter mais informações, consulte a seção Atualização da estrutura do banco de dados.