Cobol Foro
Navegación en el Foro
Retroceder   Cobol Foro Entornos de desarrollo y compiladores Cobol Cocina Casera Cocina PowerCOBOL
Cocina PowerCOBOL Rutinas y ejemplos codificados por nuestros foreros.
 
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
Google Fonts en el Foro Kuk Funcionamiento del Foro 4 12 de julio de 2020 00:05
[Duda] Rutas con Google Maps... Fito PowerCOBOL (ActiveX, v4 - v11) 1 24 de junio de 2019 19:00

Respuesta

  #1
Antiguo 6 de abril de 2015, 01:29
Rapinto
Gran amigo del Foro
Guru de COBOL
Activista del Foro: Activista del Foro - Issue reason: ¡Gracias! Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por ayudar mucho a los foreros Guru de los Gurus: Por solidos y amplios conocimientos - Issue reason: Por saber demasiado! 
Última Actividad 29.01.2018 20:23
Posts Posts: 240
Likes enviados Enviados: 19
Likes recibidos Recibidos: 224
Timido Google Maps localización
1 Inactivo Inactivo

Não sei se interessa a alguém, mas podemos a partir do Fujitsu Cobol, abrir o Google Maps, passando uma morada (rua ou Av., postal code cidade, pais) e mostrar logo o localização.

É muito simples:

Basta criar um URL do tipo:

Código COBOL:
  1. MOVE
  2. "http://maps.google.com/maps? f=q&hl=en&geocode=&time=&date=&ttype=&q=@ADDR@&ie=UTF8&t=m"  TO URL.

Substituindo "@ADDR@" pela morada+cidade+pais

em seguida executar o comando:
Código COBOL:
  1.     INVOKE POW-SELF "Execute" USING CALLBROWSER.  

a variável CALLBROWSER é igual a "iexplore.exe URL"

Se quiserem posso carregar um pequeno exemplo.

(Também podem utilizar o Yahoo, substituindo o URL por :
"http://maps.yahoo.com/maps_result.php?q1=@ADDR@" )


Saludos,
Rui Pinto
Rapinto is offline   Responder Con Cita
  #2
Antiguo 6 de abril de 2015, 09:59
Josber
Moderador Global
Activista del Foro: Activista del Foro - Issue reason: Por aportar manuales y enriquecer  Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos 
Última Actividad 20.09.2026 12:17
Posts Posts: 883
Likes enviados Enviados: 418
Likes recibidos Recibidos: 492

Pues si no te importa poner/subir un ejemplo, sería de agradecer Rui.

Muchas gracias
Un saludo.-
Josber is offline   Responder Con Cita
  #3
Antiguo 6 de abril de 2015, 18:40
Rapinto
Gran amigo del Foro
Guru de COBOL
Activista del Foro: Activista del Foro - Issue reason: ¡Gracias! Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por ayudar mucho a los foreros Guru de los Gurus: Por solidos y amplios conocimientos - Issue reason: Por saber demasiado! 
Última Actividad 29.01.2018 20:23
Posts Posts: 240
Likes enviados Enviados: 19
Likes recibidos Recibidos: 224

Josber,

Aqui vai.
Está em PowerCobol Ver. 9.0
Para a vista externa deve ser alterada a localização e nome do browser.
Para a vista interna, tem que acrescentar o objecto ieframe.dll da Microsoft.


Saludos,
Rui

Miniatura de Adjuntos
Pulsar la imagen para la versión amplia
Nombre:  Image2.jpg
Vistas: 276
Tamaño:  276,1 KB  
Archivos Adjuntos
Tipo de Archivo: zip RPSUtils.zip (8,5 KB)Descargas: 280
Tipo de Archivo: zip RPSUtilsexe.zip (21,0 KB)Descargas: 270
Rapinto is offline   Responder Con Cita
  #4
Antiguo 7 de abril de 2015, 21:12
Adrianeloy
Forero Junior
Última Actividad 24.11.2020 17:31
Posts Posts: 39
Likes enviados Enviados: 29
Likes recibidos Recibidos: 34

Tambien funciona ejecutar en cualquier DDE esta linea:
Yo lo hago en mis programas de PowerCobol V3.
De ese modo se abre la pagina con el navegador predeterminado de Windows.

Ej:
Código COBOL:
  1. 01 LINEA PIC X(256).
  2.      MOVE "cmd /c start https://www.google.com.ar/maps/@-32.9531356,-60.6575539,15z" TO LINEA.
  3.      CALL EXECAPL OF DDE1 USING LINEA POW-SWNORMAL.

adrianeloy, usa los botones CODE, COBOL etc. de resalto de sintaxis.

Última edición por Kuk fecha: 2 de septiembre de 2015 a las 13:37. Razón: Uso de resalto de sintaxis
Adrianeloy is offline   Responder Con Cita
  #5
Antiguo 2 de septiembre de 2015, 13:23
Eslopes
Creador de
PowerRustCOBOL
Guru de los Gurus: Por solidos y amplios conocimientos - Issue reason: Por ámplios conocimientos en la materia Concurso: Tercer puesto: Ganador/a del Tercer puesto en un concurso - Issue reason: Juego  Innovación: Por aportar innovaciones - Issue reason: Por aportar soluciones innovadoras 
Última Actividad 20.09.2026 13:24
Posts Posts: 357
Likes enviados Enviados: 29
Likes recibidos Recibidos: 157

Olá,

podemos levar a integração com o browser um passo adiante. Tenho um exemplo de integração com o GoogleMaps que permite a uma aplicação PowerCobol não apenas carregar o mapa num determinado endereço, mas executar funções Javascript, passando parâmetros e recebendo de volta valores das funções dentro do html

O exemplo está em inglês, mas é muito fácil de se entender.

GoogleMaps + Cobol


O segredo é a capacidade do Power de manipular objetos COM:

Código COBOL:
  1.  ENVIRONMENT     DIVISION.
  2.  DATA            DIVISION.
  3.  WORKING-STORAGE SECTION.
  4.  01  webBrowserCom usage object reference COM.    *> será usado para referenciar o objeto WebBrowser1
  5.  01  document      usage object reference COM.         *> representa o documento HTML carregado no WebBrowser1
  6.  01  parentWindow  usage object reference COM.      *> representa o topo da hierarquia DOM do HTML

Primeiro, carregamos a página Web no objeto WebBrowser1:

Código COBOL:
  1. INVOKE WebBrowser1 "Navigate" USING "http://www.100coolthings.net/Portals/3/GoogleMapsAPI.html"

Segundo, precisamos converter um objeto POWER para o tipo COM:

Código COBOL:
  1.      CALL "POWERCONVTOCOM" USING WebBrowser1 returning webBrowserCom

Em seguida obtemos o objeto que representa o HTML carregado

Código COBOL:
  1.      invoke webBrowserCom "GET-Document" returning document

Agora obtemos o objeto que representa o topo da hierarquia DOM do HTML carregado no WebBrowser1:

Código COBOL:
  1.      invoke document      "GET-parentWindow"  returning parentWindow

A partir deste momento podemos executar QUALQUER Javascript que exista na página:

Código COBOL:
  1.      invoke parentWindow "execScript" using "findLocation('Colatina, ES, BR');" & x"00"

No caso a URL usada aponta para uma página HTML que contém o seguinte Javascript:

Código Java:
  1. // findLocation is called by PowerCobol to look for a location based in the passed address
  2.     function findLocation(address) {
  3.       document.forms[0].q.value = address;
  4.       showLocation();
  5.     }
Se quisermos obter um valor de retorno, podemos declarar o INVOKE da seguinte forma:

Código COBOL:
  1.      invoke parentWindow "execScript" using "findLocation('Colatina, ES, BR');" & x"00" RETURNING retorno

"retorno" seria uma variável PIC X(n).

Dá para usar jQuery, Mootols, montar telas em HTML5, usar componentes online ou offline (html local) etc , etc, etc...

Pensem nas possibilidades

Saludos, Emerson


eslopes, usa el resalto de sintaxis (sintax highlight buttons)

---------- Post added at 08:23 ---------- Previous post was at 08:06 ----------

Olá, agora entendi o que significa "usa el resalto de sintaxis (sintax highlight buttons)" rs...

Vou usar este recurso na próxima vez (antes eu achava que o forum fazia isto automaticamente, rs.

Saludos, Emerson
Eslopes is offline   Responder Con Cita
  #6
Antiguo 19 de diciembre de 2015, 22:02
Galileo
Forero Junior
Última Actividad 22.01.2021 11:39
Posts Posts: 38
Likes enviados Enviados: 20
Likes recibidos Recibidos: 41

Citación del post de Adrianeloy Ver Mensaje
Tambien funciona ejecutar en cualquier DDE esta linea:
Yo lo hago en mis programas de PowerCobol V3.
De ese modo se abre la pagina con el navegador predeterminado de Windows.

Ej:
Código COBOL:
  1. 01 LINEA PIC X(256).
  2.      MOVE "cmd /c start https://www.google.com.ar/maps/@-32.9531356,-60.6575539,15z" TO LINEA.
  3.      CALL EXECAPL OF DDE1 USING LINEA POW-SWNORMAL.

adrianeloy, usa los botones CODE, COBOL etc. de resalto de sintaxis.
Correcto. Es más, en mis programillas la ayuda consistía en un fichero HTML y usaba este método para invocarla:
Código COBOL:
  1. CALL EXECAPL OF PRINCIPAL USING "EXPLORER AYUDA.HTM".
Galileo is offline   Responder Con Cita
  #7
Antiguo 13 de noviembre de 2018, 19:57
Joseg
El Foro es mi casa
Activista del Foro: Activista del Foro - Issue reason: Por participación activa Innovación: Por aportar innovaciones - Issue reason: Por aportar soluciones innovadoras en varias ocasiones 
Última Actividad 17.09.2026 18:23
Posts Posts: 401
Likes enviados Enviados: 130
Likes recibidos Recibidos: 179

Necessito de uma integração com o Google Maps, do tipo, pesquisar uma determinada morada (parece fácil com os exemplos aqui mostrados), e devolver as coordenadas da morada seleccionada para registar numa tabela.
Alguém consegui uma iteração total ou parcial com o Google Maps?

Gracias
Joseg is offline   Responder Con Cita
  #8
Antiguo 11 de diciembre de 2018, 19:09
Galileo
Forero Junior
Última Actividad 22.01.2021 11:39
Posts Posts: 38
Likes enviados Enviados: 20
Likes recibidos Recibidos: 41

Esto funciona en PowerCOBOL 3.0:

Código COBOL:
  1.  ENVIRONMENT DIVISION.
  2.  DATA        DIVISION.
  3.  WORKING-STORAGE SECTION.
  4.  01 LLAMADA.
  5.     02  FILLER  PIC X(9) VALUE "explorer ".
  6.     02  FILLER  PIC X(1) VALUE QUOTE.
  7.     02  FILLER  PIC X(69) VALUE "http://maps.google.com/maps?f=q&hl=en&geocode=&time=&date=&ttype=&q=@".
  8.     02  DIRECC  PIC X(80) VALUE SPACES.
  9.     02  FILLER  PIC X(13) VALUE "@&ie=UTF8&t=m".
  10.     02  FILLER  PIC X(1) VALUE QUOTE.
  11.  PROCEDURE   DIVISION.
  12.     MOVE "fuenlabrada+madrid" TO DIRECC.
  13.     CALL EXECAPL OF SHEET1 USING LLAMADA.

En DIRECC pueden quedar muchos espacios al final, pero se gestionan automáticamente, por lo que no es un problema.
Galileo is offline   Responder Con Cita
Respuesta


Herramientas

Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado

Saltar a Foro


La franja horaria es GMT +2. Ahora son las 15:32.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.