Transformando dados usando CDT

Os usuários com a função Desenvolvedor podem usar CDT para transformar automaticamente determinados valores no ambiente de origem em valores apropriados de destino, especificando transformações na seção XML de preferências de CDT na guia Configuração em Autoatendimento. Essas transformações são executadas nos dados de origem antes de serem implementadas no ambiente de destino..

Geralmente, os ambientes de desenvolvimento e de produção têm valores diferentes para configurações de rede, como nomes de servidores e endereços IP Algumas tabelas de dados de configuração no IBM Sterling® Order Management System armazenam nomes de host, endereços IP e URLs. Embora esses valores sejam válidos para seu ambiente de origem, ao implementar esses dados em um ambiente de destino, esses valores devem ser atualizados.

A lógica de transformação CDT também pode ser usada para transformar um valor em null, se a coluna correspondente for anulável. Por exemplo, a seguinte especificação no arquivo <runtime>/resources/ydkresources/ydkprefs.xml pode ser usada para atualizar o valor de Column1 para null em Table1 do banco de dados de destino, se Column1 for anulável e o valor no banco de dados de origem for value1.
 <Transformations>
              <Table Name="table1">
                 <Column Name="column1">
                    <Transform Match="value1" Replace=""/>
                  </Column>
               </Table>
 </Transformations>

O valor de Replace, se especificado como "" ou "NULL", é tratado como null e a coluna no banco de dados de destino é configurado como null.

A CDT ignora todas as colunas com valor nulo ao exportar configurações para XML. Mas nulo é um valor válido para determinadas configurações do OMS.. Como a CDT ignora essas colunas, elas não são implementadas no banco de dados de destino na abordagem de implementação baseada em XML (Linguagem de Marcação Extensível) Para resolver esse problema, configure uma transformação CDT para transformar null em um valor non-null ao exportar as configurações do ambiente de origem para XMLs. Posteriormente, o mesmo valor deverá ser transformado em nulo quando os XMLs forem importados para o ambiente de destino.

Por exemplo, null é um valor válido para a coluna FUTURE_INVENTORY_WINDOW na tabela YFS_SOURCING_RULE_DTL . Inclua a especificação a seguir no arquivo ydkprefs.xml , sob o SourceTargetPaircorrespondente, para transformar todos os valores de null na coluna FUTURE_INVENTORY_WINDOW em 999
<Transformations>
             <Table Name="YFS_SOURCING_RULE_DTL">
                 <Column Name="FUTURE_INVENTORY_WINDOW">
                     <Transform Match="" Replace="999"/>
                 </Column>
             </Table>
</Transformations>
Para converter 999 em null no banco de dados de destino, especifique a transformação reversa no respectivo SourceTargetPair do arquivo ydkprefs.xml conforme a seguir:
<Transformations>
              <Table Name="YFS_SOURCING_RULE_DTL">
                 <Column Name="FUTURE_INVENTORY_WINDOW">
                    <Transform Match="999" Replace=""/>
                 </Column>
              </Table>
</Transformations>

Especificando as transformações, é possível assegurar que todos os valores null na coluna FUTURE_INVENTORY_WINDOW sejam implementados corretamente no banco de dados de destino.