Fórum Codigo SQL #186245
05/10/2003
0
Olá Amigos.
Gostaria de uma explicação da SQL Abaixo: Alguém pode me ajudar. Eu entendi mais ou menos. Gotaria de um rápida explicação, um resumo nos pontos principais da SQL
procedure TForm_entradas_I.BitBtn1Click(Sender: TObject);
VAR
valor_convertido : string;
Qtde_entrada : integer;
Preco_unitario : double;
Perc_Icms : double;
Frete : double;
Outros_custos : double;
Frete_unitario : double;
Outros_custos_unitario : double;
ICMS_unitario : double;
Custo_unitario_entrada : double;
begin
With DataModule2 do
Begin
SQLDataSet5.CommandText :=
´INSERT INTO Entrada_estoque (D_H_entrada, Cod_documento,Cod_produto,Qtde,Preco_unit,Perc_icms,Frete_valor,Outras_desp,Responsavel,Observacao)VALUES(:data_hora,:documento,:produto,:quantidade,:preco,:icms,:frete,:outras,:responsa,:obs)´;
SQLDataSet5.Parambyname(´data_hora´).asstring:=FormatDatetime(´yyyy/mm/dd hh:mm:ss´,NOW);
SQLDataSet5.Parambyname(´documento´).asstring :=Edit1.text;
SQLDataSet5.Parambyname(´produto´).asstring := MaskEdit1.text;
Qtde_entrada:=StrToInt(MaskEdit2.Text);
SQLDataSet5.Parambyname(´quantidade´).asinteger :=Qtde_entrada;
valor_convertido:=MaskEdit3.text;
// elimina separador milhar
While (pos(ThousandSeparator,valor_convertido)>0) do
delete(valor_convertido,pos(ThousandSeparator,valor_convertido),1);
Preco_unitario :=StrToFloat(valor_convertido);
SQLDataSet5.Parambyname(´preco´).asfloat :=Preco_unitario;
// elimina separador milhar
valor_convertido:=MaskEdit4.text;
While (pos(ThousandSeparator,valor_convertido)>0) do
delete(valor_convertido,pos(ThousandSeparator,valor_convertido),1);
Perc_Icms :=StrToFloat(valor_convertido);
SQLDataSet5.Parambyname(´icms´).asfloat :=Perc_Icms;
// elimina separador milhar
valor_convertido:=MaskEdit5.text;
While (pos(ThousandSeparator,valor_convertido)>0) do
delete(valor_convertido,pos(ThousandSeparator,valor_convertido),1);
Frete :=StrToFloat(valor_convertido);
SQLDataSet5.Parambyname(´frete´).asfloat :=Frete;
// elimina separador milhar
valor_convertido:=MaskEdit6.text;
While (pos(ThousandSeparator,valor_convertido)>0) do
delete(valor_convertido,pos(ThousandSeparator,valor_convertido),1);
Outros_custos :=StrToFloat(valor_convertido);
SQLDataSet5.Parambyname(´outras´).asfloat :=Outros_custos;
SQLDataSet5.Parambyname(´responsa´).asstring :=Edit2.text;
SQLDataSet5.Parambyname(´obs´).asmemo := Memo1.Text;
SQLDataSet5.ExecSQL;
// atualiza posição de estoque do produto
Frete_unitario :=Frete/Qtde_entrada;
Outros_custos_unitario :=Outros_custos/Qtde_entrada;
ICMS_unitario :=Preco_unitario*(Perc_Icms/100);
Custo_unitario_entrada :=Preco_unitario+Frete_unitario+Outros_custos_unitario-ICMS_unitario;
DataModule2.SQLDataSet6.CommandText :=
´UPDATE ESTOQUE Set preco_custo=((qtde*preco_custo)+:Valor_entrada)/(qtde+:Nova_qtde_entrada),´+
´Qtde=Qtde+:nova_qtde_entrada,´+
´preco_venda=preco_custo*(1+(Perc_Markup/100))´+
´WHERE cod_barras=:Cod_barras_prod´;
DataModule2.SQLDataSet6.Parambyname(´Nova_qtde_entrada´).asinteger :=Qtde_entrada;
DataModule2.SQLDataSet6.Parambyname(´Valor_entrada´).asfloat :=Custo_unitario_entrada*Qtde_entrada;
DataModule2.SQLDataSet6.Parambyname(´Cod_barras_prod´).asstring :=MaskEdit1.text;
DataModule2.SQLDataSet6.ExecSql;
// limpa var1áveis muda foco p/lançamento de outro item 7
MaskEdit1.text:=´´;
MaskEdit2.text:=´0´;
MaskEdit3.text:=´0´;
MaskEdit4.text:=´0´;
MaskEdit5.text:=´0´;
MaskEdit6.text:=´0´;
memo1.clear;
Label10.Caption:=´´;
Edit1.setfocus;
end;
Gostaria de uma explicação da SQL Abaixo: Alguém pode me ajudar. Eu entendi mais ou menos. Gotaria de um rápida explicação, um resumo nos pontos principais da SQL
procedure TForm_entradas_I.BitBtn1Click(Sender: TObject);
VAR
valor_convertido : string;
Qtde_entrada : integer;
Preco_unitario : double;
Perc_Icms : double;
Frete : double;
Outros_custos : double;
Frete_unitario : double;
Outros_custos_unitario : double;
ICMS_unitario : double;
Custo_unitario_entrada : double;
begin
With DataModule2 do
Begin
SQLDataSet5.CommandText :=
´INSERT INTO Entrada_estoque (D_H_entrada, Cod_documento,Cod_produto,Qtde,Preco_unit,Perc_icms,Frete_valor,Outras_desp,Responsavel,Observacao)VALUES(:data_hora,:documento,:produto,:quantidade,:preco,:icms,:frete,:outras,:responsa,:obs)´;
SQLDataSet5.Parambyname(´data_hora´).asstring:=FormatDatetime(´yyyy/mm/dd hh:mm:ss´,NOW);
SQLDataSet5.Parambyname(´documento´).asstring :=Edit1.text;
SQLDataSet5.Parambyname(´produto´).asstring := MaskEdit1.text;
Qtde_entrada:=StrToInt(MaskEdit2.Text);
SQLDataSet5.Parambyname(´quantidade´).asinteger :=Qtde_entrada;
valor_convertido:=MaskEdit3.text;
// elimina separador milhar
While (pos(ThousandSeparator,valor_convertido)>0) do
delete(valor_convertido,pos(ThousandSeparator,valor_convertido),1);
Preco_unitario :=StrToFloat(valor_convertido);
SQLDataSet5.Parambyname(´preco´).asfloat :=Preco_unitario;
// elimina separador milhar
valor_convertido:=MaskEdit4.text;
While (pos(ThousandSeparator,valor_convertido)>0) do
delete(valor_convertido,pos(ThousandSeparator,valor_convertido),1);
Perc_Icms :=StrToFloat(valor_convertido);
SQLDataSet5.Parambyname(´icms´).asfloat :=Perc_Icms;
// elimina separador milhar
valor_convertido:=MaskEdit5.text;
While (pos(ThousandSeparator,valor_convertido)>0) do
delete(valor_convertido,pos(ThousandSeparator,valor_convertido),1);
Frete :=StrToFloat(valor_convertido);
SQLDataSet5.Parambyname(´frete´).asfloat :=Frete;
// elimina separador milhar
valor_convertido:=MaskEdit6.text;
While (pos(ThousandSeparator,valor_convertido)>0) do
delete(valor_convertido,pos(ThousandSeparator,valor_convertido),1);
Outros_custos :=StrToFloat(valor_convertido);
SQLDataSet5.Parambyname(´outras´).asfloat :=Outros_custos;
SQLDataSet5.Parambyname(´responsa´).asstring :=Edit2.text;
SQLDataSet5.Parambyname(´obs´).asmemo := Memo1.Text;
SQLDataSet5.ExecSQL;
// atualiza posição de estoque do produto
Frete_unitario :=Frete/Qtde_entrada;
Outros_custos_unitario :=Outros_custos/Qtde_entrada;
ICMS_unitario :=Preco_unitario*(Perc_Icms/100);
Custo_unitario_entrada :=Preco_unitario+Frete_unitario+Outros_custos_unitario-ICMS_unitario;
DataModule2.SQLDataSet6.CommandText :=
´UPDATE ESTOQUE Set preco_custo=((qtde*preco_custo)+:Valor_entrada)/(qtde+:Nova_qtde_entrada),´+
´Qtde=Qtde+:nova_qtde_entrada,´+
´preco_venda=preco_custo*(1+(Perc_Markup/100))´+
´WHERE cod_barras=:Cod_barras_prod´;
DataModule2.SQLDataSet6.Parambyname(´Nova_qtde_entrada´).asinteger :=Qtde_entrada;
DataModule2.SQLDataSet6.Parambyname(´Valor_entrada´).asfloat :=Custo_unitario_entrada*Qtde_entrada;
DataModule2.SQLDataSet6.Parambyname(´Cod_barras_prod´).asstring :=MaskEdit1.text;
DataModule2.SQLDataSet6.ExecSql;
// limpa var1áveis muda foco p/lançamento de outro item 7
MaskEdit1.text:=´´;
MaskEdit2.text:=´0´;
MaskEdit3.text:=´0´;
MaskEdit4.text:=´0´;
MaskEdit5.text:=´0´;
MaskEdit6.text:=´0´;
memo1.clear;
Label10.Caption:=´´;
Edit1.setfocus;
end;
Francisco.gorgulho
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)