Quando me voy a ejecutar una SP, me lo da el error:
Cita:
Error al converter tipos de datos varchar en DateTime
|
Mi SP abajo
Código SQL
[-]set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:
-- Create date: <2011.03.21>
-- Description:
-- =============================================
ALTER PROCEDURE [dbo].[sp_INS_LOG_INDEX_JUS](
@TIPO_EDICAO VARCHAR(20),
@NUM_EDICAO VARCHAR(10),
@DATA_EDICAO DATETIME,
@NUM_PAGINA VARCHAR(10),
@JUSTIFICATIVA TEXT,
@id bigint output
) as
begin
insert into INDEX_LOG_JUS(TIPO_EDICAO,NUM_EDICAO,DATA_EDICAO,
NUM_PAGINA,JUSTIFICATIVA) values
(@TIPO_EDICAO,@NUM_EDICAO,@DATA_EDICAO,
@NUM_PAGINA,@JUSTIFICATIVA);
select @id = @@identity
end
Mi pasaje de parametros del Delphi para a SP
Código Delphi
[-]function TGeneralFiles.InsereJus(Tipo_Edicao, Num_Edicao: String;Data: TDateTime; Num_Pagina, Justificativa: String;
ObjConn: TAdoConnection;ObjSp: TADOStoredProc): int64;
begin
with ObjSp, Parameters do
begin
ParamByName('@TIPO_EDICAO').Value := Tipo_Edicao;
ParamByName('@NUM_EDICAO').Value := Num_Edicao;
ParamByName('@DATA_EDICAO').Value := Data;
ParamByName('@NUM_PAGINA').Value := Num_Pagina;
ParamByName('@JUSTIFICATIVA').Value := Just;
try
ExecProc;
Result := ParamByName('@id').Value;
Commit(ObjConn);
except
Rollback(ObjConn);
raise;
end;
end;
end;
Mi llamada a la funcion
Código Delphi
[-]procedure TfrmMain.BitBtn1Click(Sender: TObject);
begin
if PodeInserir then
FGeneralFiles.InsereJus(edtTipoEdicao.Text,edtNumEdicao.Text,edtData.Date,edtNumPagina.Text,FGeneral Files.Just,ADOConn,spJus)
else
ShowMessage('Alguns campos não foram preenchidos.'+#13+#10+'Favor corrigir o problema e tentar novamente');
end;
Yo hizo un comentario en el Field data(Tipo TDateTimePicker) y mismo asi, continua el mismo error. No se lo pueda ser. Voy a sacar todo y poner uno a uno y ver si funciona y onde me lo da el error.