Base de conhecimento
Encontre respostas para suas dúvidas em quatro fontes de conhecimento diferentes ao mesmo tempo, simplificando o processo de pesquisa.

Agro - PIMS IND - PRO - Script da Função "VOLUMEANEL"

time.png Tempo aproximado para leitura: 00:01:20 min

Dúvida
Foi tentado rodar a função VOLUMEANEL no PIMS PI do GF não obteve sucesso, sendo necessário atualização de script no banco de dados para correto funcionamento da mesma. São um para buscar a medição do tanque de etanol, e outro para calcular volume do tanque de etanol. 

VOLUM.png

VOLUM1.png

Ambiente
TOTVS Agro - TOTVS Agro - Bioenergia - Controle de Processo Industrial - PRO - Versão 12.1.2412

Solução
 

Para resolução do erro, execute os passos abaixo:

1. Realizar a seguinte consulta:

select * from ALL_OBJECTS where OBJECT_NAME LIKE '%VOLUMEANEL%'

2. Caso não encontre valores para a consulta realizada acima, execute o script abaixo no banco de dados:

CREATE OR REPLACE NONEDITIONABLE FUNCTION VOLUMEANEL(cTanque IN CHAR, nAltura IN NUMBER )
RETURN NUMBER
IS
VOLUMEANEL NUMBER;
cEmp CHAR(3);
A_x NUMBER;
A_y NUMBER;
B_x NUMBER;
B_y NUMBER;
CURSOR cF
IS
SELECT TAN_VALOR
FROM PROANEISTANQUE
WHERE EMP_CODEMP = cEmp
AND TAN_CODIGO = cTanque
AND TAN_SEQ = nAltura;

rF cF%ROWTYPE;

CURSOR cA
IS
SELECT TAN_SEQ, TAN_VALOR FROM PROANEISTANQUE
WHERE EMP_CODEMP = cEmp
AND TAN_CODIGO = cTanque
AND TAN_SEQ = (SELECT MAX(TAN_SEQ) FROM PROANEISTANQUE
WHERE EMP_CODEMP = cEmp
AND TAN_CODIGO = cTanque
AND TAN_SEQ < nAltura);

rA cA%ROWTYPE;

CURSOR cB
IS
SELECT TAN_SEQ, TAN_VALOR FROM PROANEISTANQUE
WHERE EMP_CODEMP = cEmp
AND TAN_CODIGO = cTanque
AND TAN_SEQ = (SELECT MIN(TAN_SEQ) FROM PROANEISTANQUE
WHERE EMP_CODEMP = cEmp
AND TAN_CODIGO = cTanque
AND TAN_SEQ > nAltura);

rB cB%ROWTYPE;
BEGIN

IF fTipocalculo = 'C' THEN
SELECT emp_codemp
INTO cEmp
FROM procalculo
WHERE cal_ip = FIP
AND cal_tipo = 'C';
ELSE
SELECT emp_codemp
INTO cEmp
FROM proparent
WHERE par_ip = FIP;
END IF;

OPEN cF;
OPEN cA;
OPEN cB;
FETCH cF INTO rF;
FETCH cA INTO rA;
FETCH cB INTO rB;
IF NOT cF%NOTFOUND THEN
VOLUMEANEL := rF.TAN_VALOR;
ELSIF NOT (cA%NOTFOUND AND cB%NOTFOUND) THEN
A_x := rA.TAN_SEQ;
A_y := rA.TAN_VALOR;
B_x := rB.TAN_SEQ;
B_y := rB.TAN_VALOR;
VOLUMEANEL := ((B_y - A_y) / (B_x - A_x)) * nAltura + (A_y - ((B_y - A_y) / (B_x - A_x)) * A_x);
ELSE
VOLUMEANEL := 0;
END IF;
CLOSE cF;
CLOSE cA;
CLOSE cB;
RETURN VOLUMEANEL;
END;
Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados para a empresa ().

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _