Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-09-2008
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
ayuda con datamodule en delphi

hola tengo el siguiente problema a ver si alguien me puede ayudar.

1. la base de datos que utilizo es sql server 200
2.- version de delphi 7

3.- tengo un data module con el nombre de Dconexion y en el un objeto adoConection con el nombre conexion hasta ahi ningun problema.

4.- tengo un form con 2 Tedit uno para pedir el nombre y otro para la contraseña de usuario y un boton con el nombre aceptar el cual al precionarlo ejecuta el siguiente codifo:
Código Delphi [-]
begin
dconexion.conexion.Close;
dconexion.conexion.ConnectionString:=
 'Provider=MSDASQL.1;'+
 'Persist Security Info=True;' +
 'User ID=' + fr_menuu.txtusuario.Text + ';' +
 'Password='+ fr_menuu.txtcontrasena.Text + ';' +
 'Data Source=' + fr_menuu.txtBD.Text;(aqui va el nombre del odbc SAPA)
try
    dconexion.conexion.Connected:=true;
    MessageDlg('Se ha conectado correctamente a la BD: ' + chr(13) +
        txtBD.Text,mtinformation, [mbok], 0);
         fr_usuarioss.ShowModal;
        exit;
except
    raise;
end;

aqui valida el usuario y no hay ningun problema si los datos de usuario son correctos inicia la sesion y si no manda el error.

5.- en otro formulario tengo 2 Tedit para prueba uno pide el numero de contrato y otro el nombre, aparte tengo un Tstoreproc el cual en el nombre de base le pongo el OBDC con el nombre SAPA y configuro los paramentros de entrada para dicho procedimiento, en el boton de aceptar para que ejecute el procedimiento esta este codigo:
Código Delphi [-]
begin
  try
    frcontrato.sp_nvocontrato.Params[0].asstring:=frcontrato.txtcontrato.Text;      frcontrato.sp_nvocontrato.Params[1].asstring:=frcontrato.txtnombre.Text;
    frcontrato.sp_nvocontrato.ExecProc;
  except
    {MessageDlg('Se produjo un error al registrar el nuevo contrato' + chr(13) +
     txtBD.Text,mtinformation, [mbok], 0);}
     Application.messagebox('Contraseña','Información',mb_iconerror);
  end;
end;


aqui esta el verdadero problema ya que cuando preciono el boton de aceptar me manda este mensaje de error: ERROR DE INICIO DE SESION DEL USUARIO(NULL) MOTIVO: NO ESTA ASOCIADO A UNA CONEXION DE SQL SERVER DE CONFIANZA.

LA PREGUNTA ES: como puedo usar la sesion que ya inicie en el data module al pasarle la conexion en todos los formularios de mi proyecto.

por su ayuda de antemano muchas gracias

Última edición por microbiano fecha: 03-09-2008 a las 07:51:49. Razón: modificar errores
Responder Con Cita
  #2  
Antiguo 03-09-2008
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
Pues en principio la sesión se debería mantener si no la has cerrado. Solo se me ocurre que no tengas el KeepConnection de la AdoConnection a true, o el loginprompt a false vamos que lo que deberías tener es:

AdoConnection:
* KeepConnection: true
* loginprompt: false

y un timeout alto (30 segundos)

a parte antes de lanzar un storedproc.....
Código Delphi [-]
    
frcontrato.sp_nvocontrato.prepared:=false;
frcontrato.sp_nvocontrato.Params[0].asstring:=frcontrato.txtcontrato.Text;      frcontrato.sp_nvocontrato.Params[1].asstring:=frcontrato.txtnombre.Text;
frcontrato.sp_nvocontrato.prepared:=true;
    frcontrato.sp_nvocontrato.ExecProc;

Me extraña tb que el storedproc no lo tengas en dconexion ya que haces un datamodule metelo ahí bueno eso va en gustos....
Responder Con Cita
  #3  
Antiguo 03-09-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola microbiano, si te conectas a SqlServer en Provider no debería ser SQLOLEDB.1 en vez de MSDASQL, mas o menos así.

Código Delphi [-]
dconexion.conexion.ConnectionString:='Provider=SQLOLEDB.1;'+
'Persist Security Info=False;User ID='+fr_menuu.txtusuario.Text+
';PassWord='+fr_menuu.txtcontrasena.Text+
';Initial Catalog='+BaseDatos+';Data Source='+Servidor;
...............

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #4  
Antiguo 03-09-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
además, un ADOConnection conectado a SQL Server no debería utilizar ningún ODBC
__________________

Responder Con Cita
  #5  
Antiguo 04-09-2008
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
hola gracias por responder pero la verdad no se que este pasando por que todo lo tengo como dices, que posibilidad hay de que me mande un ejemplo de como se ejecuta el prcedimiento almacenajdo.

de antemano muchas gracias
Responder Con Cita
  #6  
Antiguo 04-09-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
La verdad no entiendo.
Pregunto:
1-La conexión con la base de datos con que componente la haces?, bde o ado?.
2-La conexión la haces al iniciar el loguin?.
3-Esta ligado el form del loguin con el form fr_usuarioss en el uses?
4- El form fr_usuarioss tiene algun componente que enlaza a la tabla? donde estan los usuarios?.
De momento son mis dudas.
Saludos
__________________
Siempre Novato
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
datamodule josi Varios 22 11-12-2008 08:07:42
Problema con DataModule cartmanrules Conexión con bases de datos 5 09-10-2007 21:25:21
Datamodule, SQL, DELPHI y un error tope chungo papulo Conexión con bases de datos 3 03-02-2006 09:08:50
Datamodule VRO Firebird e Interbase 2 13-07-2004 19:00:45
datamodule maruenda Varios 1 31-12-2003 18:24:21


La franja horaria es GMT +2. Ahora son las 02:48:39.


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