Alexandre Becker Postado Agosto 7, 2007 Denunciar Share Postado Agosto 7, 2007 Bem pessoal, alguns probleminhas aparte(todos resolvidos) consegui aprovar o postgre na empresa onde trabalho e para iniciar bem, vai o clássico: CONTROLE DE ESTOQUE x PROGRAMADOR!!!----------------------------------------------------MINHA TABELA DE ESTOQUEcreate sequence seq_estoque;CREATE TABLE estoque ( sequencia serial not null primary key, empid integer not null , datamov date not null, quant real not null, entsai char(1) not null, tipomov char(2) not null, prodid integer not null);PROGRAMA EM DELPHI DENTRO DE UM BUTTONPARA GERAR REGISTROS DE ESTOQUEvarcont, cont2:integer;data:tdatetime;begindata:=strtodate('15/11/2006');teste.open;barra.max:=90000;for cont:=1 to 90000 dobegin for cont2:=1 to 5 do begin teste.Append; randomize; testeempid.AsInteger:=random(3); testedatamov.asdatetime:=data+cont; randomize; testequant.asinteger:=random(100); testeentsai.text:='E'; testetipomov.text:='TS'; randomize; testeprodid.AsInteger:=random(100); teste.post; end; barra.position:=cont;end;barra.position:=0;cont:=0;for cont:=1 to 90000 dobegin for cont2:=1 to 5 do begin teste.Append; randomize; testeempid.AsInteger:=random(3); testedatamov.asdatetime:=data+cont; randomize; testequant.asinteger:=random(100); testeentsai.text:='S'; testetipomov.text:='TS'; randomize; testeprodid.AsInteger:=random(100); teste.post; barra.position:=cont; end;end;--------------------------------------------select count(*) from estoquetotal de registros 981330--------------------------------------------QUERY PARA SELECIONAR ESTOQUE DE UM DETERMINADO PRODUTO E UMA DETERMINADA EMPRESAselect prodid,empid,((select sum(quant) from estoque where prodid = geral.prodidand entsai='E'and prodid = geral.prodidand empid = geral.empidgroup by prodid, empid) ) - ((select sum(quant) from estoque where prodid = geral.prodidand entsai='S'and prodid = geral.prodidand empid = geral.empidgroup by prodid, empid) ) as totalfrom estoque as geralwhere prodid=7and empid=1group by prodid,empidtotal geral em estoque do item 7 na empresa 1 = 130 ( gerado randomicamente )Total query runtime: 31 ms.1 rows retrieved.31 ms..... é ++++++++++++++++ que bom!!!!! ficou ninja meu controle de estoque em postgre!!agora so para facilitareu posso fazer uma stored procedure selecionavel tal como fazia em firebird para automaticamente fazer um select * from sp_estoque e ele me retornar os dados do meu select acima......????quem puder posta o modelo da SP aqui.... ( ou qualquer modelo parecido para ter ideia de SP )OBS: ideias para um controle de estoque + efetivo são MUITO bem vindas!!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Ivanilson Félix Postado Agosto 18, 2007 Denunciar Share Postado Agosto 18, 2007 Olá Pessoal Estou concluindo o curso de bacharelado em sistemas de informação e escolhi como tema para tcc, imigração de banco de dados proprietário vs banco de dados livre, oracle, sql vs postegree. Uma analise da aplicação nesse setor, os benefícios, as dificuldades encontradas na gestão a implantação. Por este motivo venho acompanhando os fóruns do site e me interessado cada vez mais pelo assunto. Gostaria, se possível, que contribuissem com suas opiniões sobre o tema e bibliografias que podem me auxiliar no desenvolvimento do trabalho. Desde já agradeço pelas dicas que encontrei nos fóruns anteriores! Obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Alexandre Becker
Bem pessoal, alguns probleminhas aparte(todos resolvidos) consegui aprovar o postgre na empresa onde trabalho e para iniciar bem, vai o clássico: CONTROLE DE ESTOQUE x PROGRAMADOR!!!
----------------------------------------------------
MINHA TABELA DE ESTOQUE
create sequence seq_estoque;
CREATE TABLE estoque (
sequencia serial not null primary key,
empid integer not null ,
datamov date not null,
quant real not null,
entsai char(1) not null,
tipomov char(2) not null,
prodid integer not null);
PROGRAMA EM DELPHI DENTRO DE UM BUTTON
PARA GERAR REGISTROS DE ESTOQUE
var
cont, cont2:integer;
data:tdatetime;
begin
data:=strtodate('15/11/2006');
teste.open;
barra.max:=90000;
for cont:=1 to 90000 do
begin
for cont2:=1 to 5 do
begin
teste.Append;
randomize;
testeempid.AsInteger:=random(3);
testedatamov.asdatetime:=data+cont;
randomize;
testequant.asinteger:=random(100);
testeentsai.text:='E';
testetipomov.text:='TS';
randomize;
testeprodid.AsInteger:=random(100);
teste.post;
end;
barra.position:=cont;
end;
barra.position:=0;
cont:=0;
for cont:=1 to 90000 do
begin
for cont2:=1 to 5 do
begin
teste.Append;
randomize;
testeempid.AsInteger:=random(3);
testedatamov.asdatetime:=data+cont;
randomize;
testequant.asinteger:=random(100);
testeentsai.text:='S';
testetipomov.text:='TS';
randomize;
testeprodid.AsInteger:=random(100);
teste.post;
barra.position:=cont;
end;
end;
--------------------------------------------
select count(*) from estoque
total de registros 981330
--------------------------------------------
QUERY PARA SELECIONAR ESTOQUE DE UM
DETERMINADO PRODUTO E UMA DETERMINADA EMPRESA
select prodid,
empid,
((
select sum(quant) from estoque
where prodid = geral.prodid
and entsai='E'
and prodid = geral.prodid
and empid = geral.empid
group by prodid, empid
) ) -
((
select sum(quant) from estoque
where prodid = geral.prodid
and entsai='S'
and prodid = geral.prodid
and empid = geral.empid
group by prodid, empid
) ) as total
from estoque as geral
where prodid=7
and empid=1
group by prodid,empid
total geral em estoque do item 7 na empresa 1 = 130 ( gerado randomicamente )
Total query runtime: 31 ms.
1 rows retrieved.
31 ms..... é ++++++++++++++++ que bom!!!!! ficou ninja meu controle de estoque em postgre!!
agora so para facilitar
eu posso fazer uma stored procedure selecionavel tal como fazia em firebird para
automaticamente fazer um select * from sp_estoque
e ele me retornar os dados do meu select acima......????
quem puder posta o modelo da SP aqui.... ( ou qualquer modelo parecido para ter ideia de SP )
OBS: ideias para um controle de estoque + efetivo são MUITO bem vindas!!!!
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.