preciso de ajuda urgente
10/12/2003
0
Estou desenvolvendo um sistema de controle de estoque para uma farmácia gostaria de dicas ou um exemplo de controle de estoque
já estou cadastrando e so falta fazer a entrada e a saída; 8)
já estou cadastrando e so falta fazer a entrada e a saída; 8)
Marciano
Curtir tópico
+ 0
Responder
Posts
15/12/2003
Anonymous
o banco de dados interbase não possui o auto_incremento uso o seguinte codigo no botão novo para fazer.
var it:integer;
begin
inherited;
if dm.tbentrada[´cod´]= null then
begin
dm.dm.tbentrada.edit;
dm.dm.tbentrada[´cod´]:=1;
btsalvar.enabled:=true;
editnome.setfocus;
end
else
begin
if (dm.dm.tbentrada[´nome_comercial´]<> null)then begin
dm.dm.tbentrada.last;
it:=dm.tbentrada[´cod´];
dm.dm.tbentrada.insert;
dm.dm.tbentrada[´cod´]:=it+1;
editnome.setfocus;
btsalvar.enabled:=true;
No botão salvar uso o seguinte codigo;
With dm.tbestoque do
begin
filtered:=false;
Filter:=´Cod_Medicamentos = ´+dm.tbmedicamentos.fieldByName(´Cod´).asString;
Filtered:=true;
if( FieldByName(´Cod_Medicamentos´).asString = dm.tbentrada.fieldByName(´Cod_Medicamentos´).asString) then
begin
dm.tbestoque.edit;
FieldByName(´Quant´).AsFloat:=FieldByName(´Quant´).AsFloat+Dm.tbentrada.fieldByName(´Quant´).asFloat;
dm.tbestoque.post;
end
else
begin
append;
FieldByName(´Cod´).AsString:=Edit1.Text;
FieldByName(´Quant´).AsFloat:=Dm.tbentrada.fieldByName(´Quant´).asFloat;
FieldByName(´Cod_medicamentos´).AsString:=Dm.tbmedicamentos.fieldByName(´Cod´).asString;
FieldByName(´Cod_medicamentos´).AsString:=Dm.tbmedicamentos.fieldByName(´Cod´).asString;
post;
begin
Filtered:=false;
end;
preciso saber como fazer para alto incrementar quanto clicar em salvar e como fazer a mesma coiza com o saida de medicamentos;
:oops:
var it:integer;
begin
inherited;
if dm.tbentrada[´cod´]= null then
begin
dm.dm.tbentrada.edit;
dm.dm.tbentrada[´cod´]:=1;
btsalvar.enabled:=true;
editnome.setfocus;
end
else
begin
if (dm.dm.tbentrada[´nome_comercial´]<> null)then begin
dm.dm.tbentrada.last;
it:=dm.tbentrada[´cod´];
dm.dm.tbentrada.insert;
dm.dm.tbentrada[´cod´]:=it+1;
editnome.setfocus;
btsalvar.enabled:=true;
No botão salvar uso o seguinte codigo;
With dm.tbestoque do
begin
filtered:=false;
Filter:=´Cod_Medicamentos = ´+dm.tbmedicamentos.fieldByName(´Cod´).asString;
Filtered:=true;
if( FieldByName(´Cod_Medicamentos´).asString = dm.tbentrada.fieldByName(´Cod_Medicamentos´).asString) then
begin
dm.tbestoque.edit;
FieldByName(´Quant´).AsFloat:=FieldByName(´Quant´).AsFloat+Dm.tbentrada.fieldByName(´Quant´).asFloat;
dm.tbestoque.post;
end
else
begin
append;
FieldByName(´Cod´).AsString:=Edit1.Text;
FieldByName(´Quant´).AsFloat:=Dm.tbentrada.fieldByName(´Quant´).asFloat;
FieldByName(´Cod_medicamentos´).AsString:=Dm.tbmedicamentos.fieldByName(´Cod´).asString;
FieldByName(´Cod_medicamentos´).AsString:=Dm.tbmedicamentos.fieldByName(´Cod´).asString;
post;
begin
Filtered:=false;
end;
preciso saber como fazer para alto incrementar quanto clicar em salvar e como fazer a mesma coiza com o saida de medicamentos;
:oops:
Responder
27/03/2004
Prs_delphista
Caro colega, existe uma forma mais prática de fazer isso...
O InterBase não possui um campo com a opção de auto-incremento mas, oferece um recurso para que você possa ter o mesmo resultado.
Como você está usando o InterBase, no próprio console dele, você poderá definir este recurso...
Você terá que criar um ´gerador´ de numeros auto-incremento ligado a banco de dados, através de uma instrução SQL no console, por exemplo:
CREATE GENERATOR ´GEN_AUTORIA´;
Daí, você poderá indicar no Delphi, no componente dataware que está utilizando (tTable, tQuery, tIBQuery, etc...) que uma determinada coluna será do tipo autoincremento e como será feito... O próprio Banco tratará da geração para você...
Um grande abraço.
O InterBase não possui um campo com a opção de auto-incremento mas, oferece um recurso para que você possa ter o mesmo resultado.
Como você está usando o InterBase, no próprio console dele, você poderá definir este recurso...
Você terá que criar um ´gerador´ de numeros auto-incremento ligado a banco de dados, através de uma instrução SQL no console, por exemplo:
CREATE GENERATOR ´GEN_AUTORIA´;
Daí, você poderá indicar no Delphi, no componente dataware que está utilizando (tTable, tQuery, tIBQuery, etc...) que uma determinada coluna será do tipo autoincremento e como será feito... O próprio Banco tratará da geração para você...
Um grande abraço.
Responder
Clique aqui para fazer login e interagir na Comunidade :)