Conexion a SQL

Consultas, trucos, consejos. Todo sobre Clarion en todas sus versiones
Responder
innovartec
Mensajes: 1
Registrado: Mié Ago 31, 2016 7:27 pm
Contactar:

Conexion a SQL

Mensaje por innovartec » Jue Oct 20, 2016 1:35 am

Buenas noches

saludos

soy nuevo en sql me gustaria saber como hacer la primera vez que me conecte a sql, debo hacer una ventana para pedir lo datos o el mismo clarion lo ejecuta


Avatar de Usuario
Mauricio
Desarrollador de Clarion
Mensajes: 1125
Registrado: Dom Feb 06, 2011 9:34 am
Ubicación: España
Contactar:

Re: Conexion a SQL

Mensaje por Mauricio » Jue Oct 20, 2016 2:38 pm

Tenés que definir una variable global, digamos ConnectString, en tu diccionario. Luego, a cada tabla, le ponés que vas a usar esa ConnectString. Asumiendo que estás usando el driver SQL, la cadena tiene que ser NombreServidor, Base De Datos, Usuario, Password. Es decir que tu variable quedaría así: GLO:ConnectString = 'SQLSERVER2016,MIBASEDEDATOS,sa,XXX123', por ejemplo.
En un ini podés setear esa cadena de conexión (ojo porque el password estará visible).
Mauricio, básicamente usando Clarion 6.3
www.tdcsoftware.com y www.clarioneros.com/blog

jorgeclimis
Ayudante de Santa
Mensajes: 98
Registrado: Lun Oct 15, 2012 5:22 pm
Contactar:

Re: Conexion a SQL

Mensaje por jorgeclimis » Vie Nov 04, 2016 3:46 pm

especificando un poco mas lo de Mauricio:

En el DCT:
Crear una variable global por ejemplo : conexion
En el Owner Name de cada tabla hay que poner esto: !GLO:CONEXION
Cada tabla tiene que estar en el full path name en comillas para asegurarnos de que el nombre sea el correcto al crear la tabla : dbo."movimientos_contables"

Despues en el APP


en global embebed - program setup

Por Ejemplo

!-----Este codigo lo utilizo para generar el archivo de conexion
!PUTINI('CONEXION','SERVERBASE','DSASRV01','.\conexion.ini')
!PUTINI('CONEXION','DATABASE','bd_existencias','.\conexion.ini')
!PUTINI('CONEXION','USERBASE','sa','.\conexion.ini')
!PUTINI('CONEXION','PASSWORD','250117','.\conexion.ini')


glo:Serverbase = GETINI('CONEXION','SERVERBASE',,'.\conexion.ini')
glo:DataBase = GETINI('CONEXION','DATABASE',,'.\conexion.ini')
GLO:userbase = GETINI('CONEXION','USERBASE',,'.\conexion.ini')
GLO:PASSWORD = GETINI('CONEXION','PASSWORD',,'.\conexion.ini')



GLO:CONEXION =CLIP(GLO:SERVERBASE)&','&CLIP(GLO:DATABASE)&','|
&CLIP(GLO:USERBASE)&','&CLIP(GLO:PASSWORD)


En mi codigo defino las variables globales en el app

glo:Serverbase STRING(50)
glo:DataBase STRING(50)
GLO:userbase STRING(50)
GLO:PASSWORD STRING(50)

para poder utilizarlo en el app si lo deseo


Esto crea un archivo conexion.ini

La variable es publica pero podrías utilizar alguna encriptacion para enmascararla
Espero que te ayude
Saludos
"En los momentos de crisis, sólo la imaginación es más importante que el conocimiento."
Albert Einstein

Jorge Climis


Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 13 invitados