diff --git a/htdocs/compta/bank/card.php b/htdocs/compta/bank/card.php
index 75ba80052bc..804d2c5511d 100644
--- a/htdocs/compta/bank/card.php
+++ b/htdocs/compta/bank/card.php
@@ -38,6 +38,7 @@ if (! empty($conf->categorie->enabled)) require_once DOL_DOCUMENT_ROOT . '/categ
if (! empty($conf->accounting->enabled)) require_once DOL_DOCUMENT_ROOT . '/accountancy/class/html.formventilation.class.php';
if (! empty($conf->accounting->enabled)) require_once DOL_DOCUMENT_ROOT . '/core/class/html.formaccounting.class.php';
if (! empty($conf->accounting->enabled)) require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingaccount.class.php';
+if (! empty($conf->accounting->enabled)) require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingjournal.class.php';
$langs->load("banks");
$langs->load("bills");
@@ -100,7 +101,7 @@ if ($action == 'add')
$account_number = GETPOST('account_number','alpha');
if ($account_number <= 0) { $object->account_number = ''; } else { $object->account_number = $account_number; }
- $object->accountancy_journal = trim($_POST["accountancy_journal"]);
+ $object->fk_accountancy_journal = trim($_POST["fk_accountancy_journal"]);
$object->solde = $_POST["solde"];
$object->date_solde = dol_mktime(12,0,0,$_POST["remonth"],$_POST["reday"],$_POST["reyear"]);
@@ -198,7 +199,7 @@ if ($action == 'update')
$account_number = GETPOST('account_number', 'int');
if ($account_number <= 0) { $object->account_number = ''; } else { $object->account_number = $account_number; }
- $object->accountancy_journal = trim($_POST["accountancy_journal"]);
+ $object->fk_accountancy_journal = trim($_POST["fk_accountancy_journal"]);
$object->currency_code = trim($_POST["account_currency_code"]);
@@ -537,7 +538,7 @@ if ($action == 'create')
{
print '
| '.$langs->trans("AccountancyJournal").' | ';
print '';
- print $formaccountancy2->select_journal($object->accountancy_journal, 'accountancy_journal', 4, 1, '', 1, 1);
+ print $formaccountancy2->select_journal($object->fk_accountancy_journal, 'fk_accountancy_journal', 4, 1, '', 1, 1);
print ' |
';
}
@@ -681,7 +682,14 @@ else
if (! empty($conf->accounting->enabled))
{
print '| '.$langs->trans("AccountancyJournal").' | ';
- print ''.$object->accountancy_journal.' |
';
+ print '';
+
+ $accountingjournal = new AccountingJournal($db);
+ $accountingjournal->fetch($object->fk_accountancy_journal);
+
+ print $accountingjournal->getNomUrl(0,1,1,'',1);
+
+ print ' | ';
}
// Other attributes
@@ -986,7 +994,7 @@ else
{
print '| '.$langs->trans("AccountancyJournal").' | ';
print '';
- print $formaccountancy2->select_journal($object->accountancy_journal, 'accountancy_journal', 4, 1, '', 1, 1);
+ print $formaccountancy2->select_journal($object->fk_accountancy_journal, 'fk_accountancy_journal', 4, 1, '', 1, 1);
print ' |
';
}
diff --git a/htdocs/compta/bank/class/account.class.php b/htdocs/compta/bank/class/account.class.php
index 897fd5de496..33181f666d7 100644
--- a/htdocs/compta/bank/class/account.class.php
+++ b/htdocs/compta/bank/class/account.class.php
@@ -160,7 +160,7 @@ class Account extends CommonObject
* @var string
*/
public $account_number;
- public $accountancy_journal;
+ public $fk_accountancy_journal;
/**
* Currency code
@@ -545,7 +545,7 @@ class Account extends CommonObject
$sql.= ", label";
$sql.= ", entity";
$sql.= ", account_number";
- $sql.= ", accountancy_journal";
+ $sql.= ", fk_accountancy_journal";
$sql.= ", bank";
$sql.= ", code_banque";
$sql.= ", code_guichet";
@@ -569,7 +569,7 @@ class Account extends CommonObject
$sql.= ", '".$this->db->escape($this->label)."'";
$sql.= ", ".$conf->entity;
$sql.= ", '".$this->db->escape($this->account_number)."'";
- $sql.= ", '".$this->db->escape($this->accountancy_journal)."'";
+ $sql.= ", '".$this->db->escape($this->fk_accountancy_journal)."'";
$sql.= ", '".$this->db->escape($this->bank)."'";
$sql.= ", '".$this->code_banque."'";
$sql.= ", '".$this->code_guichet."'";
@@ -702,7 +702,7 @@ class Account extends CommonObject
$sql.= ",rappro = ".$this->rappro;
$sql.= ",url = ".($this->url?"'".$this->url."'":"null");
$sql.= ",account_number = '".$this->account_number."'";
- $sql.= ",accountancy_journal = '".$this->accountancy_journal."'";
+ $sql.= ",fk_accountancy_journal = '".$this->fk_accountancy_journal."'";
$sql.= ",bank = '".$this->db->escape($this->bank)."'";
$sql.= ",code_banque='".$this->code_banque."'";
@@ -847,7 +847,7 @@ class Account extends CommonObject
$sql = "SELECT ba.rowid, ba.ref, ba.label, ba.bank, ba.number, ba.courant, ba.clos, ba.rappro, ba.url,";
$sql.= " ba.code_banque, ba.code_guichet, ba.cle_rib, ba.bic, ba.iban_prefix as iban,";
$sql.= " ba.domiciliation, ba.proprio, ba.owner_address, ba.state_id, ba.fk_pays as country_id,";
- $sql.= " ba.account_number, ba.accountancy_journal, ba.currency_code,";
+ $sql.= " ba.account_number, ba.fk_accountancy_journal, ba.currency_code,";
$sql.= " ba.min_allowed, ba.min_desired, ba.comment,";
$sql.= " ba.datec as date_creation, ba.tms as date_update,";
$sql.= ' c.code as country_code, c.label as country,';
@@ -897,7 +897,7 @@ class Account extends CommonObject
$this->country = $obj->country;
$this->account_number = $obj->account_number;
- $this->accountancy_journal = $obj->accountancy_journal;
+ $this->fk_accountancy_journal = $obj->fk_accountancy_journal;
$this->currency_code = $obj->currency_code;
$this->account_currency_code = $obj->currency_code;
@@ -1259,7 +1259,7 @@ class Account extends CommonObject
include_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
$langs->load("accountancy");
$label .= '
' . $langs->trans('AccountAccounting') . ': ' . length_accountg($this->account_number);
- $label .= '
' . $langs->trans('AccountancyJournal') . ': ' . $this->accountancy_journal;
+ $label .= '
' . $langs->trans('AccountancyJournal') . ': ' . $this->fk_accountancy_journal;
}
$linkclose = '" title="'.dol_escape_htmltag($label, 1).'" class="classfortooltip">';
diff --git a/htdocs/compta/bank/index.php b/htdocs/compta/bank/index.php
index b808fa8f596..19ec335cac5 100644
--- a/htdocs/compta/bank/index.php
+++ b/htdocs/compta/bank/index.php
@@ -29,6 +29,8 @@ require_once DOL_DOCUMENT_ROOT.'/core/lib/bank.lib.php';
require_once DOL_DOCUMENT_ROOT.'/compta/tva/class/tva.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
+if (! empty($conf->accounting->enabled)) require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingaccount.class.php';
+if (! empty($conf->accounting->enabled)) require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingjournal.class.php';
$langs->load("banks");
$langs->load("categories");
@@ -88,7 +90,7 @@ $arrayfields=array(
'b.label'=>array('label'=>$langs->trans("Label"), 'checked'=>1),
'b.number'=>array('label'=>$langs->trans("AccountIdShort"), 'checked'=>1),
'b.account_number'=>array('label'=>$langs->trans("AccountAccounting"), 'checked'=>$conf->accountancy->enabled),
- 'b.accountancy_journal'=>array('label'=>$langs->trans("AccountancyJournal"), 'checked'=>$conf->accountancy->enabled),
+ 'b.fk_accountancy_journal'=>array('label'=>$langs->trans("AccountancyJournal"), 'checked'=>$conf->accountancy->enabled),
'toreconcile'=>array('label'=>$langs->trans("TransactionsToConciliate"), 'checked'=>1),
'b.datec'=>array('label'=>$langs->trans("DateCreation"), 'checked'=>0, 'position'=>500),
'b.tms'=>array('label'=>$langs->trans("DateModificationShort"), 'checked'=>0, 'position'=>500),
@@ -141,7 +143,7 @@ $title=$langs->trans('BankAccounts');
// Load array of financial accounts (opened by default)
$accounts = array();
-$sql = "SELECT rowid, label, courant, rappro, account_number, accountancy_journal, datec as date_creation, tms as date_update";
+$sql = "SELECT rowid, label, courant, rappro, account_number, fk_accountancy_journal, datec as date_creation, tms as date_update";
// Add fields from extrafields
foreach ($extrafields->attribute_label as $key => $val) $sql.=($extrafields->attribute_type[$key] != 'separate' ? ",ef.".$key.' as options_'.$key : '');
// Add fields from hooks
@@ -323,7 +325,7 @@ if (! empty($arrayfields['b.account_number']['checked']))
print '';
}
// Accountancy journal
-if (! empty($arrayfields['b.accountancy_journal']['checked']))
+if (! empty($arrayfields['b.fk_accountancy_journal']['checked']))
{
print '';
print ' | ';
@@ -403,7 +405,7 @@ if (! empty($arrayfields['b.label']['checked'])) print_liste_field_titr
if (! empty($arrayfields['accountype']['checked'])) print_liste_field_titre($arrayfields['accountype']['label'],$_SERVER["PHP_SELF"],'','',$param,'',$sortfield,$sortorder);
if (! empty($arrayfields['b.number']['checked'])) print_liste_field_titre($arrayfields['b.number']['label'],$_SERVER["PHP_SELF"],'b.number','',$param,'',$sortfield,$sortorder);
if (! empty($arrayfields['b.account_number']['checked'])) print_liste_field_titre($arrayfields['b.account_number']['label'],$_SERVER["PHP_SELF"],'b.account_number','',$param,'',$sortfield,$sortorder);
-if (! empty($arrayfields['b.accountancy_journal']['checked'])) print_liste_field_titre($arrayfields['b.accountancy_journal']['label'],$_SERVER["PHP_SELF"],'b.accountancy_journal','',$param,'',$sortfield,$sortorder);
+if (! empty($arrayfields['b.fk_accountancy_journal']['checked'])) print_liste_field_titre($arrayfields['b.fk_accountancy_journal']['label'],$_SERVER["PHP_SELF"],'b.fk_accountancy_journal','',$param,'',$sortfield,$sortorder);
if (! empty($arrayfields['toreconcile']['checked'])) print_liste_field_titre($arrayfields['toreconcile']['label'],$_SERVER["PHP_SELF"],'','',$param,'align="center"',$sortfield,$sortorder);
// Extra fields
if (is_array($extrafields->attribute_label) && count($extrafields->attribute_label))
@@ -488,16 +490,23 @@ foreach ($accounts as $key=>$type)
if (! empty($arrayfields['b.account_number']['checked']))
{
include_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
- print ''.length_accountg($acc->account_number).' | ';
+
+ $accountingaccount = new AccountingAccount($db);
+ $accountingaccount->fetch('',$acc->account_number);
+
+ print ''.length_accountg($accountingaccount->getNomUrl(0,1,1,'',1)).' | ';
+
if (! $i) $totalarray['nbfield']++;
}
// Accountancy journal
- if (! empty($arrayfields['b.accountancy_journal']['checked']))
+ if (! empty($arrayfields['b.fk_accountancy_journal']['checked']))
{
- include_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
- print ''.length_accountg($acc->accountancy_journal).' | ';
- if (! $i) $totalarray['nbfield']++;
+ $accountingjournal = new AccountingJournal($db);
+ $accountingjournal->fetch($acc->fk_accountancy_journal);
+
+ print ''.$accountingjournal->getNomUrl(0,1,1,'',1).' | ';
+ if (! $i) $totalarray['nbfield']++;
}
// Transactions to reconcile
diff --git a/htdocs/compta/bank/various_payment/index.php b/htdocs/compta/bank/various_payment/index.php
index 6c4b41333f1..abf6d23d22e 100644
--- a/htdocs/compta/bank/various_payment/index.php
+++ b/htdocs/compta/bank/various_payment/index.php
@@ -89,7 +89,7 @@ $variousstatic = new PaymentVarious($db);
$accountstatic = new Account($db);
$sql = "SELECT v.rowid, v.amount, v.label, v.datep as datep, v.datev as datev, v.fk_typepayment as type, v.num_payment, v.fk_bank,";
-$sql.= " ba.rowid as bid, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.accountancy_journal, ba.label as blabel,";
+$sql.= " ba.rowid as bid, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.fk_accountancy_journal, ba.label as blabel,";
$sql.= " pst.code as payment_code";
$sql.= " FROM ".MAIN_DB_PREFIX."payment_various as v";
$sql.= " LEFT JOIN ".MAIN_DB_PREFIX."c_paiement as pst ON v.fk_typepayment = pst.id";
@@ -217,7 +217,7 @@ if ($result)
$accountstatic->ref=$obj->bref;
$accountstatic->number=$obj->bnumber;
$accountstatic->accountancy_number=$obj->account_number;
- $accountstatic->accountancy_journal=$obj->accountancy_journal;
+ $accountstatic->fk_accountancy_journal=$obj->fk_accountancy_journal;
$accountstatic->label=$obj->blabel;
print $accountstatic->getNomUrl(1);
}
diff --git a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql
index 9e4699b2e4b..a9293ea6915 100644
--- a/htdocs/install/mysql/migration/5.0.0-6.0.0.sql
+++ b/htdocs/install/mysql/migration/5.0.0-6.0.0.sql
@@ -260,7 +260,7 @@ UPDATE llx_accounting_journal SET nature = 4 where (code = 'BK' or code = 'BQ')
ALTER TABLE llx_bank_account CHANGE COLUMN accountancy_journal fk_accountancy_journal integer;
-ALTER TABLE llx_bank_account ADD CONSTRAINT bank_fk_accountancy_journal FOREIGN KEY (fk_accountancy_journal) REFERENCES llx_accounting_journal (rowid);
+--ALTER TABLE llx_bank_account ADD CONSTRAINT bank_fk_accountancy_journal FOREIGN KEY (fk_accountancy_journal) REFERENCES llx_accounting_journal (rowid);
diff --git a/htdocs/install/mysql/tables/llx_bank_account.key.sql b/htdocs/install/mysql/tables/llx_bank_account.key.sql
index 0a168d63990..986ca7ea550 100644
--- a/htdocs/install/mysql/tables/llx_bank_account.key.sql
+++ b/htdocs/install/mysql/tables/llx_bank_account.key.sql
@@ -20,4 +20,4 @@
ALTER TABLE llx_bank_account ADD UNIQUE uk_bank_account_label (label,entity);
-ALTER TABLE llx_bank_account ADD CONSTRAINT bank_fk_accountancy_journal FOREIGN KEY (fk_accountancy_journal) REFERENCES llx_accounting_journal (rowid);
+-- ALTER TABLE llx_bank_account ADD CONSTRAINT bank_fk_accountancy_journal FOREIGN KEY (fk_accountancy_journal) REFERENCES llx_accounting_journal (rowid);
diff --git a/htdocs/langs/en_US/accountancy.lang b/htdocs/langs/en_US/accountancy.lang
index 9eb4135397f..92fe19676c0 100644
--- a/htdocs/langs/en_US/accountancy.lang
+++ b/htdocs/langs/en_US/accountancy.lang
@@ -61,7 +61,8 @@ ChangeAndLoad=Change and load
Addanaccount=Add an accounting account
AccountAccounting=Accounting account
AccountAccountingShort=Account
-ShowAccoutingAccount=Show accounting account
+ShowAccountingAccount=Show accounting account
+ShowAccountingJournal=Show accounting journal
AccountAccountingSuggest=Accounting account suggested
MenuDefaultAccounts=Default accounts
MenuVatAccounts=Vat accounts