¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Cómo cargar ubicaciones geométricas en S/4HANA para Spatial Explorer/Geometry Explorer

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 7 Vistas
0
Cargando...

Hola,

Estamos buscando la forma de cargar de manera masiva ubicaciones geométricas para objetos EAM (Ubicaciones Funcionales y Equipos) en nuestro sistema S/4HANA local para poder verlos en las aplicaciones Spatial Explorer/Geometry Explorer. Estoy tratando de encontrar información básica sobre cómo lograr esto, pero no encuentro nada. He encontrado varios blogs y páginas de ayuda relacionadas con la carga de archivos de forma ESRI directamente en la base de datos HANA utilizando HANA Cockpit o HANA Studio (a los cuales actualmente no tengo acceso), pero no logro encontrar una forma de cargarlos a través de el servidor de aplicaciones S/4HANA. Sin esta capacidad, ¿cómo se supone que debemos asociar estos datos con los objetos EAM que ya hemos cargado en S/4?

Quizás simplemente no he encontrado la página de ayuda que explique todo esto, pero he pasado un par de días buscándola, así que pensé que era hora de hacer la pregunta aquí.

Muchas gracias,

Andrew

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

2 Respuestas

0
Cargando...

Esta funcionalidad se puede encontrar en la clase CL_GEF_API.

Puedes agregar nuevas geometrías usando:

DATA(lv_geometry_id) =
  cl_gef_api=>add_geometry(
    is_geometry =
      VALUE #(
        gef_objtype = iv_bo_id
        gef_objkey = iv_objkey
        gef_context = 'X'
        gef_geom_wkt = lv_geom_wkt_3857
        gef_geom_type = COND #( WHEN iv_geom_wkt CP 'POINT*'      THEN '1'
                                WHEN iv_geom_wkt CP 'LINESTRING*' THEN '2'
                                WHEN iv_geom_wkt CP 'POLYGON*'    THEN '3' )
        gef_geom_srid	= 3857 ) ).

donde GEF_OBJTYPE es 'EAMEQUI' para Equipos o 'EAMFLOC' para Ubicaciones Funcionales.

La clave para el objeto (GEF_OBJKEY) varía según el tipo de objeto: para Equipos, es solo el número de Equipo (EQUI-EQUNR), mientras que para Ubicaciones Funcionales es el Número de Objeto (IFLOT-OBJECT).

El ID de SRS se establece por defecto (en nuestro sistema, al menos) en 3857, que es la proyección Mercator Esférica. Los datos suministrados estaban en formato de latitud y longitud (ID de SRS 4326), por lo que tuvimos que convertir de un formato a otro antes de guardar. Esto implicó hacer una llamada a una función en la base de datos de HANA utilizando un AMDP:

* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Static Public Method ZCL_GEF_UTIL=>TRANSFORM_4326_TO_3857
* +-------------------------------------------------------------------------------------------------+
* | [--->] LV_WKT_4326                    TYPE        STRING
* | [<---] EV_WKT_3857                    TYPE        TEXT100
* +--------------------------------------------------------------------------------------</SIGNATURE>
  METHOD transform_4326_to_3857 BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT OPTIONS READ-ONLY.

    lt_wkt_3857 = SELECT NEW ST_Point( :lv_wkt_4326 , 4326).ST_Transform(3857).ST_AsWKT() as wkt from dummy;
    ev_wkt_3857 := :lt_wkt_3857.wkt[ 1 ];

  ENDMETHOD.

Todas las geometrías utilizadas aquí están en

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola Andrew,

Estamos enfrentando el mismo problema.

¿Lo has resuelto? Si es así, ¿cómo lo solucionaste?

Muchas gracias.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?