/**
  * @covers Acc_Account_Ledger::build_sql_account
  * @todo   Implement testBuild_sql_account().
  * @dataProvider DataBuild_Sql_account
  */
 public function testBuild_sql_account($p_jrn, $result)
 {
     print "\n--------------------\n";
     $value = $this->object->build_sql_account($p_jrn);
     printf(" ledger %s [%s]", $p_jrn, $value);
     $this->assertEquals(trim($value), $result);
 }
Ejemplo n.º 2
0
 ob_end_clean();
 $r .= dossier::hidden();
 $r .= isset($c) ? HtmlInput::hidden('account', $c) : "";
 $r .= isset($l) ? HtmlInput::hidden('label', $l) : "";
 $r .= isset($j) ? HtmlInput::hidden('jrn', $j) : "";
 $r .= isset($nover) ? HtmlInput::hidden('nover', '1') : "";
 $r .= isset($nosearch) ? HtmlInput::hidden('nosearch', '1') : "";
 $r .= isset($bracket) ? HtmlInput::hidden('bracket', '1') : "";
 $r .= '</form>';
 $sql = "\n\t\tselect pcm_val,pcm_lib,array_to_string(array_agg(j_qcode) , ',') as acode\n\t\tfrom tmp_pcmn left join vw_poste_qcode on (j_poste=pcm_val) ";
 $sep = " where ";
 /* build the sql stmt */
 if (isset($j) && $j > 0 && isNumber($j)) {
     /* create a filter on the ledger */
     $ledger = new Acc_Account_Ledger($cn, 0);
     $fd_id = $ledger->build_sql_account($j);
     if ($fd_id != '') {
         $sql .= " {$sep} (" . $fd_id . ')';
         $sep = " and ";
     }
 }
 /* show result */
 if (isset($q) && strlen(trim($q)) > 0) {
     $q = sql_string($q);
     $sql .= sprintf(" {$sep} ( pcm_val::text like '%s%%' or pcm_lib::text ilike '%%%s%%') ", $q, $q);
 }
 $sql .= ' group by pcm_val,pcm_lib,pcm_val_parent, pcm_type  order by pcm_val::text limit 50';
 if (isset($q) && strlen(trim($q)) > 0) {
     $array = $cn->get_array($sql);
 }
 if (!isset($q)) {