You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2009-07-15 17:56:14

curieux
Member
Registered: 2009-04-02
Posts: 103

fonction delete dans le plugin report

bonjour, quand je désinstalle des logiciels j'ai pas un rapport sur les logiciels supprimés.Les rapports est seulement pour l'ajout?

Offline

#2 2009-07-16 11:16:59

yllen
GLPI-DEV
From: Sillery (51)
Registered: 2008-01-14
Posts: 15,278

Re: fonction delete dans le plugin report

Pour les logiciels, effectivement la requête ne trace que les installations.
Mais vous pouvez facilement modifier la requête afin qu'elle trace également les désinstallations.


CentOS 6.5 - CentOS 7.x
PHP 5.6 - PHP 7.x - MySQL 5.6  - MariaDB 10.2 + APC + oOPcache
GLPI from 0.72 to dev version
Certifiée ITIL (ITV2F, ITILF, ITILOSA)

Offline

#3 2009-07-17 13:07:21

curieux
Member
Registered: 2009-04-02
Posts: 103

Re: fonction delete dans le plugin report

bonjour, j'ai ajouté a la requête  sql le champ linked_action et j'ai cette erreur :
"PHP ERROR: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\inc\dbmysql.class.php at line 172"
comment je peu la résoudre?

Offline

#4 2009-07-21 11:10:39

curieux
Member
Registered: 2009-04-02
Posts: 103

Re: fonction delete dans le plugin report

bonjour
j'ai ajouté dans plugin_reports.histohinst.php ces lignes:
$field="";
    if($data["linked_action"]){
        switch ($data["linked_action"])
        {
        case HISTORY_INSTALL_SOFTWARE :
                                $field=getDictDeviceLabel($data["device_internal_type"]);
                                $change = $LANG["devices"][27]."&nbsp;<strong>:</strong>&nbsp;\"".$data[ "new_value"]."\"";   
                               break;               
        case HISTORY_UNINSTALL_SOFTWARE :
                              $field=getDictDeviceLabel($data["device_internal_type"]);
                                $change = $LANG["devices"][28]."&nbsp;<strong>:</strong>&nbsp;\"".$data[ "old_value"]."\"";   
                                break;
        }
    echo $field . "<td>" . $change;

mais j'ai des  erreurs:
PHP ERROR: Cannot modify header information - headers already sent by (output started at C:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\plugins\reports\setup.php:2) in C:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\inc\display.function.php at line 57
PHP ERROR: Cannot modify header information - headers already sent by (output started at C:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\plugins\reports\setup.php:2) in C:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\inc\display.function.php at line 1944
PHP ERROR: Cannot modify header information - headers already sent by (output started at C:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\plugins\reports\setup.php:2) in C:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\inc\display.function.php at line 1945
Il y a quelqu'un qui peut m'aide?

Offline

#5 2009-07-21 11:35:35

yllen
GLPI-DEV
From: Sillery (51)
Registered: 2008-01-14
Posts: 15,278

Re: fonction delete dans le plugin report

Modifier la requête sql

linked_action IN (" . HISTORY_INSTALL_SOFTWARE .
    ", " . HISTORY_UNINSTALL_SOFTWARE . ")" .


CentOS 6.5 - CentOS 7.x
PHP 5.6 - PHP 7.x - MySQL 5.6  - MariaDB 10.2 + APC + oOPcache
GLPI from 0.72 to dev version
Certifiée ITIL (ITV2F, ITILF, ITILOSA)

Offline

#6 2009-07-21 11:41:46

curieux
Member
Registered: 2009-04-02
Posts: 103

Re: fonction delete dans le plugin report

merci mais j'ai  déjà modifier

Offline

#7 2009-07-21 11:54:14

curieux
Member
Registered: 2009-04-02
Posts: 103

Re: fonction delete dans le plugin report

j'ai trouvé la solution:
1.    Mettre le champ : output_buffering=on dans fichier php.ini
2.    Redémarrer apache
Mais l'erreur "mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\inc\dbmysql.class.php at line 172" est toujours présente.
chaque fois que j'ajoute qq chose j'ai cette erreur

Offline

#8 2009-07-21 12:01:36

curieux
Member
Registered: 2009-04-02
Posts: 103

Re: fonction delete dans le plugin report

j'ai un autre erreur :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'a LEFT JOIN glpi_computers ON (a.FK_glpi_device=glpi_computers.ID) WHERE glpi_co' at line 1

Offline

#9 2009-07-21 12:59:27

remi
GLPI-DEV
From: Champagne
Registered: 2007-04-28
Posts: 7,127
Website

Re: fonction delete dans le plugin report

Il faudrait le traceback et la requete complete (sql-errors.log)

+


Dév. Fedora 29 - PHP 5.6/7.0/7.1/7.2/7.3/7.4 - MariaDB 10.3 - GLPI master
Certifié ITILv3 - RPM pour Fedora, RHEL et CentOS sur https://blog.remirepo.net/

Offline

#10 2009-07-21 13:12:07

curieux
Member
Registered: 2009-04-02
Posts: 103

Re: fonction delete dans le plugin report

voila ma page :

$sql = "SELECT a.date_mod AS dat, a.new_value, glpi_computers.ID AS cid, device_internal_type, name, a.user_name, a.old_value, linked_action" . 
    " FROM" .
        " (SELECT date_mod, new_value, old_value, user_name, FK_glpi_device, ID FROM glpi_history" .
        " WHERE glpi_history.date_mod > DATE_SUB(Now(), INTERVAL 21 DAY)".
        " AND linked_action IN(" .HISTORY_INSTALL_SOFTWARE .
        ", " . HISTORY_UNINSTALL_SOFTWARE .
        " AND device_type=" . COMPUTER_TYPE . ")a".
    
    " LEFT JOIN glpi_computers ON (a.FK_glpi_device=glpi_computers.ID)" .
    " WHERE glpi_computers.FK_entities=" . $_SESSION["glpiactive_entity"] .
    " ORDER BY a.ID DESC LIMIT 0,200";
$result = $DB->query($sql);

$prev="";
$class="tab_bg_2";
while ($data = $DB->fetch_array($result)) {
    if ($prev == $data["dat"].$data["name"]) {
        echo "<br />";
    }
    else {
        if (!empty($prev)) echo "</td></tr>\n";
        
        $prev = $data["dat"].$data["name"];
        echo "<tr class='" . $class . "' valign='top'><td>". convDateTime($data["dat"]) . "</td>" .
            "<td>". $data["user_name"] . "&nbsp;</td>".
            "<td><a href='". $_SESSION["glpiroot"] . "/" . $INFOFORM_PAGES[COMPUTER_TYPE] . 
            "?ID=" . $data["cid"] . "'>" . $data["name"] . "</a></td>".
            "<td>";    
        $class=($class=="tab_bg_2" ? "tab_bg_1" : "tab_bg_2");
    }
    $field="";
    if($data["linked_action"]){
    // Yes it is an internal device
        switch ($data["linked_action"])
        {
        case HISTORY_INSTALL_SOFTWARE :
         
                             $field=getDictDeviceLabel($data["device_internal_type"]);
                              $change = $LANG["devices"][27]."&nbsp;<strong>:</strong>&nbsp;\"".$data[ "new_value"]."\"";    
                              break;               
        case HISTORY_UNINSTALL_SOFTWARE :
        $field=$lang["software"][10];
          
                              $field=getDictDeviceLabel($data["device_internal_type"]);
                             $change = $LANG["devices"][28]."&nbsp;<strong>:</strong>&nbsp;\"".$data[ "old_value"]."\"";    
                             break;
        }
    echo $field . "<td>" . $change;

Offline

#11 2009-07-21 13:16:52

remi
GLPI-DEV
From: Champagne
Registered: 2007-04-28
Posts: 7,127
Website

Re: fonction delete dans le plugin report

Ajout des balises "code" pour plus de lisibilité.

C'est le traceback qui m'intéresse avec la requete complète générée, pas le code

Mais enfin, visiblement la parenthèse du IN n'est pas fermée au bon endroit (après HISTORY_UNINSTALL_SOFTWARE)

+


Dév. Fedora 29 - PHP 5.6/7.0/7.1/7.2/7.3/7.4 - MariaDB 10.3 - GLPI master
Certifié ITILv3 - RPM pour Fedora, RHEL et CentOS sur https://blog.remirepo.net/

Offline

#12 2009-07-21 15:00:07

curieux
Member
Registered: 2009-04-02
Posts: 103

Re: fonction delete dans le plugin report

merci j'ai corrigé l'erreur du parenthèses et j'ai cette erreur :
Fatal error: Call to undefined function getDictDeviceLabel() in C:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\plugins\reports\report\plugin_reports.histoinst.php

Offline

#13 2009-07-21 16:03:35

curieux
Member
Registered: 2009-04-02
Posts: 103

Re: fonction delete dans le plugin report

c'est juste cette fonction?ou on peut l'utilise que pour plugin_histohard?

Offline

#14 2009-07-21 17:08:41

yllen
GLPI-DEV
From: Sillery (51)
Registered: 2008-01-14
Posts: 15,278

Re: fonction delete dans le plugin report

Vous utilisez une fonction sur les devices mais vous ne le déclarez pas dans le $NEEDED_ITEMS


CentOS 6.5 - CentOS 7.x
PHP 5.6 - PHP 7.x - MySQL 5.6  - MariaDB 10.2 + APC + oOPcache
GLPI from 0.72 to dev version
Certifiée ITIL (ITV2F, ITILF, ITILOSA)

Offline

#15 2009-07-21 17:10:26

curieux
Member
Registered: 2009-04-02
Posts: 103

Re: fonction delete dans le plugin report

vous pouvez fermé c'est résolu et merci

Offline

Board footer

Powered by FluxBB