Fix: Bank receipt translation and fix

This commit is contained in:
Laurent Destailleur 2008-12-01 23:51:52 +00:00
parent 58e4844795
commit a644c122f3
9 changed files with 78 additions and 58 deletions

View File

@ -137,7 +137,7 @@ if ($_POST['action'] == 'builddoc' && $user->rights->banque)
$result = $remisecheque->GeneratePdf($_POST["model"], $outputlangs);
if ($result <= 0)
{
dolibarr_print_error($db,$result);
dolibarr_print_error($db,$remisecheque->error);
exit;
}
else
@ -443,7 +443,7 @@ if ($_GET['action'] != 'new')
if ($remisecheque->statut == 1)
{
$dir = DOL_DATA_ROOT.'/compta/bordereau/'.get_exdir($remisecheque->number);
$gen = array('Blochet');
$gen = array('blochet'=>'blochet');
$formfile->show_documents("remisecheque","",$dir,$_SERVER["PHP_SELF"].'?id='.$remisecheque->id,$gen,1);
}
}

View File

@ -405,70 +405,86 @@ class RemiseCheque extends CommonObject
/**
* \brief Génère le fichier PDF
* \param model Nom du modele
* \return int <0 si KO, 0 si OK
* \brief Build document
* \param model Model name
* \return int <0 if KO, >0 if OK
*/
function GeneratePdf($model='blochet', $outputlangs)
{
require_once(DOL_DOCUMENT_ROOT ."/compta/bank/account.class.php");
require_once(DOL_DOCUMENT_ROOT ."/includes/modules/cheque/pdf/pdf_".$model.".class.php");
global $langs;
dolibarr_syslog("RemiseCheque::GeneratePdf model=".$model, LOG_DEBUG);
$class='BordereauCheque'.ucfirst($model);
$pdf = new $class($db);
$dir=DOL_DOCUMENT_ROOT ."/includes/modules/cheque/pdf/";
$sql = "SELECT b.banque, b.emetteur, b.amount, b.num_chq ";
$sql.= " FROM ".MAIN_DB_PREFIX."bank as b, ".MAIN_DB_PREFIX."bank_account as ba ";
$sql.= " , ".MAIN_DB_PREFIX."bordereau_cheque as bc";
$sql.= " WHERE b.fk_account = ba.rowid AND b.fk_bordereau = bc.rowid";
$sql.= " AND bc.rowid = ".$this->id;
$sql.= " ORDER BY b.emetteur ASC, b.rowid ASC;";
dolibarr_syslog("RemiseCheque::GeneratePdf sql=".$sql, LOG_DEBUG);
$result = $this->db->query($sql);
if ($result)
// Charge le modele
$file = "pdf_".$model.".class.php";
if (file_exists($dir.$file))
{
$i = 0;
while ( $objp = $this->db->fetch_object($result) )
require_once(DOL_DOCUMENT_ROOT ."/compta/bank/account.class.php");
require_once($dir.$file);
$classname='BordereauCheque'.ucfirst($model);
$pdf = new $classname($db);
$sql = "SELECT b.banque, b.emetteur, b.amount, b.num_chq ";
$sql.= " FROM ".MAIN_DB_PREFIX."bank as b, ".MAIN_DB_PREFIX."bank_account as ba ";
$sql.= " , ".MAIN_DB_PREFIX."bordereau_cheque as bc";
$sql.= " WHERE b.fk_account = ba.rowid AND b.fk_bordereau = bc.rowid";
$sql.= " AND bc.rowid = ".$this->id;
$sql.= " ORDER BY b.emetteur ASC, b.rowid ASC;";
dolibarr_syslog("RemiseCheque::GeneratePdf sql=".$sql, LOG_DEBUG);
$result = $this->db->query($sql);
if ($result)
{
$pdf->lines[$i]->bank_chq = $objp->banque;
$pdf->lines[$i]->emetteur_chq = $objp->emetteur;
$pdf->lines[$i]->amount_chq = $objp->amount;
$pdf->lines[$i]->num_chq = $objp->num_chq;
$i++;
$i = 0;
while ( $objp = $this->db->fetch_object($result) )
{
$pdf->lines[$i]->bank_chq = $objp->banque;
$pdf->lines[$i]->emetteur_chq = $objp->emetteur;
$pdf->lines[$i]->amount_chq = $objp->amount;
$pdf->lines[$i]->num_chq = $objp->num_chq;
$i++;
}
}
}
$pdf->nbcheque = $this->nbcheque;
$pdf->number = $this->number;
$pdf->amount = $this->amount;
$pdf->date = $this->date_bordereau;
$pdf->nbcheque = $this->nbcheque;
$pdf->number = $this->number;
$pdf->amount = $this->amount;
$pdf->date = $this->date_bordereau;
$account = new Account($this->db);
$account->fetch($this->account_id);
$account = new Account($this->db);
$account->fetch($this->account_id);
$pdf->account = &$account;
$pdf->account = &$account;
// We save charset_output to restore it because write_file can change it if needed for
// output format that does not support UTF8.
$sav_charset_output=$outputlangs->charset_output;
$result=$pdf->write_file(DOL_DATA_ROOT.'/compta/bordereau', $this->number, $outputlangs);
if ($result > 0)
{
$outputlangs->charset_output=$sav_charset_output;
return 1;
// We save charset_output to restore it because write_file can change it if needed for
// output format that does not support UTF8.
$sav_charset_output=$outputlangs->charset_output;
$result=$pdf->write_file(DOL_DATA_ROOT.'/compta/bordereau', $this->number, $outputlangs);
if ($result > 0)
{
$outputlangs->charset_output=$sav_charset_output;
return 1;
}
else
{
$outputlangs->charset_output=$sav_charset_output;
dolibarr_syslog("Error");
dolibarr_print_error($db,$pdf->pdferror());
return 0;
}
}
else
{
$outputlangs->charset_output=$sav_charset_output;
dolibarr_syslog("Error");
dolibarr_print_error($db,$pdf->pdferror());
return 0;
$this->error=$langs->trans("ErrorFileDoesNotExists",$dir.$file);
return -1;
}
}
/**
\brief Mets a jour le montant total
\return int, 0 en cas de succes
* \brief Mets a jour le montant total
* \return int, 0 en cas de succes
*/
function UpdateAmount()
{

View File

@ -121,7 +121,7 @@ class FormFile
* \param filename Sub dir to scan (vide si filedir deja complet)
* \param filedir Dir to scan
* \param urlsource Url of origin page (for return)
* \param genallowed G<EFBFBD>n<EFBFBD>ration autoris<EFBFBD>e (1/0 ou array des formats)
* \param genallowed Generation is allowed (1/0 or array of formats)
* \param delallowed Suppression autoris<EFBFBD>e (1/0)
* \param modelselected Modele <EFBFBD> pr<EFBFBD>-s<EFBFBD>lectionner par d<EFBFBD>faut
* \param modelliste Tableau des modeles possibles. Use '' to hide combo select list.

View File

@ -214,7 +214,7 @@ class BordereauChequeBlochet extends FPDF
$pdf->Text(104, 43, $this->account->cle_rib);
$pdf->SetFont('Arial','',10);
$pdf->Text(114, 19, $outputlangs->transnoentities("Sign"));
$pdf->Text(114, 19, $outputlangs->transnoentities("Signature"));
$pdf->Rect(9, 47, 192, 7);
$pdf->line(55, 47, 55, 54);
@ -222,7 +222,7 @@ class BordereauChequeBlochet extends FPDF
$pdf->line(170, 47, 170, 54);
$pdf->SetFont('Arial','',10);
$pdf->Text(10, 52, $outputlangs->transnoentities("ChequeNumber"));
$pdf->Text(10, 52, $outputlangs->transnoentities("NumberOfCheques"));
$pdf->SetFont('Arial','B',10);
$pdf->Text(57, 52, $this->nbcheque);

View File

@ -158,13 +158,13 @@ class ModeleNumRefFactures
/**
\brief Cree un facture sur disque en fonction du modele de FACTURE_ADDON_PDF
\param db objet base de donnee
\param id id de la facture a creer
\param message message
\param modele force le modele a utiliser ('' to not force)
\param outputlangs objet lang a utiliser pour traduction
\return int <0 si KO, >0 si OK
* \brief Cree un facture sur disque en fonction du modele de FACTURE_ADDON_PDF
* \param db objet base de donnee
* \param id id de la facture a creer
* \param message message
* \param modele force le modele a utiliser ('' to not force)
* \param outputlangs objet lang a utiliser pour traduction
* \return int <0 if KO, >0 if OK
*/
function facture_pdf_create($db, $id, $message, $modele, $outputlangs)
{

View File

@ -111,6 +111,7 @@ DeleteCheckReceipt=Delete this check receipt ?
ConfirmDeleteCheckReceipt=Are you sure you want to delete this check receipt ?
BankChecks=Bank cheques
BankChecksToReceipt=Cheques waiting for deposit
NumberOfCheques=Nb of cheques
DeleteTransaction=Delete transaction
ConfirmDeleteTransaction=Are you sure you want to delete this transaction ?
ThisWillAlsoDeleteBankRecord=This will also delete generated bank transactions

View File

@ -458,6 +458,7 @@ CurrentUserLanguage=Current language
CurrentTheme=Current theme
For=For
ForCustomer=For customer
Signature=Signature
# Week day
Monday=Monday
Tuesday=Tuesday

View File

@ -111,6 +111,7 @@ DeleteCheckReceipt=Supprimer ce bordereau de remise ?
ConfirmDeleteCheckReceipt=Etes-vous sûr de vouloir supprimer ce bordereau ?
BankChecks=Chèques
BankChecksToReceipt=Chèques à déposer
NumberOfCheques=Nb de chèques
DeleteTransaction=Supprimer la transaction
ConfirmDeleteTransaction=Etes-vous sur de vouloir supprimer cette transaction ?
ThisWillAlsoDeleteBankRecord=Ceci supprimera aussi les écritures banquaires générées

View File

@ -459,6 +459,7 @@ CurrentUserLanguage=Langue utilisateur actuelle
CurrentTheme=Theme courant
For=Pour
ForCustomer=Pour le client
Signature=Sign
# Week day
Monday=Lundi
Tuesday=Mardi