Skip to content
Snippets Groups Projects
Commit 7e11657b authored by Laurent Destailleur's avatar Laurent Destailleur
Browse files

New: Un motif pour la remise fixe est obligatoire

parent 75b5f866
No related branches found
No related tags found
No related merge requests found
......@@ -52,18 +52,29 @@ if ($user->societe_id > 0)
if ($_POST["action"] == 'setremise')
{
$soc = New Societe($db);
$soc->fetch($_GET["id"]);
$soc->set_remise_except($_POST["remise"],$user,$_POST["desc"]);
if ($result > 0)
if (! price2num($_POST["remise"]) > 0)
{
Header("Location: remx.php?id=".$_GET["id"]);
exit;
$mesg='<div class="error">'.$langs->trans("ErrorFieldFormat",$langs->trans("NewGlobalDiscount")).'</div>';
}
elseif (! $_POST["desc"])
{
$mesg='<div class="error">'.$langs->trans("ErrorFieldRequired",$langs->trans("ReasonDiscount")).'</div>';
}
else
{
$mesg='<div class="error">'.$soc->error.'</div>';
$soc = New Societe($db);
$soc->fetch($_GET["id"]);
$soc->set_remise_except($_POST["remise"],$user,$_POST["desc"]);
if ($result > 0)
{
Header("Location: remx.php?id=".$_GET["id"]);
exit;
}
else
{
$mesg='<div class="error">'.$soc->error.'</div>';
}
}
}
......@@ -86,7 +97,7 @@ if ($_GET["action"] == 'remove')
/*
* Fiche avoirs
* Fiche des remises fixes
*/
llxHeader();
......
......@@ -195,7 +195,7 @@ if ($_GET["propalid"] > 0)
print '</tr>';
// Ligne info remises tiers
print '<tr><td>'.$langs->trans('Info').'</td><td colspan="5">';
print '<tr><td>'.$langs->trans('Discounts').'</td><td colspan="5">';
if ($societe->remise_client) print $langs->trans("CompanyHasRelativeDiscount",$societe->remise_client);
else print $langs->trans("CompanyHasNoRelativeDiscount");
$absolute_discount=$societe->getCurrentDiscount();
......
......@@ -84,9 +84,7 @@ Module22Desc=Emailings' management
Module25Name=Customer Orders
Module25Desc=Customer orders' management
Module30Name=Invoices
Module30Desc=Invoices' management for customers or suppliers
Module35Name=Discounts
Module35Desc=Discounts' management for customers
Module30Desc=Invoices' and credit notes' management for customers. Invoices' management for suppliers
Module40Name=Suppliers
Module40Desc=Suppliers' management
Module42Name=Syslog
......@@ -393,12 +391,12 @@ ErrorConnectOkButWrongDatabase=Connection succeeded but database doesn't look to
##### Invoices #####
BillsSetup=Invoices module setup
BillsDate=Invoices date
BillsNumberingModule=Invoices numbering module
BillsNumberingModule=Invoices and credit notes numbering module
BillsPDFModules=Invoice documents models
DiscountSetup=Credit note module setup
DiscountsNumberingModules=Credit note numbering modules
DiscountsPDFModules=Credit note document models
Discounts=Discounts
CreditNoteSetup=Credit note module setup
CreditNotePDFModules=Credit note document models
CreditNote=Credit note
CreditNotes=Credit notes
ForceInvoiceDate=Force invoice date to validation date
DisableRepeatable=Disable repeatable invoices
SuggestedPaymentModesIfNotDefinedInInvoice=Suggested Payments mode on invoices if not explicitely defined
......
......@@ -121,7 +121,12 @@ CreateFromRepeatableInvoice=Create from repeatable invoice
ExportDataset_invoice_1=Customer invoices list and invoices' lines
ProformaBill=Proforma Bill:
Reduction=Reduction
ReductionShort=Reduc
ReductionShort=Reduc.
Reductions=Reductions
ReductionsShort=Reduc.
Discount=Discount
Discounts=Discounts
RelativeDiscount=Relative discount
GlobalDiscount=Global discount
CreditNote=Credit note
CreditNotes=Credit notes
......
......@@ -2,6 +2,7 @@
charset=iso-8859-1
Error=Error
ErrorFieldRequired=Field '%s' is required
ErrorFieldFormat=Field '%s' has a bad value
ErrorFileDoesNotExists=File %s does not exists
ErrorFailedToOpenFile=Failed to open file %s
ErrorCanNotCreateDir=Can not create dir %s
......@@ -21,6 +22,7 @@ ErrorWrongHostParameter=Wrong host parameter
ErrorYourCountryIsNotDefined=Your country is not defined. Go to Home-Setup-Edit and post again the form.
ErrorRecordIsUsedByChild=Failed to delete this record. This record is used by at least on child records.
ErrorWrongValue=Wrong value
ErrorWrongValueForParameterX=Wrong value for parameter %s
SeeAbove=See above
HomeArea=Home area
LastAccess=Last access
......
......@@ -83,10 +83,8 @@ Module22Name=Mailings
Module22Desc=Administration et envoi de mailings
Module25Name=Commandes clients
Module25Desc=Gestion des commandes clients
Module30Name=Factures
Module30Desc=Gestion des factures clients ou fournisseurs
Module35Name=Avoirs
Module35Desc=Gestion des avoirs clients
Module30Name=Factures et avoirs
Module30Desc=Gestion des factures et avoirs clients. Gestion des factures fournisseurs
Module40Name=Fournisseurs
Module40Desc=Gestion des fournisseurs
Module42Name=Syslog
......@@ -393,12 +391,12 @@ ErrorConnectOkButWrongDatabase=La connexion a r
##### Invoices #####
BillsSetup=Configuration du module Factures
BillsDate=Date des factures
BillsNumberingModule=Module de numérotation des factures
BillsNumberingModule=Module de numérotation des factures et avoirs
BillsPDFModules=Modèle de document de factures
DiscountSetup=Configuration du module Avoirs
DiscountsNumberingModules=Modules de numérotation des avoirs
DiscountsPDFModules=Modèles de documents des avoirs
Discounts=Avoirs
CreditNoteSetup=Configuration du module Avoirs
CreditNotePDFModules=Modèles de documents des avoirs
CreditNote=Avoir
CreditNotes=Avoirs
ForceInvoiceDate=Forcer la date de facture à la date de validation
DisableRepeatable=Désactiver les factures récurrentes
SuggestedPaymentModesIfNotDefinedInInvoice=Modes de paiements suggérés sur les factures si non défini explicitement
......
......@@ -122,6 +122,11 @@ ExportDataset_invoice_1=Factures clients et lignes de facture
ProformaBill=Facture Proforma :
Reduction=Réduction
ReductionShort=Réduc.
Reductions=Réductions
ReductionsShort=Réduc.
Discount=Remise
Discounts=Remises
RelativeDiscount=Remise relative
GlobalDiscount=Remise fixe
CreditNote=Avoir
CreditNotes=Avoirs
......
......@@ -2,6 +2,7 @@
charset=iso-8859-1
Error=Erreur
ErrorFieldRequired=Le champ '%s' est obligatoire
ErrorFieldFormat=Le champ '%s' a une valeur incorrecte
ErrorFileDoesNotExists=Le fichier %s n'existe pas
ErrorFailedToOpenFile=Impossible d'ouvrir le fichier %s
ErrorCanNotCreateDir=Impossible de créer le répertoire %s
......@@ -21,6 +22,7 @@ ErrorWrongHostParameter=Mauvais param
ErrorYourCountryIsNotDefined=Votre pays n'est pas défini. Corriger en allant dans Configuration-Général-Editer.
ErrorRecordIsUsedByChild=Impossible de supprimer cet enregistrement. Ce dernier est utilisé en tant que père par au moins un enregistrement fils.
ErrorWrongValue=Valeur incorrecte
ErrorWrongValueForParameterX=Valeur incorrecte pour le paramètre %s
SeeAbove=Voir ci-dessus
HomeArea=Espace accueil
LastAccess=Dernière connexion
......
......@@ -923,14 +923,31 @@ class Societe
}
/**
* \brief Ajoute un avoir pour la socit
* \brief Ajoute une remise fixe pour la socit
* \param remise Montant de la remise
* \param user Utilisateur qui accorde la remise
* \param desc Motif de l'avoir
* \return int <0 si ko, id de l'avoir si ok
* \return int <0 si ko, id de la ligne de remise si ok
*/
function set_remise_except($remise, $user, $desc)
{
global $langs;
// Nettoyage des parametres
$remise = price2num($remise);
$desc = trim($desc);
if (! $remise > 0)
{
$this->error=$langs->trans("ErrorWrongValueForParameter","1");
return -1;
}
if (! $desc)
{
$this->error=$langs->trans("ErrorWrongValueForParameter","3");
return -2;
}
if ($this->id)
{
$remise = price2num($remise);
......@@ -942,7 +959,7 @@ class Societe
if (! $this->db->query($sql) )
{
$this->error=$this->db->lasterror();
return -1;
return -3;
}
else
{
......
......@@ -269,4 +269,8 @@ alter table llx_commandedet add column rang integer DEFAULT 0;
alter table llx_propaldet add column rang integer DEFAULT 0;
alter table llx_facture drop column model;
alter table llx_facture add column model_pdf varchar(50) after note_public;
\ No newline at end of file
alter table llx_facture add column model_pdf varchar(50) after note_public;
update llx_societe_remise_except set description='Remise sans description' where description is NULL or description ='';
alter table llx_societe_remise_except modify description varchar(255) NOT NULL;
\ No newline at end of file
-- ============================================================================
-- Copyright (C) 2004 Rodolphe Quiedeville <rodolphe@quiedeville.org>
-- Copyright (C) 2006 Laurent Destailleur <eldy@users.sourceforge.net>
--
-- This program is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
......@@ -19,8 +20,6 @@
-- $Source$
--
-- Remises exceptionnelles
--
--
-- ============================================================================
create table llx_societe_remise_except
......@@ -31,6 +30,5 @@ create table llx_societe_remise_except
amount_ht real NOT NULL,
fk_user integer NOT NULL,
fk_facture integer,
description text
description varchar(255) NOT NULL
)type=innodb;
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment