function quantiteSortiePeriode($exercice, $service, $idproduit, $datedebut, $datefin) { $sql = "SELECT SUM(MVT_QUANTITE) as TOTAL FROM mouvement \tWHERE mouvement.CODE_MAGASIN LIKE '" . addslashes($service) . "' AND\r\n\tmouvement.ID_EXERCICE='{$exercice}' AND mouvement.MVT_VALID=1 AND CODE_PRODUIT LIKE '" . addslashes($idproduit) . "'\r\n\tAND mouvement.MVT_DATE >= '" . addslashes(mysqlFormat($datedebut)) . "' AND mouvement.MVT_DATE <= '" . addslashes(mysqlFormat($datefin)) . "' ;"; try { $cnx = new PDO(DBD, DBUSER, DBPWD, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")); //Connexion to database } catch (PDOException $error) { //Treat error //("Erreur de connexion : " . $error->getMessage() ); die($error->getMessage() . ' ' . __LINE__); } $query = $cnx->prepare($sql); //Prepare the SQL $query->execute(); //Execute prepared SQL => $query $row = $query->fetch(PDO::FETCH_ASSOC); //Nbre de jour $nbrej = NbJours($datedebut, $datefin); $nbrej > 0 ? $qte = 30 * ($row['TOTAL'] / $nbrej) : ($qte = 0); return $qte; }
$inventmoins = StockProduitParNature($row['CODE_PRODUIT'], 'INVENTAIRE -', $whereAll); $entree = $Livraison['QTE'] + $reportEntree['QTE'] + $transfetEnt['QTE']; // ENTREE $sortie = $bonsortie['QTE'] + $Declassement['QTE'] + $reportSortie['QTE'] + $transfetSort['QTE']; //SORTIE $ecart = $inventmoins['QTE'] + $inventplus['QTE']; $rest = $entree - $sortie; if ($rest == 0) { $sql2 = "SELECT MAX(`MVT_DATE`) AS D_DATE from mouvement\r\n\t\t\t\t\tWHERE MVT_TYPE LIKE 'S' AND CODE_PRODUIT LIKE '" . addslashes($row['CODE_PRODUIT']) . "';"; $query2 = $cnx->prepare($sql2); //Prepare the SQL $query2->execute(); //Execute prepared SQL => $query $row2 = $query2->fetch(PDO::FETCH_ASSOC); isset($row2['D_DATE']) && $row2['D_DATE'] != '' ? $ddebut = $row2['D_DATE'] : ($ddebut = $_SESSION['GL_USER']['EXERCICE'] . '-01-01'); $j = NbJours($ddebut, date('Y-m-d')); // echo $ddebut, ' ', date('Y-m-d'), ' ',$j; array_push($_SESSION['DATA_ETAT']['ligne'], array('codeproduit' => $row['CODE_PRODUIT'], 'produit' => stripslashes($row['PRD_LIBELLE']), 'stocks' => $rest, 'unite' => $row['ID_UNITE'], 'date' => frFormat2($row2['D_DATE']), 'jour' => $j, 'semaine' => $j / 7, 'mois' => $j / 30)); $_SESSION['DATA_ETAT']['nbreLigne'] += 1; } } header('location:raprupture1.php?selectedTab=rap'); break; case 'rapportmensuel': //Par produit $where = " mouvement.CODE_MAGASIN LIKE '" . $_SESSION['GL_USER']['MAGASIN'] . "' AND "; $whereAll = ""; isset($_POST['exercice']) && $_POST['exercice'] != '' ? $where .= "mouvement.ID_EXERCICE = '" . addslashes(trim($_POST['exercice'])) . "' AND " : ($where .= ""); isset($_POST['datedebut']) && $_POST['datedebut'] != '' ? $where .= "mouvement.MVT_DATE <= '" . addslashes(mysqlFormat(trim($_POST['datedebut']))) . "' AND " : ($where .= ""); $wherePeriode = " mouvement.CODE_MAGASIN LIKE '" . $_SESSION['GL_USER']['MAGASIN'] . "' AND "; isset($_POST['exercice']) && $_POST['exercice'] != '' ? $wherePeriode .= "mouvement.ID_EXERCICE = '" . addslashes(trim($_POST['exercice'])) . "' AND " : ($wherePeriode .= "");
function ligneEtatExercice($wh = '', $ord = '', $sens = 'ASC') { $userName = getField('LOGIN', $_SESSION['GL_USER']['LOGIN'], 'LOGIN', 'compte'); $ilang = getCodelangue($userName); $returnHTML = ''; //Where clause $where = ''; isset($wh) and $wh != '' ? $where = " WHERE {$wh} " : ($where = ""); //Oerder condition $order = ''; isset($ord) and $ord != '' ? $order = " ORDER BY {$ord} {$sens}" : ($order = " ORDER BY ID_EXERCICE DESC"); //Nombre d'éléments $nbre = nombreExercice($where); if ($nbre > 0) { //Calcule des limites $sql = "SELECT * FROM exercice {$where} {$order};"; //Exécution try { $cnx = new PDO(DBD, DBUSER, DBPWD, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")); //Connexion to database } catch (PDOException $error) { //Treat error //("Erreur de connexion : " . $error->getMessage() ); header('location:errorPage.php'); } $query = $cnx->prepare($sql); //Prepare the SQL $query->execute(); //Execute prepared SQL => $query $i = 0; while ($row = $query->fetch(PDO::FETCH_ASSOC)) { $d1 = frFormat($row['EX_DATEDEBUT']); //Return $ret = array(); // DFR, TFR $d2 = frFormat($row['EX_DATEFIN']); $d3 = frFormat($row['EX_DATECLOTURE']); $nbre = NbJours(date('Y-m-d'), $row['EX_DATEFIN']); if ($nbre == 1) { $nbre = $nbre . ' jour'; } elseif ($nbre > 1) { $nbre = $nbre . ' jours'; } else { $nbre = '-'; } $row['EX_CLOTURE'] == '0' ? $imgCl = '<img src="../images/encours.gif" width="16" height="16">' : ($imgCl = '<img src="../images/fermer.png" width="16" height="16">'); $returnHTML .= ' <tr align="left" valign="middle"> <td class="botBorderTdall" align="center">' . $row['ID_EXERCICE'] . ' </td> <td class="botBorderTdall" >' . stripslashes($row['EX_LIBELLE']) . ' </td> <td class="botBorderTdall" align="center">' . stripslashes($d1['DFR']) . ' </td> <td class="botBorderTdall" align="center">' . stripslashes($d2['DFR']) . ' </td> <td class="botBorderTdall" align="center">' . $imgCl . '</td> <td class="botBorderTdall" align="center">' . stripslashes($d3['DFR']) . ' </td> <td class="botBorderTdall" align="center">' . stripslashes($nbre) . ' </td> </tr>'; $i++; } } else { if ($ilang == '1' && $ilang != '') { $returnHTML .= '<tr><td colspan="4" class="text">Aucune donnée...</td></tr>'; } if ($ilang == '2' && $ilang != '') { $returnHTML .= '<tr><td colspan="4" class="text">No data...</td></tr>'; } if ($ilang == '3' && $ilang != '') { $returnHTML .= '<tr><td colspan="4" class="text">Nenhum dado...</td></tr>'; } } return $returnHTML; }