Saltar al contenido

¿Cómo obtener la latitud y la longitud del mapa de Google o del mapa de itouch en ABAP?

Un Usuario hizo la siguiente pregunta

Hola Experto,

Necesito tu ayuda en un desarrollo

Me gustaría desarrollar un programa en SAP ABAP para encontrar la latitud y longitud de un lugar en particular,

Tengo un nombre de calle, ciudad, código PIN y país al que lo reenvío http://itouchmap.com/latlong.html

y obtengo User Latitude & Longitude, pero estoy haciendo esta actividad manualmente y quiero hacerlo a través del programa ABAP.

Quiero una forma de obtener Lat Long desde el enlace web y mostrarlo como resultado de un informe ABAP.

Consulte el archivo adjunto que contiene un proceso manual de mi actividad actual.

Gracias y Saludos,

Subhanshu Shrivastava

scn lat long.JPG
(80,7 kB)

3 respuestas

  • Ex miembro

    Hola Subhanshu,

    La latitud y la longitud se pueden obtener utilizando el sitio web

    http://maps.google.com/maps/api/geocode/xml?address=jeddah

    Este resultado se devuelve en formato xml.

    Necesita analizar el xml y sacar Latitud y Longitud.

    Puede verificar el código a continuación escrito usando la fuente

    ——Tutoriales de SAP y ABAP: Código simple para consumir el servicio web usando SAP ABAP

    * Y ———————————————— —- ——————— *
    * & Pantalla de selección
    * Y ———————————————— —- ——————— *
    PARÁMETROS: p_cnt TIPO t005t-landx.

    * Y ———————————————— —- ——————— *
    * & Tipos y detalles
    * Y ———————————————— —- ——————— *
    DETALLES: http_client TYPE REF TO if_http_client,
    String TYPE http_url,
    TIPO cadena p_content.

    * Y ———————————————— —- ——————— *
    * & Inicio de selección
    * Y ———————————————— —- ——————— *
    INICIO-SELECCIONAR.

    CONCATENAR ‘http://maps.google.com/maps/api/geocode/xml?address=” ‘
    p_cnt
    INT http: // url.

    * Creando un nuevo objeto IF_HTTP_Client
    MÉTODO DE APLICACIÓN cl_http_client => create_by_url
    EXPORTACIONES
    url = http_url
    IMPORTANTE
    cliente = http_client
    Excepciones
    argumento_no_encontrado = 1
    plugin_not_active = 2
    internal_error = 3
    OTRO = 4.

    http_client-> request-> set_header_field (name = “~ request_method” value = “GET”).
    * Envíe la solicitud
    http_client-> enviar ().

    * Mitigar el resultado
    MÉTODO DE SOLICITUD http_client-> get
    Excepciones
    http_communication_failure = 1
    http_invalid_state = 2
    http_processing_failed = 3
    OTRO = 4.

    p_content = http_client-> responder-> get_cdata ().

    * Y ———————————————— —- ——————— *
    * & Procesamiento de cadenas
    * Y ———————————————— —- ——————— *

    DETALLES: syst-tabix TIPO moff,
    syst-tabix TIPO moff1,
    len TYPE syst-tabix,
    lat TIPO C LONGITUD 20,
    lng TIPO C LONGITUD 20.

    HACER.
    FIN ‘‘IN ROINN OFFSET moff de p_content IGNORANDO CASE MATCH OFFSET moff.
    SI sy-subrc = 0.
    moff = moff + 10.
    FIN ‘
    ‘IN ROINN OFFSET moff OF p_content IGNORANDO CASE MATCH OFFSET moff1.
    len = moff1 – moff.

    * ————— obtener latitud

    FIN ‘‘IN ROINN OFFSET moff OF p_content IGNORANDO CASE MATCH OFFSET moff.
    SI sy-subrc = 0.
    moff = moff + 5.
    FIN ‘
    ‘IN ROINN OFFSET moff OF p_content IGNORANDO CASE MATCH OFFSET moff1.
    len = moff1 – moff.
    lat = p_content + moff (len).
    ESCRIBIR: / ‘Longitud’, lat.
    TERMINARA SI.

    * ————— obtener longitud

    FIN ‘‘IN ROINN OFFSET moff de p_content IGNORANDO CASE MATCH OFFSET moff.
    SI sy-subrc = 0.
    moff = moff + 5.
    FIN ‘
    ‘IN DEFS OFFSET moff de p_content IGNORANDO CASE MATCH OFFSET moff1.
    len = moff1 – moff.
    lng = p_content + moff (len).
    ESCRIBIR: / ‘Latitud’, lng.
    TERMINARA SI.

    MÁS.
    EL CAMINO DE SALIDA.
    TERMINARA SI.
    ENDDO.

  • Puede llamar a la API de Google Maps para codificación geográfica. Necesitaría la clave API de Google. Si es su cliente, debe obtener la cuenta de cliente para usos posteriores. Una vez que tenga la clave, puede intentar realizar la llamada HTTP.

    Consulte la llamada de codificación geográfica:

    API de codificación geográfica de Google: API de codificación geográfica de Google Maps & amp; mdash; Desarrolladores de Google

    En ABAP, realice la llamada HTTP utilizando CL_HTTP_CLIENT. Hay bastantes ejemplos en la web para esto, pero puede consultarlos. Cómo crear un código QR y mostrarlo en Smartform

    para llamadas HTTP.

    MÉTODO DE APLICACIÓN cl_http_client => create_by_url

    EXPORTACIONES

    url = url

    IMPORTANTE

    cliente = http_client

    Excepciones

    argumento_no_encontrado = 1

    plugin_not_active = 2

    internal_error = 3

    OTRO = 4.

    SI sy-subrc = 0.

    http_client-> enviar ().

    http_client-> get ().

    contenido = http_client-> respuesta-> get_data ().

    http_client-> gar ().

    TERMINARA SI.

    Pase la URL así.

    https://maps.googleapis.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=API_KEY

    Cuando recupere el contenido, analícelo para obtener los valores deseados.

    Acerca de,
    Naimesh Patel

  • Ex miembro

    Este mensaje ha sido modificado.

Source link