Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   error 'Key violation' (https://www.clubdelphi.com/foros/showthread.php?t=68724)

Ksiopea 02-07-2010 15:00:46

error 'Key violation'
 
Hola a todos, es la primera vez que entro acá y no se si lo estoy haciendo correctamente. mi consulta es la siguiente: estoy haciendo una aplicación en delphi y me genera un error de 'key violation' el procedimiento que tengo es el siguiente:

Código Delphi [-]
procedure TForm15.Table1PostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
begin
If e is EDBEngineError then
If EDBEngineError(e).Errors[0].ErrorCode = DBIERR_KEYVIOL then
DataBaseError('El código ya existe');
end;

lo he usado varias veces y funciona correctamente, pero, ahora tengo instalado windows 7 y he tenido algunos problemas con delphi, lo extraño es que con el win 7 genera el error y se cuelga la aplicación, pero el mismo ejecutable lo corro en otra pc con xp y funciona correctamente. alguien podra ayudarme y decirme si hay algún codigo que se estará manejando distinto en win7 o que podra ser el error. DESDE YA MUCHAS GRACIAS A TODOS.

marcoszorrilla 02-07-2010 15:22:36

¿Dónde tienes instalado el BDE? Calculo que sea un problema de permisos, si así fuera quita el BDE y vuelve a instalarlo por ejemplo en una carpeta dentro de la aplicación que se supone tiene permisos de escritura.

Un Saludo.

ecfisa 02-07-2010 15:56:38

Hola Ksiopea y bienvenido.

No tengo W7 y desconozco que versíon de Delphi estés usando.
Asumiendo que sea Delphi 7:

http://www.clubdelphi.com/foros/showthread.php?t=67331
http://www.clubdelphi.com/foros/showthread.php?t=43414
http://www.taringa.net/posts/ebooks-...Windows-7.html

Espero que te sirva.

Saludos.

Ksiopea 02-07-2010 15:59:34

el DBE esta en C:\Program Files (x86)\Common files\borland Shared\DBE

me habian comentado que tenia que poner permiso de administrador en un par de carpetas, que lo hice y en realidad no recuerdo bien por donde entre, soy nueva en win 7 y me cuesta encontrar algunas cosas

ecfisa 02-07-2010 16:25:31

Hola de nuevo.

Esto funciona para Delphi 7 en Windows Vista , tendrías que probar si lo hace en W7.

PERMISOS
1. Ejecutar: regedit
2. Abrir HKEY_LOCAL_MACHINE
3. Abrir SOFTWARE
4. Sobre la entrada "Borland" click con el botón derecho
5. Elegir "Permisos"
6. Click sobre "Usuarios"
7. Bajo "Permisos de usuarios", seleccionar Permitir "Control total"
8. Click sobre "Aceptar"
9. Salir de regedit

CONFIGURAR EL BDE
1. Botón inicio -> Panel de control -> BDE Adminstrator
2. Debajo de "All Database Aliases" click sobre pestaña "Configuration"
3. Click sobre "Drivers" -> "Native" -> "PARADOX"
4. La entrada "NET DIR" aparece como "C:\", cambiarla por otra,
puede ser cualquiera existente o creada al efecto, "C:\BDEShare" como ejemplo

Saludos.

Ksiopea 02-07-2010 17:30:42

Hola de nuevo, cambie las configuraciones que me han pasado y ahora está funcionando, siempre que corra la aplicación desde el ejecutable "BIEEENNN", pero si lo hago desde el delphi "sigue con el error", pero al menos se que puedo ejecurar la aplicación y el código funciona, supongo que habrá alguna otra configuración que retocar, el delphi no me lo instalo del todo bien de entrada, por ejemplo no me dejaba guardar en el repositorio, entre otras cosas, gracias a todos. ah, estoy trabajando con delphi 6. gracias.

GerTorresM 10-07-2010 00:59:28

DBE con Compatibilidad
 
No se ajuste a tu problema pero te planteo la siguiente solución:

ubícate el BDE, paso a seguir en propiedades busca compatibilidad y le seccionas compatible con winxp service pack 2 o 3 el que sea de tu gusto y finalmente seleccionar ejecutar como administrador.

Adicionalemente prueba este código

Código Delphi [-]
procedure TDMPrediosMilenium.TInteresPostError(DataSet: TDataSet;
  E: EDatabaseError; var Action: TDataAction);
begin
   MessageDlg('No se puede Grabar el Registro',mtInformation,[mbOk],0);
   Action := daAbort;
end;

gertorresm
Colombia


La franja horaria es GMT +2. Ahora son las 19:17:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi