Armazenamento de Variáveis Temporárias

Nos arquivos de origem, nem todas as linhas contêm todos os campos. Por exemplo, na tela Georgia mostrada abaixo, os valores de entidade como 0565 0565 Test 3 são apresentados no cabeçalho de cada seção de relatório após o rótulo Bus Area / Dept, mas não são apresentados em todas as linhas. Portanto, os valores de entidade devem ser armazenados em variáveis globais e atribuídos às linhas do arquivo de origem.

No caso do arquivo Georgia, para armazenar valores de entidade em variáveis globais, na tela Formatos de Importação, atribua o script a seguir ao campo Expressão da linha Valor. O script usa uma instrução if.. e a função string para determinar se as linhas contêm o rótulo Bus Area / Dept:. Se uma linha contiver o rótulo, o script armazenará o valor de entidade (localizado na posição 33 e incluindo 4 caracteres) em uma variável global. Se uma linha não incluir o rótulo, strfield será retornado.

Para usar uma variável global, defina uma variável de string fora da função de importação. Ao atribuir um valor para a variável dentro da função de importação, designe-o como global. Ao defini uma variável fora da função, ela ficará disponível para qualquer função usada nessa sessão.

As variáveis globais permanecem disponíveis em todo o processo de carregamento de dados atual do Oracle Hyperion Financial Data Quality Management, Enterprise Edition (ao contrário das variáveis locais, que perdem seus valores quando o script atual é fechado). Portanto, os valores armazenados a partir de um script podem ser recuperados por outros scripts.

GeorgiaCenter = "" 
def GeorgiaGetCenter (strfield, strrecord):
    if strrecord[15:31] == "Bus Area / Dept:":
        global GeorgiaCenter 
        GeorgiaCenter = strrecord[32:36]
    return strfield

A imagem mostra o conteúdo do arquivo Georgia.glo General Ledger. Os valores da entidade estão incluídos em um cabeçalho no topo de cada seção do relatório.