Admin() == 0 && $User->is_local_admin()==0) { $sql="select jrn_def_id,jrn_def_name from jrn_def join jrn_type on jrn_def_type=jrn_type_id join user_sec_jrn on uj_jrn_id=jrn_def_id where uj_login='$User->login' and uj_priv !='X' "; $ret=$cn->make_array($sql); } else { $ret=$cn->make_array("select jrn_def_id,jrn_def_name from jrn_def join jrn_type on jrn_def_type=jrn_type_id"); } // Count the forbidden journaux $NoPriv=$cn->count_sql("select jrn_def_id,jrn_def_name,jrn_def_class_deb,jrn_def_class_cred,jrn_type_id,jrn_desc,uj_priv, jrn_deb_max_line,jrn_cred_max_line from jrn_def join jrn_type on jrn_def_type=jrn_type_id join user_sec_jrn on uj_jrn_id=jrn_def_id where uj_login='$User->id' and uj_priv ='X' "); // Pour voir tout les journal ? if ( $NoPriv == 0 ) { $a=count($ret); $all=array('value'=>0,'label'=>'Tous les journaux'); $ret[$a]=$all; } if ( count($ret) < 1 ) NoAccess(); $exercice=(isset($_GET['exercice']))?$_GET['exercice']:$User->get_exercice(); //----------------------------------------------------- // Form //----------------------------------------------------- echo '
'; /* * Let you change the exercice */ echo '
'._('Choississez un autre exercice').'';; echo '
'; echo 'Choississez un autre exercice :'; $ex=new Exercice($cn); $wex=$ex->select('exercice',$exercice,' onchange="submit(this)"'); echo $wex->input(); echo dossier::hidden(); echo HtmlInput::get_to_hidden(array('p_action','type')); echo '
'; echo '
'; echo '
'.dossier::hidden(); echo HtmlInput::hidden('p_action','impress'); echo HtmlInput::hidden('type','jrn'); echo HtmlInput::get_to_hidden(array('exercice')); echo ''; $w=new ISelect(); $w->table=1; $label="Choississez le journal"; $w->selected=(isset($_GET['jrn_id']))?$_GET['jrn_id']:''; print td($label).$w->input("jrn_id",$ret); print ''; print ''; // filter on the current year $filter_year=" where p_exercice='".FormatString($exercice)."'"; $periode_start=$cn->make_array("select p_id,to_char(p_start,'DD-MM-YYYY') from parm_periode $filter_year order by p_start,p_end"); $w->selected=(isset($_GET['from_periode']))?$_GET['from_periode']:''; print td('Depuis').$w->input('from_periode',$periode_start); print ''; print ''; $periode_end=$cn->make_array("select p_id,to_char(p_end,'DD-MM-YYYY') from parm_periode $filter_year order by p_start,p_end"); $w->selected=(isset($_GET['to_periode']))?$_GET['to_periode']:''; print td('Jusque ').$w->input('to_periode',$periode_end); print ""; $a=array( array('value'=>0,'label'=>'Detaillé'), array('value'=>1,'label'=>'Simple') ); $w->selected=1; print ''; print ''; $w->selected=(isset($_GET['p_simple']))?$_GET['p_simple']:''; echo td('Style d\'impression').$w->input('p_simple',$a); print ""; echo '
'; print HtmlInput::submit('bt_html','Visualisation'); echo '
'; //----------------------------------------------------- // If print is asked // First time in html // after in pdf or cvs //----------------------------------------------------- if ( isset( $_REQUEST['bt_html'] ) ) { require_once("class_acc_ledger.php"); $d=var_export($_GET,true); $Jrn=new Acc_Ledger($cn,$_GET['jrn_id']); $Jrn->get_name(); if ( $_GET['p_simple']==0 ) { $Row=$Jrn->get_row( $_GET['from_periode'], $_GET['to_periode'] ); } else { $Row=$Jrn->get_rowSimple($_GET['from_periode'], $_GET['to_periode'] ); } $rep=""; $hid=new IHidden(); echo '
'; echo '

'.h($Jrn->name).'

'; echo ""; echo ''; echo '"; echo '"; echo '"; echo ""; echo "
'.dossier::hidden(). $hid->input("type","jrn").$hid->input('p_action','impress')."
'.dossier::hidden(). HtmlInput::submit('bt_pdf',"Export PDF"). $hid->input("type","jrn"). $hid->input("p_action","impress"). $hid->input("jrn_id",$Jrn->id). $hid->input("from_periode",$_GET['from_periode']). $hid->input("to_periode",$_GET['to_periode']); echo $hid->input("p_simple",$_GET['p_simple']); echo "
'.dossier::hidden(). HtmlInput::submit('bt_csv',"Export CSV"). $hid->input("type","jrn"). $hid->input("p_action","impress"). $hid->input("jrn_id",$Jrn->id). $hid->input("from_periode",$_GET['from_periode']). $hid->input("to_periode",$_GET['to_periode']); echo $hid->input("p_simple",$_GET['p_simple']); echo "
"; if ( count($Jrn->row ) == 0 && $Row==null) exit; echo ''; if ( $_GET['p_simple'] == 0 ) { // detailled printing //--- foreach ( $Jrn->row as $op ) { $class=""; if ( $op['j_date'] != '' ) { $class="odd"; } echo ""; echo ""; echo ""; if ( $op['internal']!='') echo ""; else echo td(); echo "". "". "". "". ""; }// end loop } // if else { // Simple printing //--- echo "". "". "". "". "". "". ""; // set a filter for the FIN $a_parm_code=$cn->get_array("select p_value from parm_code where p_code in ('BANQUE','COMPTE_COURANT','CAISSE')"); $sql_fin="("; $or=""; foreach ($a_parm_code as $code) { $sql_fin.="$or j_poste::text like '".$code['p_value']."%'"; $or=" or "; } $sql_fin.=")"; foreach ($Row as $line) { echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; // echo ""; // If the ledger is financial : // the credit must be negative and written in red // Get the jrn type if ( $line['jrn_def_type'] == 'FIN' ) { $positive = $cn->count_sql("select * from jrn inner join jrnx on jr_grpt_id=j_grpt ". " where jr_id=".$line['jr_id']." and $sql_fin ". " and j_debit='f'"); echo ""; } else { echo ""; } echo ""; } } //else echo "
".$op['j_date']."".$op['jr_pj_number']."".HtmlInput::detail_op($op['jr_id'],$op['internal'])."".$op['poste']."".$op['description']."".nbm($op['deb_montant'])."".nbm($op['cred_montant'])."
operation ". "Date n° de pièce internalCommentaire montant
".$line['num']."".$line['date']."".h($line['jr_pj_number'])."".HtmlInput::detail_op($line['jr_id'],$line['jr_internal'])."".h($line['comment'])."".$line['pj'].""; echo ( $positive != 0 )?" - ".nbm($line['montant'])."":nbm($line['montant']); echo "".nbm($line['montant'])."
"; // show the saldo $solde=$Jrn->get_solde( $_GET['from_periode'], $_GET['to_periode'] ); echo "solde débiteur:".$solde[0]."
"; echo "solde créditeur:".$solde[1]; echo "
"; exit; } echo '
'; ?>