Ver Mensaje Individual
  #4
Antiguo 23 de marzo de 2022, 17:24
JCantero
El Foro es mi casa
Activista del Foro: Activista del Foro - Issue reason: Por participación activa Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos de parte de los Foreros 
Última Actividad 02.09.2026 00:15
Posts Posts: 442
Likes enviados Enviados: 167
Likes recibidos Recibidos: 269

Manual en microfocus https://community.microfocus.com/cfs...4-12/rmnet.pdf

Yo utilizo llamadas a servicios web desde RM/Cobol.

Debe utilizar una versión avanzada. Yo utilizo la 12+.

No recuerdo desde que versión contiene esta caracteristica pero no creo que la tengan la anterior a la 11.

Para comenzar, en la carpeta donde está instalado el runtime y el SDK de desarrollo hay un manual ( si es version 11 cambiar 12 por 11, etc)

C:\Program Files (x86)\Liant\RMCOBOLv12\RMNet\rmnet.pdf

y una DLL

C:\Program Files (x86)\Liant\RMCOBOLv12\RMNet\rmnet.dll

y una carpeta de ejemplos de uso

C:\Program Files (x86)\Liant\RMCOBOLv12\RMNet\samples

Si no se tiene esa carpeta C:\Program Files (x86)\Liant\RMCOBOLv12\RMNet lo normal es que la version que se tenga instalada no disponga de esta caracteristica.

Y en linux, yo tambien lo tengo funcionando, esta todo en la carpeta /usr/rmcobol/RMNet (aqui el objeto que contiene esta caracteristica es librmnet.so)

Cuando se lanza el programa hay que hacerlo con el .DLL o con .so si es linux

Hago una pequeña introducción de lo que hay que hacer para comenzar: ( despues ya vamos hablando )

Código COBOL:
  1.        IDENTIFICATION DIVISION.
  2.      
  3.        environment division.
  4.  
  5. ....................................mas cosas
  6.  
  7.        working-storage section.
  8.  
  9.            copy "lixmlall.cpy".
  10.        01  request-payload             usage pointer.
  11.        01  response-payload            usage pointer.
  12.        01  request-payloadx             pic x(6000).
  13.        01  response-payloadx            PIC X(2000).
  14.        01  response-status             pic 9(3) value zero.
  15.        01  response-len                pic s9(4).
  16.        01  Desired-SOAP-Action pic x(150).
  17.  
  18.        01  Post-Address pic x(100).
  19.  
  20.        78  Content-Type value "text/xml; charset=utf-8".
  21.  
  22. --------------------------------mas cosas
  23.      
  24.        PROCEDURE DIVISION.
  25.  
  26. .................................mas cosas
  27.  
  28.  
  29.            XML INITIALIZE.
  30.            call "NetInit"
  31.              giving
  32.                response-status.
  33.            set request-payload to address of request-payloadx
  34.            set response-payload to address of response-payloadx
  35.  
  36. .................................mas cosas
  37.  
  38.            XML GET TEXT
  39.                request-payload
  40.                nombre-xml.
  41.  
  42. .................................mas cosas
  43.  
  44.  
  45.            if not XML-OK go to z.
  46.            if not es-unix then
  47.              move 1 to j
  48.              perform varying i from 1 by 1 until
  49.                   desired-soap-action(i:) = ' '
  50.                 if desired-soap-action(i:1) = '/' then
  51.                    move i to j
  52.                 end-if
  53.              end-perform
  54.              display 'Servicio web :' line 24 position 1 erase eol
  55.              display desired-soap-action(j:50) line 24 position 16
  56.              display '*** espere ***' line 24 position 65
  57.            end-if
  58.  
  59. .................................mas cosas
  60.  
  61.  
  62.            call "HttpPost"
  63.              using
  64.                Post-Address
  65.                Content-Type
  66.                request-payload
  67.                response-payload
  68.                Desired-SOAP-Action
  69.              giving
  70.                response-status.
  71.  
  72.  
  73. .................................mas cosas
  74.  
  75.  
  76.            XML PUT TEXT
  77.                response-payload
  78.                nombre-xml1.
  79.  
  80. .................................mas cosas
  81.  
  82.  
  83.            call "NetCleanup".
  84.  
  85.  
  86. .................................mas cosas
  87.  
  88.    
  89.  
  90.  
JCantero is offline   Responder Con Cita