Un foro de discusión para nuestra comunidad de hispano hablante
User avatar
By milagrosmaria16
#816033
Buenas tardes,
Quisiera saber como obtener los errores internos cuando ejecuto código php en el trigger de una actividad del ProcessMaker.
Quedo a la espera de sus comentarios.
De antemano, muchas gracias!!!!!
User avatar
By milagrosmaria16
#816052
Buen día,
Gracias por tu respuesta, pero no me está pintando el error tampoco, solo al cerrar la sesión me muestra lo siguiente => ERROR: Fatal error in trigger.

Y el trigger que estoy usando es el siguiente:
Code: Select all
$CaseID=12; //Número de ticket
$data=array(
         "custom_fields" => array(
         array (
           "field" => "PM_Case_Status",
           "value" => "TO_DO"
                )
         )
 );

$data = json_encode($data);//Create JSON string from data ARRAY
 );
$proxy = "172.19.44.XXXXX";
$token = "A7KXXXXXXXX";
$authorization = "Authorization: Bearer ".$token;
$url = "https://XXXX/Api/V1/tickets/".$CaseID;

$ch = curl_init($url); //LLAMANDO A LA URL
curl_setopt($ch, CURLOPT_PROXY, $proxy);
header('Content-Type: application/json');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization));
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
//curl_setopt($ch, CURLOPT_POST, true); //ENVIANDO POR VIA POST
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //ACTIVAR LA RESPUESTA
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); //ENVIANDO EL JSON
$response_json = curl_exec($ch); //RESPUESTA DEL SERVICIO REST
curl_close($ch); //CERRAR CONEXION CON WS
@@txtTicketWC1 = "La respuesta es ".$response_json;
Espero me puedas apoyar por favor!!!

Muchísimas gracias.
User avatar
By amosbatto
#816058
Tienes un ")" extra despues de $data:
Debe ser:
Code: Select all
$CaseID=12; //Número de ticket
$data=array(
   "custom_fields" => array(
       array (
           "field" => "PM_Case_Status",
           "value" => "TO_DO"
       )
    )
);

$data = json_encode($data);//Create JSON string from data ARRAY
 
$proxy = "172.19.44.XXXXX";
$token = "A7KXXXXXXXX";
$authorization = "Authorization: Bearer ".$token;
$url = "https://XXXX/Api/V1/tickets/".$CaseID;

$ch = curl_init($url); //LLAMANDO A LA URL
curl_setopt($ch, CURLOPT_PROXY, $proxy);
header('Content-Type: application/json');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , $authorization));
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
//curl_setopt($ch, CURLOPT_POST, true); //ENVIANDO POR VIA POST
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //ACTIVAR LA RESPUESTA
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); //ENVIANDO EL JSON
$response_json = curl_exec($ch); //RESPUESTA DEL SERVICIO REST
curl_close($ch); //CERRAR CONEXION CON WS
@@txtTicketWC1 = "La respuesta es ".$response_json;
User avatar
By milagrosmaria16
#816099
Muchas gracias por tu apoyo,
Hice el cambio pero sigue sin mostrarse la información, me aparece lo siguiente:
Image

Y cuando activo DEBUG me muestra la siguiente info:
Code: Select all
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <link rel="shortcut icon" href="/images/favicon.ico"   type="image/x-icon"/>
  <TITLE></TITLE>


		<!--//////////////////////////////////********//////////////////////////////////-->



        <script type="text/javascript">

        var BROWSER_CACHE_FILES_UID = "";

        </script>

        <script type="text/javascript" src="/js/maborak/core/maborak.js"></script>
<script type="text/javascript" src="/jscore/labels/en.js"></script>
<script type="text/javascript" src="/js/widgets/js-calendar/unicode-letter.js"></script>
<script type="text/javascript" src="/js/ext/translation.en.js"></script>
<script type='text/javascript'>
  var leimnud = new maborak();

  leimnud.make({

    zip:true,

    inGulliver:true,

    modules :"dom,abbr,rpc,drag,drop,app,panel,fx,grid,xmlform,validator,dashboard",

    files :""

  });

  try{

    leimnud.exec(leimnud.fix.memoryLeak);

    if(leimnud.browser.isIphone){

      leimnud.iphone.make();

    }

  }catch(e){} var __usernameLogged__ = "jsalazar";var SYS_LANG = "en";</script>
<script type="text/javascript" src="/js/maborak/core/maborak.loader.js"></script>
  <link rel='stylesheet' type='text/css' href='/css/neoclassic-blank.css' />

 
</head>
<body bgcolor="#FFFFFF" text="#000000" link="#000000" vlink="#000000" alink="#999999" marginheight="0" marginwidth="0" leftmargin="0" topmargin="0" rightmargin="0">
<table width="100%" cellspacing="0" cellpadding="0" height="100%">
	
	<tr>
		<td width="100%" valign="top">
		
<table width="100%" cellpadding="0" cellspacing="0" border="0" style="padding-top: 3px">
<tr>
<td align="center">
<div style="position:relative;width:100%;height:100%;padding:0px;" id="cases_target"></div>
</td>
</tr>
<tr>
<td align="center">
<DIV id="publisherContent[1]" style="; margin:0px;" align="center"><script>
if ( typeof parent != 'undefined' && typeof parent.parent != 'undefined') {
  if ( typeof parent.parent.Ext != 'undefined') {
    var debugPanel = parent.parent.Ext.getCmp('debugPanel');

    debugPanel.show();
    debugPanel.ownerCt.doLayout();
    debugPanel.expand();

    parent.parent.propStore.load();
    parent.parent.triggerStore.load();
  }
}
</script></DIV></td>
</tr>
<tr>
<td align="center">
<DIV id="publisherContent[2]" style="; margin:0px;" align="center">    <div class="ui-widget-header ui-corner-all" width="100%" align="center">
    Processmaker - Debugger (Break Point)&nbsp;&nbsp;&nbsp;&nbsp;
    <input type="button" value="Continue" class="module_app_button___gray"
    onclick="javascript:location.href='casesListExtJsRedirector?ux=NORMAL'">
    </div>
    </DIV></td>
</tr>
</table>
		</td>
	</tr>
</table>
</body>
</html>
Espero me puedas seguir apoyado por favor!
De antemano, muchísimas gracias.
User avatar
By amosbatto
#816114
El codigo de tu Dynaform no ayuda. Debes usar Debug Mode en ProcessMaker, para ver los variables de tu trigger.

Debes usar este PHP para chequear tu estatus de HTTP que debe ser 200 o 201:
Code: Select all
$response_json = curl_exec($ch); //RESPUESTA DEL SERVICIO REST
@@http_status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch); //CERRAR CONEXION CON WS
@@txtTicketWC1 = "La respuesta es ".$response_json;
User avatar
By milagrosmaria16
#816903
Muchísimas gracias,

Tenia un problema de ssl, se corrigió agregando lo siguiente en el trigger: curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

Experience heightened pleasure with Cenforce 100 M[…]

Get an instant solution to move emails to MBOX for[…]

Most Demanding OST to PST Converter

The most demanding OST to PST Converter is TrijaT[…]

Betvisa clone scripts are pre-built software solut[…]