excel_report.php

来自「通达OA2007SE源代码 非常好的」· PHP 代码 · 共 158 行

PHP
158
字号
<?
  include_once 'inc/auth.php';
  include_once 'inc/utility_all.php';
  $query = 'SELECT count(*) from SAL_ITEM';
  $ITEM_COUNT = 0;
  $cursor = exequery ($connection, $query);
  if ($ROW = mysql_fetch_array ($cursor))
  {
    $ITEM_COUNT = $ROW[0];
  }
  if (($ITEM_COUNT == 0))
  {
    exit ();
  }
  $query = ((''.'SELECT * from SAL_FLOW where FLOW_ID=').$FLOW_ID);
  $cursor = exequery ($connection, $query);
  $FLOW_COUNT = 0;
  if ($ROW = mysql_fetch_array ($cursor))
  {
    $CONTENT = $ROW['CONTENT'];
  }
  ($EXCEL_OUT .= '部门	');
  ($EXCEL_OUT .= '姓名	');
  ($EXCEL_OUT .= '角色	');
  if (($fld_str == ''))
  {
    $query = 'SELECT ITEM_ID from SAL_ITEM';
    $cursor = exequery ($connection, $query);
    $FLOW_COUNT = 0;
    while ($ROW = mysql_fetch_array ($cursor))
    {
      $STYLE = (($STYLE.$ROW['ITEM_ID']).',');
    }
  }
  else
  {
    $STYLE = $fld_str;
  }
  $STYLE_ARRAY = explode (',', $STYLE);
  $ARRAY_COUNT = sizeof ($STYLE_ARRAY);
  $COUNT = 0;
  if (($STYLE_ARRAY[($ARRAY_COUNT - 1)] == ''))
  {
    --$ARRAY_COUNT;
  }
  for ($I = 0; ($I < $ARRAY_COUNT); ++$I)
  {
    $query1 = (((''.'select ITEM_ID,ITEM_NAME from SAL_ITEM where ITEM_ID=\'').$STYLE_ARRAY[$I]).'\'');
    $cursor1 = exequery ($connection, $query1);
    if ($ROW = mysql_fetch_array ($cursor1))
    {
      $ITEM_NAME = $ROW['ITEM_NAME'];
      $ITEM_ID[$COUNT] = $ROW['ITEM_ID'];
      ($EXCEL_OUT .= ($ITEM_NAME.'	'));
    }
    ++$COUNT;
  }
  ($EXCEL_OUT .= '
');
  if (($COPY_TO_ID != ''))
  {
    $COPY_TO_ID = (('\''.str_replace (',', '\',\'', substr ($COPY_TO_ID, 0, -1))).'\'');
    ($WHERE_STR .= (((''.' and USER.USER_ID in (').$COPY_TO_ID).')'));
  }
  if ((($TOID != '') AND ($TOID != 'ALL_DEPT')))
  {
    $TOID = (('\''.str_replace (',', '\',\'', substr ($TOID, 0, -1))).'\'');
    ($WHERE_STR .= (((''.' and DEPARTMENT.DEPT_ID in (').$TOID).')'));
  }
  if (($DEPT_FLAG != 1))
  {
    $query = (('SELECT * from USER,USER_PRIV,DEPARTMENT where DEPARTMENT.DEPT_ID=USER.DEPT_ID and USER.USER_PRIV=USER_PRIV.USER_PRIV'.$WHERE_STR).' order by DEPT_NO,PRIV_NO,USER_NAME');
  }
  else
  {
    $query = 'SELECT * from USER,USER_PRIV where USER.USER_PRIV=USER_PRIV.USER_PRIV and DEPT_ID=0';
  }
  $cursor = exequery ($connection, $query);
  $USER_COUNT = 0;
  while ($ROW = mysql_fetch_array ($cursor))
  {
    ++$USER_COUNT;
    $USER_ID = $ROW['USER_ID'];
    $USER_NAME = $ROW['USER_NAME'];
    $DEPT_ID = $ROW['DEPT_ID'];
    $USER_PRIV = $ROW['USER_PRIV'];
    if (($DEPT_ID == 0))
    {
      $DEPT_NAME = '离职人员/外部人员';
    }
    else
    {
      $query1 = ((''.'select * from DEPARTMENT where DEPT_ID=').$DEPT_ID);
      $cursor1 = exequery ($connection, $query1);
      if ($ROW = mysql_fetch_array ($cursor1))
      {
        $DEPT_NAME = $ROW['DEPT_NAME'];
      }
    }
    $query1 = (((''.'SELECT * from USER_PRIV where USER_PRIV=\'').$USER_PRIV).'\'');
    $cursor1 = exequery ($connection, $query1);
    if ($ROW = mysql_fetch_array ($cursor1))
    {
      $USER_PRIV = $ROW['PRIV_NAME'];
    }
    ($EXCEL_OUT .= ($DEPT_NAME.'	'));
    ($EXCEL_OUT .= ($USER_NAME.'	'));
    ($EXCEL_OUT .= ($USER_PRIV.'	'));
    $query1 = (((((''.'select * from SAL_DATA where FLOW_ID=').$FLOW_ID).' and USER_ID=\'').$USER_ID).'\'');
    $cursor1 = exequery ($connection, $query1);
    if ($ROW = mysql_fetch_array ($cursor1))
    {
      for ($I = 0; ($I < $COUNT); ++$I)
      {
        $STR = ('S'.$ITEM_ID[$I]);
        $$STR = format_money ($ROW[(''.$STR)]);
      }
    }
    else
    {
      for ($I = 0; ($I < $COUNT); ++$I)
      {
        $STR = ('S'.$ITEM_ID[$I]);
        $$STR = '';
      }
    }
    for ($I = 0; ($I < $COUNT); ++$I)
    {
      $STR = ('S'.$ITEM_ID[$I]);
      $STR_COUNT = ($STR.'_COUNT');
      ($$STR_COUNT += $$STR);
      ($EXCEL_OUT .= ($$STR.'	'));
    }
    ($EXCEL_OUT .= '
');
  }
  if (($USER_COUNT != 0))
  {
    ($EXCEL_OUT .= '合计			');
    for ($I = 0; ($I < $COUNT); ++$I)
    {
      $STR = ('S'.$ITEM_ID[$I]);
      $STR_COUNT = ($STR.'_COUNT');
      $DATA = format_money ($$STR_COUNT);
      ($EXCEL_OUT .= ($DATA.'	'));
    }
    ($EXCEL_OUT .= '
');
  }
  ob_end_clean ();
  header ('Cache-control: private');
  header ('Content-type: application/vnd.ms-excel');
  header ('Accept-Ranges: bytes');
  header (('Accept-Length: '.strlen ($EXCEL_OUT)));
  header ((((''.'Content-Disposition: attachment; filename= 工资报表-').$CONTENT).'.xls'));
  echo $EXCEL_OUT;
?>

⌨️ 快捷键说明

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