|
Server : Apache/2.2.2 (Fedora) System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686 User : apache ( 48) PHP Version : 5.2.9 Disable Function : NONE Directory : /var/www/html/pathumthani_vc/report/sar/ |
Upload File : |
<?
include("../../inc/conndb.inc.php");
//$parentid="01010000";
$alertpoint = 2.5;
$province = "$prov_name_eng";
//$mm=1;
///////// max month
$sql0= "SELECT Max(yy) AS maxYY FROM kpi_sar" ;
$query_result0 = mysql_db_query($dbname,$sql0) ;
$result0 = mysql_fetch_array($query_result0) ;
$maxYY = $result0[maxYY];
//===
if(!isset($yy)){
$yy = $maxYY;
}else if($yy=="" or $yy=="undefined"){
$yy = $maxYY;
}else{
$yy = $yy;
}
//===
$sql = "SELECT Max(mm) AS maxMM FROM kpi_sar_val WHERE yy='$yy'" ;
$query_result = mysql_db_query($dbname,$sql) ;
$result = mysql_fetch_array($query_result) ;
$maxMM = $result[maxMM];
if(!isset($mm)){
$mm = $maxMM;
}else if($mm=="" or $mm=="undefined"){
$mm = $maxMM;
}else{
$mm = $mm;
}
$sql = "SELECT
kpi_sar.yy,
kpi_sar_val.mm,
kpi_sar.id,
kpi_sar.ref_id,
kpi_sar.caption,
kpi_sar.name,
kpi_sar.wi,
kpi_sar.goal,
kpi_sar_val.old_yy,
kpi_sar_val.new_yy,
kpi_sar_val.computed,
kpi_sar.unit,
kpi_sar.g1,
kpi_sar.g2,
kpi_sar.g3,
kpi_sar.g4,
kpi_sar.g5,
kpi_sar_val.si,
kpi_sar_val.wisi,
kpi_sar.gainalert,
kpi_sar_val.date_rec,
kpi_sar.owner,
kpi_sar.url_view ";
if($mm=="" or $yy==""){
$sql .= " FROM kpi_sar LEFT JOIN kpi_sar_val ON ((kpi_sar.id = kpi_sar_val.id) AND (kpi_sar.yy = kpi_sar_val.yy)) ORDER BY kpi_sar.id";
}else{
$sql .= " FROM kpi_sar LEFT JOIN kpi_sar_val ON ((kpi_sar.id = kpi_sar_val.id) AND (kpi_sar.yy = kpi_sar_val.yy)) WHERE (kpi_sar.yy=$yy) ORDER BY kpi_sar.id";
}
//echo $sql."\n";
$result = mysql_db_query($dbname,$sql);
$temp="";
$i=0;
$f_arr_sort = array();
while($meta = mysql_fetch_field($result)){
//echo $meta->name."\n";
$f_arr_sort[$i]=$meta->name;
$i++;
}
array_unique ($f_arr_sort );
$kpi = array();
$kpiall = array();
$s = 0;
while ($kpiarray=mysql_fetch_array($result)){
if(($kpiarray['mm']==$mm)or(!$kpiarray['mm'])){
for($k=0;$k<count($f_arr_sort);$k++){
//echo $kpiarray[$f_arr_sort[$k]]."\n";
$kpi[$f_arr_sort[$k]] = $kpiarray[$f_arr_sort[$k]];
}
$kpiall[$s]=$kpi;
$kpi=array();
$s++;
}
}
//print_r($kpiall);
function level($id){
if($id=="99999999"){
return 5;
}else if(substr($id,2,strlen($id))=="000000"){
return 1;
}else if(substr($id,4,strlen($id))=="0000"){
return 2;
}else if(substr($id,6,strlen($id))=="00"){
return 3;
}else if(substr($id,8,strlen($id))==""){
return 4;
}
}
function cplv($id,$lv){
if($lv==2){
return substr($id,0,2);
}else if ($lv==3){
return substr($id,0,4);
}else if ($lv==4){
return substr($id,0,6);
}
}
function findsublv($kpiall,$lv,$id){
$retarr = array();
for($i_kpi=0;$i_kpi<count($kpiall);$i_kpi++){
if($kpiall[$i_kpi]['id']=="$id"){
GLOBAL $head;
$head = "$i_kpi";
}
if($kpiall[$i_kpi]['id']=="99999999"){
GLOBAL $endkpi;
$endkpi = "$i_kpi";
}
switch ($lv){
case 0:
if(level($kpiall[$i_kpi]["id"])==1){
$retarr[] = $i_kpi;
}
break;
case 1:
if((level($kpiall[$i_kpi]["id"])==2)and(cplv($id,2)==cplv($kpiall[$i_kpi]["id"],2))){
$retarr[] = $i_kpi;
}
break;
case 2:
if((level($kpiall[$i_kpi]["id"])==3)and(cplv($id,3)==cplv($kpiall[$i_kpi]["id"],3))){
$retarr[] = $i_kpi;
}
break;
case 3:
if((level($kpiall[$i_kpi]["id"])==4)and(cplv($id,4)==cplv($kpiall[$i_kpi]["id"],4))){
$retarr[] = $i_kpi;
}
break;
}
//echo level($kpiall[$i_kpi]["id"])."\n";
}
return $retarr;
}
if((isset($parentid))and($parentid!=0)and($parentid!="")){
$lv = level($parentid);
}else{
$lv = 0;
}
function retlink($kpiall,$lv,$id){
$newarr = findsublv($kpiall,$lv,$id);
return count($newarr);
}
//echo retlink($kpiall,level("03010000"),"03010000");
$karr = findsublv($kpiall,$lv,$parentid);
//print_r($karr);
//echo $head;
$header = $head;
$alert = 0;
$alertarr = array();
function alrt($si,$g){
if($si==""){
$si = 0;
}
if($g==""){
GLOBAL $alertpoint;
$g = $alertpoint;
}
//echo $si." si<BR>";
//echo $g." gain<BR>";
if($si<$g){
return 1;
}else{
return 0;
}
}
for($l=0;$l<count($karr);$l++){
if(retlink($kpiall,level($kpiall[$karr[$l]]['id']),$kpiall[$karr[$l]]['id'])){
$karr2 = findsublv($kpiall,level($kpiall[$karr[$l]]['id']),$kpiall[$karr[$l]]['id']);
for($m=0;$m<count($karr2);$m++){
if(retlink($kpiall,level($kpiall[$karr2[$m]]['id']),$kpiall[$karr2[$m]]['id'])){
$karr3 = findsublv($kpiall,level($kpiall[$karr2[$m]]['id']),$kpiall[$karr2[$m]]['id']);
for($n=0;$n<count($karr3);$n++){
if(retlink($kpiall,level($kpiall[$karr3[$n]]['id']),$kpiall[$karr3[$n]]['id'])){
$karr4 = findsublv($kpiall,level($kpiall[$karr3[$n]]['id']),$kpiall[$karr3[$n]]['id']);
for($o=0;$o<count($karr4);$o++){
//calculate
//echo " -".$kpiall[$karr4[$o]]['id']."<br>\n";
$alert = $alert || alrt($kpiall[$karr4[$o]]['si'],$kpiall[$karr4[$o]]['gainalert']);
}
//
}else{
//calculate
//echo " -".$kpiall[$karr3[$n]]['id']."<br>\n";
$alert = $alert || alrt($kpiall[$karr3[$n]]['si'],$kpiall[$karr3[$n]]['gainalert']);
}
//echo " ".$kpiall[$karr3[$n]]['id']."<br>\n";
}
//
}else{
//calculate
//echo " -".$kpiall[$karr2[$m]]['id']."<br>\n";
$alert = $alert || alrt($kpiall[$karr2[$m]]['si'],$kpiall[$karr2[$m]]['gainalert']);
}
//echo " ".$kpiall[$karr2[$m]]['id']."<br>\n";
}
//
}else{
//calculate
//echo "-".$kpiall[$karr[$l]]['id']."<br>\n";
//echo alrt($kpiall[$karr[$l]]['si'],$kpiall[$karr[$l]]['gainalert'])."<br>";
$alert = $alert || alrt($kpiall[$karr[$l]]['si'],$kpiall[$karr[$l]]['gainalert']);
}
//echo "".$kpiall[$karr[$l]]['id']."<br>\n";
//echo $alert."<br>";
$alertarr[$l] = $alert;
$alert = 0;
}
//
//ปีงบประมาณ
$mmd = $mm+3;
//---
echo "<?xml version='1.0' encoding='windows-874' ?>";
if($header==""){
echo "<detail hName='ข้อมูลเตือนภัยเพื่อการบริหาร ปี $yy รอบ $mmd เดือน' yy='$yy' mm='$mmd' gNumber='2' textBackGround='VISUAL CONTROL".$province."' largeText='obec' imgBG='xx.jpg' actualScore='".number_format($kpiall[$endkpi]['si']/5*$kpiall[$endkpi]['wi'],4)."' totalScore='".$kpiall[$endkpi]['wi']."' actualGrade='".number_format($kpiall[$endkpi]['si'],4)."' totalGrade='5' upDate='".$kpiall[$endkpi]['date_rec']."'>";
}else{
echo "<detail hName='";if($kpiall[$header]['caption']){echo $kpiall[$header]['caption']." ปี $yy รอบ $mmd เดือน";}else{ echo $kpiall[$header]['name']." ปี $yy รอบ $mmd เดือน"; } echo "' yy='$yy' mm='$mm' gNumber='2' textBackGround='".$province."' largeText='obec' imgBG='xx.jpg' actualScore='".number_format($kpiall[$header]['si']/5*$kpiall[$header]['wi'],4)."' totalScore='".$kpiall[$header]['wi']."' actualGrade='".number_format($kpiall[$header]['si'],4)."' totalGrade='5' upDate='".$kpiall[$header]['date_rec']."'>";
}
echo "<groupDetail gName='leftPort' pNumber='' xPos='0' yPos='0'>";
for($l=0;$l<count($karr);$l++){
echo "<port pName='";if($kpiall[$karr[$l]]['caption']){echo $kpiall[$karr[$l]]['ref_id'];}else{ echo $kpiall[$karr[$l]]['name']; } echo "' dataType='cockpit' dataScr='' pHeight=''"; if(retlink($kpiall,level($kpiall[$karr[$l]]['id']),$kpiall[$karr[$l]]['id'])){ echo " linkName='main.php?cpfile=cpd.php&id=".$kpiall[$karr[$l]]['id']."&yy=$yy&mm=$mm' ";}else{echo " linkName='"; if($kpiall[$karr[$l]]['url_view']){echo "report/frame.php?reporttype=psa&scoreFile=../cpd.php&id=".$kpiall[$karr[$l]]['id']."&sarid=kpi".$kpiall[$karr[$l]]['id']."&report=".$kpiall[$karr[$l]]['url_view']; } echo "'"; } echo " linkWindows='_self' exportName='' exportWindows='' alertLink='"; if($alertarr[$l]){echo "admin/sarlist_alert.php?yy=$yy&mm=$mm&id=".$kpiall[$karr[$l]]['id'];} echo "' alertWindow='_blank' >";
echo "<score actualScore='".number_format($kpiall[$karr[$l]]['si']/5*$kpiall[$karr[$l]]['wi'],4)."' totalScore='".$kpiall[$karr[$l]]['wi']."' actualGrade='".number_format($kpiall[$karr[$l]]['si'],4)."' totalGrade='5' upDate='".$kpiall[$karr[$l]]['date_rec']."'/>";
echo "</port>";
}
echo "</groupDetail>\n";
echo "</detail>";
//
?>