Fix periode
This commit is contained in:
parent
eb97359a22
commit
f0a8ce67f6
5 changed files with 173 additions and 19 deletions
|
|
@ -30,7 +30,7 @@
|
|||
require_once("constant.php");
|
||||
include_once ("postgres.php");
|
||||
require_once('class_dossier.php');
|
||||
html_page_start();
|
||||
html_page_start($_SESSION['g_theme']);
|
||||
|
||||
$gDossier=dossier::id();
|
||||
|
||||
|
|
|
|||
127
html/line_update.php
Normal file
127
html/line_update.php
Normal file
|
|
@ -0,0 +1,127 @@
|
|||
<?php
|
||||
/*
|
||||
* This file is part of PhpCompta.
|
||||
*
|
||||
* PhpCompta is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* PhpCompta is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with PhpCompta; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
// Copyright Author Dany De Bontridder ddebontridder@yahoo.fr
|
||||
// $Revision$
|
||||
/*! \file
|
||||
* \brief Modify the "Plan Comptable"
|
||||
*/
|
||||
include_once ("ac_common.php");
|
||||
require_once('class_dossier.php');
|
||||
$gDossier=dossier::id();
|
||||
|
||||
include_once ("postgres.php");
|
||||
include_once("check_priv.php");
|
||||
|
||||
/* Admin. Dossier */
|
||||
$rep=DbConnect();
|
||||
include_once ("class_user.php");
|
||||
$User=new cl_user($rep);
|
||||
$User->Check();
|
||||
html_page_start($User->theme,"onLoad='window.focus();'");
|
||||
|
||||
$User->can_request(DbConnect($gDossier),MPCMN);
|
||||
|
||||
|
||||
include ("user_menu.php");
|
||||
|
||||
/* Modif d'une ligne */
|
||||
if ( isset ($_POST["update"] ) ) {
|
||||
foreach ($_POST as $name => $element) {
|
||||
echo_debug('line_update.php',__LINE__,"name $name $element");
|
||||
}
|
||||
echo JS_UPDATE_PCMN;
|
||||
$cn=DbConnect($gDossier);
|
||||
$p_val=trim($_POST["p_val"]);
|
||||
$p_lib=FormatString($_POST["p_name"]);
|
||||
$p_parent=trim($_POST["p_val_parent"]);
|
||||
$old_line=trim($_POST["p_old"]);
|
||||
// Check if p_parent and p_val are number
|
||||
if ( ! is_numeric($p_val) || ! is_numeric($p_parent) ) {
|
||||
// not number no update
|
||||
echo '<script> alert(\' Valeurs invalides, pas de changement opéré;\');
|
||||
</script>';
|
||||
echo "<script>
|
||||
window.close();
|
||||
self.opener.RefreshMe();
|
||||
|
||||
</script>";
|
||||
exit();
|
||||
|
||||
}
|
||||
echo_debug('line_update.php',__LINE__,"Update old : $old_line News = $p_val $p_lib");
|
||||
if ( strlen ($p_val) != 0 && strlen ($p_lib) != 0 && strlen($old_line)!=0 ) {
|
||||
if (strlen ($p_val) == 1 ) {
|
||||
$p_parent=0;
|
||||
} else {
|
||||
if ( strlen($p_parent)==0 ) {
|
||||
$p_parent=substr($p_val,0,strlen($p_val)-1);
|
||||
echo_debug('line_update.php',__LINE__,"Modif valeur = $p_val parent = $p_parent");
|
||||
}
|
||||
}
|
||||
/* Parent existe */
|
||||
$Ret=ExecSql($cn,"select pcm_val from tmp_pcmn where pcm_val=$p_parent");
|
||||
if ( pg_NumRows($Ret) == 0 || $p_parent==$old_line ) {
|
||||
echo '<SCRIPT> alert(" Ne peut pas modifier; aucune poste parent"); </SCRIPT>';
|
||||
} else {
|
||||
|
||||
$Ret=ExecSql($cn,"update tmp_pcmn set pcm_val=$p_val, pcm_lib='$p_lib',pcm_val_parent=$p_parent where pcm_val=$old_line");
|
||||
}
|
||||
} else {
|
||||
echo '<script> alert(\'Update Valeurs invalides\'); </script>';
|
||||
}
|
||||
|
||||
echo "<script>
|
||||
window.close();
|
||||
self.opener.RefreshMe();
|
||||
|
||||
</script>";
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
<FORM ACTION="line_update.php" METHOD="POST">
|
||||
<TABLE>
|
||||
<TR>
|
||||
<?php
|
||||
$l=$_GET['l'];
|
||||
$p=$_GET['p'];
|
||||
$n=$_GET['n'];
|
||||
|
||||
printf ('<TD>Numéro de classe </TD><TD><INPUT TYPE="TEXT" name="p_val" value="%s"></TD>',$l);
|
||||
echo "</TR><TR>";
|
||||
printf('<TD>Libellé </TD><TD><INPUT TYPE="TEXT" size="70" NAME="p_name" value="%s"></TD>',urldecode($n));
|
||||
echo "</TR><TR>";
|
||||
printf ('<TD>Classe Parent</TD><TD><INPUT TYPE="TEXT" name="p_val_parent" value="%s"></TD>',$p);
|
||||
echo dossier::hidden();
|
||||
?>
|
||||
</TR>
|
||||
</TABLE>
|
||||
<TABLE>
|
||||
<TR>
|
||||
<TD><INPUT TYPE="Submit" VALUE="Sauve">
|
||||
<INPUT TYPE="HIDDEN" name="update">
|
||||
<?php printf ('<INPUT TYPE="HIDDEN" name="p_old" value="%s">',$l); ?>
|
||||
</TD><TD><input type="button" Value="Retour sans sauver" onClick='window.close();'></TD></TR>
|
||||
</TABLE>
|
||||
</FORM>
|
||||
|
||||
|
||||
<?php
|
||||
html_page_stop();
|
||||
?>
|
||||
|
|
@ -23,6 +23,9 @@
|
|||
/*!\file
|
||||
* \brief For the periode table parm_periode and jrn_periode
|
||||
*/
|
||||
require_once ('ac_common.php');
|
||||
require_once ('debug.php');
|
||||
require_once ('postgres.php');
|
||||
class Periode {
|
||||
var $cn; /*!< database connection */
|
||||
var $jrn_def_id; /*!< the jr, 0 means all the ledger*/
|
||||
|
|
@ -229,6 +232,36 @@ class Periode {
|
|||
|
||||
}
|
||||
}
|
||||
function insert($p_date_start,$p_date_end,$p_exercice) {
|
||||
if (isDate($p_date_start) == null ||
|
||||
isDate($p_date_end) == null ||
|
||||
strlen (trim($p_exercice)) == 0 ||
|
||||
(string) $p_exercice != (string)(int) $p_exercice)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
$p_id=NextSequence($this->cn,'s_periode');
|
||||
$sql=sprintf(" insert into parm_periode(p_id,p_start,p_end,p_closed,p_exercice)".
|
||||
"values (%d,to_date('%s','DD.MM.YYYY'),to_date('%s','DD.MM.YYYY')".
|
||||
",'f','%s')",
|
||||
$p_id,
|
||||
$p_date_start,
|
||||
$p_date_end,
|
||||
$p_exercice);
|
||||
try {
|
||||
StartSql($this->cn);
|
||||
$Res=ExecSql($this->cn,$sql);
|
||||
$Res=ExecSql($this->cn,"insert into jrn_periode (jrn_def_id,p_id,status) ".
|
||||
"select jrn_def_id,$p_id,'OP' from jrn_def");
|
||||
Commit($this->cn);
|
||||
} catch (Exception $e) {
|
||||
Rollback($this->cn);
|
||||
echo_debug(__FILE__.':'.__LINE__.'- Periode insert','Exception ',$e);
|
||||
echo_debug(__FILE__.':'.__LINE__.'- Periode insert','Exception ',$e->getMessage());
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
static function test_me() {
|
||||
$cn=DbConnect(dossier::id());
|
||||
$obj=new Periode($cn);
|
||||
|
|
|
|||
|
|
@ -112,7 +112,11 @@ if ( isset ($_POST["DATABASE"]) ) {
|
|||
values (to_date('31-12-%s','DD-MM-YYYY'),to_date('31-12-%s','DD-MM-YYYY'),'%s')",
|
||||
$year,$year,$year);
|
||||
$Res=ExecSql($cn,$sql);
|
||||
|
||||
$sql=" insert into jrn_periode(p_id,jrn_def_id,status) ".
|
||||
"select p_id,jrn_def_id, 'OP'".
|
||||
" from parm_periode cross join jrn_def";
|
||||
$Res=ExecSql($cn,$sql);
|
||||
|
||||
|
||||
}
|
||||
} // if $l_id != 0
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@
|
|||
// Copyright Author Dany De Bontridder ddebontridder@yahoo.fr
|
||||
/*! \file
|
||||
*/
|
||||
$gDossier=dossier::id();
|
||||
require_once ('class_widget.php');
|
||||
require_once("preference.php");
|
||||
require_once ('class_periode.php');
|
||||
|
|
@ -58,7 +59,7 @@ if ( isset ($_POST["conf_chg_per"] ) ) {
|
|||
(string) $p_exercice != (string)(int) $p_exercice)
|
||||
{
|
||||
echo "<H2 class=\"error\"> Valeurs invalides</H2>";
|
||||
ShowPeriode($cn);
|
||||
// ShowPeriode($cn);
|
||||
return;
|
||||
}
|
||||
$Res=ExecSql($cn," update parm_periode ".
|
||||
|
|
@ -72,24 +73,13 @@ if ( isset ($_POST["conf_chg_per"] ) ) {
|
|||
|
||||
}
|
||||
if ( isset ($_POST["add_per"] )) {
|
||||
foreach($_POST as $key=>$element)
|
||||
${"$key"}=$element;
|
||||
if (isDate($p_date_start) == null ||
|
||||
isDate($p_date_end) == null ||
|
||||
strlen (trim($p_exercice)) == 0 ||
|
||||
(string) $p_exercice != (string)(int) $p_exercice)
|
||||
{
|
||||
extract($_POST);
|
||||
$obj=new Periode($cn);
|
||||
if ( $obj->insert($p_date_start,$p_date_end,$p_exercice) == 1 ){
|
||||
echo "<H2 class=\"error\"> Valeurs invalides</H2>";
|
||||
ShowPeriode($cn);
|
||||
// ShowPeriode($cn);
|
||||
return;
|
||||
}
|
||||
$Res=ExecSql($cn,sprintf(" insert into parm_periode(p_start,p_end,p_closed,p_exercice)".
|
||||
"values (to_date('%s','DD.MM.YYYY'),to_date('%s','DD.MM.YYYY')".
|
||||
",'f','%s')",
|
||||
$p_date_start,
|
||||
$p_date_end,
|
||||
$p_exercice));
|
||||
|
||||
}
|
||||
$choose="yes";
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue