• Domingo 28 de Abril de 2024, 22:52

Autor Tema:  Uso De Archivos *.ini  (Leído 6515 veces)

jc_investigador07

  • Miembro activo
  • **
  • Mensajes: 34
    • Ver Perfil
Uso De Archivos *.ini
« en: Domingo 12 de Noviembre de 2006, 18:20 »
0
:hola:  Hola amigos muy buenas tardes. Siempre he escuchado de la creacion de un archivo.ini junto a tu aplicacion lo cual te permite establecer la conexion con tu BD, bueno yo siempre lo he hecho desde el mismo powerScript, pero ahora tengo curiosidad en hacer la misma tarea pero desde un archivo.ini, quisiera saber si alguien me puede dar las pautas de como hacerlo, es decir que estructura seguir en el armado de este fichero.ini. ¿Por cierto ?,¿Se encuentra ventajas en el uso de un archivo.ini en lugar de hacer el codigo desde el mismo powerscript?, Aqui les mando las lineas de codigo empleadas en mi PowerScript.

// Profile BD_control_clientes
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=control_clientes;UID=sa;PWD='"

Si alguien me echa una manito en decirme como estas lineas quedan en un archivo.ini, es decir, como seria la estructura de estas lineas en un fichero.ini. Gracias de antemano a todos los amigos del foro de PB.  :comp:

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: Uso De Archivos *.ini
« Respuesta #1 en: Domingo 12 de Noviembre de 2006, 20:50 »
0
hola

mira no se realmente si PB tome el archivo completo para crear la conexion pero yo lo utilizo asi


Archivo Ini

Código: Text
  1.  
  2. [Conexion]
  3.  
  4. DSN=control_clientes
  5. UID=sa
  6. PWD=
  7. AutoCommit=False
  8.  
  9.  


y En pb lees asi

[ Power Script ]


String ls_DSN,ls_UID,ls_PWD
Boolean lb_AutoCommit

// ProfileString(Archivo ini,Seccion,Clave,Valor por default si la clave esta vacia o no existe)

ls_DSN= trim(ProfileString("Config.ini", "Conexion","dsn", "control_clientes"))
ls_UID= trim(ProfileString("Config.ini", "Conexion","uid", "sa"))
ls_PWD=trim(ProfileString("Config.ini", "Conexion","pwd", ""))
lb_AutoCommit=UPPER(trim(ProfileString("Config.ini", "Conexion","dsn", "FALSE")))="TRUE"


// Profile BD_control_clientes
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = lb_AutoCommit
SQLCA.DBParm = " ConnectString='DSN="+ls_DNS+";UID="+ls_UID+";PWD="+ ls_PWD+"'"


Esa seria una manera en al que puedes conectarte a traves de un Ini, tiene muchas ventajas ya que si cambias como el nombre del odbc el nombre de usuario o cualquier opcion que hayas guardad para la bd simplemente  lo haces en el archivo sin tener que volver a compilar el programa

puedes guardar mas datos en el archivo ini, el tipo de cambio por ejemplo, la impresora predeterminada,el directorio donde guardas los datos, etc



Saludos espero que te sirva
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

leoandres

  • Miembro activo
  • **
  • Mensajes: 79
    • Ver Perfil
Re: Uso De Archivos *.ini
« Respuesta #2 en: Lunes 13 de Noviembre de 2006, 14:56 »
0
Saludos...

El archivo .ini (en este caso esta ubicado: C:\PROFILE.INI) tendría esta configuración como ejemplo...tienes una cabecera de control encerrada entre corchetes( [] ) y una etiqueta de control con el valor que corresponda...

[Pc]
Name=Servidor
...
La lectura del archivo se maneja de esta manera...

   PC=UPPER(ProfileString("C:\PROFILE.INI", "Pc", "Name", ""))

en este caso busca el título "Pc" y la etiqueta Name...
   IF PC = "" THEN
// Error de configuración.
      close (w_principal_caja_externa)
      close (w_seguridad_caja_externa)
   END IF
// existe el perfil... despliego el nombre de la estación.
   sle_estacion.Text=PC

...

espero que te ayude...
leopoldotaylhardat@hotmail.com

Leopoldo Taylhardat

Software, Organización y Sistemas

Maracay, Venezuela


"En computación solo hay una cosa segura...
   que no hay nada seguro" - Leopoldo Taylhardat

"Cada alternativa que tengas durante la búsqueda,
      será una meta en sí misma" - Jorge Olguín.

leoandres

  • Miembro activo
  • **
  • Mensajes: 79
    • Ver Perfil
Re: Uso De Archivos *.ini
« Respuesta #3 en: Lunes 13 de Noviembre de 2006, 15:09 »
0
Disculpa que no agregué...

Yo lo uso como control de configuración de cuales estaciones tienen acceso al sistema, si creas esto para la conexión a la BD, tendrías que cambiar esa configuración EN TODAS LAS ESTACIONES si cambias algo para la conexión.
No te recomiendo que lo uses para el acceso a la bd por esta causa, imagina que tengas un sistema que lo accesen muchas estaciones...
En este caso yo lo usé para el acceso a un sistema de cajas de facturación, que nadie más lo pueda accesar sino las que yo he configurado como tal (seguridad),  si alguien desde una estación (que no esté configurado el .ini) entra al sistema automáticamente se cierra la aplicación y el cliente no sabe porqué.
Se podría mandar un mensaje tal como "Error!, Sistema no configurado!...etc...
si se desea.

Saludos.
leopoldotaylhardat@hotmail.com

Leopoldo Taylhardat

Software, Organización y Sistemas

Maracay, Venezuela


"En computación solo hay una cosa segura...
   que no hay nada seguro" - Leopoldo Taylhardat

"Cada alternativa que tengas durante la búsqueda,
      será una meta en sí misma" - Jorge Olguín.

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: Uso De Archivos *.ini
« Respuesta #4 en: Martes 14 de Noviembre de 2006, 06:41 »
0
Cita de: "leoandres"
Yo lo uso como control de configuración de cuales estaciones tienen acceso al sistema, si creas esto para la conexión a la BD, tendrías que cambiar esa configuración EN TODAS LAS ESTACIONES si cambias algo para la conexión.
No te recomiendo que lo uses para el acceso a la bd por esta causa, imagina que tengas un sistema que lo accesen muchas estaciones...
y tambien se tendria que compilar de nuevo e instalar en TODAS LAS ESTACIONES si se cambia algo en la conexion  :P  lo cual resulta lo mismo



casi... porque si estas instalando en una empresa un sistema y por alguna razon hay que cambiar algo en la conexion (dsn,usuario... ) que pasa si ahi no tienes PB tienes que ir a tu oficina a compilarlo de nuevo? con la nueva modificacion a la conexion



 :rolleyes:

Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

leoandres

  • Miembro activo
  • **
  • Mensajes: 79
    • Ver Perfil
Re: Uso De Archivos *.ini
« Respuesta #5 en: Martes 14 de Noviembre de 2006, 14:51 »
0
Saludos...

Yo lo hago así porque instalo la aplicación en el servidor en una carpeta compartida de solo lectura, entonces compilo y coloco los cambios en un solo sitio desde donde accesan las estaciones de trabajo a la aplicación... son metodologías que cada quien tiene... de paso con acceso remoto no tengo que ir al sitio sino que actualizo desde donde estoy o envío los cambios por mail al administrador.
leopoldotaylhardat@hotmail.com

Leopoldo Taylhardat

Software, Organización y Sistemas

Maracay, Venezuela


"En computación solo hay una cosa segura...
   que no hay nada seguro" - Leopoldo Taylhardat

"Cada alternativa que tengas durante la búsqueda,
      será una meta en sí misma" - Jorge Olguín.

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: Uso De Archivos *.ini
« Respuesta #6 en: Martes 14 de Noviembre de 2006, 20:47 »
0
En ese punto tienes razon  B)  :smartass:


Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================