noalyss Version-9
Public Member Functions | Data Fields
Customer Class Reference

class Customer are a specific kind of card More...

+ Inheritance diagram for Customer:
+ Collaboration diagram for Customer:

Public Member Functions

 __construct ($p_cn, $p_id=0)
 Constructor /* only a db connection is needed. More...
 
 get_by_account ($p_poste=0)
 Get all info contains in the view thanks to the poste elt (account) More...
 
 VatListing ($p_year)
 Get all the info for making a vat listing for the vat administration. More...
 
- Public Member Functions inherited from Fiche
 __construct ($p_cn, $p_id=0)
 
 __toString ()
 
 belong_ledger ($p_jrn, $p_type="")
 Check if a fiche is used by a jrn return 1 if the fiche is in the range otherwise 0, the quick_code or the id must be set. More...
 
 blank ($p_fiche_def)
 insert a new record show a blank card to be filled More...
 
 build_sql ($array)
 create the sql statement for retrieving all the card More...
 
 button_csv ($p_from, $p_to)
 Return a string with the HTML code to display a button to export the history in CSV. More...
 
 button_pdf ($p_from, $p_to)
 Return a string with the HTML code to display a button to export the history in PDF. More...
 
 count_by_modele ($p_frd_id, $p_search="", $p_sql="")
 Count the nb of card with the reference card id frd_id. More...
 
 delete ()
 
 Display ($p_readonly, $p_in="")
 Display object instance, getAttribute sort the attribute and add missing ones. More...
 
 display_row ()
 display card as a table row , the tag TR must be added More...
 
 empty_attribute ($p_attr)
 check if an attribute is empty More...
 
 filter_history ($p_table_id)
 Filter in javascript the table with the history. More...
 
 Get ()
 Synonum of fiche::getAttribut. More...
 
 get_all_account ()
 
 get_amount_side ($p_amount)
 return the letter C if amount is > 0, D if < 0 or = More...
 
 get_bank_ledger ()
 Returns the Acc_Ledger_Fin ledger for which the card is the default bank account or null if no ledger is found. More...
 
 get_bk_account ()
 get the available bank_account filtered by the security More...
 
 get_bk_balance ($p_cond="")
 get the bank balance with receipt or not in Euro More...
 
 get_bk_balance_currency ($p_cond="")
 Get the sum in Currency. More...
 
 get_by_category ($p_offset=-1, $p_search="", $p_order='')
 get all the card thanks the fiche_def_ref More...
 
 get_by_qcode ($p_qcode=null, $p_all=true)
 Retrieve a card thx his quick_code complete the object,, set the id member of the object or set it to 0 if no card is found. More...
 
 get_categorie ()
 get the fd_id of the card : fd_id, it set the attribute fd_id More...
 
 get_f_enable ()
 
 get_fiche_def_ref ()
 
 get_fiche_def_ref_id ()
 retrieve the frd_id of the fiche it is the type of the card (bank, purchase...) (fiche_def_ref primary key) More...
 
 get_gestion_title ()
 
 get_id ()
 
 get_quick_code ()
 return the quick_code of a card More...
 
 get_row ($p_from, $p_to)
 Get data for poste. More...
 
 get_row_date ($p_from, $p_to, $op_let=0)
 Get data for poste. More...
 
 get_solde_detail ($p_cond="")
 give the balance of an card More...
 
 getAttribut ()
 get all the attribute of a card, add missing ones and sort the array ($this->attribut) by ad_id More...
 
 GetByDef ($p_frd_id, $p_offset=-1, $p_search="", $p_order='')
 Return array of card from the frd family deprecated , use insert get_by_category_id. More...
 
 getDisplayMode ()
 
 getLabelCategory ()
 
 getName ()
 return the name of a card More...
 
 HtmlTable ($p_array=null, $op_let=0, $from_div=1)
 HtmlTable, display a HTML of a card for the asked period. More...
 
 HtmlTableDetail ($p_array=null, $op_let=0)
 HtmlTable, display a HTML of a card for the asked period. More...
 
 HtmlTableHeader ($p_array=null)
 Display HTML Table Header (button) More...
 
 insert ($p_fiche_def, $p_array=null, $transaction=true)
 insert a new record thanks an array , either as parameter or $_POST More...
 
 is_used ()
 check if a card is used More...
 
 load ()
 Synonum of fiche::getAttribut. More...
 
 move_to ($p_fdid)
 move a card to another cat. More...
 
 remove ($silent=false)
 remove a card, check if not used first, must be synchro with is_used More...
 
 save ($p_fiche_def=0)
 Save a card, call insert or update. More...
 
 seek ($p_attribut, $p_value)
 find the card with the p_attribut equal to p_value, it is not case sensitive More...
 
 set_f_enable ($f_enable)
 
 set_fiche_def ($p_fiche_def)
 
 set_fiche_def_ref ($fiche_def_ref)
 
 set_id ($id)
 
 setAttribut ($p_ad_id, $p_value)
 set an attribute by a value, if the attribut array is empty a call to getAttribut is performed More...
 
 setDisplayMode ($p_mode)
 how the card is display : either in a window or a greated container More...
 
 ShowTable ()
 
 strAttribut ($p_ad_id, $p_return=1)
 
 Summary ($p_search="", $p_action="", $p_sql="", $p_amount=false)
 show the default screen More...
 
 to_array ()
 turn a card into an array , then it can be saved thanks update or insert More...
 
 update ($p_array=null)
 update a card with an array More...
 

Data Fields

 $country
 
 $cp
 
 $name
 
 $poste
 
 $street
 
 $vat_number
 
- Data Fields inherited from Fiche
 $attribut
 
 $cn
 
 $fiche_def
 
 $fiche_def_ref
 
 $id
 
 $quick_code
 
 $row
 
 $tot_cred
 
 $tot_deb
 

Additional Inherited Members

- Static Public Member Functions inherited from Fiche
static cmp_name (Fiche $o1, Fiche $o2)
 used with a usort function, to sort an array of Fiche on the name More...
 
static from_qcode ($p_qcode)
 create a card from a qcode and returns a card More...
 
static get_fiche_def ($p_cn, $pFd_id, $p_order='')
 get all the card from a categorie More...
 
static test_me ()
 

Detailed Description

class Customer are a specific kind of card

Definition at line 31 of file customer.class.php.

Constructor & Destructor Documentation

◆ __construct()

Customer::__construct (   $p_cn,
  $p_id = 0 
)

Constructor /* only a db connection is needed.

Reimplemented from Fiche.

Definition at line 43 of file customer.class.php.

44 {
45 $this->fiche_def_ref=FICHE_TYPE_CLIENT;
46 parent::__construct($p_cn,$p_id) ;
47
48 }
const FICHE_TYPE_CLIENT
Definition: constant.php:247

References $p_id, and FICHE_TYPE_CLIENT.

Member Function Documentation

◆ get_by_account()

Customer::get_by_account (   $p_poste = 0)

Get all info contains in the view thanks to the poste elt (account)

Definition at line 52 of file customer.class.php.

53 {
54 $this->poste=($p_poste==0)?$this->poste:$p_poste;
55 $sql="select * from vw_client where poste_comptable=$1";
56 $Res=$this->cn->exec_sql($sql,array($this->poste));
57 if ( Database::num_row($Res) == 0) return null;
58 if ( Database::num_row($Res) > 1 ) throw new Exception ('Plusieurs fiches avec le même poste',1);
59 // There is only _one_ row by customer
61 $this->name=$row['name'];
62 $this->id=$row['f_id'];
63 $this->street=$row['rue'];
64 $this->cp=$row['code_postal'];
65 $this->country=$row['pays'];
66 $this->vat_number=$row['tva_num'];
67
68 }
$input_from cn
Definition: balance.inc.php:66
$from_poste name
static fetch_array($ret, $p_indice=0, $p_mode=PGSQL_ASSOC)
wrapper for the function pg_fetch_array
static num_row($ret)
wrapper for the function pg_num_rows
$Res

References $Res, Fiche\$row, $sql, cn, DatabaseCore\fetch_array(), name, and DatabaseCore\num_row().

+ Here is the call graph for this function:

◆ VatListing()

Customer::VatListing (   $p_year)

Get all the info for making a vat listing for the vat administration.

Parameters
$p_year
Returns
double array structure is ( j_poste,name,vat_number,amount,tva,customer(object)

Definition at line 79 of file customer.class.php.

80 {
81 $cond_sql=" and A.j_date = B.j_date and extract(year from A.j_date) ='$p_year'";
82 /* List of customer */
83 $aCustomer=$this->cn->get_array('select f_id,name,quick_code,tva_num,poste_comptable from vw_client '.
84 " where tva_num !='' ");
85
86 /* Use the code */
87
88 // BASE ACCOUNT
89 // for belgium
90 $s=new Acc_Parm_Code($this->cn,'VENTE');
91 $s->load();
92 $SOLD=$s->p_value;
93
94 $c=new Acc_Parm_Code($this->cn,'CUSTOMER');
95 $c->load();
96 $CUSTOMER=$c->p_value;
97
98 $t=new Acc_Parm_Code($this->cn,'COMPTE_TVA');
99 $t->load();
100 $TVA=$t->p_value;
101
102 $a_Res=array();
103 /* for each customer compute VAT, Amount...*/
104 foreach ($aCustomer as $l )
105 {
106 // Seek the customer
107 //---
108 $customer=$l['quick_code'];
109 $a_Res[$customer]['name']=$l['name'];
110 $a_Res[$customer]['vat_number']=$l['tva_num'];
111 $a_Res[$customer]['amount']=0;
112 $a_Res[$customer]['tva']=0;
113 $a_Res[$customer]['poste_comptable']=$l['poste_comptable'];
114 /* retrieve only operation of sold and vat */
115 // Get all the sell operation
116 //----
117 $sql="select distinct j_grpt
118 from
119 jrnx as A
120 join jrnx as B using (j_grpt)
121 where
122 A.j_qcode = '".$l['quick_code']."' and
123 B.j_poste::text like '".$SOLD."%'
124 $cond_sql
125 ";
126
127 $Res=$this->cn->exec_sql($sql);
128 // Foreach operation
129 // where 7% or tva account are involved
130 // and store the result in an array (a_Res)
131 //---
132
133 for ($i=0; $i < Database::num_row($Res);$i++)
134 {
135 // Get each row
136 //---
138
139
140 // select the operation
141 //----
142 $Res2=$this->cn->exec_sql("select j_poste,j_montant,j_debit from jrnx where j_grpt=$1",[$row1['j_grpt']]);
144 if ($a_row==FALSE) $a_row=[];
145
146 // Store the amount in the array
147 //---
148 foreach ($a_row as $e)
149 {
150 $amount=0;
151 $tva=0;
152 if ( substr($e['j_poste'],0, strlen($SOLD))===$SOLD)
153 {
154 $amount=($e['j_debit']=='f')?$e['j_montant']:$e['j_montant']*-1;
155 }
156 if ( substr($e['j_poste'],0, strlen($TVA))===$TVA)
157 {
158 $tva=($e['j_debit']=='f')?$e['j_montant']:$e['j_montant']*-1;
159 }
160 // store sold
161 //---
162 $a_Res[$customer]['amount']=(isset($a_Res[$customer]['amount']))?$a_Res[$customer]['amount']:0;
163 $a_Res[$customer]['amount']+=$amount;
164
165 // store vat
166 //---
167 $a_Res[$customer]['tva']=(isset($a_Res[$customer]['tva']))?$a_Res[$customer]['tva']:0;
168 $a_Res[$customer]['tva']+=$tva;
169
170 // store customef info
171 //---
172 $a_Res[$customer]['customer']=$customer;
173 }
174 }// foreach $a
175 } // foreach ( customer)
176
177 return $a_Res;
178 }
Manage the table parm_code which contains the custom parameter for the module accountancy.
static fetch_all($ret)
wrapper for the function pg_fetch_all

References $a_row, $amount, $e, $i, $l, $Res, $s, $sql, cn, DatabaseCore\fetch_all(), DatabaseCore\fetch_array(), and DatabaseCore\num_row().

+ Here is the call graph for this function:

Field Documentation

◆ $country

Customer::$country

$country Country

Definition at line 37 of file customer.class.php.

◆ $cp

Customer::$cp

$cp Zip code

Definition at line 38 of file customer.class.php.

◆ $name

Customer::$name

$name name of the company

Definition at line 35 of file customer.class.php.

◆ $poste

Customer::$poste

$poste poste comptable

Definition at line 34 of file customer.class.php.

◆ $street

Customer::$street

$street Street

Definition at line 36 of file customer.class.php.

◆ $vat_number

Customer::$vat_number

$vat_number vat number

Definition at line 39 of file customer.class.php.


The documentation for this class was generated from the following file: