flow_report.php
来自「通达OA2007SE源代码 非常好的」· PHP 代码 · 共 736 行 · 第 1/2 页
PHP
736 行
<?
include_once 'inc/auth.php';
include_once 'inc/utility_html.php';
include_once 'inc/utility_all.php';
include_once '../prcs_role.php';
$query = ((''.'SELECT * from FLOW_TYPE WHERE FLOW_ID=').$FLOW_ID);
$cursor1 = exequery ($connection, $query);
if ($ROW = mysql_fetch_array ($cursor1))
{
$FLOW_NAME = $ROW['FLOW_NAME'];
$FORM_ID = $ROW['FORM_ID'];
$FLOW_NAME = $ROW['FLOW_NAME'];
$MANAGE_USER = $ROW['MANAGE_USER'];
$QUERY_USER = $ROW['QUERY_USER'];
}
$query = ((''.'SELECT * from FLOW_FORM_TYPE WHERE FORM_ID=').$FORM_ID);
$cursor1 = exequery ($connection, $query);
if ($ROW = mysql_fetch_array ($cursor1))
{
$FORM_NAME = $ROW['FORM_NAME'];
$PRINT_MODEL = $ROW['PRINT_MODEL'];
$ELEMENT_ARRAY = html_element ($PRINT_MODEL);
}
$HTML_NAME = $FLOW_NAME;
$LETTER_STR = '\\,/,:,*,?,",<,>,|';
$MY_ARRAY = explode (',', $LETTER_STR);
$ARRAY_COUNT = sizeof ($MY_ARRAY);
if (($MY_ARRAY[($ARRAY_COUNT - 1)] == ''))
{
--$ARRAY_COUNT;
}
for ($I = 0; ($I < $ARRAY_COUNT); ++$I)
{
$HTML_NAME = str_replace ($MY_ARRAY[$I], '', $HTML_NAME);
}
if (($OP == 1))
{
echo '<html>
<head>
<title>工作流分组统计报表 - ';
echo $HTML_NAME;
echo '</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<body topmargin="5">
';
}
else
{
ob_end_clean ();
header ('Cache-control: private');
header ('Content-type: application/vnd.ms-excel');
header ((((''.'Content-Disposition: attachment; filename= 工作流分组统计报表 - ').$HTML_NAME).'.xls'));
echo '
<html xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns="http://www.w3.org/TR/REC-html40">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
';
}
$query = (((''.'SELECT FLOW_RUN.RUN_ID,RUN_NAME,PRCS_TIME,FLOW_TYPE.FLOW_ID,FLOW_NAME,FLOW_TYPE,MANAGE_USER,QUERY_USER,ATTACHMENT_ID,ATTACHMENT_NAME from FLOW_TYPE,FLOW_RUN,FLOW_RUN_PRCS WHERE FLOW_TYPE.FLOW_ID=FLOW_RUN.FLOW_ID and FLOW_RUN.RUN_ID=FLOW_RUN_PRCS.RUN_ID and FLOW_TYPE.FLOW_ID=\'').$FLOW_ID).'\'');
if (($RUN_ID != ''))
{
($query .= (((''.' and FLOW_RUN.RUN_ID=\'').$RUN_ID).'\''));
}
if (($RUN_NAME != ''))
{
$FIELDVALUE = $RUN_NAME;
$WHERE_STR = ' and RUN_NAME';
switch ($RUN_NAME_RELATION)
{
case 1:
{
($WHERE_STR .= (('=\''.$FIELDVALUE).'\''));
break;
}
case 2:
{
($WHERE_STR .= (('>\''.$FIELDVALUE).'\''));
break;
}
case 3:
{
($WHERE_STR .= (('<\''.$FIELDVALUE).'\''));
break;
}
case 4:
{
($WHERE_STR .= (('>=\''.$FIELDVALUE).'\''));
break;
}
case 5:
{
($WHERE_STR .= (('<=\''.$FIELDVALUE).'\''));
break;
}
case 6:
{
($WHERE_STR .= (('!=\''.$FIELDVALUE).'\''));
break;
}
case 7:
{
($WHERE_STR .= ((' like \''.$FIELDVALUE).'%\''));
break;
}
case 8:
{
($WHERE_STR .= ((' like \'%'.$FIELDVALUE).'%\''));
break;
}
case 9:
{
($WHERE_STR .= ((' like \'%'.$FIELDVALUE).'\''));
break;
}
}
($query .= $WHERE_STR);
}
if (($ATTACHMENT_NAME != ''))
{
($query .= (((''.' and ATTACHMENT_NAME like \'%').$ATTACHMENT_NAME).'%\''));
}
if (($PRCS_DATE1 != ''))
{
($query .= (((''.' and PRCS_TIME>=\'').$PRCS_DATE1).' 00:00:00\''));
}
if (($PRCS_DATE2 != ''))
{
($query .= (((''.' and PRCS_TIME<=\'').$PRCS_DATE2).' 23:59:59\''));
}
$query_global = $query;
if (((($FLOW_QUERY_TYPE == 'ALL') AND ($LOGIN_USER_PRIV != 1)) OR ($FLOW_QUERY_TYPE == '2')))
{
$query_my = ($query.(((''.' and USER_ID=\'').$LOGIN_USER_ID).'\''));
$cursor = exequery ($connection, $query_my);
while ($ROW = mysql_fetch_array ($cursor))
{
($MY_RUN_ID .= ($ROW['RUN_ID'].','));
}
if (($MY_RUN_ID != ''))
{
$MY_RUN_ID = substr ($MY_RUN_ID, 0, -1);
}
else
{
$MY_RUN_ID = '0';
}
}
if ((($FLOW_QUERY_TYPE == 'ALL') AND ($LOGIN_USER_PRIV != 1)))
{
($query .= (((((((((((''.' and (FLOW_RUN.RUN_ID in (').$MY_RUN_ID).') or MANAGE_USER like \'%,').$LOGIN_USER_ID).',%\' or MANAGE_USER like \'').$LOGIN_USER_ID).',%\' or QUERY_USER like \'%,').$LOGIN_USER_ID).',%\' or QUERY_USER like \'').$LOGIN_USER_ID).',%\')'));
}
else
{
if (($FLOW_QUERY_TYPE == '1'))
{
($query .= (((''.' and USER_ID=\'').$LOGIN_USER_ID).'\''));
}
else
{
if (($FLOW_QUERY_TYPE == '2'))
{
($query .= (((''.' and FLOW_RUN.RUN_ID in (').$MY_RUN_ID).')'));
}
else
{
if ((($FLOW_QUERY_TYPE == '3') AND ($LOGIN_USER_PRIV != 1)))
{
($query .= (((((((((''.' and (MANAGE_USER like \'%,').$LOGIN_USER_ID).',%\' or MANAGE_USER like \'').$LOGIN_USER_ID).',%\' or QUERY_USER like \'%,').$LOGIN_USER_ID).',%\' or QUERY_USER like \'').$LOGIN_USER_ID).',%\')'));
}
}
}
}
$query_run = ($query_global.' and PRCS_FLAG<>\'4\'');
$cursor = exequery ($connection, $query_run);
while ($ROW = mysql_fetch_array ($cursor))
{
($STATUS_RUN .= ($ROW['RUN_ID'].','));
}
if (($STATUS_RUN != ''))
{
$STATUS_RUN = substr ($STATUS_RUN, 0, -1);
}
else
{
$STATUS_RUN = 0;
}
if (($FLOW_STATUS != 'ALL'))
{
if (($FLOW_STATUS == 0))
{
($query .= (((''.' and FLOW_RUN.RUN_ID in (').$STATUS_RUN).')'));
}
else
{
($query .= (((''.' and FLOW_RUN.RUN_ID not in (').$STATUS_RUN).')'));
}
}
($query .= ' and PRCS_ID=1 order by FLOW_RUN.RUN_ID desc');
$cursor = exequery ($connection, $query);
$RUN_COUNT = 0;
while ($ROW = mysql_fetch_array ($cursor))
{
$RUN_ID = $ROW['RUN_ID'];
$RUN_NAME = $ROW['RUN_NAME'];
$ATTACHMENT_ID = $ROW['ATTACHMENT_ID'];
$ATTACHMENT_NAME = $ROW['ATTACHMENT_NAME'];
$DATA_ARRAY[$RUN_COUNT][0] = $RUN_NAME;
$PRCS_TIME = $ROW['PRCS_TIME'];
$PRCS_DATE = strtok ($PRCS_TIME, ' ');
$DATA_ARRAY[$RUN_COUNT][2] = $PRCS_DATE;
$DATA_ARRAY[$RUN_COUNT][3] = $PRCS_TIME;
$NOT_FOUND = 0;
for ($I = 1; ($I <= $ITEM_ID_MAX); ++$I)
{
$STR = ('DATA_'.$I);
$FIELDVALUE = $$STR;
if ((($FIELDVALUE != '') AND ($FIELDVALUE != 'SELECT_ALL_VALUE')))
{
$STR = ('RELATION_'.$I);
$RELATION = $$STR;
if (($FIELDVALUE == 'CHECKBOX_ON'))
{
$FIELDVALUE = 'on';
}
else
{
if (($FIELDVALUE == 'CHECKBOX_OFF'))
{
$FIELDVALUE = '';
}
}
$WHERE_STR = (((((''.' where RUN_ID=\'').$RUN_ID).'\' and ITEM_ID=').$I).' and ITEM_DATA');
switch ($RELATION)
{
case 1:
{
($WHERE_STR .= (('=\''.$FIELDVALUE).'\''));
break;
}
case 2:
{
if (is_numeric ($FIELDVALUE))
{
($WHERE_STR .= (('>'.$FIELDVALUE).''));
break;
}
else
{
($WHERE_STR .= (('>\''.$FIELDVALUE).'\''));
break;
}
break;
}
case 3:
{
if (is_numeric ($FIELDVALUE))
{
($WHERE_STR .= (('<'.$FIELDVALUE).''));
break;
}
else
{
($WHERE_STR .= (('<\''.$FIELDVALUE).'\''));
break;
}
break;
}
case 4:
{
if (is_numeric ($FIELDVALUE))
{
($WHERE_STR .= (('>='.$FIELDVALUE).''));
break;
}
else
{
($WHERE_STR .= (('>=\''.$FIELDVALUE).'\''));
break;
}
break;
}
case 5:
{
if (is_numeric ($FIELDVALUE))
{
($WHERE_STR .= (('<='.$FIELDVALUE).''));
break;
}
else
{
($WHERE_STR .= (('<=\''.$FIELDVALUE).'\''));
break;
}
break;
}
case 6:
{
($WHERE_STR .= (('!=\''.$FIELDVALUE).'\''));
break;
}
case 7:
{
($WHERE_STR .= ((' like \''.$FIELDVALUE).'%\''));
break;
}
case 8:
{
($WHERE_STR .= ((' like \'%'.$FIELDVALUE).'%\''));
break;
}
case 9:
{
($WHERE_STR .= ((' like \'%'.$FIELDVALUE).'\''));
break;
}
}
$query1 = (('select 1 from FLOW_RUN_DATA'.$WHERE_STR).' limit 1');
$cursor1 = exequery ($connection, $query1);
if (!$ROW = mysql_fetch_array ($cursor1))
{
$NOT_FOUND = 1;
break;
}
continue;
}
}
if (($NOT_FOUND == 1))
{
continue;
}
else
{
if (($FLOW_STATUS == 'ALL'))
{
if (find_id ($STATUS_RUN, $RUN_ID))
{
$STATUS = '<font color=red>执行中</font>';
}
else
{
$STATUS = '已结束';
}
}
else
{
if (($FLOW_STATUS == '0'))
{
$STATUS = '<font color=red>执行中</font>';
}
else
{
$STATUS = '已结束';
}
}
$DATA_ARRAY[$RUN_COUNT][1] = $STATUS;
$query1 = (((''.'SELECT * from FLOW_RUN_DATA where RUN_ID=').$RUN_ID).' order by ITEM_ID');
$cursor1 = exequery ($connection, $query1);
while ($ROW = mysql_fetch_array ($cursor1))
{
$ITEM_ID = $ROW['ITEM_ID'];
$ITEM_DATA = $ROW['ITEM_DATA'];
$STR = ('DATA_LIST_'.$ITEM_ID);
$$STR = $ITEM_DATA;
}
$ITEM_ID = 0;
for ($J = 0; ($J < $ITEM_ID_MAX); ++$J)
{
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?