';
$r=parent::display_form($p_string);
$r.=HtmlInput::submit('result', _('Rechercher'));
$r.= '';
return $r;
}
/*!
* \brief complete the object with the data in $_REQUEST
*/
function get_request()
{
parent::get_request();
$this->pa_id=(isset($_REQUEST['pa_id']))?$_REQUEST['pa_id']:"";
}
/*!
* \brief compute the html display
*
*
* \return string
*/
function display_html()
{
$idx=0;
$r="";
//---Html
$array=$this->load();
if ( is_array($array) == false || empty($array) )
{
return 0;
}
$cred=0;$deb=0;
bcscale(2);
$r.= '
';
$r.= ''.
''._('Date').' | '.
''._('Poste').' | '.
''._('Quick_code').' | '.
''._('Analytique').' | '.
th(_('Description')).
''._('libelle').' | '.
''._('Num.interne').' | '.
''._('Montant').' | '.
''._('D/C').' | '.
'
';
foreach ( $array as $row )
{
$class=($idx%2==0)?'even':'odd';
$idx++;
$r.= '';
$detail=($row['jr_id'] != null)?HtmlInput::detail_op($row['jr_id'],$row['jr_internal']):'';
$post_detail=($row['j_poste'] != null)?HtmlInput::history_account($row['j_poste'],$row['j_poste']):'';
$card_detail=($row['f_id'] != null)?HtmlInput::history_card($row['f_id'],$row['qcode']):'';
$r.=
''.$row['oa_date'].' | '.
td($post_detail).
td($card_detail).
''.HtmlInput::history_anc_account($row['po_id'],h($row['po_name'])).' | '.
''.h($row['oa_description']).' | '.
td($row['jr_comment']).
''.$detail.' | '.
''.nbm($row['oa_amount']).' | '.
''.(($row['oa_debit']=='f')?'C':'D').' | ';
$r.= '
';
if ( $row['oa_debit'] == 'f') {$cred=bcadd($cred,$row['oa_amount']);}
if ( $row['oa_debit'] == 't') {$deb=bcadd($deb,$row['oa_amount']);}
}
$r.= '
';
ob_start();
echo _("Total");
echo '';
echo '- '.nbm($deb).' D '.'
';
echo '- '.nbm($cred).' C '.'
';
echo '- ';
echo _('Solde');
$solde=abs(bcsub($deb,$cred));
echo $solde;
if ( $cred == $deb ) echo " = ";
else if ( $cred > $deb ) echo " C ";
else echo ' D ';
$r_solde=ob_get_clean();
return $r.$r_solde;
}
/*!
* \brief load the data from the database
*
* \return array
*/
function load()
{
$op=new Anc_Operation ($this->db);
$op->pa_id=$this->pa_id;
$array=$op->get_list($this->from,$this->to,$this->from_poste,$this->to_poste);
if (! $array )
{
$this->has_data=0;
}
else
{
$this->has_data=count($array);
}
return $array;
}
/*!
* \brief Compute the csv export
* \return string with the csv
*/
function display_csv()
{
$array=$this->load($this->from,$this->to,$this->from_poste,$this->to_poste);
if ( empty($array) == true )
{
return $array;
}
$csv=new Noalyss_Csv("anc_listing");
$csv->send_header();
$csv->write_header(array("Date","Poste","QuickCode",
"Activité","description","montant","d/c"));
foreach ( $array as $row)
{
// the name and po_id
$csv->add($row['oa_date']);
$csv->add($row['j_poste']);
$csv->add($row['qcode']);
$csv->add($row['po_name']);
$csv->add($row['oa_description']);
$csv->add($row['oa_amount'],"number");
$csv->add(sprintf("'%s'",(($row['oa_debit']=='f')?'CREDIT':'DEBIT')));
$csv->write();
}
return;
}
/*!
* \brief show the export button to pdf and CSV
* \param $p_string string containing some HTML tag as hidden field
* \param
* \param
*
*
* \return string containing the html code
*/
function show_button($p_string='')
{
$r="";
$submit=HtmlInput::submit('','');
$hidden=new IHidden();
/* for the export in PDF
* Not yet needed, the html print should be enough
$r.= '';
*/
$r.= '';
return $r;
}
/*!
* \brief debugging and test function for dev. only
* \param
* \param
* \param
*
*
* \return
*/
static function test_me()
{
}
}