Árvore de páginas


01. DADOS GERAIS

Produto:

TOTVS DMS

Linha de Produto:

Linha Protheus

Segmento:

Varejo

Módulo:

TOTVS DMS (Linha Protheus) - Oficina (SIGAOFI)

Função:Painel Orçamento (OFIXA018)
País:Brasil
Ticket:15521354
Requisito/Story/Issue (informe o requisito relacionado) :DVARMIL-1488


02. SITUAÇÃO/REQUISITO

Ao realizar a inclusão/alteração/visualização de um orçamento na rotina Painel Orçamento (OFIXA018) e Orçamento Por Fases (OFIXA011) onde o mesmo contenha varias peças requisitadas, o sistema apresenta uma lentidão nos processos mencionados.     

03. SOLUÇÃO

Correção nos processos relacionados as rotinas Painel Orçamento (OFIXA018) e Orçamento Por Fases (OFIXA011), para que haja uma melhoria de performance no sistema quando se houver orçamentos com uma alta quantidade de itens requisitados. 


Criada a tabela "VKZ" para melhoria de performance do carregamento do preço das peças que são requisitadas em um Orçamento.


  • No Configurador (SIGACFG), acesse Ambientes/Base de Dados/Menu (CFGX013) e informe as novas opções de menu do módulo de Oficina (SIGAOFI) conforme instruções a seguir:


Criação de Tabela no arquivo SX2 – Tabelas:


Chave

Nome

Modo

Único

PYME

VKZ

Tabela Temporária Preço Peça

E

VKZ_FILIAL+VKZ_FORMUL+VKZ_GRUITE+VKZ_CODITE+DTOS(VKZ_DATVAL)

S



Criação de Índices no arquivo SIX – Índices:



  • Tabela VKZ- Tabela Temporária Preço Peça:


Índice

VKZ

Ordem

1

Chave

VKZ_FILIAL+VKZ_FORMUL+VKZ_GRUITE+VKZ_CODITE+DTOS(VKZ_DATVAL)

Descrição

Fórmula+Grupo Peça+Código Peça+Data Valid.

Proprietário

S



Criação de Campo no arquivo SX3 – Campos:



  • Tabela VKZ- Tabela Temporária Preço Peça:


Campo

VKZ_FILIAL

VKZ_DATINC

VKZ_DATVAL

VKZ_FORMUL

Tipo

Carácter

DataDataCarácter
Grupo de Campos033


Ordem

01

020304
Tamanho

2

886
Decimal

0

000
Formato@!

@!

Contexto

1-Real

1-Real1-Real1-Real
Propriedade

1-Alterar

2-Visualizar2-Visualizar1-Alterar
Título

Filial

Data Inc.

Data Valid.

Fórmula

Descrição

Filial

Data de inclusão

Data de validade

Fórmula do Cálculo Valor

Val. Sistema




Vazio() .or. ExistCPO("VEG",FWFldGet("VKZ_FORMUL"),1)
Opções



Inic. Padrão

Date()

Date()
Inic. Browse



Cons. Padrão





Nível

1

111
Usado

Não

SimSimSim
Obrigatório

Não

SimSimSim
Browse

Não

SimSimSim
When





Pasta





Help

Informe a Filial

Informe a data de inclusão do registro.

 

Informe a data de validade do registro.

Informe a fórmula para cálculo do valor da peça.



Campo

VKZ_GRUITE

VKZ_CODITE

VKZ_PRODUT

VKZ_VALOR

Tipo

Carácter

CarácterCarácterNumérico
Grupo de Campos

030
Ordem

05

060708
Tamanho

4

271514
Decimal

0

004
Formato@!@!@!

@E 999,999,999.9999

Contexto

1-Real

1-Real1-Real1-Real
Propriedade

1-Alterar

2-Visualizar2-Visualizar1-Alterar
Título

Grupo Peça

Código Peça

Produto

Valor

Descrição

Grupo da Peça

Código da Peça

Código do Produto

Valor de Tabela

Val. Sistema

Vazio() .or. ExistCPO("SBM",FWFldGet("VKZ_GRUITE"),1)

Vazio() .or. ExistCPO("SB1",FWFldGet("VKZ_GRUITE")+FWFldGet("VKZ_CODITE"),7)Vazio() .or. ExistCPO("SB1",FWFldGet("VKZ_PRODUT"),1)
Opções



Inic. Padrão




Inic. Browse



Cons. Padrão

BM1




Nível

1

111
Usado

Sim

SimSimSim
Obrigatório

Sim

SimSimSim
Browse

Sim

SimSimSim
When





Pasta





Help

Informe o grupo da peça.

Informe o código da peça.

 

Informe o código do produto (B1_COD).

Informe o valor da peça.



  • Tabela VEG- Fórmulas:


Campo

VEG_TABTMP

VEG_TMPVAL

Tipo

Carácter

Numérico
Grupo de Campos

Ordem

10

11
Tamanho

1

3
Decimal

0

0
Formato@!@E 999
Contexto

1-Real

1-Real
Propriedade

1-Alterar

2-Visualizar
Título

Tab. Tmp.

Validade Tmp

Descrição

Cria tabela temporária

Validade da tabela temp.

Val. Sistema

Vazio() .or. Pertence("01")

Positivo()
Opções0=Não;1=Sim
Inic. Padrão


Inic. Browse

Cons. Padrão



Nível

1

1
Usado

Sim

Sim
Obrigatório

Não

Não
Browse

Não

Não
When



Pasta



Help

Informe se a fórmula permite utilização da tabela temporária de preço de peça

Informe a quantidade de dias de validade da tabela temporária.

 



Criação de Pergunte no arquivo SX1 – Pergunta:


Grupo

OFIA490

OFIA490

OFIA490

OFIA490

Ordem

01

020304

Pergunta

Vencimento De?

Vencimento Ate?

Formula De?

Formula Ate?

Tipo

Data

DataCaracterCaracter
Tamanho8866
Decimal0000
Var01MV_PAR01MV_PAR02MV_PAR03MV_PAR04
Formato



Validação



ObjetoEdit (G)Edit (G)Edit (G)Edit (G)
Consulta Padrão



Conteúdo



Pré-Seleção (Combo)



Item 1



Item 2



Item 3



Item 4



Item 5



Help







Criação dRelacionamento no arquivo SX9 – Relacionamento:


  • Tabela VKZ- Tabela Temporária Preço Peça:



DomínioSB1SB1SBMVEG
IdentificaçãoUltima identificação referente a tabela SB1Ultima identificação referente a tabela SB1Ultima identificação referente a tabela SBMUltima identificação referente a tabela VEG
C. DomínioVKZVKZVKZVKZ
E. Domínio

B1_GRUPO+B1_CODITE

B1_COD

BM_GRUPO

VEG_CODIGO

E. C. Domínio

VKZ_GRUITE+VKZ_CODITE

VKZ_PRODUT

VKZ_GRUITE

VKZ_FORMUL

PropriedadeSSSS
L. Domínio1111
L. C. DomínioNNNN
Condição SQL





Foram criados 2 campos na tabela VEG (cadastro de fórmulas), segue abaixo funcionalidade de cada campo:

  • VEG_TABTMP: Determina se irá ou não utilizar tabela VKZ para verificação preço de venda no orçamento.
  • VEG_TMPVAL: Determina qual tempo de vigência em dias que o sistema irá pegar o preço de venda no orçamento da tabela VKZ, este campo só terá funcionalidade se o campo VEG_TABTMP estiver com conteúdo = “S”.


Atenção para quando houver aumento de preço de peças, talvez haja necessidade de limpeza da tabela temporária para gravação do novo preço.


A Tabela VKZ (Tabela Temporária Preço Peça) foi criada para armazenar o último preço de venda utilizado no orçamento de peças. Dessa forma, evita-se que a função de composição de preço seja acionada toda vez que a rotina de orçamento é acessada, resultando em um ganho de desempenho.

Foi criada a rotina Cadastro Tabela Temporária de Preço de peça (OFIA490) para inclusão, alteração, visualização e exclusão de registros.

O preço de venda registrado na tabela VKZ terá uma validade determinada pelo campo "Validade Tmp" (VEG_TMPVAL). Assim, é essencial que, se decidirem usar esse conceito e houver alteração no preço de venda, realizem a limpeza da tabela por meio da rotina "Cadastro Tabela Temporária Preço Peça" (OFIA490). Isso garantirá que o novo preço de venda seja corretamente registrado na tabela.


A inclusão de registros nesta rotina ocorre de maneira automática caso o campo "Tab. Tmp." (VEG_TABTMP) referente a fórmula praticada no orçamento esteja com "S" conforme descrito no tópico "Campos tabela de Fórmulas".


Botão incluir – Caso queira incluir manualmente algum registro tabela VKZ.


Botão alterar – Caso queira alterar informação de algum registro tabela VKZ.


Botão visualizar – Caso queira visualizar algum registro gravado na tabela VKZ.


Botão excluir em “outras ações” – Caso queira excluir um registro da tabela VKZ.


Botão excluir em lote em “outras ações” – Caso queira excluir vários registros da tabela VKZ conforme parâmetros informados.

Esta exclusão por lote também pode ser executada via SCHEDULE.





IMPORTANTE !

Foram efetuadas várias melhorias internas na rotina de orçamentos para melhora de performance, a criação da tabela VKZ é apenas uma delas, portanto a utilização deste conceito “NÃO É OBRIGATORIO”, ficando a cargo de cada cliente implementar ou não.





04. DEMAIS INFORMAÇÕES



IMPORTANTE!

Esta atualização de dicionário estará disponível na próxima release 12.1.2410.


05. ASSUNTOS RELACIONADOS

  • Não há.