Fórum o que vcs acham dessa procedure? é o mais indicado a fazer? #50125
29/03/2005
0
ICOD_REMESSA INTEGER)
RETURNS (
COD_IEP INTEGER,
CODIGO VARCHAR(10),
DESCRICAO VARCHAR(65),
UNIDADE VARCHAR(2),
QTDE NUMERIC(6,3),
NOVA_QTDE NUMERIC(6,3),
VALOR NUMERIC(6,6),
NOVO_VR_UNIT NUMERIC(6,6),
TOTAL_ITEM NUMERIC(15,2))
AS
DECLARE VARIABLE VCOD_IEP INTEGER;
DECLARE VARIABLE VCODIGO VARCHAR(10);
DECLARE VARIABLE VDESCRICAO VARCHAR(65);
DECLARE VARIABLE VUNIDADE VARCHAR(2);
DECLARE VARIABLE VQTDE NUMERIC(6,3);
DECLARE VARIABLE VNOVA_QTDE NUMERIC(6,3);
DECLARE VARIABLE VVALOR NUMERIC(6,6);
DECLARE VARIABLE VNOVO_VR_UNIT NUMERIC(6,6);
DECLARE VARIABLE VTOTAL_ITEM NUMERIC(15,2);
DECLARE VARIABLE VSIGLA VARCHAR(2);
BEGIN
FOR SELECT FIRST 1 I.SIGLA
FROM ITENS_REM_AGR R, ITENS_EP I
WHERE I.COD_IEP=R.COD_IEP AND
R.COD_REMESSA = :ICOD_REMESSA
INTO :VSIGLA DO
BEGIN
IF (VSIGLA = ´BE´) THEN
BEGIN
FOR SELECT DISTINCT I.COD_IEP,
(I.SIGLA||I.CODIGO||I.REVISAO) AS CODIGO,
I.DESCRICAO,
I.UNIDADE,
SUM(R.QTDE) AS QTDE,
SUM(R.FATOR*R.QTDE) AS NOVA_QTDE,
SUM((R.QTDE*R.VL_LIQ)/(R.QTDE)) AS VALOR,
SUM(TOTAL_ITEM) / SUM(R.QTDE*FATOR) AS NOVO_VR_UNIT,
SUM(TOTAL_ITEM) AS TOTAL_ITEM
FROM ITENS_REM_AGR_PB R, ITENS_EP I
WHERE I.COD_IEP=R.COD_IEP AND
R.COD_REMESSA = :ICOD_REMESSA
GROUP BY I.COD_IEP, I.SIGLA, I.CODIGO, I.REVISAO, I.DESCRICAO, I.UNIDADE
INTO :VCOD_IEP, :VCODIGO, :VDESCRICAO, :VUNIDADE, :VQTDE, :VNOVA_QTDE,
:VVALOR, :VNOVO_VR_UNIT, :VTOTAL_ITEM DO
BEGIN
COD_IEP = VCOD_IEP;
CODIGO = VCODIGO;
DESCRICAO = VDESCRICAO;
UNIDADE = VUNIDADE;
QTDE = VQTDE;
NOVA_QTDE = VNOVA_QTDE;
VALOR = VVALOR;
NOVO_VR_UNIT = VNOVO_VR_UNIT;
TOTAL_ITEM = VTOTAL_ITEM;
SUSPEND;
END
END
ELSE
BEGIN
FOR SELECT DISTINCT I.COD_IEP,
(I.SIGLA||I.CODIGO||I.REVISAO) AS CODIGO,
I.DESCRICAO,
I.UNIDADE,
SUM(R.QTDE) AS QTDE,
SUM(R.FATOR*R.QTDE) AS NOVA_QTDE,
SUM((R.QTDE*R.VL_LIQ)/(R.QTDE)) AS VALOR,
SUM(TOTAL_ITEM) / SUM(R.QTDE*FATOR) AS NOVO_VR_UNIT,
SUM(TOTAL_ITEM) AS TOTAL_ITEM
FROM ITENS_REM_AGR R, ITENS_EP I
WHERE I.COD_IEP=R.COD_IEP AND
R.COD_REMESSA = :ICOD_REMESSA
GROUP BY I.COD_IEP, I.SIGLA, I.CODIGO, I.REVISAO, I.DESCRICAO, I.UNIDADE
INTO :VCOD_IEP, :VCODIGO, :VDESCRICAO, :VUNIDADE, :VQTDE, :VNOVA_QTDE,
:VVALOR, :VNOVO_VR_UNIT, :VTOTAL_ITEM DO
BEGIN
COD_IEP = VCOD_IEP;
CODIGO = VCODIGO;
DESCRICAO = VDESCRICAO;
UNIDADE = VUNIDADE;
QTDE = VQTDE;
NOVA_QTDE = VNOVA_QTDE;
VALOR = VVALOR;
NOVO_VR_UNIT = VNOVO_VR_UNIT;
TOTAL_ITEM = VTOTAL_ITEM;
SUSPEND;
END
END
END
END
Até mais...
Douglascrp
Curtir tópico
+ 0Posts
30/03/2005
Faelcavalcanti
Gostei + 0
30/03/2005
Douglascrp
no banco de dados aqui da empresa, a gente tem um cadastro de famílias de itens de estoque, e uma das famílias, no caso o ´BE´, que aparece no teste dentro da procedure, se refere aos itens que são beneficiados, ou seja, quando a empresa compra um item, ele não dá entrada no estoque diretamente, ele antes de mais nada, envia essa mercadoria para outra empresa, que beneficia essa matéria-prima e devolve o item já beneficiado, e na nota fiscal vem descriminado como beneficiamento, e o valor na nota refere-se somente ao valor do beneficiamento, e não o da matéria-prima, então quando vou dar entrada no estoque dos itens devolvidos, eu vejo se é dessa família ´BE´, e se for eu faço o cálculo para descobrir o valor da matéria-prima utilizada em cada beneficiamento mais o valor do próprio beneficiamento, formando então um item da família ´PB´, referente a Produtos Beneficiados, e é nesse item que dou entrada no estoque.
espero ter conseguido explicar...
ah, e valeu pelo toque das transações.
Gostei + 0
30/03/2005
Douglascrp
no banco de dados aqui da empresa, a gente tem um cadastro de famílias de itens de estoque, e uma das famílias, no caso o ´BE´, que aparece no teste dentro da procedure, se refere aos itens que são beneficiados, ou seja, quando a empresa compra um item, ele não dá entrada no estoque diretamente, ele antes de mais nada, envia essa mercadoria para outra empresa, que beneficia essa matéria-prima e devolve o item já beneficiado, e na nota fiscal vem descriminado como beneficiamento, e o valor na nota refere-se somente ao valor do beneficiamento, e não o da matéria-prima, então quando vou dar entrada no estoque dos itens devolvidos, eu vejo se é dessa família ´BE´, e se for eu faço o cálculo para descobrir o valor da matéria-prima utilizada em cada beneficiamento mais o valor do próprio beneficiamento, formando então um item da família ´PB´, referente a Produtos Beneficiados, e é nesse item que dou entrada no estoque.
espero ter conseguido explicar...
ah, e valeu pelo toque das transações.
Gostei + 0
30/03/2005
Douglascrp
no banco de dados aqui da empresa, a gente tem um cadastro de famílias de itens de estoque, e uma das famílias, no caso o ´BE´, que aparece no teste dentro da procedure, se refere aos itens que são beneficiados, ou seja, quando a empresa compra um item, ele não dá entrada no estoque diretamente, ele antes de mais nada, envia essa mercadoria para outra empresa, que beneficia essa matéria-prima e devolve o item já beneficiado, e na nota fiscal vem descriminado como beneficiamento, e o valor na nota refere-se somente ao valor do beneficiamento, e não o da matéria-prima, então quando vou dar entrada no estoque dos itens devolvidos, eu vejo se é dessa família ´BE´, e se for eu faço o cálculo para descobrir o valor da matéria-prima utilizada em cada beneficiamento mais o valor do próprio beneficiamento, formando então um item da família ´PB´, referente a Produtos Beneficiados, e é nesse item que dou entrada no estoque.
espero ter conseguido explicar...
ah, e valeu pelo toque das transações.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)