Ver Mensaje Individual
  #21  
Antiguo 14-11-2023
Avatar de mRoman
mRoman mRoman is offline
Miembro
 
Registrado: nov 2003
Posts: 599
Reputación: 21
mRoman Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
He hecho una prueba simulando tu entorno y ha funcionado como se espera.
He creado esta tabla:
Código SQL [-]
CREATE TABLE TBPRU01 (
    ID      INTEGER,
    NOMBRE  VARCHAR(64),
    FECHA   DATE,
    HORA    TIME
);
Y en un formulario he puesto un maskedit igual que el tuyo para probar, este es el resultado:

En un botón va esto:
Código Delphi [-]
procedure TForm2.Button2Click(Sender: TObject);
var
  iID :integer;
  cNombre :string;
begin
  iID := random(100000);
  cNombre := 'Nombre '+inttostr(iID);
  IBQuery1.Close;
  IBQuery1.SQL.Text := 'INSERT INTO tbPru01 (id, nombre, fecha, hora) VALUES (:Id, :nombre, :fecha, :hora)';
  //
  IBQuery1.Params[0].AsInteger := iID;
  IBQuery1.Params[1].AsString := cNombre;
  IBQuery1.Params[2].AsDate := date;
  IBQuery1.Params[3].AsTime := StrToTime( MaskEdit1.Text );
  IBQuery1.ExecSQL;
  //
  IBDataSet1.Refresh;
end;
Espero que te sirva.
Caray! CASIMIRO, muchas gracias.

Veo que en el codigo usas AsTime, obvio son nuestras versiones diferentes de Delphi y de FB que tenemos, yo uso Delphi6 y FB 2.0 ya que en mi delphi no tengo "AsTime", ademas de estas "variantes", esta también la de mi equipo portátil, que no sé si también este influyendo en el problema, ya que es equipo nuevo y algo -creo yo- hace falta por configurar....lo raro es que traslado el EXE compilado al servidor de producción y marca el error, por lo tanto la variante "laptop nueva", pues se descarta que sea parte del problema...

Por lo pronto asi lo tengo:

Código Delphi [-]
        dsProds.FieldByName('RESPONSABLE_DEVOLUCION').AsInteger:=cbxDevolLiq.ItemIndex;
//        dsProds.FieldByName('HORA_ENTREGA').AsDateTime := StrToTime( mskHora.Text );
        dsProds.FieldByName('HORA_ENTREGA_TXT').AsString := mskHora.Text;
        dsProds.FieldByName('FECHA_REGISTRO_VENTA').AsDateTime:=Date;
        dsProds.FieldByName('COSTO_LITRO').AsFloat:=qryContrato.fieldbyname('PRECIO_LITRO_CONCESIONARIO').As  Float;
        dsProds.Post;
        dsProds.ApplyUpdates;
Analizaré un poco mas lo que me has enviado y les cuento.

Saludos y muchas gracias.
__________________
Miguel Román

Afectuoso saludo desde tierras mexicanas....un aguachile?, con unas "cetaseas" bien "muertas"?, VENTE PUES !!
Responder Con Cita