Os dados extraídos pelo extrator de processo relevante do PPM devem ser gravados no arquivo de saída XML, no formato de importação especial para dimensões de um, dois ou vários níveis. Os arquivos de saída XML neste formato podem ser importados para o PPM usando o programa de linha de comando rundimdata.bat (ver a referência técnica PPM Data import).
Para extrair dados corretamente, o extrator de processo relevante requer um arquivo de mapeamento que atribua as chaves (e quaisquer descrições) para os níveis de dimensão individuais aos valores de campo extraídos e corretos. Este arquivo de configuração XML tem a seguinte estrutura:
...
<dimdatamapping>
<dimension name="...">
<dimcolmapping>
<datacol name="..."/>
<keyspec key="..."/>
</dimcolmapping>
...
</dimension>
</dimdatamapping>
...
Elemento XML |
Atributo XML |
Descrição |
---|---|---|
dimdatamapping |
|
Elemento raiz da definição de mapeamento. Contém uma lista de dimensões PPM a serem configuradas. |
dimension |
name |
Identificador da dimensão do PPM (corresponde ao valor do atributo XML name da |
dimcolmapping |
|
Agrupa elementos de configuração para uma coluna de dados. |
datacol |
name |
Nome da coluna de dados na qual os valores de dimensão são salvos. |
|
format |
Cadeia de caracteres de formato para transformação do valor de dados para uso no sistema PPM |
keyspec |
key |
Nome da chave para as associações de valor-chave extraídas |
|
desckey |
Nome da chave para as associações de descrição-chave extraídas |
value |
|
Especificação de um valor de dimensão constante |
Exemplo
Os seguintes pares de valores-chave são o resultado esperado da extração no arquivo de saída XML, no formato de evento do sistema PPM:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE eventlist SYSTEM "event.dtd">
<eventlist>
<event>
<attribute type="MAT1_ID-MATNR">1000</attribute>
<attribute type="MAT1_DESC-HTEXT">Motor44</attribute>
<attribute type="MAT2_ID-MTART">32</attribute>
<attribute type="MAT2_DESC-MTBEZ">Components</attribute>
</event>
<event>
<attribute type="MAT1_ID-MATNR">1001</attribute>
<attribute type="MAT1_DESC-HTEXT">Wrench77</attribute>
<attribute type="MAT2_ID-MTART">45</attribute>
<attribute type="MAT2_DESC-MTBEZ">Tools</attribute>
</event>
<event>
<attribute type="MAT1_ID-MATNR">1002</attribute>
<attribute type="MAT1_DESC-HTEXT">Pump43</attribute>
<attribute type="MAT2_ID-MTART">33</attribute>
<attribute type="MAT2_DESC-MTBEZ">Trade goods</attribute>
</event>
</eventlist>
O arquivo de mapeamento abaixo transfere os pares de valores-chave para o formato XML compatível com o PPM para importar valores de dimensão:
...
<dimdatamapping>
<dimension name="MATERIAL">
<dimcolmapping>
<datacol name="LEVEL1_ID"/>
<keyspec key="MAT1_ID-MATNR"/>
</dimcolmapping>
<dimcolmapping>
<datacol name="LEVEL1_DESC"/>
<keyspec key="MAT1_DESC-HTEXT"/>
</dimcolmapping>
<dimcolmapping>
<datacol name="LEVEL2_ID"/>
<keyspec key="MAT2_ID-MTART"/>
</dimcolmapping>
<dimcolmapping>
<datacol name="LEVEL2_DESC"
<keyspec key="MAT2_DESC-MTBEZ"/>
</dimcolmapping>
</dimension>
</dimdatamapping>
Os nomes das colunas de dados para um nível de dimensão PPM são fixos (LEVEL1_ID, LEVEL1_DESC, LEVEL2_ID, LEVEL2_DESC, etc.) e não podem ser alterados.
A tabela abaixo ilustra a associação de colunas de dados às chaves e descrições dos níveis de dimensão individuais:
configuração dimdata |
Configuração da dimensão |
---|---|
LEVEL1_ID |
Identificador do primeiro nível de dimensão |
LEVEL1_DESC |
Descrição do primeiro nível de dimensão |
LEVEL2_ID |
Identificador do segundo nível de dimensão |
LEVEL2_DESC |
Descrição do segundo nível de dimensão |
LEVELn_ID |
ID do nível de dimensão n-th |
LEVELn_DESC |
Descrição do nível de dimensão n-th |
O arquivo de saída XML gerado no formato DIMDATA tem o seguinte conteúdo:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dimdata SYSTEM "dimdata.dtd">
<dimdata>
<dim name="MATERIAL">
<datacols>
<datacol name="LEVEL1_ID"/>
<datacol name="LEVEL1_DESC"/>
<datacol name="LEVEL2_ID"/>
<datacol name="LEVEL2_DESC"/>
</datacols>
<datarow>
<value>1001</value>
<value>Motor44</value>
<value>32</value>
<value>Components</value>
</datarow>
<datarow>
<value>1002</value>
<value>Wrench77</value>
<value>45</value>
<value>Tools</value>
</datarow>
<datarow>
<value>1003</value>
<value>Pump43</value>
<value>33</value>
<value>Trade goods</value>
</datarow>
</dim>