Buenos días, soy nuevo y quiero ir aprendiendo pero ahorita tengo la tarea que en mi pagina web puedan ver mi dashboard pero no se por dónde empezar si alguien me pueda ir guiando por favor la pagina esta en joomla.
Tengo mi codigo en php pero no se que tengo que hacer para poder pasar los parametros de SAP BI?
<?php
//Parametros para el comando Open Document (Documento, Formato, Parámetros)
$id_documento=$_GET["ID"];
$id_formato=$_GET["F"];
$id_parametros=$_GET["P"];
if ($id_formato <> 'P')
{
if ($id_formato <> 'E')
{$id_formato = 'H';}
}
$id_parametros = str_replace("!","&",$id_parametros);
//Se define el URL del comando Open Document para abrir un dashboard o reporte concatenando los parámetros utilizados para el caso.
$opendocurl = 'http://<server>:8080/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&sOutputFormat='.$id_ formato.'&iDocID='.$id_documento.'&'.$id_parametro s; //URL OpenDocument del elemento (dashboard, Wei Report, etc)
//Se despliega el url para validación que este bien formado
echo $opendocurl;
// URL de los REST WebServices de la plataforma de BI
$url = 'http://<server>:6405/biprws/logon/long';
// XML que contiene la estructura para agregarla al header del mensaje HTTP, de esta forma se pasan las credenciales para generar el token de sesión, antes de llamar al OpenDocument
$theData = '<attrs>
<attr name="userName" type="string">usuario</attr>
<attr name="password" type="string">password</attr>
<attr name="auth" type="string" possibilities="secEnterprise,secLDAP,secWinAD,secS APR3">secEnterprise</attr>
</attrs>';
$header_array = array("Accept: application/xml","Content-Type: application/xml");
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header_array);
curl_setopt($curl, CURLOPT_POSTFIELDS, $theData);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$head = curl_exec($curl);
preg_match('/X-SAP-LogonToken:.+}/',$head,$coincidencia);
preg_match('/".+/',$coincidencia[0],$coincidencia);
// Se extrae el token de la respuesta del POST
$token = substr($coincidencia[0],1);
// Se agrega el token al url del OpenDocument previamente preparado con los parámetros
$opendocurl = $opendocurl.'&token='.urlencode($token);
// Se llama al OpenDocument para abrir el documento de la plataforma de BI
header( 'Location: '.$opendocurl ) ;
curl_close($curl);
?>
Gracias
Javier
Tengo mi codigo en php pero no se que tengo que hacer para poder pasar los parametros de SAP BI?
<?php
//Parametros para el comando Open Document (Documento, Formato, Parámetros)
$id_documento=$_GET["ID"];
$id_formato=$_GET["F"];
$id_parametros=$_GET["P"];
if ($id_formato <> 'P')
{
if ($id_formato <> 'E')
{$id_formato = 'H';}
}
$id_parametros = str_replace("!","&",$id_parametros);
//Se define el URL del comando Open Document para abrir un dashboard o reporte concatenando los parámetros utilizados para el caso.
$opendocurl = 'http://<server>:8080/BOE/OpenDocument/opendoc/openDocument.jsp?sIDType=CUID&sOutputFormat='.$id_ formato.'&iDocID='.$id_documento.'&'.$id_parametro s; //URL OpenDocument del elemento (dashboard, Wei Report, etc)
//Se despliega el url para validación que este bien formado
echo $opendocurl;
// URL de los REST WebServices de la plataforma de BI
$url = 'http://<server>:6405/biprws/logon/long';
// XML que contiene la estructura para agregarla al header del mensaje HTTP, de esta forma se pasan las credenciales para generar el token de sesión, antes de llamar al OpenDocument
$theData = '<attrs>
<attr name="userName" type="string">usuario</attr>
<attr name="password" type="string">password</attr>
<attr name="auth" type="string" possibilities="secEnterprise,secLDAP,secWinAD,secS APR3">secEnterprise</attr>
</attrs>';
$header_array = array("Accept: application/xml","Content-Type: application/xml");
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header_array);
curl_setopt($curl, CURLOPT_POSTFIELDS, $theData);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$head = curl_exec($curl);
preg_match('/X-SAP-LogonToken:.+}/',$head,$coincidencia);
preg_match('/".+/',$coincidencia[0],$coincidencia);
// Se extrae el token de la respuesta del POST
$token = substr($coincidencia[0],1);
// Se agrega el token al url del OpenDocument previamente preparado con los parámetros
$opendocurl = $opendocurl.'&token='.urlencode($token);
// Se llama al OpenDocument para abrir el documento de la plataforma de BI
header( 'Location: '.$opendocurl ) ;
curl_close($curl);
?>
Gracias
Javier
Comentario