diff --git a/htdocs/admin/prelevement.php b/htdocs/admin/prelevement.php index 85b5ee9b08e..89ff251f65e 100644 --- a/htdocs/admin/prelevement.php +++ b/htdocs/admin/prelevement.php @@ -40,11 +40,9 @@ $action = GETPOST("action"); if ($action == "set") { - $db->begin(); for ($i = 0 ; $i < 2 ; $i++) { $res = dolibarr_set_const($db, $_POST["nom$i"], $_POST["value$i"],'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; } $id=$_POST["PRELEVEMENT_ID_BANKACCOUNT"]; @@ -53,32 +51,23 @@ if ($action == "set") if($account->fetch($id)>0) { $res = dolibarr_set_const($db, "PRELEVEMENT_ID_BANKACCOUNT", $id,'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_CODE_BANQUE", $account->code_banque,'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_CODE_GUICHET", $account->code_guichet,'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_NUMERO_COMPTE", $account->number,'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_NUMBER_KEY", $account->cle_rib,'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_IBAN", $account->iban,'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_BIC", $account->bic,'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_RAISON_SOCIALE", $account->proprio,'chaine',0,'',$conf->entity); - if (! $res > 0) $error++; } - else $error++; + if (! $res > 0) $error++; + if (! $error) { - $db->commit(); $mesg = "".$langs->trans("SetupSaved").""; } else { - $db->rollback(); $mesg = "".$langs->trans("Error").""; } } diff --git a/htdocs/lib/databases/mssql.lib.php b/htdocs/lib/databases/mssql.lib.php index 7b8cc68f989..4f6a512cb35 100644 --- a/htdocs/lib/databases/mssql.lib.php +++ b/htdocs/lib/databases/mssql.lib.php @@ -72,18 +72,16 @@ class DoliDb var $error; - /** - * Constructor. - * This create an opened connexion to a database server and eventually to a database - * - * @param string $type Type of database (mysql, pgsql...) - * @param string $host Address of database server - * @param string $user Nom de l'utilisateur autorise - * @param string $pass Mot de passe - * @param string $name Nom de la database - * @param int $port Port of database server - * @return int 1 if OK, 0 if not - */ + /** + * Ouverture d'une connexion vers le serveur et eventuellement une database. + * @param type Type de base de donnees (mysql ou pgsql) + * @param host Addresse de la base de donnees + * @param user Nom de l'utilisateur autorise + * @param pass Mot de passe + * @param name Nom de la database + * @param port Port of database server + * @return int 1 en cas de succes, 0 sinon + */ function DoliDb($type='mssql', $host, $user, $pass, $name='', $port=0) { global $conf,$langs; @@ -155,11 +153,10 @@ class DoliDb } /** - * Convert a SQL request in Mysql syntax to native syntax - * - * @param string $line SQL request line to convert - * @param string $type Type of SQL order ('ddl' for insert, update, select, delete or 'dml' for create, alter...) - * @return string SQL request line converted + * Convert a SQL request in Mysql syntax to PostgreSQL syntax + * @param line SQL request line to convert + * @param type Type of SQL order ('ddl' for insert, update, select, delete or 'dml' for create, alter...) + * @return string SQL request line converted */ function convertSQLFromMysql($line,$type='ddl') { @@ -167,10 +164,9 @@ class DoliDb } /** - * Select a database - * - * @param string $database Name of database - * @return boolean true if OK, false if KO + * Selectionne une database. + * @param database Nom de la database + * @return boolean true si ok, false si ko */ function select_db($database) { @@ -178,15 +174,14 @@ class DoliDb } /** - * Connexion to server - * - * @param string $host database server host - * @param string $login login - * @param string $passwd password - * @param string $name name of database (not used for mysql, used for pgsql) - * @param string $port Port of database server - * @return resource Database access handler - * @see close + * Connection vers le serveur + * @param host addresse de la base de donnees + * @param login nom de l'utilisateur autoris + * @param passwd mot de passe + * @param name nom de la database (ne sert pas sous mysql, sert sous pgsql) + * @param port Port of database server + * @return resource handler d'acces a la base + * @see close */ function connect($host, $login, $passwd, $name, $port=0) { @@ -203,9 +198,8 @@ class DoliDb } /** - * Return label of manager - * - * @return string Label + * \brief Return label of manager + * \return string Label */ function getLabel() { @@ -213,9 +207,8 @@ class DoliDb } /** - * Return version of database server - * - * @return string Version string + * \brief Renvoie la version du serveur + * \return string Chaine version */ function getVersion() { @@ -226,9 +219,8 @@ class DoliDb /** - * Return version of database server into an array - * - * @return array Version array + * \brief Renvoie la version du serveur dans un tableau + * \return array Tableau de chaque niveau de version */ function getVersionArray() { @@ -238,7 +230,6 @@ class DoliDb /** * Close database connexion - * * @return boolean True if disconnect successfull, false otherwise * @see connect */ @@ -255,9 +246,8 @@ class DoliDb /** - * Start transaction - * - * @return int 1 if transaction successfuly opened or already opened, 0 if error + * \brief Debut d'une transaction. + * \return int 1 si ouverture transaction ok ou deja ouverte, 0 en cas d'erreur */ function begin() { @@ -280,11 +270,10 @@ class DoliDb /** * Validate a database transaction - * - * @param $log Add more log to default log line + * @param log Add more log to default log line * @return int 1 if validation is OK or transaction level no started, 0 if ERROR */ - function commit($log='') + function commit() { if ($this->transaction_opened <= 1) { @@ -304,9 +293,8 @@ class DoliDb } /** - * Annulation d'une transaction et retour aux anciennes valeurs - * - * @return int 1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur + * \brief Annulation d'une transaction et retour aux anciennes valeurs + * \return int 1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur */ function rollback() { @@ -326,7 +314,6 @@ class DoliDb /** * Execute a SQL request and return the resultset - * * @param query SQL query string * @param usesavepoint 0=Default mode, 1=Run a savepoint before and a rollbock to savepoint if error (this allow to have some request with errors inside global transactions). * Note that with Mysql, this parameter is not used as Myssql can already commit a transaction even if one request is in error, without using savepoints. @@ -417,10 +404,9 @@ class DoliDb } /** - * Renvoie la ligne courante (comme un objet) pour le curseur resultset - * - * @param resultset Curseur de la requete voulue - * @return object Object result line or false if KO or end of cursor + * \brief Renvoie la ligne courante (comme un objet) pour le curseur resultset. + * \param resultset Curseur de la requete voulue + * \return object Object result line or false if KO or end of cursor */ function fetch_object($resultset) { @@ -430,10 +416,9 @@ class DoliDb } /** - * Renvoie les donnees dans un tableau - * - * @param resultset Curseur de la requete voulue - * @return array + * \brief Renvoie les donnees dans un tableau. + * \param resultset Curseur de la requete voulue + * \return array */ function fetch_array($resultset) { diff --git a/htdocs/lib/databases/mysql.lib.php b/htdocs/lib/databases/mysql.lib.php index 3afd7d21782..1b159d03ee5 100644 --- a/htdocs/lib/databases/mysql.lib.php +++ b/htdocs/lib/databases/mysql.lib.php @@ -72,16 +72,14 @@ class DoliDb /** - * Constructor. - * This create an opened connexion to a database server and eventually to a database - * - * @param string $type Type of database (mysql, pgsql...) - * @param string $host Address of database server - * @param string $user Nom de l'utilisateur autorise - * @param string $pass Mot de passe - * @param string $name Nom de la database - * @param int $port Port of database server - * @return int 1 if OK, 0 if not + * Ouverture d'une connexion vers le serveur et eventuellement une database. + * @param type Type de base de donnees (mysql ou pgsql) + * @param host Addresse de la base de donnees + * @param user Nom de l'utilisateur autorise + * @param pass Mot de passe + * @param name Nom de la database + * @param port Port of database server + * @return int 1 en cas de succes, 0 sinon */ function DoliDb($type='mysql', $host, $user, $pass, $name='', $port=0) { @@ -182,11 +180,10 @@ class DoliDb /** - * Convert a SQL request in Mysql syntax to native syntax - * - * @param string $line SQL request line to convert - * @param string $type Type of SQL order ('ddl' for insert, update, select, delete or 'dml' for create, alter...) - * @return string SQL request line converted + * Convert a SQL request in Mysql syntax to PostgreSQL syntax + * @param line SQL request line to convert + * @param type Type of SQL order ('ddl' for insert, update, select, delete or 'dml' for create, alter...) + * @return string SQL request line converted */ function convertSQLFromMysql($line,$type='ddl') { @@ -194,10 +191,9 @@ class DoliDb } /** - * Select a database - * - * @param string $database Name of database - * @return boolean true if OK, false if KO + * \brief Selectionne une database. + * \param database Nom de la database + * \return boolean true si ok, false si ko */ function select_db($database) { @@ -206,15 +202,14 @@ class DoliDb } /** - * Connexion to server - * - * @param string $host database server host - * @param string $login login - * @param string $passwd password - * @param string $name name of database (not used for mysql, used for pgsql) - * @param string $port Port of database server - * @return resource Database access handler - * @see close + * \brief Connexion to server + * \param host database server host + * \param login login + * \param passwd password + * \param name nom de la database (ne sert pas sous mysql, sert sous pgsql) + * \param port Port of database server + * \return resource Database access handler + * \seealso close */ function connect($host, $login, $passwd, $name, $port=0) { @@ -232,9 +227,8 @@ class DoliDb } /** - * Return label of manager - * - * @return string Label + * \brief Return label of manager + * \return string Label */ function getLabel() { @@ -242,9 +236,8 @@ class DoliDb } /** - * Return version of database server - * - * @return string Version string + * \brief Renvoie la version du serveur + * \return string Chaine version */ function getVersion() { @@ -252,9 +245,26 @@ class DoliDb } /** - * Return version of database server into an array - * - * @return array Version array + * \brief Renvoie la version du serveur sous forme de nombre + * \return string Chaine version + */ + function getIntVersion() + { + $version= $this->getVersion(); + $vlist=preg_split('/[.-]/',$version); + if (dol_strlen($vlist[1])==1){ + $vlist[1]="0".$vlist[1]; + } + if (dol_strlen($vlist[2])==1){ + $vlist[2]="0".$vlist[2]; + } + return $vlist[0].$vlist[1].$vlist[2]; + } + + + /** + * \brief Renvoie la version du serveur dans un tableau + * \return array Tableau de chaque niveau de version */ function getVersionArray() { @@ -264,7 +274,6 @@ class DoliDb /** * Close database connexion - * * @return boolean True if disconnect successfull, false otherwise * @see connect */ @@ -281,9 +290,8 @@ class DoliDb /** - * Start transaction - * - * @return int 1 if transaction successfuly opened or already opened, 0 if error + * \brief Debut d'une transaction. + * \return int 1 si ouverture transaction ok ou deja ouverte, 0 en cas d'erreur */ function begin() { @@ -306,8 +314,7 @@ class DoliDb /** * Validate a database transaction - * - * @param $log Add more log to default log line + * @param log Add more log to default log line * @return int 1 if validation is OK or transaction level no started, 0 if ERROR */ function commit($log='') @@ -330,10 +337,9 @@ class DoliDb } /** - * Annulation d'une transaction et retour aux anciennes valeurs - * - * @param $log Add more log to default log line - * @return int 1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur + * \brief Annulation d'une transaction et retour aux anciennes valeurs + * \param log Add more log to default log line + * \return int 1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur */ function rollback($log='') { @@ -353,7 +359,6 @@ class DoliDb /** * Execute a SQL request and return the resultset - * * @param query SQL query string * @param usesavepoint 0=Default mode, 1=Run a savepoint before and a rollbock to savepoint if error (this allow to have some request with errors inside global transactions). * Note that with Mysql, this parameter is not used as Myssql can already commit a transaction even if one request is in error, without using savepoints. @@ -393,10 +398,9 @@ class DoliDb } /** - * Renvoie la ligne courante (comme un objet) pour le curseur resultset - * - * @param resultset Curseur de la requete voulue - * @return object Object result line or false if KO or end of cursor + * \brief Renvoie la ligne courante (comme un objet) pour le curseur resultset. + * \param resultset Curseur de la requete voulue + * \return object Object result line or false if KO or end of cursor */ function fetch_object($resultset) { @@ -406,10 +410,9 @@ class DoliDb } /** - * Renvoie les donnees dans un tableau - * - * @param resultset Curseur de la requete voulue - * @return array + * \brief Renvoie les donnees dans un tableau. + * \param resultset Curseur de la requete voulue + * \return array */ function fetch_array($resultset) { @@ -420,10 +423,9 @@ class DoliDb /** - * Renvoie les donnees comme un tableau - * - * @param resultset Curseur de la requete voulue - * @return array + * \brief Renvoie les donnees comme un tableau. + * \param resultset Curseur de la requete voulue + * \return array */ function fetch_row($resultset) { @@ -433,11 +435,10 @@ class DoliDb } /** - * Renvoie le nombre de lignes dans le resultat d'une requete SELECT - * - * @see affected_rows - * @param resultset Curseur de la requete voulue - * @return int Nombre de lignes + * \brief Renvoie le nombre de lignes dans le resultat d'une requete SELECT + * \see affected_rows + * \param resultset Curseur de la requete voulue + * \return int Nombre de lignes */ function num_rows($resultset) { @@ -447,11 +448,10 @@ class DoliDb } /** - * Renvoie le nombre de lignes dans le resultat d'une requete INSERT, DELETE ou UPDATE - * - * @see num_rows - * @param resultset Curseur de la requete voulue - * @return int Nombre de lignes + * \brief Renvoie le nombre de lignes dans le resultat d'une requete INSERT, DELETE ou UPDATE + * \see num_rows + * \param resultset Curseur de la requete voulue + * \return int Nombre de lignes */ function affected_rows($resultset) { @@ -464,9 +464,8 @@ class DoliDb /** - * Libere le dernier resultset utilise sur cette connexion. - * - * @param resultset Curseur de la requete voulue + * \brief Libere le dernier resultset utilise sur cette connexion. + * \param resultset Curseur de la requete voulue */ function free($resultset=0) { @@ -478,11 +477,10 @@ class DoliDb /** - * Defini les limites de la requete - * - * @param limit nombre maximum de lignes retournees - * @param offset numero de la ligne a partir de laquelle recuperer les ligne - * @return string chaine exprimant la syntax sql de la limite + * \brief Defini les limites de la requete. + * \param limit nombre maximum de lignes retournees + * \param offset numero de la ligne a partir de laquelle recuperer les ligne + * \return string chaine exprimant la syntax sql de la limite */ function plimit($limit=0,$offset=0) { @@ -495,7 +493,6 @@ class DoliDb /** * Define sort criteria of request - * * @param sortfield List of sort fields * @param sortorder Sort order * @return string String to provide syntax of a sort sql string @@ -525,8 +522,7 @@ class DoliDb /** - * Escape a string to insert data - * + * Escape a string to insert data. * @param stringtoencode String to escape * @return string String escaped */ @@ -539,7 +535,6 @@ class DoliDb /** * Convert (by PHP) a GM Timestamp date into a string date with PHP server TZ to insert into a date field. * Function to use to build INSERT, UPDATE or WHERE predica - * * @param param Date TMS to convert * @return string Date in a string YYYYMMDDHHMMSS */ @@ -551,7 +546,6 @@ class DoliDb /** * Convert (by PHP) a PHP server TZ string date into a GM Timestamps date * 19700101020000 -> 3600 with TZ+1 - * * @param string Date in a string (YYYYMMDDHHMMSS, YYYYMMDD, YYYY-MM-DD HH:MM:SS) * @return date Date TMS */ @@ -565,7 +559,6 @@ class DoliDb /** * Formate a SQL IF - * * @param test chaine test * @param resok resultat si test egal * @param resko resultat si test non egal diff --git a/htdocs/lib/databases/mysqli.lib.php b/htdocs/lib/databases/mysqli.lib.php index 8af16e47efe..fb33ea71c77 100644 --- a/htdocs/lib/databases/mysqli.lib.php +++ b/htdocs/lib/databases/mysqli.lib.php @@ -73,16 +73,14 @@ class DoliDb /** - * Constructor. - * This create an opened connexion to a database server and eventually to a database - * - * @param string $type Type of database (mysql, pgsql...) - * @param string $host Address of database server - * @param string $user Nom de l'utilisateur autorise - * @param string $pass Mot de passe - * @param string $name Nom de la database - * @param int $port Port of database server - * @return int 1 if OK, 0 if not + * Ouverture d'une connexion vers le serveur et eventuellement une database. + * @param type Type de base de donnees (mysql ou pgsql) + * @param host Addresse de la base de donnees + * @param user Nom de l'utilisateur autorise + * @param pass Mot de passe + * @param name Nom de la database + * @param port Port of database server + * @return int 1 en cas de succes, 0 sinon */ function DoliDb($type='mysqli', $host, $user, $pass, $name='', $port=0) { @@ -185,23 +183,21 @@ class DoliDb /** - * Convert a SQL request in Mysql syntax to native syntax - * - * @param string $line SQL request line to convert - * @param string $type Type of SQL order ('ddl' for insert, update, select, delete or 'dml' for create, alter...) - * @return string SQL request line converted + * Convert a SQL request in Mysql syntax to PostgreSQL syntax + * @param line SQL request line to convert + * @param type Type of SQL order ('ddl' for insert, update, select, delete or 'dml' for create, alter...) + * @return string SQL request line converted */ function convertSQLFromMysql($line,$type='ddl') { return $line; } - /** - * Select a database - * - * @param string $database Name of database - * @return boolean true if OK, false if KO - */ + /** + * \brief Selectionne une database. + * \param database Nom de la database + * \return boolean true si ok, false si ko + */ function select_db($database) { dol_syslog("DoliDB::select_db database=".$database, LOG_DEBUG); @@ -210,15 +206,14 @@ class DoliDb /** - * Connexion to server - * - * @param string $host database server host - * @param string $login login - * @param string $passwd password - * @param string $name name of database (not used for mysql, used for pgsql) - * @param string $port Port of database server - * @return resource Database access handler - * @see close + * \brief Connexion to server + * \param host database server host + * \param login login + * \param passwd password + * \param name nom de la database (ne sert pas sous mysql, sert sous pgsql) + * \param port Port of database server + * \return resource Database access handler + * \seealso close */ function connect($host, $login, $passwd, $name, $port=0) { @@ -237,9 +232,8 @@ class DoliDb } /** - * Return label of manager - * - * @return string Label + * \brief Return label of manager + * \return string Label */ function getLabel() { @@ -247,9 +241,8 @@ class DoliDb } /** - * Return version of database server - * - * @return string Version string + * \brief Renvoie la version du serveur + * \return string Chaine version */ function getVersion() { @@ -259,11 +252,27 @@ class DoliDb return mysqli_get_server_info($this->db); } - /** - * Return version of database server into an array - * - * @return array Version array - */ + /** + * \brief Renvoie la version du serveur sous forme de nombre + * \return string Chaine version + */ + function getIntVersion() + { + $version= $this->getVersion(); + $vlist=preg_split('/[.-]/',$version); + if (dol_strlen($vlist[1])==1){ + $vlist[1]="0".$vlist[1]; + } + if (dol_strlen($vlist[2])==1){ + $vlist[2]="0".$vlist[2]; + } + return $vlist[0].$vlist[1].$vlist[2]; + } + + /** + * \brief Renvoie la version du serveur dans un tableau + * \return array Tableau de chaque niveau de version + */ function getVersionArray() { return explode('.',$this->getVersion()); @@ -271,10 +280,9 @@ class DoliDb /** - * Close database connexion - * - * @return boolean True if disconnect successfull, false otherwise - * @see connect + * Close database connexion + * @return boolean True if disconnect successfull, false otherwise + * @see connect */ function close() { @@ -289,9 +297,8 @@ class DoliDb /** - * Start transaction - * - * @return int 1 if transaction successfuly opened or already opened, 0 if error + * \brief Debut d'une transaction. + * \return int 1 si ouverture transaction ok ou deja ouverte, 0 en cas d'erreur */ function begin() { @@ -314,8 +321,7 @@ class DoliDb /** * Validate a database transaction - * - * @param $log Add more log to default log line + * @param log Add more log to default log line * @return int 1 if validation is OK or transaction level no started, 0 if ERROR */ function commit($log='') @@ -338,10 +344,9 @@ class DoliDb } /** - * Annulation d'une transaction et retour aux anciennes valeurs - * - * @param $log Add more log to default log line - * @return int 1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur + * \brief Annulation d'une transaction et retour aux anciennes valeurs + * \param log Add more log to default log line + * \return int 1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur */ function rollback($log='') { @@ -361,7 +366,6 @@ class DoliDb /** * Execute a SQL request and return the resultset - * * @param query SQL query string * @param usesavepoint 0=Default mode, 1=Run a savepoint before and a rollbock to savepoint if error (this allow to have some request with errors inside global transactions). * Note that with Mysql, this parameter is not used as Myssql can already commit a transaction even if one request is in error, without using savepoints. @@ -399,10 +403,9 @@ class DoliDb } /** - * Renvoie la ligne courante (comme un objet) pour le curseur resultset - * - * @param resultset Curseur de la requete voulue - * @return object Object result line or false if KO or end of cursor + * \brief Renvoie la ligne courante (comme un objet) pour le curseur resultset. + * \param resultset Curseur de la requete voulue + * \return object Object result line or false if KO or end of cursor */ function fetch_object($resultset) { @@ -413,10 +416,9 @@ class DoliDb /** - * Renvoie les donnees dans un tableau - * - * @param resultset Curseur de la requete voulue - * @return array + * \brief Renvoie les donnees dans un tableau. + * \param resultset Curseur de la requete voulue + * \return array */ function fetch_array($resultset) { @@ -426,10 +428,9 @@ class DoliDb } /** - * Renvoie les donnees comme un tableau - * - * @param resultset Curseur de la requete voulue - * @return array + * \brief Renvoie les donnees comme un tableau. + * \param resultset Curseur de la requete voulue + * \return array */ function fetch_row($resultset) { @@ -447,11 +448,10 @@ class DoliDb } /** - * Renvoie le nombre de lignes dans le resultat d'une requete SELECT - * - * @see affected_rows - * @param resultset Curseur de la requete voulue - * @return int Nombre de lignes + * \brief Renvoie le nombre de lignes dans le resultat d'une requete SELECT + * \see affected_rows + * \param resultset Curseur de la requete voulue + * \return int Nombre de lignes */ function num_rows($resultset) { @@ -461,10 +461,10 @@ class DoliDb } /** - * Renvoie le nombre de lignes dans le resultat d'une requete INSERT, DELETE ou UPDATE - * @see num_rows - * @param resultset Curseur de la requete voulue - * @return int Nombre de lignes + * \brief Renvoie le nombre de lignes dans le resultat d'une requete INSERT, DELETE ou UPDATE + * \see num_rows + * \param resultset Curseur de la requete voulue + * \return int Nombre de lignes */ function affected_rows($resultset) @@ -478,9 +478,8 @@ class DoliDb /** - * Libere le dernier resultset utilise sur cette connexion - * - * @param resultset Curseur de la requete voulue + * \brief Libere le dernier resultset utilise sur cette connexion. + * \param resultset Curseur de la requete voulue */ function free($resultset=0) { @@ -492,11 +491,10 @@ class DoliDb /** - * Defini les limites de la requete - * - * @param limit nombre maximum de lignes retournees - * @param offset numero de la ligne a partir de laquelle recuperer les ligne - * @return string chaine exprimant la syntax sql de la limite + * \brief Defini les limites de la requete. + * \param limit nombre maximum de lignes retournees + * \param offset numero de la ligne a partir de laquelle recuperer les ligne + * \return string chaine exprimant la syntax sql de la limite */ function plimit($limit=0,$offset=0) { @@ -509,7 +507,6 @@ class DoliDb /** * Define sort criteria of request - * * @param sortfield List of sort fields * @param sortorder Sort order * @return string String to provide syntax of a sort sql string @@ -539,8 +536,7 @@ class DoliDb /** - * Escape a string to insert data - * + * Escape a string to insert data. * @param stringtoencode String to escape * @return string String escaped */ @@ -552,7 +548,6 @@ class DoliDb /** * Convert (by PHP) a GM Timestamp date into a PHP server TZ to insert into a date field. * Function to use to build INSERT, UPDATE or WHERE predica - * * @param param Date TMS to convert * @return string Date in a string YYYYMMDDHHMMSS */ @@ -564,7 +559,6 @@ class DoliDb /** * Convert (by PHP) a PHP server TZ string date into a GM Timestamps date * 19700101020000 -> 3600 with TZ+1 - * * @param string Date in a string (YYYYMMDDHHMMSS, YYYYMMDD, YYYY-MM-DD HH:MM:SS) * @return date Date TMS */ @@ -578,7 +572,6 @@ class DoliDb /** * Formate a SQL IF - * * @param test chaine test * @param resok resultat si test egal * @param resko resultat si test non egal diff --git a/htdocs/lib/databases/pgsql.lib.php b/htdocs/lib/databases/pgsql.lib.php index 98723a7f989..f0f2a0b4268 100644 --- a/htdocs/lib/databases/pgsql.lib.php +++ b/htdocs/lib/databases/pgsql.lib.php @@ -62,16 +62,14 @@ class DoliDb /** - * Constructor. - * This create an opened connexion to a database server and eventually to a database - * - * @param string $type Type of database (mysql, pgsql...) - * @param string $host Address of database server - * @param string $user Nom de l'utilisateur autorise - * @param string $pass Mot de passe - * @param string $name Nom de la database - * @param int $port Port of database server - * @return int 1 if OK, 0 if not + * \brief Ouverture d'une connexion vers le serveur et une database. + * \param type type de base de donnees (mysql ou pgsql) + * \param host addresse de la base de donnees + * \param user nom de l'utilisateur autorise + * \param pass mot de passe + * \param name nom de la database + * \param port Port of database server + * \return int 1 en cas de succes, 0 sinon */ function DoliDb($type='pgsql', $host, $user, $pass, $name='', $port=0) { @@ -148,13 +146,12 @@ class DoliDb } - /** - * Convert a SQL request in Mysql syntax to native syntax - * - * @param string $line SQL request line to convert - * @param string $type Type of SQL order ('ddl' for insert, update, select, delete or 'dml' for create, alter...) - * @return string SQL request line converted - */ + /** + * Convert a SQL request in Mysql syntax to PostgreSQL syntax + * @param line SQL request line to convert + * @param type Type of SQL order ('ddl' for insert, update, select, delete or 'dml' for create, alter...) + * @return string SQL request line converted + */ function convertSQLFromMysql($line,$type='auto') { # Removed empty line if this is a comment line for SVN tagging @@ -324,12 +321,11 @@ class DoliDb } /** - * Select a database - * Ici postgresql n'a aucune fonction equivalente de mysql_select_db - * On compare juste manuellement si la database choisie est bien celle activee par la connexion - * - * @param string $database Name of database - * @return boolean true if OK, false if KO + * Select a database. + * Ici postgresql n'a aucune fonction equivalente de mysql_select_db + * On compare juste manuellement si la database choisie est bien celle activee par la connexion + * @param database nom de la database + * @return boolean true si ok, false si ko */ function select_db($database) { @@ -338,15 +334,13 @@ class DoliDb } /** - * Connexion to server - * - * @param string $host database server host - * @param string $login login - * @param string $passwd password - * @param string $name name of database (not used for mysql, used for pgsql) - * @param string $port Port of database server - * @return resource Database access handler - * @see close + * Connection vers le serveur + * @param host addresse de la base de donnees + * @param login nom de l'utilisateur autorise + * @param passwd mot de passe + * @param name nom de la database (ne sert pas sous mysql, sert sous pgsql) + * @param port Port of database server + * @return resource handler d'acces a la base */ function connect($host, $login, $passwd, $name, $port=0) { @@ -370,9 +364,8 @@ class DoliDb } /** - * Return label of manager - * - * @return string Label + * \brief Return label of manager + * \return string Label */ function getLabel() { @@ -380,9 +373,8 @@ class DoliDb } /** - * Return version of database server - * - * @return string Version string + * \brief Return version of server + * \return string String with version */ function getVersion() { @@ -396,9 +388,25 @@ class DoliDb } /** - * Return version of database server into an array - * - * @return array Version array + * \brief Renvoie la version du serveur sous forme de nombre + * \return string Chaine version + */ + function getIntVersion() + { + $version = $this->getVersion(); + $vlist = preg_split('/[.-]/',$version); + if (dol_strlen($vlist[1])==1){ + $vlist[1]="0".$vlist[1]; + } + if (dol_strlen($vlist[2])==1){ + $vlist[2]="0".$vlist[2]; + } + return $vlist[0].$vlist[1].$vlist[2]; + } + + /** + * \brief Renvoie la version du serveur dans un tableau + * \return array Tableau de chaque niveau de version */ function getVersionArray() { @@ -407,7 +415,6 @@ class DoliDb /** * Close database connexion - * * @return boolean True if disconnect successfull, false otherwise * @see connect */ @@ -423,9 +430,8 @@ class DoliDb } /** - * Start transaction - * - * @return int 1 if transaction successfuly opened or already opened, 0 if error + * \brief Debut d'une transaction. + * \return int 1 si ouverture transaction ok ou deja ouverte, 0 en cas d'erreur */ function begin() { @@ -448,7 +454,6 @@ class DoliDb /** * Validate a database transaction - * * @param log Add more log to default log line * @return int 1 if validation is OK or transaction level no started, 0 if ERROR */ @@ -472,8 +477,8 @@ class DoliDb } /** - * Annulation d'une transaction et retour aux anciennes valeurs - * @return int 1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur + * \brief Annulation d'une transaction et retour aux anciennes valeurs + * \return int 1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur */ function rollback() { @@ -493,8 +498,7 @@ class DoliDb /** - * Convert request to PostgreSQL syntax, execute it and return the resultset - * + * Convert request to PostgreSQL syntax, execute it and return the resultset. * @param query SQL query string * @param usesavepoint 0=Default mode, 1=Run a savepoint before and a rollback to savepoint if error (this allow to have some request with errors inside global transactions). * @param type Type of SQL order ('ddl' for insert, update, select, delete or 'dml' for create, alter...) @@ -551,10 +555,9 @@ class DoliDb } /** - * Renvoie la ligne courante (comme un objet) pour le curseur resultset - * - * @param resultset Curseur de la requete voulue - * @return object Object result line or false if KO or end of cursor + * \brief Renvoie la ligne courante (comme un objet) pour le curseur resultset. + * \param resultset Curseur de la requete voulue + * \return object Object result line or false if KO or end of cursor */ function fetch_object($resultset) { @@ -564,10 +567,9 @@ class DoliDb } /** - * Renvoie les donnees dans un tableau - * - * @param resultset Curseur de la requete voulue - * @return array + * \brief Renvoie les donnees dans un tableau. + * \param resultset Curseur de la requete voulue + * \return array */ function fetch_array($resultset) { @@ -577,10 +579,9 @@ class DoliDb } /** - * Renvoie les donnees comme un tableau - * - * @param resultset Curseur de la requete voulue - * @return array + * \brief Renvoie les donnees comme un tableau. + * \param resultset Curseur de la requete voulue + * \return array */ function fetch_row($resultset) { @@ -590,11 +591,10 @@ class DoliDb } /** - * Renvoie le nombre de lignes dans le resultat d'une requete SELECT - * - * @see affected_rows - * @param resultset Curseur de la requete voulue - * @return int Nombre de lignes + * \brief Renvoie le nombre de lignes dans le resultat d'une requete SELECT + * \see affected_rows + * \param resultset Curseur de la requete voulue + * \return int Nombre de lignes */ function num_rows($resultset) { @@ -604,11 +604,10 @@ class DoliDb } /** - * Renvoie le nombre de lignes dans le resultat d'une requete INSERT, DELETE ou UPDATE - * - * @see num_rows - * @param resultset Curseur de la requete voulue - * @return int Nombre de lignes + * \brief Renvoie le nombre de lignes dans le resultat d'une requete INSERT, DELETE ou UPDATE + * \see num_rows + * \param resultset Curseur de la requete voulue + * \return int Nombre de lignes */ function affected_rows($resultset) { @@ -621,9 +620,8 @@ class DoliDb /** - * Libere le dernier resultset utilise sur cette connexion - * - * @param resultset Curseur de la requete voulue + * \brief Libere le dernier resultset utilise sur cette connexion. + * \param resultset Curseur de la requete voulue */ function free($resultset=0) { @@ -635,11 +633,10 @@ class DoliDb /** - * Defini les limites de la requete - * - * @param limit nombre maximum de lignes retournees - * @param offset numero de la ligne a partir de laquelle recuperer les lignes - * @return string chaine exprimant la syntax sql de la limite + * \brief Defini les limites de la requete. + * \param limit nombre maximum de lignes retournees + * \param offset numero de la ligne a partir de laquelle recuperer les lignes + * \return string chaine exprimant la syntax sql de la limite */ function plimit($limit=0,$offset=0) { @@ -652,7 +649,6 @@ class DoliDb /** * Define sort criteria of request - * * @param sortfield List of sort fields * @param sortorder Sort order * @return string String to provide syntax of a sort sql string @@ -682,8 +678,7 @@ class DoliDb /** - * Escape a string to insert data - * + * Escape a string to insert data. * @param stringtoencode String to escape * @return string String escaped */ @@ -695,7 +690,6 @@ class DoliDb /** * Convert (by PHP) a GM Timestamp date into a GM string date to insert into a date field. * Function to use to build INSERT, UPDATE or WHERE predica - * * @param param Date TMS to convert * @return string Date in a string YYYYMMDDHHMMSS */ @@ -707,7 +701,6 @@ class DoliDb /** * Convert (by PHP) a PHP server TZ string date into a GM Timestamps date * 19700101020000 -> 3600 with TZ+1 - * * @param string Date in a string (YYYYMMDDHHMMSS, YYYYMMDD, YYYY-MM-DD HH:MM:SS) * @return date Date TMS */ @@ -721,7 +714,6 @@ class DoliDb /** * Formate a SQL IF - * * @param test chaine test * @param resok resultat si test egal * @param resko resultat si test non egal @@ -734,9 +726,8 @@ class DoliDb /** - * Renvoie la derniere requete soumise par la methode query() - * - * @return lastquery + * \brief Renvoie la derniere requete soumise par la methode query() + * \return lastquery */ function lastquery() { @@ -744,9 +735,8 @@ class DoliDb } /** - * Renvoie la derniere requete en erreur - * - * @return string lastqueryerror + * \brief Renvoie la derniere requete en erreur + * \return string lastqueryerror */ function lastqueryerror() { @@ -754,9 +744,8 @@ class DoliDb } /** - * Renvoie le libelle derniere erreur - * - * @return string lasterror + * \brief Renvoie le libelle derniere erreur + * \return string lasterror */ function lasterror() { @@ -764,9 +753,8 @@ class DoliDb } /** - * Renvoie le code derniere erreur - * - * @return string lasterrno + * \brief Renvoie le code derniere erreur + * \return string lasterrno */ function lasterrno() { @@ -774,9 +762,8 @@ class DoliDb } /** - * Renvoie le code erreur generique de l'operation precedente. - * - * @return error_num (Exemples: DB_ERROR_TABLE_ALREADY_EXISTS, DB_ERROR_RECORD_ALREADY_EXISTS...) + * \brief Renvoie le code erreur generique de l'operation precedente. + * \return error_num (Exemples: DB_ERROR_TABLE_ALREADY_EXISTS, DB_ERROR_RECORD_ALREADY_EXISTS...) */ function errno() { @@ -840,9 +827,8 @@ class DoliDb } /** - * Renvoie le texte de l'erreur pgsql de l'operation precedente - * - * @return error_text + * \brief Renvoie le texte de l'erreur pgsql de l'operation precedente. + * \return error_text */ function error() { @@ -850,10 +836,9 @@ class DoliDb } /** - * Get last ID after an insert INSERT - * - * @param tab Table name concerned by insert. Ne sert pas sous MySql mais requis pour compatibilite avec Postgresql - * @return int id + * \brief Get last ID after an insert INSERT. + * \param tab Table name concerned by insert. Ne sert pas sous MySql mais requis pour compatibilite avec Postgresql + * \return int id */ function last_insert_id($tab,$fieldid='rowid') { @@ -872,7 +857,6 @@ class DoliDb /** * Encrypt sensitive data in database * Warning: This function includes the escape, so it must use direct value - * * @param fieldorvalue Field name or value to encrypt * @param withQuotes Return string with quotes * @return return XXX(field) or XXX('value') or field or 'value' @@ -893,10 +877,9 @@ class DoliDb /** - * Decrypt sensitive data in database - * - * @param value Value to decrypt - * @return return Decrypted value if used + * \brief Decrypt sensitive data in database + * \param value Value to decrypt + * \return return Decrypted value if used */ function decrypt($value) { @@ -918,9 +901,8 @@ class DoliDb /** - * Renvoie l'id de la connexion - * - * @return string Id connexion + * \brief Renvoie l'id de la connexion + * \return string Id connexion */ function DDLGetConnectId() { @@ -930,14 +912,13 @@ class DoliDb /** - * Create a new database - * Ne pas utiliser les fonctions xxx_create_db (xxx=mysql, ...) car elles sont deprecated - * - * @param database Database name to create - * @param charset Charset used to store data - * @param collation Charset used to sort data - * @param owner Username of database owner - * @return resource resource defined if OK, null if KO + * \brief Create a new database + * \param database Database name to create + * \param charset Charset used to store data + * \param collation Charset used to sort data + * \param owner Username of database owner + * \return resource resource defined if OK, null if KO + * \remarks Ne pas utiliser les fonctions xxx_create_db (xxx=mysql, ...) car elles sont deprecated */ function DDLCreateDb($database,$charset='',$collation='',$owner='') { @@ -949,9 +930,9 @@ class DoliDb } /** - * Liste des tables dans une database. - * @param database Nom de la database - * @return resource + * \brief Liste des tables dans une database. + * \param database Nom de la database + * \return resource */ function DDLListTables($database, $table='') { @@ -968,9 +949,9 @@ class DoliDb } /** - * Liste les informations des champs d'une table. - * @param table Nom de la table - * @return array Tableau des informations des champs de la table + * \brief Liste les informations des champs d'une table. + * \param table Nom de la table + * \return array Tableau des informations des champs de la table * TODO modifier pour postgresql */ function DDLInfoTable($table) @@ -992,16 +973,15 @@ class DoliDb /** - * Cree une table - * - * @param table Nom de la table - * @param fields Tableau associatif [nom champ][tableau des descriptions] - * @param primary_key Nom du champ qui sera la clef primaire - * @param unique_keys Tableau associatifs Nom de champs qui seront clef unique => valeur - * @param fulltext Tableau des Nom de champs qui seront indexes en fulltext - * @param key Tableau des champs cles noms => valeur - * @param type Type de la table - * @return int <0 si KO, >=0 si OK + * \brief Cree une table + * \param table Nom de la table + * \param fields Tableau associatif [nom champ][tableau des descriptions] + * \param primary_key Nom du champ qui sera la clef primaire + * \param unique_keys Tableau associatifs Nom de champs qui seront clef unique => valeur + * \param fulltext Tableau des Nom de champs qui seront indexes en fulltext + * \param key Tableau des champs cles noms => valeur + * \param type Type de la table + * \return int <0 si KO, >=0 si OK * TODO */ function DDLCreateTable($table,$fields,$primary_key,$type,$unique_keys="",$fulltext_keys="",$keys="") @@ -1070,13 +1050,12 @@ class DoliDb } /** - * Create a user - * - * @param dolibarr_main_db_host Ip serveur - * @param dolibarr_main_db_user Nom user a creer - * @param dolibarr_main_db_pass Mot de passe user a creer - * @param dolibarr_main_db_name Database name where user must be granted - * @return int <0 si KO, >=0 si OK + * \brief Create a user + * \param dolibarr_main_db_host Ip serveur + * \param dolibarr_main_db_user Nom user a creer + * \param dolibarr_main_db_pass Mot de passe user a creer + * \param dolibarr_main_db_name Database name where user must be granted + * \return int <0 si KO, >=0 si OK */ function DDLCreateUser($dolibarr_main_db_host,$dolibarr_main_db_user,$dolibarr_main_db_pass,$dolibarr_main_db_name) { @@ -1093,11 +1072,10 @@ class DoliDb } /** - * Decrit une table dans une database - * - * @param table Nom de la table - * @param field Optionnel : Nom du champ si l'on veut la desc d'un champ - * @return resource + * \brief decrit une table dans une database. + * \param table Nom de la table + * \param field Optionnel : Nom du champ si l'on veut la desc d'un champ + * \return resource */ function DDLDescTable($table,$field="") { @@ -1111,13 +1089,12 @@ class DoliDb } /** - * Insert a new field in table - * - * @param table Nom de la table - * @param field_name Nom du champ a inserer - * @param field_desc Tableau associatif de description du champ a inserer[nom du parametre][valeur du parametre] - * @param field_position Optionnel ex.: "after champtruc" - * @return int <0 si KO, >0 si OK + * \brief Insert a new field in table + * \param table Nom de la table + * \param field_name Nom du champ a inserer + * \param field_desc Tableau associatif de description du champ a inserer[nom du parametre][valeur du parametre] + * \param field_position Optionnel ex.: "after champtruc" + * \return int <0 si KO, >0 si OK */ function DDLAddField($table,$field_name,$field_desc,$field_position="") { @@ -1149,7 +1126,6 @@ class DoliDb /** * Update format of a field into a table - * * @param table Name of table * @param field_name Name of field to modify * @param field_desc Array with description of field format @@ -1169,11 +1145,10 @@ class DoliDb } /** - * Drop a field in table - * - * @param table Nom de la table - * @param field_name Nom du champ a inserer - * @return int <0 si KO, >0 si OK + * \brief Drop a field in table + * \param table Nom de la table + * \param field_name Nom du champ a inserer + * \return int <0 si KO, >0 si OK */ function DDLDropField($table,$field_name) { @@ -1188,9 +1163,8 @@ class DoliDb } /** - * Return charset used to store data in database - * - * @return string Charset + * \brief Return charset used to store data in database + * \return string Charset */ function getDefaultCharacterSetDatabase() { @@ -1200,9 +1174,8 @@ class DoliDb } /** - * Return list of available charset that can be used to store data in database - * - * @return array List of Charset + * \brief Return list of available charset that can be used to store data in database + * \return array List of Charset */ function getListOfCharacterSet() { @@ -1225,9 +1198,8 @@ class DoliDb } /** - * Return collation used in database - * - * @return string Collation value + * \brief Return collation used in database + * \return string Collation value */ function getDefaultCollationDatabase() { @@ -1237,9 +1209,8 @@ class DoliDb } /** - * Return list of available collation that can be used for database - * - * @return array Liste of Collation + * \brief Return list of available collation that can be used for database + * \return array Liste of Collation */ function getListOfCollation() { @@ -1262,7 +1233,6 @@ class DoliDb /** * Return full path of dump program - * * @return string Full path of dump program */ function getPathOfDump() @@ -1290,7 +1260,6 @@ class DoliDb /** * Return full path of restore program - * * @return string Full path of restore program */ function getPathOfRestore() @@ -1317,10 +1286,9 @@ class DoliDb } /** - * Return value of server parameters - * - * @param filter Filter list on a particular value - * @return string Value for parameter + * \brief Return value of server parameters + * \param filter Filter list on a particular value + * \return string Value for parameter */ function getServerParametersValues($filter='') {