Comandos de macro de substituição
O comando de macro de Substituição realiza a lógica de substituição em um nível de cenário. As definições de supersessão são armazenadas em uma lista de códigos. Quando você executa a macro, a data de preparação de linha é definida e os dados de medida históricos são copiados dos itens predecessores para os itens sucessores nos locais especificados para o horizonte do período de ciclo.
Esta tabela descreve os parâmetros usados para a macro de Substituição:
Parâmetro | Descrição |
---|---|
Lista de códigos | A lista de códigos que contém as definições de substituição. |
Atributo de item predecessor | O atributo na lista de códigos que contém os itens predecessores. Isso é validado para elementos de nível base no cenário |
Atributo de item sucessor | O atributo na lista de códigos que contém os itens sucessores. Isso é validado para elementos de nível base no cenário. |
Atributo de local anterior |
O atributo na lista de códigos que contém os locais de predecessores para transferência. Os valores de atributo na lista de códigos podem ser definidos no nível base ou agregado (nível de agregação permitido somente se o Atributo de local do sucessor não estiver preenchido). Isso é validado com relação à hierarquia do módulo em tempo de execução e uma mensagem de erro é exibida se nenhum valor for definido. |
Atributo de data de preparação de linha. | O atributo na lista de códigos que contém a data da substituição. Pode ser qualquer data (não requer data inicial ou final de um período de calendário). |
Transferir atributo de fator |
O atributo na lista de códigos que contém o fator de transferência do item predecessor e a medida para o item sucessor e a medida. Pode ser um valor numérico > 0. |
Código de medida da data de introdução | O código da medida para copiar a data de preparação de linha dos locais/item sucessores. A data de introdução é gravada em PCONST para a medida especificada para cada item e local de sucessor de nível base processado. |
Código de medida da data de interrupção |
O código da medida para copiar a data de preparação de linha do item/locais predecessores. A data de interrupção é atualizada para PCONST para a medida especificada para cada item e local predecessor de nível base processado. Este valor deve ser diferente do valor especificado para o código de Medida da data de introdução |
Código de medida de origem | O código de medida a ser copiado dos itens e locais predecessores. |
Código de medida de destino |
O código de medida a ser copiado para os itens e local sucessores. Isso pode ser idêntico ao Código de medida de origem. |
Nó de hierarquia de itens |
A seleção de item para processar as definições de substituição. Se especificado, os nós dentro da seleção (igual a ou filhos de) na lista de códigos de definição de substituição são processados.
Nota: O predecessor e o sucessor da definição devem existir na seleção. Se nenhum valor for especificado, todos os nós acessíveis ao usuário na lista de códigos de definição de substituição serão processados.
|
Nó de hierarquia de locais |
A seleção de local para processar definições de substituição. Se especificado, os nós dentro da seleção (igual a ou filhos de) na lista de códigos de definição de substituição são processados.
Nota: Se nenhum valor for especificado, todos os nós acessíveis ao usuário na lista de códigos de definição de substituição serão processados
. |
Código de medição ItemLocation válido | Uma medida definida para o módulo atual para indicar as combinações válidas de item/local dos sucessores no nível base ao aplicar substituição para locais agregados. |
Substituir |
Indicado o padrão de substituição dos dados de origem. Possíveis valores:
|
Atributo de local sucessor |
O atributo na lista de códigos que contém os Locais sucessores. Os valores de atributo na lista de códigos devem ser definidos na base. Isso é validado em relação à hierarquia do módulo em tempo de execução.
Nota: Se os valores de atributo forem nulos para qualquer definição, a substituição será aplicada ao Local predecessor.
|
SuperSession (Lista de códigos, Atributo de item predecessor, Atributo de item sucessor, Atributo de local predecessor, Atributo de data de preparação de linha, Atributo de fator de transferência, Código de medida da data de introdução, Código de medida da data de interrupção, Código de medida de origem, Código de medida de destino, [Nó de hierarquia de itens], [Nó de hierarquia de locais],[Código de medida ItemLocation válido],[Substituir],[Atributo de local sucessor])
Validação e Execução da macro de Substituição
A lógica de substituição é realizada para o cenário atual na validação e execução bem-sucedida da macro. Estas são as regras de validação:
- Cada uma das relações de substituição definidas na lista de códigos é validada.
- Locais predecessores podem ser definidos em níveis agregados, ou seja, todos os filhos deste local agregado devem ter substituição aplicada na seleção de local especificada:
- Se um local filho do agregado também for usado na lista de códigos, a última entrada na lista de códigos será aplicada a esse local filho
- Se o Local predecessor for um agregado, o Local sucessor deverá ser nulo
- Quando um Local predecessor agregado é usado, somente os valores para a combinação item@local, Data de introdução e data de interrupção válidas são copiados. A medida de combinação válida a ser usada é derivada da combinação válida definida dentro do Ciclo.
- Se uma definição não for exclusiva entre o item predecessor, o item sucessor e o local, a última entrada na lista de códigos será aplicada.
- A transferência de medida ocorre entre “medida de origem” do item predecessor e do local predecessor e “medida de destino” do item sucessor e do local sucessor para todos os períodos no horizonte do período de ciclo.
- O fator funciona como um fator de ponderação (multiplicador) do item/local predecessor para o item/local sucessor, em oposição a uma proporção. Se os valores de ambos os sucessores forem definidos como 1, cada um receberá 100% da medida de histórico predecessor (gerando um total de 200%).
- A taxa de transferência nula é considerada como 1.
- Um fator de transferência de 0 não executa nenhuma transferência de histórico para o sucessor atual; efetivamente, define a data de preparação de linha necessária.
- Certifique-se de que os nós de item predecessor e sucessor de cada relação de substituição sejam válidos. Todos os itens predecessores e sucessores devem ser definidos como elementos no nível base na hierarquia de módulo correspondente.
- Certifique-se de que os locais predecessor e sucessor de cada relação de substituição sejam válidos.
- Se o local predecessor for um agregado, o local sucessor deverá ser nulo.
- Se o local predecessor for um local base, o local sucessor deverá ser nulo ou um local base.
- Ambos os locais devem ser definidos na hierarquia de módulos correspondente.
- Certifique-se de que o local predecessor não seja nulo.
- Ao especificar elementos de local agregados, o usuário que está executando a macro deve ter acesso ao elemento agregado nas configurações de segurança de dados.
- Certifique-se de que os nós de item predecessor e sucessor de cada relação de substituição sejam preenchidos.
- Qualquer erro gerado para o log e o processamento de descarte, continua com as relações restantes na lista de códigos.
- Medidas do tipo Market Intelligence, Ordens ou Dados transacionais não podem ser usadas dentro de substituição.
Para obter mais detalhes, consulte Exemplos de macro de substituição.
A validação é realizada quando você executa a macro. Se alguma validação falhar, a macro será anulada e a mensagem de erro relacionada será exibida.
Status do período de ciclo | Status do cenário | Pode executar? | Mensagem de validação |
---|---|---|---|
Pendente | N/D | Não | Não é possível executar a macro {0} porque o Período de ciclo tem o status "Pendente" |
Em execução | WIP | Sim | N/D |
Pausado | Qualquer | Não | Não é possível executar a macro {0} porque o Período de ciclo não está em execução" |
Anulado | Parado | Não | Não é possível executar a macro {0} porque o Período de ciclo tem o status “Anulado" |
Arquivado | Qualquer | Não | Não é possível executar a macro {0} porque o Período de ciclo tem o status “Arquivado" |
Concluído | Qualquer | Não | Não é possível executar a macro {0} porque o Período de ciclo tem o status "Concluído" |
Condição/Regras de validação | Mensagem de erro |
---|---|
Garantir que a lista de códigos especificada seja válida | Não é possível localizar a lista de códigos "{0}". |
Certifique-se de que os atributos da lista de códigos especificados sejam válidos. | O atributo da lista de códigos "{0}" não foi localizado na lista de códigos {1}. |
Certifique-se de que as medidas especificadas sejam válidas para este ciclo.Module e habilitado. As medidas incluem a data de introdução especificada, a data de interrupção, bem como a medida de origem e destino. | Não é possível localizar a medida "{0}". |
Certifique-se de que as medidas data de introdução e data de interrupção especificadas sejam do tipo correto (Data). | {0} O código de medida exige uma medida do tipo=Data. |
Certifique-se de que as medidas especificadas de origem e destino sejam do tipo correto (Unidades ou Moeda). | {0} O código de medida exige uma medida do tipo=Unidades ou Moeda. |
Certifique-se de que as medidas data de introdução e data de interrupção especificadas sejam diferentes | o código de medida da data de introdução e o código de medida da data de interrupção não podem ser a mesma medida. |
Se especificado, certifique-se de que os nós de itens sejam válidos | não é possível localizar o item {0} |
Certifique-se de que as medidas especificadas não sejam do tipo Market Intelligence. | A medida {0} não pode ser do tipo Market Intelligence. |
Certifique-se de que as medidas especificadas não sejam do tipo Dados transacionais. | A medida {0} não pode ser do tipo Dados transacionais. |
Certifique-se de que as medidas especificadas sejam do tipo Ordens. | A medida {0} não pode ser do tipo Ordem. |
Se especificado, certifique-se de que o sinalizador Substituir é válido. O valor deve ser verdadeiro ou falso. | Valor de parâmetro {0} inválido. Deve ser verdadeiro ou falso. |