[firebase-br] SP retonando Dado Inserido
Vinicius
viniciusf em grupojvp.com.br
Qua Set 12 22:01:49 -03 2012
Vou testar o que vc falo...
Estou usando uma Query... TSQLQuery se não me engano (nao estou no trampo
com delphi) DBX....
On 12/09/12 17:58, "Gladiston Santana" <gladiston em vidy.com.br> wrote:
>Só para ter certeza que não retorna nada, faça esse pequeno teste :
> SQLExec.Close;
> SQLExec.SQL.Clear;
> SQLExec.SQL.Add('SELECT campo_retornavel FROM
>SP_OS_GERAR(:PLACA,:KM)');
> SQLExec.ParamByName('PLACA').**AsString := Trim(Viatura);
> SQLExec.ParamByName('KM').**AsInteger := StrToInt(KM);
> SQLExec.Open
> while not SQLExec.eof do
> begin
> ShowMessage(SQLExec.FieldbyName('campo_retornavel').AsString)
> SQLExec.Next;
> end;
>Também tô achando que você fez confusão com componentes.
>
>Em 12 de setembro de 2012 16:11, <viniciusf em grupojvp.com.br> escreveu:
>
>> Na verdade eu fiz usando isso também... mas continua gerando exeption
>> dentro do delphi...
>>
>> Meu codigo de chamar a SP está assim... (DELPHI)
>>
>>
>> procedure TDMP.GerarNovaOS;
>> var
>> Viatura: String;
>> KM: String;
>> begin
>> InputQuery('ORDEM DE SERVIÇO', 'Digite a placa da Viatura:', Viatura);
>> InputQuery('ORDEM DE SERVIÇO', 'Digite o KM da Viatura:', KM);
>> if (Viatura <> '') and (KM <> '') then
>> begin
>> //
>> StrToInt(KM);
>> SQLExec.Close;
>> SQLExec.SQL.Clear;
>> SQLExec.SQL.Add('SELECT * FROM SP_OS_GERAR(:PLACA,:KM)');
>> SQLExec.ParamByName('PLACA').**AsString := Trim(Viatura);
>> SQLExec.ParamByName('KM').**AsInteger := StrToInt(KM);
>> SQLExec.Open;
>> cdsExec.Open;
>> if cdsExec.RecordCount > 0 then
>> begin
>> if SelecOS(cdsExec.FieldByName('**COD').AsInteger) then
>> begin
>> PreencherVisaoOS;
>> frmOS.ShowModal;
>> end;
>> end;
>> end;
>> PreencherVisaoOS;
>> //
>> end;
>>
>> O que pensei... se retornar alguma coisa quer dizer que inseriu... se
>> inseriu eu pego o codigo da OS e abro ela para o usuário...
>>
>> mas sempre que executo dessa forma tras exception que não deveriam
>> aparecer... qd executo dessa forma... funciona normal...
>>
>>
>> procedure TDMP.GerarNovaOS;
>> var
>> Viatura: String;
>> KM: String;
>> begin
>> InputQuery('ORDEM DE SERVIÇO', 'Digite a placa da Viatura:', Viatura);
>> InputQuery('ORDEM DE SERVIÇO', 'Digite o KM da Viatura:', KM);
>> if (Viatura <> '') and (KM <> '') then
>> begin
>> //
>> StrToInt(KM);
>> SQLExec.Close;
>> SQLExec.SQL.Clear;
>> SQLExec.SQL.Add('EXECUTE PROCEDURE SP_OS_GERAR(:PLACA,:KM)');
>> SQLExec.ParamByName('PLACA').**AsString := Trim(Viatura);
>> SQLExec.ParamByName('KM').**AsInteger := StrToInt(KM);
>> SQLExec.ExecSQL;
>> end;
>> PreencherVisaoOS;
>> //
>> end;
>>
>>
>> Quando executo a SP no IBExpert funciona normal retornando... mas pelo
>> delphi não...
>>
>>
>>
>>
>>
>>
>> Em 12.09.2012 15:58, Tallys Ferrante escreveu:
>>
>>
>>> http://www.firebirdsql.org/**refdocs/langrefupd21-insert.**
>>>
>>>html#langrefupd21-insert-**returning<http://www.firebirdsql.org/refdocs/
>>>langrefupd21-insert.html#langrefupd21-insert-returning>
>>>
>>> acho que isso pode te ajudar
>>> ______________________________**________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>
>>>http://www.firebase.com.br/fb/**artigo.php?id=1107<http://www.firebase.c
>>>om.br/fb/artigo.php?id=1107>
>>> Para consultar mensagens antigas:
>>>http://firebase.com.br/**pesquisa<http://firebase.com.br/pesquisa>
>>>
>>
>>
>> ______________________________**________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>
>>http://www.firebase.com.br/fb/**artigo.php?id=1107<http://www.firebase.co
>>m.br/fb/artigo.php?id=1107>
>> Para consultar mensagens antigas:
>>http://firebase.com.br/**pesquisa<http://firebase.com.br/pesquisa>
>>
>______________________________________________
>FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>Para saber como gerenciar/excluir seu cadastro na lista, use:
>http://www.firebase.com.br/fb/artigo.php?id=1107
>Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista