GARANTIR DESCONTO

Fórum no delphi como eu faço para passar os parametos #49906

18/03/2005

0

tenho uma procdure no meu bd com este codigo

CREATE PROCEDURE MANUTENCAO_PESQ_DE_EMPRESA (
TIPO VARCHAR(1),
ORDEM VARCHAR(20),
COD INTEGER)
RETURNS (
R_CODIGO INTEGER,
R_RAZAO VARCHAR(40),
R_NF VARCHAR(40),
R_TEL VARCHAR(18))

IF (:tipo = ´P´) THEN
BEGIN
IF (:ORDEM = ´CODIGO´) THEN
BEGIN
for SELECT EMPRESAS.codigo,
EMPRESAS.razao_social,
EMPRESAS.nome_fantasia,
EMPRESAS.telefone1
FROM EMPRESAS
WHERE EMPRESAS.codigo like :cod || ´¬´
INTO :r_codigo,
:r_razao,
:r_nf,
:r_tel
do
suspend;
END
END

gostaria de saber como faço para passar os valors para os parametros via o delphi (uso os componentes da paleta dbexpress)

Obrigado!!!!


Uiliangurjon

Uiliangurjon

Responder

Posts

19/03/2005

Fsflorencio

Numa query coloque isto: SELECT * FROM MANUTENCAO_PESQ_DE_EMPRESA ( ´T´, ´ORDEM´, 1)


Responder

Gostei + 0

19/03/2005

Afarias

algo como:

with SQLQuery1 do
begin
  SQL.Text := ´SELECT * FROM MANUTENCAO_PESQ_DE_EMPRESA ( 
:TIPO, :ORDEM, :COD)´;
  ParamByName(´TIPO´).AsString := ´Teste1´;
  ParamByName(ORDEM´).AsString := ´Teste2´;
  ParamByName(´COD´).AsInteger := 3;
  
end;



T+


Responder

Gostei + 0

24/03/2005

Uiliangurjon

Olha o que eu fiz, não da certo retorna sempre um erro


DataModule1.SQLQuery1.Close;
DataModule1.SQLQuery1.SQL.Clear;
DataModule1.SQLQuery1.SQL.Add (´select * from MANUTENCAO_PESQ_DE_EMPRESA(:I_RAZAO, :I_TIPO:I_NOME_F, :I_ENDE, :I_BAIRRO, :I_CIDADE, :I_ESTADO, :I_CEP, :I_TEL1, :I_TEL2, :I_TEL3, :I_CNPJ, :I_INSC, :I_MAIL, :I_HOME, :I_PATH, )´);

DataModule1.SQLQuery1.ParamByName(´I_RAZAO´).AsString := Edit2.Text;
DataModule1.SQLQuery1.ParamByName(´I_NOME_F´).AsString := Edit3.Text;
DataModule1.SQLQuery1.ParamByName(´I_ENDE´).AsString := Edit4.Text;
DataModule1.SQLQuery1.ParamByName(´I_BAIRRO´).AsString := Edit5.Text;
DataModule1.SQLQuery1.ParamByName(´I_CIDADE´).AsString := Edit6.Text;
DataModule1.SQLQuery1.ParamByName(´I_ESTADO´).AsString := ComboBox1.Text;
DataModule1.SQLQuery1.ParamByName(´I_CEP´).AsString := MaskEdit1.text;
DataModule1.SQLQuery1.ParamByName(´I_TEL1´).AsString := MaskEdit2.Text;
DataModule1.SQLQuery1.ParamByName(´I_TEL2´).AsString := MaskEdit3.text;
DataModule1.SQLQuery1.ParamByName(´I_TEL3´).AsString := MaskEdit4.Text;
DataModule1.SQLQuery1.ParamByName(´I_CNPJ´).AsString := MaskEdit5.Text;
DataModule1.SQLQuery1.ParamByName(´I_INSC´).AsString := Edit7.Text;
DataModule1.SQLQuery1.ParamByName(´I_MAIL´).AsString := Edit8.Text;
DataModule1.SQLQuery1.ParamByName(´I_HOME´).AsString := Edit9.Text;
DataModule1.SQLQuery1.ParamByName(´I_PATH´).AsString := Edit10.Text;

if Edit11.Text = ´I´ then
begin
DataModule1.SQLQuery1.ParamByName(´I_TIPO´).AsString := ´I´;
end;

DataModule1.SQLQuery1.Open;


Responder

Gostei + 0

24/03/2005

Uiliangurjon

e se essa procedure não retornar valor for apenas para inclusão de registros????


o que eu faço????


Responder

Gostei + 0

24/03/2005

Emerson Nascimento

o erro deve ocorrer porque sua SP tem apenas 3 parâmetros de entrada e você está passando 16 parâmetros.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar