0000271: Filter pour grand livre : poste et lettrage
This commit is contained in:
parent
ac23d7efd9
commit
6e98da9ea6
4 changed files with 38 additions and 25 deletions
|
|
@ -101,6 +101,7 @@ class Acc_Account_Ledger
|
|||
*
|
||||
* \param $p_from date from
|
||||
* \param $p_to end date
|
||||
*\param $let 0 means all rows, 1 only lettered, 2 only unlettered
|
||||
*\note the data are filtered by the access of the current user
|
||||
* \return double array (j_date,deb_montant,cred_montant,description,jrn_name,j_debit,jr_internal)
|
||||
* (tot_deb,tot_credit
|
||||
|
|
@ -432,7 +433,6 @@ class Acc_Account_Ledger
|
|||
$hid->input("type","poste").$hid->input('p_action','impress')."</form></TD>";
|
||||
}
|
||||
|
||||
$letter=HtmlInput::default_value('letter',0,$_REQUEST);
|
||||
|
||||
echo '<TD><form method="GET" ACTION="export.php">'.
|
||||
dossier::hidden().
|
||||
|
|
@ -443,9 +443,10 @@ class Acc_Account_Ledger
|
|||
$hid->input("from_periode",$_REQUEST['from_periode']).
|
||||
$hid->input("to_periode",$_REQUEST['to_periode']).
|
||||
$hid->input('from_poste',$_REQUEST['from_poste']).
|
||||
$hid->input('to_poste',$_REQUEST['to_poste']).
|
||||
$hid->input('letter',$letter);
|
||||
$hid->input('to_poste',$_REQUEST['to_poste'])
|
||||
;
|
||||
|
||||
if ( isset($_REQUEST['letter'] )) echo HtmlInput::hidden('letter','2');
|
||||
|
||||
|
||||
|
||||
|
|
@ -467,8 +468,10 @@ class Acc_Account_Ledger
|
|||
$hid->input("from_periode",$_REQUEST['from_periode']).
|
||||
$hid->input("to_periode",$_REQUEST['to_periode']).
|
||||
$hid->input('from_poste',$_REQUEST['from_poste']).
|
||||
$hid->input('to_poste',$_REQUEST['to_poste']).
|
||||
$hid->input('letter',$letter);
|
||||
$hid->input('to_poste',$_REQUEST['to_poste']);
|
||||
|
||||
|
||||
if ( isset($_REQUEST['letter'] )) echo HtmlInput::hidden('letter','2');
|
||||
|
||||
if (isset($_REQUEST['poste_fille']))
|
||||
echo $hid->input('poste_fille','on');
|
||||
|
|
|
|||
|
|
@ -59,6 +59,7 @@ if ( isset($poste_id) && strlen(trim($poste_id)) != 0 && isNumber($poste_id) )
|
|||
}
|
||||
else
|
||||
{
|
||||
$sql="select pcm_val from tmp_pcmn ";
|
||||
if ($from_poste != '')
|
||||
{
|
||||
$cond_poste = ' where ';
|
||||
|
|
@ -69,11 +70,11 @@ else
|
|||
{
|
||||
if ( $cond_poste == '')
|
||||
{
|
||||
$cond_poste = ' where pcm_val <= upper (\''.Database::escape_string($from_poste).'\')';
|
||||
$cond_poste = ' where pcm_val <= upper (\''.Database::escape_string($to_poste).'\')';
|
||||
}
|
||||
else
|
||||
{
|
||||
$cond_poste.=' and pcm_val <= upper (\''.Database::escape_string($from_poste).'\')';
|
||||
$cond_poste.=' and pcm_val <= upper (\''.Database::escape_string($to_poste).'\')';
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -92,11 +93,14 @@ if ( count($a_poste) == 0 )
|
|||
// Header
|
||||
$header = array( "Date", "Référence", "Libellé", "Pièce", "Débit", "Crédit", "Solde" );
|
||||
|
||||
$let=(isset($_GET['letter']))?2:0;
|
||||
|
||||
foreach ($a_poste as $poste)
|
||||
{
|
||||
|
||||
|
||||
$Poste=new Acc_Account_Ledger($cn,$poste['pcm_val']);
|
||||
list($array,$tot_deb,$tot_cred)=$Poste->get_row_date($from_periode,$to_periode);
|
||||
list($array,$tot_deb,$tot_cred)=$Poste->get_row_date($from_periode,$to_periode,$let);
|
||||
|
||||
// don't print empty account
|
||||
if ( count($array) == 0 )
|
||||
|
|
@ -146,9 +150,9 @@ foreach ($a_poste as $poste)
|
|||
echo $detail['jr_internal'].";";
|
||||
echo $detail['description'].";";
|
||||
echo $detail['jr_pj_number'].";";
|
||||
echo ($detail['deb_montant'] > 0 ? sprintf("%.2f", $detail['deb_montant']) : '').";";
|
||||
echo ($detail['cred_montant'] > 0 ? sprintf("%.2f", $detail['cred_montant']) : '').";";
|
||||
echo sprintf("%.2f", $solde).";";
|
||||
echo ($detail['deb_montant'] > 0 ? nb($detail['deb_montant']) : '').";";
|
||||
echo ($detail['cred_montant'] > 0 ? nb($detail['cred_montant']) : '').";";
|
||||
echo nb($solde).";";
|
||||
printf("\n");
|
||||
|
||||
}
|
||||
|
|
@ -158,9 +162,9 @@ foreach ($a_poste as $poste)
|
|||
echo ";";
|
||||
echo ";";
|
||||
echo 'Total du compte '.$Poste->id.";";
|
||||
echo ($solde_d > 0 ? sprintf("%.2f", $solde_d) : '').";";
|
||||
echo ($solde_c > 0 ? sprintf("%.2f", $solde_c) : '').";";
|
||||
echo sprintf("%.2f", abs($solde_c-$solde_d)).";";
|
||||
echo ($solde_d > 0 ? nb($solde_d) : '').";";
|
||||
echo ($solde_c > 0 ? nb( $solde_c) : '').";";
|
||||
echo nb(abs($solde_c-$solde_d)).";";
|
||||
echo ($solde_c > $solde_d ? 'C' : 'D').";";
|
||||
printf("\n");
|
||||
printf("\n");
|
||||
|
|
|
|||
|
|
@ -43,6 +43,8 @@ $User->Check();
|
|||
$User->check_dossier($gDossier);
|
||||
$User->can_request(IMPBIL,0);
|
||||
|
||||
$sql="select pcm_val from tmp_pcmn ";
|
||||
|
||||
extract($_GET);
|
||||
if ($from_poste != '')
|
||||
{
|
||||
|
|
@ -50,15 +52,15 @@ if ($from_poste != '')
|
|||
$cond_poste .=' pcm_val >= upper (\''.Database::escape_string($from_poste).'\')';
|
||||
}
|
||||
|
||||
if ( $to_poste->value != '')
|
||||
if ( $to_poste != '')
|
||||
{
|
||||
if ( $cond_poste == '')
|
||||
{
|
||||
$cond_poste = ' where pcm_val <= upper (\''.Database::escape_string($from_poste).'\')';
|
||||
$cond_poste = ' where pcm_val <= upper (\''.Database::escape_string($to_poste).'\')';
|
||||
}
|
||||
else
|
||||
{
|
||||
$cond_poste.=' and pcm_val <= upper (\''.Database::escape_string($from_poste).'\')';
|
||||
$cond_poste.=' and pcm_val <= upper (\''.Database::escape_string($to_poste).'\')';
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -83,12 +85,12 @@ $header = array( "Date", "Référence", "Libellé", "Pièce","Let", "Débit", "C
|
|||
$lor = array( "L" , "L" , "L" , "L" , "R", "R" , "R" , "R" );
|
||||
// Column widths (in mm)
|
||||
$width = array( 13 , 20 , 60 , 15 , 12 , 20 , 20 , 20 );
|
||||
$l=(isset($_REQUEST['letter']))?1:0;
|
||||
$l=(isset($_REQUEST['letter']))?2:0;
|
||||
|
||||
foreach ($a_poste as $poste)
|
||||
{
|
||||
|
||||
$Poste=new Acc_Account_Ledger($cn,$poste['pcm_val']);
|
||||
$Poste=new Acc_Account_Ledger($cn,$poste['pcm_val']);
|
||||
|
||||
list($array,$tot_deb,$tot_cred)=$Poste->get_row_date($from_periode,$to_periode,$l);
|
||||
|
||||
|
|
|
|||
|
|
@ -62,21 +62,23 @@ $date_to->value=(isset($_REQUEST['to_periode']))?$_REQUEST['to_periode']:$last_d
|
|||
echo td(_('Depuis').$date_from->input());
|
||||
echo td(_('Jusque ').$date_to->input());
|
||||
|
||||
$letter=new ICheck('letter');
|
||||
$letter=new ICheckbox('letter');
|
||||
$letter->selected=(isset($_REQUEST['letter']))?true:false;
|
||||
|
||||
$from_poste=new IPoste('from_poste');
|
||||
$from_poste->value=HtmlInput::default_value('from_poste','',$_REQUEST);
|
||||
$from_poste->set_attribute('account','from_poste');
|
||||
|
||||
$to_poste=new IPoste('to_poste');
|
||||
$to_poste->value=HtmlInput::default_value('to_poste','',$_REQUEST);
|
||||
$to_poste->set_attribute('account','to_poste');
|
||||
|
||||
echo '<tr>';
|
||||
echo td.(_('Depuis le poste')).td($from_poste->input()).td($from_poste->dsp_button());
|
||||
echo td(_('Depuis le poste')).td($from_poste->input());
|
||||
echo '</tr>';
|
||||
|
||||
echo '<tr>';
|
||||
echo td.(_("Jusqu'au poste")).td($to_poste->input()).td($to_poste->dsp_button());
|
||||
echo td(_("Jusqu'au poste")).td($to_poste->input());
|
||||
echo '</tr>';
|
||||
|
||||
echo '<tr>';
|
||||
|
|
@ -113,15 +115,16 @@ if ( isset( $_REQUEST['bt_html'] ) )
|
|||
{
|
||||
if ( $cond_poste == '')
|
||||
{
|
||||
$cond_poste = ' where pcm_val <= upper (\''.Database::escape_string($from_poste->value).'\')';
|
||||
$cond_poste = ' where pcm_val <= upper (\''.Database::escape_string($to_poste->value).'\')';
|
||||
}
|
||||
else
|
||||
{
|
||||
$cond_poste.=' and pcm_val <= upper (\''.Database::escape_string($from_poste->value).'\')';
|
||||
$cond_poste.=' and pcm_val <= upper (\''.Database::escape_string($to_poste->value).'\')';
|
||||
}
|
||||
}
|
||||
|
||||
$sql=$sql.$cond_poste.' order by pcm_val::text';
|
||||
|
||||
$a_poste=$cn->get_array($sql);
|
||||
|
||||
if ( sizeof($a_poste) == 0 )
|
||||
|
|
@ -143,7 +146,8 @@ if ( isset( $_REQUEST['bt_html'] ) )
|
|||
{
|
||||
$Poste=new Acc_Account_Ledger ($cn, $poste_id['pcm_val']);
|
||||
$Poste->load();
|
||||
$l=(isset($_REQUEST['letter']))?1:0;
|
||||
$l=(isset($_REQUEST['letter']))?2:0;
|
||||
|
||||
$Poste->get_row_date( $_GET['from_periode'], $_GET['to_periode'],$l);
|
||||
if ( empty($Poste->row))
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue