Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Proyecto SIF/Veri*Factu/Ley Antifraude > Registros de Facturacion y Eventos (XML)
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo Hace 2 Semanas
Jarogo08 Jarogo08 is offline
Miembro
 
Registrado: ene 2025
Posts: 78
Poder: 1
Jarogo08 Va por buen camino
Venga... ya la hice yo, la pongo aquí que mañana es festivo y estoy de buenas

Código:
Function ObtenerFechaHora() As String
        Dim retorno As String = ""

        '-------------------------------------------
        '1 - COGEMOS LA HORA DE INTERNET
        '-------------------------------------------

        Try
            ServicePointManager.SecurityProtocol = CType(3072, SecurityProtocolType)    'TLS 1.2

            Dim webRequest As HttpWebRequest = CType(Net.WebRequest.Create("https://www2.roa.es/cgi-bin/horautc"), HttpWebRequest)
            webRequest.Method = "GET"
            Dim respuesta As HttpWebResponse = CType(webRequest.GetResponse(), HttpWebResponse)

            If respuesta.StatusCode = HttpStatusCode.OK Then
                Dim strmRespuesta As Stream = respuesta.GetResponseStream()
                Dim leeRespuesta As New StreamReader(strmRespuesta)
                Dim jsonRespuesta As String = leeRespuesta.ReadToEnd()
                Dim ticks As Long = Long.Parse(jsonRespuesta.Replace("\n", ""))
                Dim fechora As DateTime = Org.BouncyCastle.Utilities.Date.DateTimeUtilities.UnixMsToDateTime(ticks).ToLocalTime()
                retorno = fechora.ToString("yyyy-MM-dd'T'HH:mm:ssK")
            End If

        Catch Ex As Exception
            'MsgBox(Ex.Message, MsgBoxStyle.OkOnly, "ObtenerFechaHora - Internet")
        End Try


        '-------------------------------------------
        '2 - COGEMOS LA HORA DEL SERVIDOR SQL
        '-------------------------------------------

        If retorno = "" Then
            Try
                Dim DAHora As New SqlDataAdapter
                Dim DSHora As New DataSet
                Dim SqlHora As String = "SELECT SYSDATETIMEOFFSET() AS FechaActual"
                DSHora.Reset()
                DAHora = New SqlDataAdapter(SqlHora, Conexion)
                DAHora.Fill(DSHora, "Hora")

                If DSHora.Tables("Hora").Rows.Count = 1 Then
                    Dim RowHora As DataRow = DSHora.Tables("Hora").Rows(0)

                    Dim fechora As DateTime = RowHora.Item("FechaActual").ToString
                    retorno = fechora.ToString("yyyy-MM-dd'T'HH:mm:ssK")
                End If

                DAHora.Dispose()
                DSHora.Dispose()

            Catch Ex As Exception
                'MsgBox(Ex.Message, MsgBoxStyle.OkOnly, "ObtenerFechaHora - Servidor")
            End Try
        End If


        '-------------------------------------------
        '2 - COGEMOS LA HORA DEL EQUIPO
        '-------------------------------------------

        If retorno = "" Then
            retorno = DateTime.Now.ToString("yyyy-MM-dd'T'HH:mm:ssK")
        End If

        Return retorno
    End Function

Primero intenta cogerla de internet, si no es capaz del servidor sql y si no es capaz del equipo

La primera puede dar error si no hay internet o no responde ROA... la segunda debería devolver siempre (si no hay conexión al servidor ya no va a funcionar la aplicación)

Espero que te sirva!
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
Consultas por franja horaria petercat SQL 2 17-04-2018 09:12:29
Obtener zona horaria en window 8 ingabraham Varios 0 28-08-2013 17:53:04
como caambiar la zona horaria desde delphi kurono Varios 4 19-08-2008 06:53:36
Zona Horaria palets API de Windows 2 23-10-2006 19:44:57
Zona horaria Genner Varios 1 17-04-2006 14:22:20


La franja horaria es GMT +2. Ahora son las 16:15:32.


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