Access - Detectar configuracion de fecha desde Access

 
Vista:

Detectar configuracion de fecha desde Access

Publicado por Berenice (84 intervenciones) el 03/08/2007 21:34:56
Muy buenas tardes a todos!!!

Me gustaria saber si se puede hacer desde Access los siguiente:

Detectar la configuracion de la fecha de la PC al iniciar Access y mandarle un mensaje al usuario indicandosela, segun yo la funcion se mandaria llamar en el Load de la primera forma que se carga, lo que no se es con que funcion obtengo la configuracion.

Se puede??? Agradezco su ayuda de antemano....
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Detectar configuracion de fecha desde Access

Publicado por Berenice (84 intervenciones) el 03/08/2007 23:17:27
Ya encontre una funcion que desde access me abre las opciones de configuracion!! Se las comparto por si no la conocen..... Pero aun estoy en como evaluar el idioma de la Pc para despues mandarle el msg al usuario...

'Con estoy podemos abrir la pantalla de la configuracion de la fecha de la PC...
Dim Datos As String
Dim ejecuta As Long
Datos = "rundll32.exe url.dll,FileProtocolHandler "
Datos = Datos & "intl.cpl "
ejecuta = Shell(Datos, 1)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ya pude hacerlo!!!!!

Publicado por Berenice (84 intervenciones) el 03/08/2007 23:46:33
Amig@s ya supe como hacerlo !!!! Aqui se los dejo por si a alguno de ustedes les interesa!!!

Código fuente en un formulario:

Option Explicit


'Declaraciones del Api
Private Declare Function GetUserDefaultLCID Lib "kernel32" () As Long

Private Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" ( _
ByVal Locale As Long, _
ByVal LCType As Long, _
ByVal lpLCData As String, _
ByVal cchData As Long) As Long

'Constante para obtener algunos de los simbolos de la configuración regional
Private Const LOCALE_SCURRENCY = &H14
Private Const LOCALE_SCOUNTRY As Long = &H6
Private Const LOCALE_SDATE As Long = &H1D
Private Const LOCALE_SDECIMAL As Long = &HE
Private Const LOCALE_SLANGUAGE As Long = &H2
Private Const LOCALE_SLONGDATE As Long = &H20
Private Const LOCALE_SMONDECIMALSEP As Long = &H16
Private Const LOCALE_SMONGROUPING As Long = &H18
Private Const LOCALE_SMONTHOUSANDSEP As Long = &H17
Private Const LOCALE_SNATIVECTRYNAME As Long = &H8
Private Const LOCALE_SNATIVECURRNAME As Long = &H1008
Private Const LOCALE_SNATIVEDIGITS As Long = &H13
Private Const LOCALE_SNEGATIVESIGN As Long = &H51
Private Const LOCALE_SSHORTDATE As Long = &H1F
Private Const LOCALE_STIME As Long = &H1E
Private Const LOCALE_STIMEFORMAT As Long = &H1003

' Función que Devuelve un String con el símbolo
Private Function Obtener_Simbolo(Valor As Long) As String

Dim Simbolo As String

Dim r1 As Long
Dim r2 As Long
Dim p As Integer
Dim Locale As Long

Locale = GetUserDefaultLCID()
r1 = GetLocaleInfo(Locale, Valor, vbNullString, 0)

'buffer
Simbolo = String$(r1, 0)

'En esta llamada devuelve el símbolo en el Buffer
r2 = GetLocaleInfo(Locale, Valor, Simbolo, r1)

'Localiza el espacio nulo de la cadena para eliminarla
p = InStr(Simbolo, Chr$(0))

If p > 0 Then
'Elimina los nulos
Obtener_Simbolo = Left$(Simbolo, p - 1)

End If

End Function


'/////// Codigo en el Load de la forma

Private Sub Form_Load()
Dim Idioma As String
'Obtener el separador decimal
MsgBox Obtener_Simbolo(LOCALE_SDECIMAL), 64, " Separador decimal "

'Obtener el símbolo de Moneda
MsgBox Obtener_Simbolo(LOCALE_SCURRENCY), 64, " Símbolo de moneda "

'Obtener el símbolo separador de Hora
MsgBox Obtener_Simbolo(LOCALE_STIME), 64, " Separador de Hora "

'Obtener el país
MsgBox Obtener_Simbolo(LOCALE_SCOUNTRY), 64, " El país "

'Obtener el idioma
MsgBox Obtener_Simbolo(LOCALE_SLANGUAGE), 64, " El idioma "

If Obtener_Simbolo(LOCALE_SLANGUAGE) = "Inglés (Estados Unidos)" Or Obtener_Simbolo(LOCALE_SLANGUAGE) = "English (United States)" Then
MsgBox (" El idioma es Ingles")
Else
'Lo que ustedes quieran!!!!
End If

End Sub

Saludos!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar