⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 html_report.php

📁 极限网络智能办公系统 - Office Automation 2.8 100% 源码
💻 PHP
字号:
<?php

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 = "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;
}
$I = 0;
for ( ;	$I < $ARRAY_COUNT;	++$I	)
{
	$HTML_NAME = str_replace( $MY_ARRAY[$I], "", $HTML_NAME );
}
echo "\r\n<html>\r\n<head>\r\n<title>工作流分组统计报表 - ";
echo $HTML_NAME;
echo "</title>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">\r\n<body topmargin=\"5\">\r\n\r\n";
$query = "SELECT * from FLOW_RUN WHERE FLOW_ID={$FLOW_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."'";
	}
	$query .= $WHERE_STR;
}
if ( $ATTACHMENT_NAME != "" )
{
	$query .= " and ATTACHMENT_NAME like '%{$ATTACHMENT_NAME}%'";
}
$query .= " order by 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;
	if ( $LOGIN_USER_PRIV != "1" && !find_id( $MANAGE_USER, $LOGIN_USER_ID ) )
	{
		$query1 = "SELECT * from FLOW_RUN_PRCS WHERE RUN_ID={$RUN_ID} AND USER_ID='{$LOGIN_USER_ID}'";
		$cursor1 = exequery( $connection, $query1 );
		if ( !mysql_fetch_array( $cursor1 ) )
		{
			continue;
		}
	}
	$PRCS_TIME = "";
	$query1 = "SELECT * from FLOW_RUN_PRCS WHERE RUN_ID={$RUN_ID} AND PRCS_ID=1";
	$cursor1 = exequery( $connection, $query1 );
	if ( $ROW = mysql_fetch_array( $cursor1 ) )
	{
		$PRCS_TIME = $ROW['PRCS_TIME'];
		$PRCS_DATE = strtok( $PRCS_TIME, " " );
		if ( $PRCS_DATE1 != "" && compare_date( $PRCS_DATE, $PRCS_DATE1 ) < 0 )
		{
		}
		else if ( $PRCS_DATE2 != "" && 0 < compare_date( $PRCS_DATE, $PRCS_DATE2 ) )
		{
		}
		else if ( $PRCS_TIME == "0000-00-00 00:00:00" )
		{
			$PRCS_TIME = "";
		}
	}
	$DATA_ARRAY[$RUN_COUNT][2] = $PRCS_DATE;
	$DATA_ARRAY[$RUN_COUNT][3] = $PRCS_TIME;
	$query1 = "SELECT * from FLOW_RUN_PRCS WHERE RUN_ID={$RUN_ID} AND PRCS_FLAG<>'4'";
	$cursor1 = exequery( $connection, $query1 );
	if ( $ROW = mysql_fetch_array( $cursor1 ) )
	{
		$STATUS = "执行中";
		if ( $FLOW_STATUS == "1" )
		{
			continue;
		}
	}
	else
	{
		$STATUS = "已结束";
		if ( $FLOW_STATUS == "0" )
		{
		}
	}
	$DATA_ARRAY[$RUN_COUNT][1] = $STATUS;
	$NOT_FOUND = 0;
	$I = 1;
	for ( ;	$I <= $ITEM_ID_MAX;	++$I	)
	{
		$STR = "DATA_".$I;
		$FIELDVALUE = $$STR;
		if ( $FIELDVALUE != "" && $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 :
				$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."'";
			}
			$query1 = "select * from FLOW_RUN_DATA".$WHERE_STR;
			$cursor1 = exequery( $connection, $query1 );
			if ( !( $ROW = mysql_fetch_array( $cursor1 ) ) )
			{
				$NOT_FOUND = 1;
				break;
			}
		}
	}
	if ( $NOT_FOUND == 1 )
	{
	}
	else
	{
		$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;
		$J = 0;
		for ( ;	$J < $ITEM_ID_MAX;	++$J	)
		{
			$ELEMENT = $ELEMENT_ARRAY[$J];
			$ENAME = get_attr( $ELEMENT, "NAME" );
			$EVALUE = get_attr( $ELEMENT, "VALUE" );
			$ECLASS = get_attr( $ELEMENT, "CLASS" );
			if ( $ECLASS != "DATE" )
			{
				++$ITEM_ID;
			}
			$STR = "DATA_LIST_".$ITEM_ID;
			$ITEM_VALUE = $$STR;
			if ( $ECLASS != "LIST_VIEW" )
			{
				$ITEM_DATA = str_replace( chr( 10 ), " ", $ITEM_DATA );
				$ITEM_DATA = str_replace( chr( 13 ), " ", $ITEM_DATA );
			}
			if ( $ECLASS == "DATE" )
			{
				$ITEM_VALUE = "";
			}
			else if ( $ECLASS == "AUTO" && $ENAME == "SELECT" && $ITEM_VALUE != "" )
			{
				$EDATAFLD = get_attr( $ELEMENT, "DATAFLD" );
				switch ( $EDATAFLD )
				{
				case "SYS_LIST_DEPT" :
					$query_auto = "SELECT * from DEPARTMENT where DEPT_ID='{$ITEM_VALUE}'";
					$cursor_auto = exequery( $connection, $query_auto );
					if ( !( $ROW = mysql_fetch_array( $cursor_auto ) ) )
					{
						break;
					}
					$ITEM_VALUE = $ROW['DEPT_NAME'];
					break;
				case "SYS_LIST_PRIV" :
					$query_auto = "SELECT * from USER_PRIV where USER_PRIV={$ITEM_VALUE}";
					$cursor_auto = exequery( $connection, $query_auto );
					if ( !( $ROW = mysql_fetch_array( $cursor_auto ) ) )
					{
						break;
					}
					$ITEM_VALUE = $ROW['PRIV_NAME'];
					break;
				case "SYS_LIST_USER" :
				case "SYS_LIST_PRCSUSER1" :
				case "SYS_LIST_PRCSUSER2" :
					$query_auto = "SELECT * from USER where USER_ID='{$ITEM_VALUE}'";
					$cursor_auto = exequery( $connection, $query_auto );
					if ( !( $ROW = mysql_fetch_array( $cursor_auto ) ) )
					{
						break;
					}
					$ITEM_VALUE = $ROW['USER_NAME'];
					break;
				case "SYS_LIST_SQL" :
				}
			}
			else
			{
				if ( $ECLASS == "LIST_VIEW" )
				{
					if ( $ITEM_VALUE != "" )
					{
						$LV_TITLE = get_attr( $ELEMENT, "LV_TITLE" );
						$LV_SIZE = get_attr( $ELEMENT, "LV_SIZE" );
						$MY_ARRAY_SIZE = explode( "`", $LV_SIZE );
						$LV_VALUE = $ITEM_VALUE;
						$ITEM_VALUE = "<TABLE class='small' style='border-collapse:collapse' border=1 cellspacing=0 cellpadding=2 bordercolor='#000000'><TR class=TableHeader>\n";
						$MY_ARRAY = explode( "`", $LV_TITLE );
						$ARRAY_COUNT_TITLE = sizeof( $MY_ARRAY );
						if ( $MY_ARRAY[$ARRAY_COUNT_TITLE - 1] == "" )
						{
							--$ARRAY_COUNT_TITLE;
						}
						$K = 0;
						for ( ;	$K < $ARRAY_COUNT_TITLE;	++$K	)
						{
							$ITEM_VALUE .= "<TD nowrap>".$MY_ARRAY[$K]."</TD>\n";
						}
						$ITEM_VALUE .= "</TR>\n";
						$MY_ARRAY = explode( "\r\n", $LV_VALUE );
						$ARRAY_COUNT = sizeof( $MY_ARRAY );
						if ( $MY_ARRAY[$ARRAY_COUNT - 1] == "" )
						{
							--$ARRAY_COUNT;
						}
						$K = 0;
						for ( ;	$K < $ARRAY_COUNT;	++$K	)
						{
							$ITEM_VALUE .= "<tr>\n";
							$TR_DATA = $MY_ARRAY[$K];
							$MY_ARRAY1 = explode( "`", $TR_DATA );
							$L = 0;
							for ( ;	$L < $ARRAY_COUNT_TITLE;	++$L	)
							{
								$TD_DATA = $MY_ARRAY1[$L];
								if ( $TD_DATA == "" )
								{
									$TD_DATA = "&nbsp;";
								}
								$ITEM_VALUE .= ( "<td width=".$MY_ARRAY_SIZE[$L] * 9 ).">".$TD_DATA."</td>\n";
							}
							$ITEM_VALUE .= "</tr>\n";
						}
						$ITEM_VALUE .= "</TABLE>\n";
					}
				}
				else
				{
					if ( $ECLASS == "AUTO" && $ITEM_VALUE == "{宏控件}" )
					{
						$ITEM_VALUE = "";
					}
					$ITEM_VALUE = str_replace( "<", "&lt", $ITEM_VALUE );
					$ITEM_VALUE = str_replace( ">", "&gt", $ITEM_VALUE );
					$ITEM_VALUE = stripslashes( $ITEM_VALUE );
					$ITEM_VALUE = str_replace( chr( 10 ), "<br>", $ITEM_VALUE );
					if ( $ENAME == "INPUT" && strstr( $ELEMENT, "type=checkbox" ) )
					{
						if ( $ITEM_VALUE == "on" )
						{
							$ITEM_VALUE = "是";
						}
						else
						{
							$ITEM_VALUE = "否";
						}
					}
				}
			}
			$DATA_ARRAY[$RUN_COUNT][$ITEM_ID + 3] = $ITEM_VALUE;
		}
		++$RUN_COUNT;
	}
}
if ( $RUN_COUNT == 0 )
{
	message( "提示", "无符合条件的记录" );
	exit( );
}
$ROW_COUNT = $RUN_COUNT;
$COL_COUNT = $ITEM_ID + 4;
$TITLE_ARRAY[0] = "文号/说明";
$TITLE_ARRAY[1] = "流程状态";
$TITLE_ARRAY[2] = "流程开始日期";
$TITLE_ARRAY[3] = "开始时间";
$J = 0;
$I = 0;
for ( ;	$I < $ITEM_ID_MAX;	++$I	)
{
	$ELEMENT = $ELEMENT_ARRAY[$I];
	$ETITLE = get_attr( $ELEMENT, "TITLE" );
	$ECLASS = get_attr( $ELEMENT, "CLASS" );
	if ( $ECLASS == "DATE" )
	{
	}
	else
	{
		$ETITLE = str_replace( "<", "&lt", $ETITLE );
		$ETITLE = str_replace( ">", "&gt", $ETITLE );
		$ETITLE = stripslashes( $ETITLE );
		$TITLE_ARRAY[$J + 4] = $ETITLE;
		++$J;
	}
}
echo "\r\n<table cellspacing=\"0\" width=\"100%\" cellpadding=\"3\" class=\"small\">\r\n   <tr class=\"TableContent\">\r\n";
echo "   <td class=\"TableControl\" style=\"border: 1px solid black\" align=\"center\"><b>分组:";
echo $TITLE_ARRAY[$GROUP_FLD];
echo "&nbsp;</b></td>\r\n";
$ARRAY_COUNT = sizeof( $TITLE_ARRAY );
$I = 0;
for ( ;	$I < $ARRAY_COUNT;	++$I	)
{
	if ( $I == $GROUP_FLD )
	{
	}
	else
	{
		echo "   <td style=\"border-top: 1px  solid black; border-right: 1px  solid black; border-bottom: 1px solid black\" align=\"center\"><b>";
		echo $TITLE_ARRAY[$I];
		echo "&nbsp;</b></td>\r\n";
	}
}
echo "   </tr>\r\n   <tr class=\"TableData\">\r\n";
$I = 0;
for ( ;	$I < $ROW_COUNT;	++$I	)
{
	$DATA_INDEX_ARRAY[0][$I] = $DATA_ARRAY[$I][$GROUP_FLD];
	$DATA_INDEX_ARRAY[1][$I] = $I;
}
if ( $GROUP_SORT == "ASC" )
{
	array_multisort( $DATA_INDEX_ARRAY[0], SORT_STRING, SORT_ASC, $DATA_INDEX_ARRAY[1], SORT_STRING, SORT_ASC );
}
else
{
	array_multisort( $DATA_INDEX_ARRAY[0], SORT_STRING, SORT_DESC, $DATA_INDEX_ARRAY[1], SORT_STRING, SORT_ASC );
}
$CUR_VALUE_PREV = "OA_NULL_VALUE";
$GROUP_COUNT = -1;
$I = 0;
for ( ;	$I < $ROW_COUNT;	++$I	)
{
	if ( $DATA_INDEX_ARRAY[0][$I] != $CUR_VALUE_PREV )
	{
		++$GROUP_COUNT;
	}
	$DATA_GROUP_ARRAY[$GROUP_COUNT][0] = $DATA_INDEX_ARRAY[0][$I];
	$DATA_GROUP_ARRAY[$GROUP_COUNT][1] .= $DATA_INDEX_ARRAY[1][$I].",";
	$CUR_VALUE_PREV = $DATA_INDEX_ARRAY[0][$I];
}
$I = 0;
for ( ;	$I <= $GROUP_COUNT;	++$I	)
{
	unset( $SUM_DATA_ARRAY );
	$ROW_ARRAY = explode( ",", $DATA_GROUP_ARRAY[$I][1] );
	$ARRAY_COUNT = sizeof( $ROW_ARRAY ) - 1;
	$ROWSPAN = $ARRAY_COUNT;
	if ( $SUM_FLD != "" )
	{
		++$ROWSPAN;
	}
	$J = 0;
	for ( ;	$J < $ARRAY_COUNT;	++$J	)
	{
		echo "   <tr class=\"TableData\">\r\n";
		if ( $J == 0 )
		{
			echo "     <td rowspan=\"";
			echo $ROWSPAN;
			echo "\" class=\"TableContent\" style=\"border-left: 1px  solid black; border-right: 1px  solid black; border-bottom: 1px solid black\">\r\n     ";
			echo $DATA_GROUP_ARRAY[$I][0];
			echo "<br><b>(共";
			echo $ARRAY_COUNT;
			echo "项)</b></td>\r\n";
		}
		$K = 0;
		for ( ;	$K < $COL_COUNT;	++$K	)
		{
			if ( $K == $GROUP_FLD )
			{
			}
			else
			{
				if ( find_id( $SUM_FLD, $K ) )
				{
					$SUM_DATA_ARRAY[$K] += $DATA_ARRAY[$ROW_ARRAY[$J]][$K];
					$SUM_TOTAL_DATA_ARRAY[$K] += $DATA_ARRAY[$ROW_ARRAY[$J]][$K];
				}
				echo "     <td style=\"border-right: 1px  solid black; border-bottom: 1px solid black\" ";
				if ( find_id( $SUM_FLD, $K ) )
				{
					echo "align=right";
				}
				echo ">";
				echo $DATA_ARRAY[$ROW_ARRAY[$J]][$K];
				echo "&nbsp;</td>\r\n";
			}
		}
		echo "   </tr>\r\n";
	}
	if ( $SUM_FLD != "" )
	{
		echo "      <tr class=\"TableData\">\r\n";
		$flag = 0;
		$K = 0;
		for ( ;	$K < $COL_COUNT;	++$K	)
		{
			if ( $K == $GROUP_FLD )
			{
			}
			else if ( $flag == 0 )
			{
				$flag = 1;
				echo "      \t    <td class=\"TableControl\" style=\"border-right: 1px  solid black; border-bottom: 1px solid black\" align=right><b>小计</b></td>\r\n";
			}
			else
			{
				echo "   <td class=\"TableControl\" style=\"border-right: 1px  solid black; border-bottom: 1px solid black\" align=right>";
				echo $SUM_DATA_ARRAY[$K];
				echo "&nbsp;</td>\r\n";
			}
		}
		echo "</tr>";
	}
}
if ( $SUM_FLD != "" )
{
	echo "  <tr class=\"TableControl\">\r\n   <td style=\"border-left: 1px  solid black; border-right: 1px  solid black; border-bottom: 1px solid black\" align=\"center\"><b>合计</b></td>\r\n";
	$K = 0;
	for ( ;	$K < $COL_COUNT;	++$K	)
	{
		if ( $K == $GROUP_FLD )
		{
		}
		else
		{
			echo " <td style=\"border-right: 1px  solid black; border-bottom: 1px solid black\" align=\"right\">";
			echo $SUM_TOTAL_DATA_ARRAY[$K];
			echo "&nbsp;</td>\r\n ";
		}
	}
	echo "</tr>";
}
echo "</table>\r\n\r\n</body>\r\n</html>";
?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -