<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&amp;type=frwk&amp;module=fnd&amp;program=datasul-calculatorportlet-flex&amp;viewtype=portlet&amp;userid=super&amp;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&amp;type=md&amp;program=ems5.emsuni.CRUDUnidOrgan&amp;viewtype=view&amp;userid=super&amp;password=c3N6a0AxMjM"
			class="external-link" rel="nofollow"><span>http://</span><span>&#160;</span><span>server:
				port/josso/signon/externalUserAuthentication.do? josso_cmd = login
				externo &amp; tipo = md &amp; programa = ems5. emsuni. CRUDUnidOrgan
				&amp; viewtype = view &amp; ID = super &amp; password = c3N6a0AxMjM</span></a><span>=</span>
	</p>
	<p align="LEFT" class="western">&#160;</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&amp;module=cdp&amp;user=super&amp;password=c3N6a0AxMjM"
			class="external-link" rel="nofollow">http://server:
			Puerto/abl-externo-llamada/ejecutar? programa cd0704 &amp; w = módulo
			= cdp &amp; usuario = super &amp; password = c3N6a0AxMjM</a>=
	</p>
	<p align="LEFT" class="western" style="margin-left: 24.0px;">&#160;</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;">&#160;</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;">&#160;</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;">&#160;</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>&#160;</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">            &lt; 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&amp;module=cdp&amp;” +</pre>
	<pre class="western">                         “user=super&amp;password=c3N6a0AxMjM=";</pre>
	<pre class="western">               window.open(url);</pre>
	<pre class="western">           } </pre>
	<p align="LEFT" class="western">&#160;</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;">&#160;</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&amp;" + </pre>
	<pre class="western">                         "type=md&amp;program=ems5.emsuni.CRUDUnidOrgan&amp;viewtype=view&amp;" +</pre>
	<pre class="western">                         "userid=super&amp;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:&#160;<span>&#160;</span>
		</span><a href="81789187.html"><strong>Llamadas a Zooms del
				Datasul a través de Formularos en el Fluig:</strong><span>&#160;</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;">&#160;</p>
	<p>
		<strong><br /></strong>
	</p>
</div>