GeneXus - Consumir web service estilo google maps

 
Vista:

Consumir web service estilo google maps

Publicado por Juan Martín (1 intervención) el 05/11/2014 16:15:31
Estoy intentando hacer algo y no lo logro. La idea es la siguiente:
quiero que una transacción tenga un campo de tipo address. Como el tipo address te redirecciona directo a Google Maps con la ubicación exacta, me gustaría que cuando el usuario complete el campo address se le sugieran posibles valores y elija de esa lista.

Para empezar, encontré un API de google (que se utiliza mediante JSON o XML) que ante un texto de entrada te devuelve todas las posibles ubicaciones para ese texto: https://developers.google.com/places/documentation/autocomplete.
Las solicitudes se realizan de la siguiente forma:
https://maps.googleapis.com/maps/api/place/autocomplete/xml?input=XXXX&types=geocode&key=´{key}

donde en input va el texto que se quiere autocompletar y en key va la clave personal (fija) que se generó en el developers de google.

Ya logré crearme un web panel que al escribir un texto y confirmar me autocomplete el texto con la primera opción devuelta por el api.

La idea ahora es llevar esto al suggest de un campo address. Es decir, que a medida que el usuario ingresa su texto en un campo address, se le vayan sugiriendo las distintas opciones que devuelve esta api. Esta es la parte que no estoy pudiendo realizar ya que el suggest de un campo solo me permite ingresar una variable y no entiendo como relacionarlo.

Para resumir, el resultado tendría que ser tal como lo hace google maps al buscar.
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

Consumir web service estilo google maps

Publicado por Luis (1 intervención) el 22/09/2015 21:09:25
Tengo que hacer algo similiar, pudiste solucionarlo?

Una opcion es ejecutarlo mediante ajax.

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

Consumir web service estilo google maps

Publicado por luis david gutierrez piza (1 intervención) el 11/12/2015 23:06:58
Hola yo ando buscando lo mismo me podrías ayudar si encontraste la solución
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

Consumir web service estilo google maps

Publicado por Mauricio Lopez Reyes (1 intervención) el 10/12/2019 17:47:36
Juan Martin:
Consulta, pudiste resolver este tema. Estoy trabajando en lo mismo con Gxs ev2 para versión escritorio Windows. Si me puedes ayudar te lo agradecería un montón y el user control Map y la key de Google Map "Place Autocomplete". Adjunto codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
Event Enter
	do 'MarkPoint'
 
Endevent
 
 
 
 
      //Sample code for GxMapControl
Sub 'MarkPoint'
 
     								//Google and Yahoo Provider
 
	 &GxMapPoint = new GxMap.Point()
     &GxMapPoint.PointLat = '-34.906275829530244'
     &GxMapPoint.PointLong = '-56.199703216552734'
	 &GxMapPoint.PointDraggable = true
     &GxMapPoint.PointInfowinTit = 'International GeneXus Meeting'
     &GxMapPoint.PointInfowinDesc = "Radisson Montevideo Victoria Plaza Hotel - Plaza Independecia"
     &GxMapPoint.PointInfowinLink = "http://genexus.com/event/"
     &GxMapPoint.PointInfowinLinkDsc = "Genexus Site"
     &GxMapPoint.PointInfowinImg = "http://wiki.gxtechnical.com/commwiki/servlet/apgetwikiimage?10085,3"
	 &GxMapPoint.PointInfowinHtml = ""
	 &GxMapPoint.PointVisible = true
     &GxMapData.Points.Add(&GxMapPoint)
 
	 &GxMapPoint = new GxMap.Point()
	 &GxMapPoint.PointLat = '-34.906979714721125'
     &GxMapPoint.PointLong = '-56.20288968086243'
	 &GxMapPoint.PointDraggable = true
     &GxMapPoint.PointInfowinTit = 'La Pasiva'
     &GxMapPoint.PointInfowinDesc = ""
     &GxMapPoint.PointInfowinLink = ""
     &GxMapPoint.PointInfowinLinkDsc = ""
     &GxMapPoint.PointInfowinImg = ""
	 &GxMapPoint.PointInfowinHtml = "La Pasiva"
     &GxMapData.Points.Add(&GxMapPoint)
 
 
										//Polygons
 
	&GxMapPolygon = new GxMap.Polygon()
 
		&GxMapPolygon.PolygonFill = "#00AAFF"
		&GxMapPolygon.PolygonFillOpacity = 0.80
		&GxMapPolygon.PolygonStroke ="#FFAA00"
		&GxMapPolygon.PolygonStrokeOpacity = 0.50
		&GxMapPolygon.PolygonStrokeWeight = 2
		&GxMapPolygon.PolygonInfowinHtml = "Plaza de la Independencia"
 
		&GxMapPolyPath = new GxMap.Polygon.Path()
		&GxMapPolyPath.PathLat = '-34.90691372574081'
		&GxMapPolyPath.PathLong = '-56.198716163635254'
		&GxMapPolygon.Paths.Add(&GxMapPolyPath )
 
		&GxMapPolyPath = new GxMap.Polygon.Path()
		&GxMapPolyPath.PathLat = "-34.906077860733134"
		&GxMapPolyPath.PathLong = "-56.19883418083191"
		&GxMapPolygon.Paths.Add(&GxMapPolyPath )
 
		&GxMapPolyPath = new GxMap.Polygon.Path()
		&GxMapPolyPath.PathLat = "-34.90617464553802"
		&GxMapPolyPath.PathLong = "-56.20078682899475"
		&GxMapPolygon.Paths.Add(&GxMapPolyPath )
 
		&GxMapPolyPath = new GxMap.Polygon.Path()
		&GxMapPolyPath.PathLat = "-34.90718647984938"
		&GxMapPolyPath.PathLong = "-56.200679540634155"
		&GxMapPolygon.Paths.Add(&GxMapPolyPath )
 
		&GxMapPolyPath = new GxMap.Polygon.Path()
		&GxMapPolyPath.PathLat = "-34.90691372574081"
		&GxMapPolyPath.PathLong = "-56.198716163635254"
		&GxMapPolygon.Paths.Add(&GxMapPolyPath )
 
	&GxMapData.Polygons.Add(&GxMapPolygon )
 
Endsub
 
 
 
Event Start
	&Address = 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Mac Iver 225&types=geocode&language=cl&key=AIzaSyB8PxQRiU_ykpkZdx6cFmqP2cIT2z2MB_0'
Endevent
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