texto="SELECT procedimientos_acciones.idprocedimientoaccion AS identificador, procedimientos_acciones.orden, procedimientos_acciones.parametros, procedimientos_acciones.procedimientoid, comandos.idcomando, comandos.descripcion AS comando, procedimientostemp.descripcion AS procedimiento FROM procedimientos INNER JOIN procedimientos_acciones ON procedimientos_acciones.idprocedimiento=procedimientos.idprocedimiento LEFT OUTER JOIN comandos ON comandos.idcomando=procedimientos_acciones.idcomando LEFT OUTER JOIN procedimientos AS procedimientostemp ON procedimientostemp.idprocedimiento=procedimientos_acciones.procedimientoid WHERE procedimientos.idprocedimiento=".$idprocedimiento." ORDER BY procedimientos_acciones.orden"; $idprocedimientos=escribeAcciones($cmd,$AMBITO_PROCEDIMIENTOS,true,7); $idprocedimientos=$idprocedimiento; // Excluye sólo a él para evitar dead-lock $cmd->texto="SELECT idprocedimiento AS identificador, 0 AS orden, 0 AS idcomando, descripcion AS procedimiento FROM procedimientos WHERE idprocedimiento NOT IN (".$idprocedimientos.") ORDER BY descripcion"; escribeAcciones($cmd,$AMBITO_PROCEDIMIENTOS,false,8); } // ************************************************************************************************************************************************* function listaTareas($cmd,$idtarea,$ambito) { global $AMBITO_PROCEDIMIENTOS; global $AMBITO_TAREAS; global $AMBITO_TAREAS; global $TbMsg; /* Contenido de tarea */ $cmd->texto="SELECT tareas.ambito, tareas.idambito, tareas_acciones.idtareaaccion AS identificador, tareas_acciones.orden, tareas_acciones.tareaid, procedimientos.idprocedimiento, procedimientos.descripcion AS procedimiento, tareastemp.descripcion AS tarea FROM tareas INNER JOIN tareas_acciones ON tareas_acciones.idtarea=tareas.idtarea LEFT OUTER JOIN procedimientos ON procedimientos.idprocedimiento=tareas_acciones.idprocedimiento LEFT OUTER JOIN tareas AS tareastemp ON tareastemp.idtarea=tareas_acciones.tareaid WHERE tareas.idtarea=".$idtarea." ORDER BY tareas_acciones.orden"; $idtareas=escribeAcciones($cmd,$AMBITO_TAREAS,true,7); /* Procedimientos disponibles */ if(!empty($ambito)){ $cmd->texto="SELECT idprocedimiento AS identificador, 0 AS orden, 0 AS idcomando, descripcion AS procedimiento FROM procedimientos ORDER BY descripcion"; escribeAcciones($cmd,$AMBITO_PROCEDIMIENTOS,false,8); } /* Tareas disponibles */ $idtareas=$idtarea; // Excluye s�lo a ella para evitar dead-lock $cmd->texto="SELECT idtarea AS identificador, 0 AS orden, 0 AS idprocedimiento, descripcion AS tarea FROM tareas WHERE idtarea NOT IN (".$idtareas.") ORDER BY descripcion"; escribeAcciones($cmd,$AMBITO_TAREAS,false,9); } //________________________________________________________________________________________________________ function escribeAcciones($cmd,$tipoaccion,$sw,$imsg) { global $AMBITO_PROCEDIMIENTOS; global $AMBITO_TAREAS; global $AMBITO_COMANDOS; global $conTR; global $TbMsg; $rs=new Recordset; $rs->Comando=&$cmd; if (!$rs->Abrir()) return(""); $idacciones=""; echo ''; if($rs->EOF && !$sw){ echo '

'; return; } echo '

'.$TbMsg[$imsg].'
'; echo ' '; escribeCabecera(); while (!$rs->EOF){ echo ''; $conTR++; echo ''; echo ''; // Descripcion de la acci�n switch($tipoaccion){ case $AMBITO_PROCEDIMIENTOS: if(!empty($rs->campos["idcomando"])){ $urlimg="../images/iconos/comandos.gif"; $accion=$rs->campos["comando"]; $value=$AMBITO_COMANDOS; } else{ $urlimg="../images/iconos/procedimiento.gif"; $accion=$rs->campos["procedimiento"]; $value=$AMBITO_PROCEDIMIENTOS; } break; case $AMBITO_TAREAS: if(!empty($rs->campos["idprocedimiento"])){ $urlimg="../images/iconos/procedimiento.gif"; $accion=$rs->campos["procedimiento"]; $value=$AMBITO_PROCEDIMIENTOS; } else{ $urlimg="../images/iconos/tareas.gif"; $accion=$rs->campos["tarea"]; $value=$AMBITO_TAREAS; } break; } echo ''; echo ''; // Orden del item del item echo ''; /* Muestra parámetros de los comandos (Se hace en Información) if($tipoaccion==$AMBITO_PROCEDIMIENTOS){ if(!empty($rs->campos["idcomando"])){ // Se trata de un comando, se muestran par�metros) $htmlprm=escribeParametros($rs->campos["parametros"]); if(!empty($htmlprm)){ echo ''; echo ''; echo ''; } } } */ $rs->Siguiente(); } echo '
'.$accion.'
 '.escribeParametros($rs->campos["parametros"]).'
'; if($sw) escribePie(); echo '

'; $rs->Cerrar(); $idacciones.="0"; // Para evitar el último ";" return($idacciones); } //________________________________________________________________________________________________________ function escribeCabecera() { global $TbMsg; global $litcab; echo '    '.$TbMsg[4].'  T  '.$litcab.' '; } //________________________________________________________________________________________________________ function escribePie() { global $litmsg; global $op; echo '

'.$litmsg.'
'; }