Ver Mensaje Individual
  #1  
Antiguo 05-07-2007
Roilo Roilo is offline
Miembro
 
Registrado: nov 2005
Ubicación: Mayarí, Cuba
Posts: 143
Reputación: 19
Roilo Va por buen camino
Error: ...No se puede crear una nueva transacción, se excedió la capacidad...

Un abraso al FORO.
Bueno. Estoy trabajando en Intraweb y utilizo bases de datos SQL Server 2002 (Delphi 7).
Ya logré insertar registros en una tabla. Para ello utilizo un TSimpleDataSet , y un botón que contiene el siguiente código:
Código Delphi [-]
 .... 
 With ConsolaDatos.SDSbusqueda do // SDSbusqueda es el TSimpleDataSet que trabaja sobre la tabla motivos
  begin
   Open ;
   insert;
   FieldByName('ID').AsInteger := id ; 
   FieldByName('Nombre').AsString := nombre.Text ;
   FieldByName('NoRegistro').AsString := NRegistro.Text ;
   FieldByName('Apellidos').AsString := Apellidos.Text ;
   FieldByName('CentroTrab').AsString := trabajo.Text ;
   FieldByName('Cargo').AsString := Cargo.Text ;
   FieldByName('Direccion').AsString := Direccion.Text ;
   if csocial.Checked = true then
   FieldByName('CSocial').AsString := 'Sí' else
   FieldByName('CSocial').AsString := 'No';
   FieldByName('TelParticular').AsString := telefonop.Text ;
   FieldByName('TelTrabajo').AsString := telefonot.Text ;
   if motivo.ItemIndex <> -1 then
   FieldByName('Motivo').AsString := Motivo.Text else
   FieldByName('Motivo').AsString := 'Solicitud';
   FieldByName('FecEfect').AsString := Fecha.Text ;
   FieldByName('Categoria').AsString := categoria.Text ;
   FieldByName('IDCategoria').AsString := Descripcion.Text ;
   FieldByName('Area').AsString := Area.Text ;
   FieldByName('Transferido').AsString := Transferido.Text ;
   FieldByName('FecTramitacion').AsString := FechaTram.Text ;
   FieldByName('Observaciones').AsString := observaciones.Text ;
   FieldByName('entrevistacon').AsString := Entrevistacon.Text ;
   FieldByName('estado').AsString := 'En proceso' ;
   if Investigado.Caption <> 'En Proceso' then
   FieldByName('Investigado').AsString := Investigado.Caption ;
   ApplyUpdates(-1);
   Close ;
   borrar.OnClick (self); // limpia todos los campos del formulario
  end;

Este código funciona...pero cuando paso a otro botón de mi aplicación, el que ejecuta esta consulta:
Código SQL [-]
SELECT 
DISTINCT m.id, m.motivo,
(SELECT count(motivo) FROM control WHERE motivo=m.motivo) as Cantidad
FROM control, motivos as m
ORDER BY m.id
[/size]

Cuando quiero volver a insertar me surge el error:
...no de puede crear una nueva transacción, se excedió la capacidad...
y se me ubica el puntero dentro del código de insertar cerca de ApplyUpdates(-1);
Si tienen algo que decirme respecto al tema, me serviría de mucha ayuda.
GRACIAS de antemano.
__________________
...que la libertad sólo existe cuando no es de nadie.

Última edición por Roilo fecha: 05-07-2007 a las 16:32:30.
Responder Con Cita