Fórum StoredProc do zeus como usar #417491

25/05/2012

0

Olá...
Uso o Delphi 7.0 e preciso opter uns valores de uma Procedure no MySQL.

para obter os valeres da Procedure no Delphi estou fazendo o seguinte:

with zqr do begin // zqr é do tipo TZQuery
SQL.Clear;
SQL.Add(CALL sp_totalizadorcx+sFilial+(:nrocx, @din, @car, @chq));
ParamByName(nrocx).AsInteger := opCXcd;
ExecSQL;

SQL.Clear;
SQL.Add(select @din, @car, @chq);
Open;

ValorDin.Value := FieldByName(@din).AsFloat;
ValorCar.Value := FieldByName(@car).AsFloat;
ValorChe.Value := FieldByName(@chq).AsFloat;
end;

COMO FAÇO PARA utilizar o Componente StoredProc do ZEUS???
Vagner Almeida

Vagner Almeida

Responder

Posts

25/05/2012

Joel Rodrigues

Funciona semelhante à Query, só que você já tem maior controle sobre os parâmetros. Indique, no componente, qual procedure você vai usar e os parâmetros devem ser reconhecidos automaticamente (inclusive como input ou output). Então basta passar os valores e chamar o método ExecProc.

Tenta aí, vamos resolver mais esta.
Responder

Gostei + 0

25/05/2012

Vagner Almeida

Já utilizei o IBStoredProc, mas para o firebird. É tranquilo.
Mas não funciona do mesmo jeito no MySQL.
Fica apresentando a mensagem de operação não permitida.

Tentei de duas formas, Open e ExecProc. Ambas apresentaram a mesma mensagem.
A questão/problema certamente está na passagem dos parâmetros.

zsp.StoredProcName := sp_totalizadorcx;
zsp.ParamByName(nrocx).AsInteger := NroCx;
zsp.Open; / zsp.ExecProc;

Lembrando que são 4 parâmetros 1 de entrada (numero do caixa) e 3 de saída (valorDin, ValorCar, ValorChe).
Responder

Gostei + 0

25/05/2012

Joel Rodrigues

Dá uma olhada nesse tópico de fórum, o cara usa um código aí bem explicativo: http://www.delphipraxis.net/151048-stored-procedure-via-zeos-auf-mysql.html
Responder

Gostei + 0

28/05/2012

Vagner Almeida

Valeu, vou testar. Qualquer coisa Aviso novamente neste post
Responder

Gostei + 0

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

Aceitar