Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

Informações Gerais

 

Especificação

Produto

Datasul

Módulo

MGL - Contabilidade Gerencial

Segmento Executor

Manufatura

Projeto

DMAN_FIN_002

IRM

PCREQ-7275

Requisito

PCREQ-7277

Subtarefa

PDRMAN-6381

Release de Entrega Planejada

12.1.10

Réplica

Não há

País

( x ) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Objetivo

Criar função de cópia das colunas no programa “Padrões Colunas Demonstrativo” (MGL007AA) de um padrão de colunas para outro, da mesma forma que existe a cópia de sequencias do demonstrativo contábil no programa MLG003AA.

Definição da Regra de Negócio

Todas as regras abaixo somente serão aplicadas se o pré-processador de negócio BF_FIN_COPCOL_PADR_COL estiver habilitado.

Será criado um botão de cópia no programa MGL007AA (Protótipo 1). Ao chamar este botão serão solicitados dois blocos de informações: Origem e Destino (Protótipo 2).

No bloco Origem será solicitado o código do Padrão de Colunas, uma faixa de colunas (Inicial e Final) e as opções para tratamento das colunas já existentes no Destino: Ignora, Incrementa, Atualiza.

Se a opção Ignora for selecionada e houver a mesma coluna no Padrão de Colunas Destino, não será realizada nenhuma ação para esta coluna. 

Se a opção Incrementa for selecionada e houver a mesma coluna no Padrão de Colunas Destino, serão criadas novas colunas com as parametrizações das colunas de origem. Exemplo: Padrão de Coluna de Origem com colunas A e B; Padrão de Colunas Destino com colunas A, B e C; opção Incrementa selecionada. As colunas origem A será copiada para a coluna destino D e a coluna origem B será copiada para a coluna destino E. Assim, o Padrão de Colunas destino ficará com as colunas A, B, C, D e E.

Para determinar o código da próxima coluna a ser criada, utilizar a lógica abaixo, onde, a variável v_cod_ultima_col representa o código da última coluna existente e a variável v_cod_nova_col representa a nova coluna a ser criada.

def var v_cod_ultima_col as char no-undo init "ZZ" /* Exemplo */.

def var v_cod_nova_col   as char no-undo.

if  substr(v_cod_ultima_col,1,1) = chr(90) and

    substr(v_cod_ultima_col,2,1) = chr(32) then do:

    assign v_cod_nova_col = chr(65) + chr(65).

end.

else do:

    if  substr(v_cod_ultima_col,2,1) = chr(90) then do:

        assign v_cod_nova_col = chr(asc(substr(v_cod_ultima_col,1,1)) + 1) +

                                chr(65).

    end.

    else do:

        if  substr(v_cod_ultima_col,2,1) <> chr(32) then do:

            assign v_cod_nova_col = chr(asc(substr(v_cod_ultima_col,1,1))) +

                                    chr(asc(substr(v_cod_ultima_col,2,1)) + 1).

        end.

        else do:

            assign v_cod_nova_col = chr(asc(substr(v_cod_ultima_col,1,1)) + 1).

        end.

    end.

end.

Se a opção Atualiza for selecionada e houver a mesma coluna no Padrão de Colunas Destino, esta coluna será atualizada com as informações da coluna origem.

No bloco Destino, será solicitado o código do Padrão de Colunas que será o destino das colunas copiadas, que deverá ter sido cadastrado previamente.

 

Rotina

Tipo de Operação

Opção de Menu

[MGL007AA – Padrão Colunas Demonstrativo]

[Cópia]

[Financeiro / Controladoria - Contabilidade Gerencial - Cadastros]

Protótipo de Tela

Protótipo 1

Protótipo 2


 

 

 

 

 

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))