Gracias Rui Pinto (Rapinto)
COBOL Foro
Foro dedicado a COBOL, a la Programación y a la Informática.
Retroceder   COBOL Foro > IDE-s y compiladores COBOL > Cocina Casera > Cocina PowerCOBOL
Cocina PowerCOBOL Rutinas y ejemplos codificados por nuestros foreros.
Noticias y Avisos
Respuesta
 
Herramientas

  #1
Antiguo 6 de abril de 2015, 00:29
IDENTIFICATION DIVISION
Rapinto
Gran amigo del Foro y Guru de COBOL
ENVIRONMENT DIVISION
Avatar de Rapinto
DATA DIVISION
Forero desde (Registrado)febrero 2015
Portugal
UbicaciónPorto
Última Actividad29.01.2018 19:23
PROCEDURE DIVISION
PostsPosts: 246
Ha dicho GraciasEnviado: 19
Ha recibido agradecimientosRecibido: 215
Mejores respuestasSoluiones: 47
Medallas recibidas: 2Medallas: Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Razón: Por ayudar mucho a los foreros  Guru de los Gurus: Por solidos y amplios conocimientos - Razón: Por saber demasiado! 
ReputaciónReputación: 13
Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road
Casa Google Maps localización

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 no ha iniciado sesión   Responder Con Cita
Ha dicho Gracias : 1
Galileo (19 de diciembre de 2015)
  #2
Antiguo 6 de abril de 2015, 08:59
IDENTIFICATION DIVISION
Josber
Super Moderador
ENVIRONMENT DIVISION
Avatar de Josber
DATA DIVISION
Forero desde (Registrado)febrero 2015
España
UbicaciónAlicante
Última Actividad26.08.2019 06:26
PROCEDURE DIVISION
PostsPosts: 459
Ha dicho GraciasEnviado: 183
Ha recibido agradecimientosRecibido: 198
Mejores respuestasSoluiones: 29
Medallas recibidas: 1Medallas: Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Razón: Por muchos agradecimientos 
ReputaciónReputación: 18
Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road Josber is on a distinguished road
Predeterminado

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

Muchas gracias
Un saludo.-
Josber no ha iniciado sesión   Responder Con Cita
  #3
Antiguo 6 de abril de 2015, 17:40
IDENTIFICATION DIVISION
Rapinto
Gran amigo del Foro y Guru de COBOL
ENVIRONMENT DIVISION
Avatar de Rapinto
DATA DIVISION
Forero desde (Registrado)febrero 2015
Portugal
UbicaciónPorto
Última Actividad29.01.2018 19:23
PROCEDURE DIVISION
PostsPosts: 246
Ha dicho GraciasEnviado: 19
Ha recibido agradecimientosRecibido: 215
Mejores respuestasSoluiones: 47
Medallas recibidas: 2Medallas: Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Razón: Por ayudar mucho a los foreros  Guru de los Gurus: Por solidos y amplios conocimientos - Razón: Por saber demasiado! 
ReputaciónReputación: 13
Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road Rapinto is on a distinguished road
Predeterminado

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
Imágenes Adjuntas
Tipo de Archivo: jpg Image2.jpg (276,1 KB, 55 descargas)
Archivos Adjuntos
Tipo de Archivo: zip RPSUtils.zip (8,5 KB, 50 descargas)
Tipo de Archivo: zip RPSUtilsexe.zip (21,0 KB, 42 descargas)
Rapinto no ha iniciado sesión   Responder Con Cita
Han dicho Gracias: 2
Josber ( 6 de abril de 2015), Kuk ( 6 de abril de 2015)
  #4
Antiguo 7 de abril de 2015, 20:12
IDENTIFICATION DIVISION
Adrianeloy
Novato Junior
ENVIRONMENT DIVISION
Avatar de Adrianeloy
DATA DIVISION
Forero desde (Registrado)marzo 2015
Argentina
UbicaciónSanta Fe/rosario
Edad52 años
Última Actividad30.05.2018 17:33
PROCEDURE DIVISION
PostsPosts: 39
Ha dicho GraciasEnviado: 30
Ha recibido agradecimientosRecibido: 30
Mejores respuestasSoluiones: 2
ReputaciónReputación: 0
Adrianeloy is on a distinguished road Adrianeloy is on a distinguished road Adrianeloy is on a distinguished road
Predeterminado

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 12:37. Razón: Uso de resalto de sintaxis
Adrianeloy no ha iniciado sesión   Responder Con Cita
Ha dicho Gracias : 1
Xavier ( 2 de febrero de 2016)
  #5
Antiguo 2 de septiembre de 2015, 12:23
IDENTIFICATION DIVISION
Eslopes
Guru de OO COBOL
ENVIRONMENT DIVISION
Avatar de Eslopes
DATA DIVISION
Forero desde (Registrado)agosto 2015
Brasil
Última Actividad11.05.2019 20:19
PROCEDURE DIVISION
PostsPosts: 66
Ha dicho GraciasEnviado: 17
Ha recibido agradecimientosRecibido: 29
Mejores respuestasSoluiones: 2
ReputaciónReputación: 7
Eslopes is on a distinguished road Eslopes is on a distinguished road Eslopes is on a distinguished road
Predeterminado

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 no ha iniciado sesión   Responder Con Cita
Ha dicho Gracias : 1
Kuk ( 2 de septiembre de 2015)
  #6
Antiguo 19 de diciembre de 2015, 21:02
IDENTIFICATION DIVISION
Galileo
Novato Junior
ENVIRONMENT DIVISION
Avatar de Galileo
DATA DIVISION
Forero desde (Registrado)junio 2015
España
UbicaciónMurcia
Última Actividad13.12.2018 18:27
PROCEDURE DIVISION
PostsPosts: 37
Ha dicho GraciasEnviado: 19
Ha recibido agradecimientosRecibido: 34
Mejores respuestasSoluiones: 7
ReputaciónReputación: 0
Galileo is on a distinguished road Galileo is on a distinguished road Galileo is on a distinguished road
Predeterminado

Cita 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 no ha iniciado sesión   Responder Con Cita
  #7
Antiguo 13 de noviembre de 2018, 18:57
IDENTIFICATION DIVISION
Joseg
Novato Senior
ENVIRONMENT DIVISION
Avatar de Joseg
DATA DIVISION
Forero desde (Registrado)abril 2015
Portugal
Última Actividad06.08.2019 22:50
PROCEDURE DIVISION
PostsPosts: 162
Ha dicho GraciasEnviado: 37
Ha recibido agradecimientosRecibido: 46
Mejores respuestasSoluiones: 9
Medallas recibidas: 1Medallas: Innovación: Por aportar innovaciones - Razón: Por aportar soluciones innovadoras en varias ocasiones 
ReputaciónReputación: 9
Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about Joseg has a spectacular aura about
Predeterminado

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 no ha iniciado sesión   Responder Con Cita
  #8
Antiguo 11 de diciembre de 2018, 18:09
IDENTIFICATION DIVISION
Galileo
Novato Junior
ENVIRONMENT DIVISION
Avatar de Galileo
DATA DIVISION
Forero desde (Registrado)junio 2015
España
UbicaciónMurcia
Última Actividad13.12.2018 18:27
PROCEDURE DIVISION
PostsPosts: 37
Ha dicho GraciasEnviado: 19
Ha recibido agradecimientosRecibido: 34
Mejores respuestasSoluiones: 7
ReputaciónReputación: 0
Galileo is on a distinguished road Galileo is on a distinguished road Galileo is on a distinguished road
Predeterminado

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 no ha iniciado sesión   Responder Con Cita
Respuesta

Tags
com/ole , google maps


Usuarios activos actualmente viendo este tema: 1 (0 miembros y 1 visitantes)
 
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



La franja horaria es GMT +1. Ahora son las 10:22.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2019, Jelsoft Enterprises Ltd.