<div id="main-content" class="wiki-content group"> <h3 id="id-6.InvocaçãodeAplicaçõeseFormuláriosnoDatasulatravésdoFluig-6.1.Objetivo"> <strong>6.1. Objetivo</strong> </h3> <p align="LEFT" class="western"> <span>Permitir que se pueda abrir en formularios HTML asociados a procesos en el Fluig a través de un enlace o botón en el formulario, pantallas Flex, Metadatos o Progress en Datasul. La apertura de estas pantallas se realizará a través de una dirección URL en una función de Javascript en el formulario.</span> </p> <h3 id="id-6.InvocaçãodeAplicaçõeseFormuláriosnoDatasulatravésdoFluig-6.2.GuiadeProgramação"> <strong>6.2. Guía de Programación</strong> </h3> <p align="LEFT" class="western"> <span>En un formulario HTML en Fluig, con un enlace o botón para abrir una pantalla en el Datasul, utilizar una llamada HTTP para llevar a cabo la apertura de una nueva ventana del explorador que contiene el formulario para abrir. </span> </p> <p align="LEFT" class="western"> <span>En formularios Flex o Metadatos se utiliza la técnica del “External User Authentication”. En programas Progress se utiliza el “ABL External Call”. A continuación, veremos ejemplos de URLs que permiten la apertura de cada uno de los tipos.</span> </p> <ul> <li><p align="LEFT"> URL para el acceso directo a un <strong>Portlet Flex</strong>: </p></li> </ul> <p align="LEFT" class="western" style="margin-left: 24.0px;"> <span><a rel="nofollow">http://server:port/josso/signon/externalUserAuthentication.do?josso_cmd=external-login&type=frwk&module=fnd&program=datasul-calculatorportlet-flex&viewtype=portlet&userid=super&password=c3N6a0AxMjM</a>=</span> </p> <p align="LEFT" class="western" style="margin-left: 24.0px;"> <span><br /></span> </p> <ul> <li><p align="LEFT"> URL de acceso a formulario <strong>Metadatos</strong>: </p></li> </ul> <p align="LEFT" class="western" style="margin-left: 24.0px;"> <a href="http://cassino:8180/josso/signon/externalUserAuthentication.do?josso_cmd=external-login&type=md&program=ems5.emsuni.CRUDUnidOrgan&viewtype=view&userid=super&password=c3N6a0AxMjM" class="external-link" rel="nofollow"><span>http://</span><span> </span><span>server: port/josso/signon/externalUserAuthentication.do? josso_cmd = login externo & tipo = md & programa = ems5. emsuni. CRUDUnidOrgan & viewtype = view & ID = super & password = c3N6a0AxMjM</span></a><span>=</span> </p> <p align="LEFT" class="western"> </p> <ul> <li><p align="LEFT"> URL de acceso a programas <strong>Progress</strong>: </p></li> </ul> <p align="LEFT" class="western" style="margin-left: 24.0px;"> <a href="http://cassino:8180/abl-external-call/execute?program=cd0704.w&module=cdp&user=super&password=c3N6a0AxMjM" class="external-link" rel="nofollow">http://server: Puerto/abl-externo-llamada/ejecutar? programa cd0704 & w = módulo = cdp & usuario = super & password = c3N6a0AxMjM</a>= </p> <p align="LEFT" class="western" style="margin-left: 24.0px;"> </p> <p align="LEFT" class="western" style="margin-left: 24.0px;"> <span><strong>URL base para Flex y Metadatos:</strong></span><span> <a rel="nofollow">http://server:port/josso/signon/externalUserAuthentication.do</a>? </span> </p> <p align="LEFT" class="western" style="margin-left: 24.0px;"> <span><strong>URL base para Progress:</strong></span><span> http:// <a href="http://serverport" class="external-link" rel="nofollow">servidor: puerto</a> /abl-externo-llamada/ejecutar? </span> </p> <p align="LEFT" class="western" style="margin-left: 24.0px;"> </p> <p align="LEFT" class="western" style="margin-left: 24.0px;"> <span><strong>Parámetros Flex y Metadatos:</strong></span> </p> <ul> <ul> <li><p align="LEFT"> <strong>josso_cmd:</strong> Comando a ejecutar por JOSSO, en caso de external-login. </p></li> </ul> </ul> <ul> <ul> <li><p align="LEFT"> <strong>userid:</strong> Nombre de usuario. </p></li> </ul> </ul> <ul> <ul> <li><p align="LEFT"> <strong>password:</strong> Contraseña del usuario. Debe transmitirse mediante encode Base64. </p></li> </ul> </ul> <ul> <ul> <li><p align="LEFT"> <strong>type:</strong> Tipo del programa a abrir, <strong>frwk</strong> o <strong>md</strong>; el md es para el tipo metadatos y el frwk es para el framework. Es necesario informar para que el josso sepa si utilizará el parámetro MODULE o el parámetro PROGRAM. </p></li> </ul> </ul> <ul> <ul> <li><p align="LEFT"> <strong>program:</strong> En el programa al que se accederá, colocar la ruta completa del programa metadatos como por ejemplo: ems5. emsuni. CRUDUnidOrgan. </p></li> </ul> </ul> <ul> <ul> <li><p align="LEFT"> <strong>module: </strong> Módulo al que se accederá, sólo en el caso de programas flex. </p></li> </ul> </ul> <ul> <ul> <li><p align="LEFT"> <strong>viewtype:</strong> Tipo de ventana que se abrirá, pudiendo ser: </p> <ul> <li><p align="LEFT"> <span>view</span> </p></li> <li><p align="LEFT"> <span>portlet</span> </p></li> <li><p align="LEFT"> <span>window</span> </p></li> </ul></li> </ul> </ul> <p align="LEFT" class="western" style="margin-left: 38.4px;"> </p> <p align="LEFT" class="western" style="margin-left: 38.4px;"> <strong>Parámetros para Progress:</strong> </p> <ul> <ul> <li><p align="LEFT"> <strong>program:</strong> Nombre del programa Progress. </p></li> </ul> </ul> <ul> <ul> <li><p align="LEFT"> <strong>Module:</strong> nombre del módulo. </p></li> </ul> </ul> <ul> <ul> <li><p align="LEFT"> <strong>userid:</strong> Nombre de usuario. </p></li> </ul> </ul> <ul> <ul> <li><p align="LEFT"> <strong>password:</strong> Contraseña del usuario. Debe transmitirse mediante encode Base64. </p></li> </ul> </ul> <p align="LEFT" class="western" style="margin-left: 48.0px;"> </p> <p align="LEFT" class="western" style="margin-left: 38.4px;"> <span>Del lado del Fluig, para que un formulario realice una llamada a una pantalla en el Datasul, podemos basarnos en el siguiente ejemplo:</span> </p> <p> </p> <ul> <li style="list-style-type: none;"><ul> <li><p align="LEFT" class="western"> <span>Suponiendo que en un formulario de Fluig tenemos un botón para llamar a un programa Progress de la siguiente manera:</span> </p></li> </ul></li> </ul> <pre class="western"> < valor = "Programa" onClick = "callProgress ()" type = "button" ></pre> <p align="LEFT" class="western" style="margin-left: 92.0px;"> <span>Con el clic del botón se llamará la función callProgress() que podrá tener el siguiente código:</span> </p> <pre class="western"> <br /> function callProgress () {</pre> <pre class="western"> var url = "<a rel="nofollow">http://cassino:8180/abl-externo-call /"</a> +</pre> <pre class="western"> “execute?program=cd0704.w&module=cdp&” +</pre> <pre class="western"> “user=super&password=c3N6a0AxMjM=";</pre> <pre class="western"> window.open(url);</pre> <pre class="western"> } </pre> <p align="LEFT" class="western"> </p> <ul> <li class="western" style="margin-left: 32.0px;"><span>La función similar para llamar a un formulario metadatos:</span></li> </ul> <p align="LEFT" class="western" style="margin-left: 37.4333px;"> </p> <pre class="western"> function callMetadados () {</pre> <pre class="western"> var url = “<a href="http://tdn.totvs.comport" rel="nofollow">http://:port/josso/signon/</a>" +</pre> <pre class="western"> "externalUserAuthentication.do?josso_cmd=external-login&" + </pre> <pre class="western"> "type=md&program=ems5.emsuni.CRUDUnidOrgan&viewtype=view&" +</pre> <pre class="western"> "userid=super&password=c3N6a0AxMjM=";</pre> <pre class="western"> window.open(url, “Unidade Organizacional”, 800, "width=800,height=600");</pre> <pre class="western"> }</pre> <p align="LEFT" class="western" style="margin-left: 62.4px;"> <span>En el caso del formulario Metadatos, este puede personalizarse opcionalmente para devolver la información al formulario Fluig, utilizando el comando </span>(CALL-BACK-ventana-abridor)<span>. Para consultar: <span> </span> </span><a href="81789187.html"><strong>Llamadas a Zooms del Datasul a través de Formularos en el Fluig:</strong><span> </span></a><strong><a href="81789187.html">Función ABLScript para Formularios FreeForm</a></strong><span><strong><a href="81789187.html">4</a>.</strong></span> </p> <p align="LEFT" class="western" style="margin-left: 62.4px;"> </p> <p> <strong><br /></strong> </p> </div> |