 (Half Day),(Demi-journée)
 and year: ,et l&#39;année:
""" does not exists",""" N'existe pas"
%  Delivered,Livré%
% Amount Billed,Montant Facturé%
% Billed,Facturé%
% Completed,% Terminé
% Delivered,Livré %
% Installed,Installé%
% Received,Reçus%
% of materials billed against this Purchase Order.,% De matières facturées contre ce bon de commande.
% of materials billed against this Sales Order,% De matières facturées contre cette ordonnance ventes
% of materials delivered against this Delivery Note,% Des matériaux livrés contre ce bon de livraison
% of materials delivered against this Sales Order,% Des matériaux livrés contre cette ordonnance ventes
% of materials ordered against this Material Request,% De matériaux ordonnée contre cette Demande de Matériel
% of materials received against this Purchase Order,% Des documents reçus contre ce bon de commande
'Actual Start Date' can not be greater than 'Actual End Date',« Date de Début réel » ne peut être supérieur à ' Date réelle de fin »
'Based On' and 'Group By' can not be same,"Types d'emploi ( permanent, contractuel , stagiaire , etc ) ."
'Days Since Last Order' must be greater than or equal to zero,Arbre de centres de coûts finanial .
'Entries' cannot be empty,précédent
'Expected Start Date' can not be greater than 'Expected End Date',Pas de description
'From Date' is required,Série mise à jour avec succès
'From Date' must be after 'To Date',« Date d' 'doit être après « à jour »
'Has Serial No' can not be 'Yes' for non-stock item,Un produit ou service
'Notification Email Addresses' not specified for recurring invoice,Conditions qui se chevauchent entre trouvés :
'Profit and Loss' type account {0} not allowed in Opening Entry,dépréciation
'To Case No.' cannot be less than 'From Case No.',«L&#39;affaire no &#39; ne peut pas être inférieure à &#39;De Cas n °&#39;
'To Date' is required,Compte {0} existe déjà
'Update Stock' for Sales Invoice {0} must be set,Remarque: la date d'échéance dépasse les jours de crédit accordés par {0} jour (s )
* Will be calculated in the transaction.,* Sera calculé de la transaction.
1 Currency = [?] FractionFor e.g. 1 USD = 100 Cent,"1 devise = [?] Fraction  Pour exemple, 1 USD = 100 cents"
1. To maintain the customer wise item code and to make them searchable based on their code use this option,1. Pour maintenir le code de référence du client sage et de les rendre consultables en fonction de leur code d&#39;utiliser cette option
"<a href=""#Sales Browser/Customer Group"">Add / Edit</a>","<a href=""#Sales Browser/Customer Group""> Ajouter / Modifier < / a>"
"<a href=""#Sales Browser/Item Group"">Add / Edit</a>","<a href=""#Sales Browser/Item Group""> Ajouter / Modifier < / a>"
"<a href=""#Sales Browser/Territory"">Add / Edit</a>","<a href=""#Sales Browser/Territory""> Ajouter / Modifier < / a>"
"<h4>Default Template</h4><p>Uses <a href=""http://jinja.pocoo.org/docs/templates/"">Jinja Templating</a> and all the fields of Address (including Custom Fields if any) will be available</p><pre><code>{{ address_line1 }}&lt;br&gt;{% if address_line2 %}{{ address_line2 }}&lt;br&gt;{% endif -%}{{ city }}&lt;br&gt;{% if state %}{{ state }}&lt;br&gt;{% endif -%}{% if pincode %} PIN:  {{ pincode }}&lt;br&gt;{% endif -%}{{ country }}&lt;br&gt;{% if phone %}Phone: {{ phone }}&lt;br&gt;{% endif -%}{% if fax %}Fax: {{ fax }}&lt;br&gt;{% endif -%}{% if email_id %}Email: {{ email_id }}&lt;br&gt;{% endif -%}</code></pre>","<h4> modèle par défaut </ h4>  <p> Utilise <a href=""http://jinja.pocoo.org/docs/templates/""> Jinja création de modèles </ a> et tous les domaines de l'Adresse ( y compris les champs personnalisés cas échéant) sera disponible </ p>  <pre> <code> {{}} address_line1 Photos  {% si address_line2%} {{}} address_line2 <br> { % endif -%}  {{ville}} Photos  {% si l'état%} {{état}} {% endif Photos -%}  {% if%} code PIN PIN: {{code PIN}} {% endif Photos -%}  {{pays}} Photos  {% si le téléphone%} Téléphone: {{phone}} {<br> % endif -%}  {% if%} fax Fax: {{fax}} {% endif Photos -%}  {% if%} email_id Email: {{}} email_id Photos ; {% endif -%}  </ code> </ pre>"
A Customer Group exists with same name please change the Customer name or rename the Customer Group,BOM récursivité : {0} ne peut pas être le parent ou l'enfant de {2}
A Customer exists with same name,Un client existe avec le même nom
A Lead with this email id should exist,Un responsable de cet identifiant de courriel doit exister
A Product or Service,Un produit ou service
A Supplier exists with same name,Un fournisseur existe avec ce même nom
A symbol for this currency. For e.g. $,Un symbole pour cette monnaie. Par exemple $
AMC Expiry Date,AMC Date d&#39;expiration
Abbr,Abbr
Abbreviation cannot have more than 5 characters,L'abbréviation ne peut pas avoir plus de 5 caractères
Above Value,Au-dessus de la valeur
Absent,Absent
Acceptance Criteria,Critères d&#39;acceptation
Accepted,Accepté
Accepted + Rejected Qty must be equal to Received quantity for Item {0},"La quantité acceptée + rejetée doit être égale à la quantité reçue pour l'Item {0}
Compte {0} doit être SAMES comme débit pour tenir compte de la facture de vente en ligne {0}"
Accepted Quantity,Quantité acceptés
Accepted Warehouse,Entrepôt acceptable
Account,Compte
Account Balance,Solde du compte
Account Created: {0},Compte créé : {0}
Account Details,Détails du compte
Account Head,Responsable du compte
Account Name,Nom du compte
Account Type,Type de compte
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Le solde du compte déjà en crédit, vous n'êtes pas autorisé à mettre en 'équilibre doit être' comme 'débit'"
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Le solde du compte déjà en débit, vous n'êtes pas autorisé à définir 'équilibre doit être' comme 'Crédit'"
Account for the warehouse (Perpetual Inventory) will be created under this Account.,Compte de l'entrepôt ( de l'inventaire permanent ) sera créé sous ce compte .
Account head {0} created,Responsable du compte {0} a été crée
Account must be a balance sheet account,Le compte doit être un bilan
Account with child nodes cannot be converted to ledger,Un compte avec des enfants ne peut pas être converti en grand livre
Account with existing transaction can not be converted to group.,Un compte contenant une transaction ne peut pas être converti en groupe
Account with existing transaction can not be deleted,Un compte contenant une transaction ne peut pas être supprimé
Account with existing transaction cannot be converted to ledger,Un compte contenant une transaction ne peut pas être converti en grand livre
Account {0} cannot be a Group,Compte {0} ne peut pas être un groupe
Account {0} does not belong to Company {1},Compte {0} n'appartient pas à la société {1}
Account {0} does not belong to company: {1},Compte {0} n'appartient pas à la société : {1}
Account {0} does not exist,Compte {0} n'existe pas
Account {0} has been entered more than once for fiscal year {1},Le compte {0} a été renseigné plus d'une fois pour l'année fiscale {1}
Account {0} is frozen,Le compte {0} est gelé
Account {0} is inactive,Le compte {0} est inactif
Account {0} is not valid,Le compte {0} n'est pas valide
Account {0} must be of type 'Fixed Asset' as Item {1} is an Asset Item,Compte {0} doit être de type ' actif fixe ' comme objet {1} est un atout article
Account {0}: Parent account {1} can not be a ledger,Compte {0}: compte de Parent {1} ne peut pas être un grand livre
Account {0}: Parent account {1} does not belong to company: {2},Compte {0}: compte de Parent {1} n'appartient pas à l'entreprise: {2}
Account {0}: Parent account {1} does not exist,Compte {0}: compte de Parent {1} n'existe pas
Account {0}: You can not assign itself as parent account,Compte {0}: Vous ne pouvez pas lui attribuer que compte parent
Account: {0} can only be updated via \					Stock Transactions,Compte: {0} ne peut être mise à jour via \ Transactions de stock
Accountant,Comptable
Accounting,Comptabilité
"Accounting Entries can be made against leaf nodes, called","Écritures comptables peuvent être faites contre nœuds feuilles , appelé"
"Accounting entry frozen up to this date, nobody can do / modify entry except role specified below.","Saisie comptable gelé jusqu&#39;à cette date, personne ne peut faire / modifier entrée sauf rôle spécifié ci-dessous."
Accounting journal entries.,Les écritures comptables.
Accounts,Comptes
Accounts Browser,Navigateur des comptes
Accounts Frozen Upto,Comptes gelés jusqu'au
Accounts Payable,Comptes à payer
Accounts Receivable,Débiteurs
Accounts Settings,Paramètres des comptes
Active,Actif
Active: Will extract emails from ,Actif : extraira les emails depuis
Activity,Activité
Activity Log,Journal d&#39;activité
Activity Log:,Journal d'activité:
Activity Type,Type d&#39;activité
Actual,Réel
Actual Budget,Budget Réel
Actual Completion Date,Date d&#39;achèvement réelle
Actual Date,Date Réelle
Actual End Date,Date de fin réelle
Actual Invoice Date,Date de la facture réelle
Actual Posting Date,Date réelle d'envoie
Actual Qty,Quantité réelle
Actual Qty (at source/target),Quantité réelle (à la source / cible)
Actual Qty After Transaction,Qté réel Après Transaction
Actual Qty: Quantity available in the warehouse.,Quantité réelle : Quantité disponible dans l'entrepôt .
Actual Quantity,Quantité réelle
Actual Start Date,Date de début réelle
Add,Ajouter
Add / Edit Taxes and Charges,Ajouter / Modifier Taxes et Charges
Add Child,Ajouter un enfant
Add Serial No,Ajouter Numéro de série
Add Taxes,Ajouter impôts
Add Taxes and Charges,Ajouter Taxes et frais
Add or Deduct,Ajouter ou déduire
Add rows to set annual budgets on Accounts.,Ajoutez des lignes pour établir des budgets annuels sur des comptes.
Add to Cart,Ajouter au panier
Add to calendar on this date,Ajouter cette date au calendrier
Add/Remove Recipients,Ajouter / supprimer des destinataires
Address,Adresse
Address & Contact,Adresse et coordonnées
Address & Contacts,Adresse & Coordonnées
Address Desc,Adresse Desc
Address Details,Détails de l&#39;adresse
Address HTML,Adresse HTML
Address Line 1,Adresse ligne 1
Address Line 2,Adresse ligne 2
Address Template,Modèle d'adresse
Address Title,Titre de l'adresse
Address Title is mandatory.,Le titre de l'adresse est obligatoire
Address Type,Type d&#39;adresse
Address master.,Adresse principale
Administrative Expenses,Dépenses administratives
Administrative Officer,de l'administration
Advance Amount,Montant de l&#39;avance
Advance amount,Montant de l&#39;avance
Advances,Avances
Advertisement,Publicité
Advertising,publicité
Aerospace,aérospatial
After Sale Installations,Installations Après Vente
Against,Contre
Against Account,Contre compte
Against Bill {0} dated {1},Courriel invalide : {0}
Against Docname,Contre docName
Against Doctype,Contre Doctype
Against Document Detail No,Contre Détail document n
Against Document No,Contre le document n °
Against Expense Account,Contre compte de dépenses
Against Income Account,Contre compte le revenu
Against Journal Voucher,Contre Bon Journal
Against Journal Voucher {0} does not have any unmatched {1} entry,Contre Journal Bon {0} n'a pas encore inégalée {1} entrée
Against Purchase Invoice,Contre facture d&#39;achat
Against Sales Invoice,Contre facture de vente
Against Sales Order,Contre Commande
Against Voucher,Bon contre
Against Voucher Type,Contre Type de Bon
Ageing Based On,Basé sur le vieillissement
Ageing Date is mandatory for opening entry,Titres de modèles d'impression par exemple Facture pro forma.
Ageing date is mandatory for opening entry,Date vieillissement est obligatoire pour l'ouverture de l'entrée
Agent,Agent
Aging Date,date de vieillissement
Aging Date is mandatory for opening entry,"Client requis pour ' Customerwise Discount """
Agriculture,agriculture
Airline,compagnie aérienne
All Addresses.,Toutes les adresses.
All Contact,Tout contact
All Contacts.,Tous les contacts.
All Customer Contact,Tous les contacts clients
All Customer Groups,Tous les groupes client
All Day,Toute la journée
All Employee (Active),Tous les employés (Actif)
All Item Groups,Tous les groupes d'article
All Lead (Open),Toutes les pistes (Ouvertes)
All Products or Services.,Tous les produits ou services.
All Sales Partner Contact,Tous les contacts des partenaires commerciaux
All Sales Person,Tous les commerciaux
All Supplier Contact,Tous les contacts fournisseur
All Supplier Types,Tous les types de fournisseurs
All Territories,Tous les secteurs
"All export related fields like currency, conversion rate, export total, export grand total etc are available in Delivery Note, POS, Quotation, Sales Invoice, Sales Order etc.","Tous les champs liés à l'exportation comme monnaie , taux de conversion , l'exportation totale , l'exportation totale grandiose etc sont disponibles dans la note de livraison , POS , offre , facture de vente , Sales Order etc"
"All import related fields like currency, conversion rate, import total, import grand total etc are available in Purchase Receipt, Supplier Quotation, Purchase Invoice, Purchase Order etc.","Tous les champs importation connexes comme monnaie , taux de conversion , totale d'importation , importation grande etc totale sont disponibles en Achat réception , Fournisseur d'offre , facture d'achat , bon de commande , etc"
All items have already been invoiced,Tous les articles ont déjà été facturés
All these items have already been invoiced,Tous ces articles ont déjà été facturés
Allocate,Allouer
Allocate leaves for a period.,Compte temporaire ( actif)
Allocate leaves for the year.,Allouer des feuilles de l&#39;année.
Allocated Amount,Montant alloué
Allocated Budget,Budget alloué
Allocated amount,Montant alloué
Allocated amount can not be negative,Montant alloué ne peut être négatif
Allocated amount can not greater than unadusted amount,Montant alloué ne peut pas plus que la quantité unadusted
Allow Bill of Materials,Laissez Bill of Materials
Allow Bill of Materials should be 'Yes'. Because one or many active BOMs present for this item,Commande {0} n'est pas valide
Allow Children,permettre aux enfants
Allow Dropbox Access,Autoriser l'accès au Dropbox
Allow Google Drive Access,Autoriser l'accès à Google Drive
Allow Negative Balance,Autoriser un solde négatif
Allow Negative Stock,Autoriser un stock négatif
Allow Production Order,Permettre les ordres de fabrication
Allow User,Permettre à l&#39;utilisateur
Allow Users,Autoriser les utilisateurs
Allow the following users to approve Leave Applications for block days.,Autoriser les utilisateurs suivants d&#39;approuver demandes d&#39;autorisation pour les jours de bloc.
Allow user to edit Price List Rate in transactions,Permettre à l&#39;utilisateur d&#39;éditer Prix List Noter dans les transactions
Allowance Percent,Pourcentage allocation
Allowance for over-{0} crossed for Item {1},Allocation pour les plus de {0} croisés pour objet {1}
Allowance for over-{0} crossed for Item {1}.,Allocation pour les plus de {0} franchi pour objet {1}.
Allowed Role to Edit Entries Before Frozen Date,Autorisé rôle à modifier les entrées Avant Frozen date
Amended From,Modifié depuis
Amount,Montant
Amount (Company Currency),Montant (Société Monnaie)
Amount Paid,Montant payé
Amount to Bill,Montant du projet de loi
An Customer exists with same name,Il existe un client avec le même nom
"An Item Group exists with same name, please change the item name or rename the item group","Un groupe d'article existe avec le même nom, changez le nom de l'article ou renommez le groupe d'article SVP"
"An item exists with same name ({0}), please change the item group name or rename the item","Un article existe avec le même nom ({0}), changez le groupe de l'article ou renommez l'article SVP"
Analyst,analyste
Annual,Annuel
Another Period Closing Entry {0} has been made after {1},Point Wise impôt Détail
Another Salary Structure {0} is active for employee {0}. Please make its status 'Inactive' to proceed.,Le taux de conversion ne peut pas être égal à 0 ou 1
"Any other comments, noteworthy effort that should go in the records.","D&#39;autres commentaires, l&#39;effort remarquable qui devrait aller dans les dossiers."
Apparel & Accessories,Vêtements & Accessoires
Applicability,{0} n'est pas un stock Article
Applicable For,Fixez Logo
Applicable Holiday List,Liste de vacances applicable
Applicable Territory,Territoire applicable
Applicable To (Designation),Applicable à (désignation)
Applicable To (Employee),Applicable aux (Employé)
Applicable To (Role),Applicable à (Rôle)
Applicable To (User),Applicable aux (Utilisateur)
Applicant Name,Nom du demandeur
Applicant for a Job.,Candidat à un emploi.
Application of Funds (Assets),Configuration serveur entrant pour les ventes id e-mail . (par exemple sales@example.com )
Applications for leave.,Les demandes de congé.
Applies to Company,S&#39;applique à l&#39;entreprise
Apply On,Pas autorisé à modifier compte gelé {0}
Appraisal,Évaluation
Appraisal Goal,Objectif d&#39;évaluation
Appraisal Goals,Objectifs d&#39;évaluation
Appraisal Template,Modèle d&#39;évaluation
Appraisal Template Goal,Objectif modèle d&#39;évaluation
Appraisal Template Title,Titre modèle d&#39;évaluation
Appraisal {0} created for Employee {1} in the given date range,Soulager date doit être supérieure à date d'adhésion
Apprentice,Apprenti
Approval Status,Statut d&#39;approbation
Approval Status must be 'Approved' or 'Rejected',Le statut d'approbation doit être 'Approuvé' ou 'Rejeté'
Approved,Approuvé
Approver,Approbateur
Approving Role,Approuver rôle
Approving Role cannot be same as role the rule is Applicable To,Vous ne pouvez pas sélectionner le type de charge comme « Sur la ligne précédente Montant » ou « Le précédent Row totale » pour la première rangée
Approving User,Approuver l&#39;utilisateur
Approving User cannot be same as user the rule is Applicable To,Approuver l'utilisateur ne peut pas être identique à l'utilisateur la règle est applicable aux
Are you sure you want to STOP ,Etes-vous sûr de vouloir arrêter
Are you sure you want to UNSTOP ,Etes-vous sûr de vouloir annuler l'arrêt
Arrear Amount,Montant échu
"As Production Order can be made for this item, it must be a stock item.","Comme ordre de fabrication peut être faite de cet élément, il doit être un article en stock ."
As per Stock UOM,Selon Stock UDM
"As there are existing stock transactions for this item, you can not change the values of 'Has Serial No', 'Is Stock Item' and 'Valuation Method'","Comme il ya des transactions boursières existantes pour cet article, vous ne pouvez pas modifier les valeurs de ' A Pas de série »,« Est- Stock Item »et« Méthode d'évaluation »"
Asset,atout
Assistant,assistant
Associate,associé
Atleast one of the Selling or Buying must be selected,Au moins un de la vente ou l'achat doit être sélectionné
Atleast one warehouse is mandatory,Au moins un entrepôt est obligatoire
Attach Image,Joindre l'image
Attach Letterhead,Joindre l'entête
Attach Logo,Joindre le logo
Attach Your Picture,Joindre votre photo
Attendance,Présence
Attendance Date,Date de Participation
Attendance Details,Détails de présence
Attendance From Date,Participation De Date
Attendance From Date and Attendance To Date is mandatory,Participation Date de début et de présence à ce jour est obligatoire
Attendance To Date,La participation à ce jour
Attendance can not be marked for future dates,La participation ne peut pas être marqué pour les dates à venir
Attendance for employee {0} is already marked,Vous ne pouvez pas convertir au groupe parce Master Type ou Type de compte est sélectionné .
Attendance record.,Record de fréquentation.
Authorization Control,Contrôle d&#39;autorisation
Authorization Rule,Règle d&#39;autorisation
Auto Accounting For Stock Settings,Auto Comptabilité Pour les paramètres de droits
Auto Material Request,Auto Demande de Matériel
Auto-raise Material Request if quantity goes below re-order level in a warehouse,Auto-raise Demande de Matériel si la quantité va en dessous du niveau de re-commande dans un entrepôt
Automatically compose message on submission of transactions.,Composer automatiquement un message sur la soumission de transactions .
Automatically extract Job Applicants from a mail box ,Automatically extract Job Applicants from a mail box 
Automatically extract Leads from a mail box e.g.,Extraire automatiquement des prospects à partir d'une boîte aux lettres par exemple
Automatically updated via Stock Entry of type Manufacture/Repack,Automatiquement mis à jour via l&#39;entrée de fabrication de type Stock / Repack
Automotive,automobile
Autoreply when a new mail is received,Réponse automatique lorsqu'un nouveau message est reçu
Available,disponible
Available Qty at Warehouse,Qté disponible à l&#39;entrepôt
Available Stock for Packing Items,Disponible en stock pour l&#39;emballage Articles
"Available in BOM, Delivery Note, Purchase Invoice, Production Order, Purchase Order, Purchase Receipt, Sales Invoice, Sales Order, Stock Entry, Timesheet","Disponible en nomenclature , bon de livraison , facture d'achat , ordre de production, bon de commande , bon de réception , la facture de vente , Sales Order , Stock entrée , des feuilles de temps"
Average Age,âge moyen
Average Commission Rate,Taux moyen de la commission
Average Discount,Remise moyenne
Awesome Products,Produits impressionnants
Awesome Services,Services impressionnants
BOM Detail No,Numéro du détail BOM
BOM Explosion Item,Article éclatement de la nomenclature
BOM Item,Article BOM
BOM No,Numéro BOM
BOM No. for a Finished Good Item,N ° nomenclature pour un produit fini Bonne
BOM Operation,Opération BOM
BOM Operations,Opérations de nomenclature
BOM Replace Tool,Outil Remplacer BOM
BOM number is required for manufactured Item {0} in row {1},Nombre BOM est nécessaire pour l'article manufacturé {0} dans la ligne {1}
BOM number not allowed for non-manufactured Item {0} in row {1},Note: La rubrique {0} est entré plusieurs fois
BOM recursion: {0} cannot be parent or child of {2},S'il vous plaît entrer une adresse valide Id
BOM replaced,BOM remplacé
BOM {0} for Item {1} in row {2} is inactive or not submitted,Dépenses de voyage
BOM {0} is not active or not submitted,Eléments requis
BOM {0} is not submitted or inactive BOM for Item {1},BOM {0} n'est pas soumis ou inactif nomenclature pour objet {1}
Backup Manager,Gestionnaire de sauvegarde
Backup Right Now,Sauvegarder immédiatement
Backups will be uploaded to,Les sauvegardes seront téléchargées sur
Balance Qty,Qté soldée
Balance Sheet,Bilan
Balance Value,Valeur du solde
Balance for Account {0} must always be {1},Solde pour le compte {0} doit toujours être {1}
Balance must be,Solde doit être
"Balances of Accounts of type ""Bank"" or ""Cash""","Solde du compte de type ""Banque"" ou ""Espèces"""
Bank,Banque
Bank / Cash Account,Compte en Banque / trésorerie
Bank A/C No.,No. de compte bancaire
Bank Account,Compte bancaire
Bank Account No.,No. de compte bancaire
Bank Accounts,Comptes bancaires
Bank Clearance Summary,Résumé de l'approbation de la banque
Bank Draft,Projet de la Banque
Bank Name,Nom de la banque
Bank Overdraft Account,Compte du découvert bancaire
Bank Reconciliation,Rapprochement bancaire
Bank Reconciliation Detail,Détail du rapprochement bancaire
Bank Reconciliation Statement,Énoncé de rapprochement bancaire
Bank Voucher,Coupon de la banque
Bank/Cash Balance,Solde de la banque / trésorerie
Banking,Bancaire
Barcode,Barcode
Barcode {0} already used in Item {1},Le code barre {0} est déjà utilisé dans l'article {1}
Based On,Basé sur
Basic,de base
Basic Info,Informations de base
Basic Information,Renseignements de base
Basic Rate,Taux de base
Basic Rate (Company Currency),Taux de base (Monnaie de la Société )
Batch,Lot
Batch (lot) of an Item.,Lot d'une article.
Batch Finished Date,La date finie d'un lot
Batch ID,Identifiant du lot
Batch No,Numéro du lot
Batch Started Date,Date de début du lot
Batch Time Logs for billing.,Temps de lots des journaux pour la facturation.
Batch-Wise Balance History,Discontinu Histoire de la balance
Batched for Billing,Par lots pour la facturation
Better Prospects,De meilleures perspectives
Bill Date,Date de la facture
Bill No,Numéro de la facture
Bill No {0} already booked in Purchase Invoice {1},Centre de coûts de transactions existants ne peut pas être converti en livre
Bill of Material,De la valeur doit être inférieure à la valeur à la ligne {0}
Bill of Material to be considered for manufacturing,Bill of Material être considéré pour la fabrication
Bill of Materials (BOM),Nomenclature (BOM)
Billable,Facturable
Billed,Facturé
Billed Amount,Montant facturé
Billed Amt,Bec Amt
Billing,Facturation
Billing Address,Adresse de facturation
Billing Address Name,Nom de l'adresse de facturation
Billing Status,Statut de la facturation
Bills raised by Suppliers.,Factures reçues des fournisseurs.
Bills raised to Customers.,Factures émises aux clients.
Bin,Boîte
Bio,Bio
Biotechnology,biotechnologie
Birthday,anniversaire
Block Date,Date de bloquer
Block Days,Bloquer les jours
Block leave applications by department.,Bloquer les demandes d&#39;autorisation par le ministère.
Blog Post,Article de blog
Blog Subscriber,Abonné Blog
Blood Group,Groupe sanguin
Both Warehouse must belong to same Company,Les deux Entrepôt doivent appartenir à la même entreprise
Box,boîte
Branch,Branche
Brand,Marque
Brand Name,La marque
Brand master.,Marque maître.
Brands,Marques
Breakdown,Panne
Broadcasting,Diffusion
Brokerage,courtage
Budget,Budget
Budget Allocated,Budget alloué
Budget Detail,Détail du budget
Budget Details,Détails du budget
Budget Distribution,Répartition du budget
Budget Distribution Detail,Détail de la répartition du budget
Budget Distribution Details,Détails de la répartition du budget
Budget Variance Report,Rapport sur les écarts du budget
Budget cannot be set for Group Cost Centers,Imprimer et stationnaire
Build Report,Créer un rapport
Bundle items at time of sale.,Regrouper des envois au moment de la vente.
Business Development Manager,Directeur du développement des affaires
Buying,Achat
Buying & Selling,Achats et ventes
Buying Amount,Montant d&#39;achat
Buying Settings,Réglages d&#39;achat
"Buying must be checked, if Applicable For is selected as {0}","Achat doit être vérifiée, si pour Applicable est sélectionné comme {0}"
C-Form,C-Form
C-Form Applicable,C-Form applicable
C-Form Invoice Detail,C-Form Détail Facture
C-Form No,C-formulaire n °
C-Form records,Enregistrements C -Form
CENVAT Capital Goods,CENVAT biens d'équipement
CENVAT Edu Cess,CENVAT Edu Cess
CENVAT SHE Cess,CENVAT ELLE Cess
CENVAT Service Tax,Service Tax CENVAT
CENVAT Service Tax Cess 1,Service CENVAT impôt Cess 1
CENVAT Service Tax Cess 2,Service CENVAT impôt Cess 2
Calculate Based On,Calculer en fonction
Calculate Total Score,Calculer Score total
Calendar Events,Calendrier des événements
Call,Appeler
Calls,appels
Campaign,Campagne
Campaign Name,Nom de la campagne
Campaign Name is required,Le nom de la campagne est requis
Campaign Naming By,Campagne Naming par
Campaign-.####,Campagne-.####
Can be approved by {0},Peut être approuvé par {0}
"Can not filter based on Account, if grouped by Account","Impossible de filtrer sur les compte , si regroupées par compte"
"Can not filter based on Voucher No, if grouped by Voucher","Impossible de filtrer sur la base Bon Non, si regroupés par Chèque"
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',Remarque : {0}
Cancel Material Visit {0} before cancelling this Customer Issue,Invalid serveur de messagerie . S'il vous plaît corriger et essayer à nouveau.
Cancel Material Visits {0} before cancelling this Maintenance Visit,S'il vous plaît créer la structure des salaires pour les employés {0}
Cancelled,Annulé
Cancelling this Stock Reconciliation will nullify its effect.,Annulation de ce stock de réconciliation annuler son effet .
Cannot Cancel Opportunity as Quotation Exists,Vous ne pouvez pas annuler Possibilité de devis Existe
Cannot approve leave as you are not authorized to approve leaves on Block Dates,Vous ne pouvez pas approuver les congés que vous n'êtes pas autorisé à approuver les congés sur les dates de bloc
Cannot cancel because Employee {0} is already approved for {1},Impossible d'annuler car l'employé {0} est déjà approuvé pour {1}
Cannot cancel because submitted Stock Entry {0} exists,Vous ne pouvez pas annuler car soumis Stock entrée {0} existe
Cannot carry forward {0},Point {0} doit être un achat article
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,Impossible de modifier les dates de début et de fin d'exercice une fois que l'exercice est enregistré.
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.",Voyage
Cannot convert Cost Center to ledger as it has child nodes,Vous ne pouvez pas convertir le centre de coûts à livre car il possède des nœuds enfant
Cannot covert to Group because Master Type or Account Type is selected.,Il y avait des erreurs lors de l'envoi de courriel . S'il vous plaît essayez de nouveau .
Cannot deactive or cancle BOM as it is linked with other BOMs,Données du projet - sage n'est pas disponible d'offre
"Cannot declare as lost, because Quotation has been made.","Vous ne pouvez pas déclarer comme perdu , parce offre a été faite."
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',"Vous ne pouvez pas déduire lorsqu'une catégorie est pour « évaluation » ou « évaluation et Total """
"Cannot delete Serial No {0} in stock. First remove from stock, then delete.",Heure du journal {0} doit être « déposés »
"Cannot directly set amount. For 'Actual' charge type, use the rate field",Programme de maintenance {0} existe contre {0}
"Cannot overbill for Item {0} in row {0} more than {1}. To allow overbilling, please set in Stock Settings","Vous ne pouvez pas surfacturer pour objet {0} à la ligne {0} plus de {1}. Pour permettre la surfacturation, s'il vous plaît mettre dans les paramètres de droits"
Cannot produce more Item {0} than Sales Order quantity {1},effondrement
Cannot refer row number greater than or equal to current row number for this Charge type,Nos série requis pour Serialized article {0}
Cannot return more than {0} for Item {1},développer
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,Point {0} a été saisi plusieurs fois avec la même description ou la date
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for valuation. You can select only 'Total' option for previous row amount or previous row total,Vous pouvez configurer un compte de la Banque de défaut en maître Société
Cannot set as Lost as Sales Order is made.,Impossible de définir aussi perdu que les ventes décret.
Cannot set authorization on basis of Discount for {0},Impossible de définir l'autorisation sur la base des prix réduits pour {0}
Capacity,Capacité
Capacity Units,Unités de capacité
Capital Account,heure
Capital Equipments,Equipements de capitaux
Carry Forward,Reporter
Carry Forwarded Leaves,Effectuer Feuilles Transmises
Case No(s) already in use. Try from Case No {0},Entrées avant {0} sont gelés
Case No. cannot be 0,Cas n ° ne peut pas être 0
Cash,Espèces
Cash In Hand,Votre exercice social commence le
Cash Voucher,Bon trésorerie
Cash or Bank Account is mandatory for making payment entry,N ° de série {0} a déjà été reçu
Cash/Bank Account,Trésorerie / Compte bancaire
Casual Leave,Règles d'application des prix et de ristournes .
Cell Number,Nombre de cellules
Change UOM for an Item.,Changer Emballage pour un article.
Change the starting / current sequence number of an existing series.,Changer le numéro de séquence de démarrage / courant d&#39;une série existante.
Channel Partner,Channel Partner
Charge of type 'Actual' in row {0} cannot be included in Item Rate,Charge de type ' réel ' à la ligne {0} ne peut pas être inclus dans l'article Noter
Chargeable,À la charge
Charity and Donations,Client est tenu
Chart Name,Nom du graphique
Chart of Accounts,Plan comptable
Chart of Cost Centers,Carte des centres de coûts
Check how the newsletter looks in an email by sending it to your email.,Vérifiez comment la newsletter regarde dans un e-mail en l&#39;envoyant à votre adresse email.
"Check if recurring invoice, uncheck to stop recurring or put proper End Date","Vérifiez si la facture récurrente, décochez-vous s&#39;arrête ou mis Date de fin correcte"
"Check if you need automatic recurring invoices. After submitting any sales invoice, Recurring section will be visible.","Vérifiez si vous avez besoin automatiques factures récurrentes. Après avoir présenté la facture de vente, l&#39;article récurrent sera visible."
Check if you want to send salary slip in mail to each employee while submitting salary slip,Vérifiez si vous voulez envoyer le bulletin de salaire dans le courrier à chaque salarié lors de la soumission bulletin de salaire
Check this if you want to force the user to select a series before saving. There will be no default if you check this.,Cochez cette case si vous voulez forcer l&#39;utilisateur à sélectionner une série avant de l&#39;enregistrer. Il n&#39;y aura pas défaut si vous cochez cette.
Check this if you want to show in website,Cochez cette case si vous souhaitez afficher sur le site
Check this to disallow fractions. (for Nos),Cochez cette case pour interdire les fractions. (Pour les numéros)
Check this to pull emails from your mailbox,Cochez cette case pour extraire des emails de votre boîte aux lettres
Check to activate,Vérifiez pour activer
Check to make Shipping Address,Vérifiez l&#39;adresse de livraison
Check to make primary address,Vérifiez l&#39;adresse principale
Chemical,chimique
Cheque,Chèque
Cheque Date,Date de chèques
Cheque Number,Numéro de chèque
Child account exists for this account. You can not delete this account.,Les matières premières ne peut pas être le même que l'article principal
City,Ville
City/Town,Ville
Claim Amount,Montant réclamé
Claims for company expense.,Les réclamations pour frais de la société.
Class / Percentage,Classe / Pourcentage
Classic,Classique
Clear Table,Effacer le tableau
Clearance Date,Date de la clairance
Clearance Date not mentioned,"Désignation des employés (par exemple de chef de la direction , directeur , etc.)"
Clearance date cannot be before check date in row {0},Chefs de lettre pour des modèles d'impression .
Click on 'Make Sales Invoice' button to create a new Sales Invoice.,Cliquez sur le bouton pour créer une nouvelle facture de vente «Facture de vente Make &#39;.
Click on a link to get options to expand get options ,Cliquer sur un lien pour voir les options
Client,Client
Close Balance Sheet and book Profit or Loss.,Fermer Bilan et livre Bénéfice ou perte .
Closed,Fermé
Closing (Cr),Fermeture (Cr)
Closing (Dr),Fermeture (Dr)
Closing Account Head,Fermeture chef Compte
Closing Account {0} must be of type 'Liability',S'il vous plaît sélectionner valide volet n ° de procéder
Closing Date,Date de clôture
Closing Fiscal Year,Clôture de l&#39;exercice
Closing Qty,Quantité de clôture
Closing Value,Valeur de clôture
CoA Help,Aide CoA
Code,Code
Cold Calling,Cold Calling
Color,Couleur
Column Break,Saut de colonne
Comma separated list of email addresses,Comma liste séparée par des adresses e-mail
Comment,Commenter
Comments,Commentaires
Commercial,Reste du monde
Commission,commission
Commission Rate,Taux de commission
Commission Rate (%),Taux de commission (%)
Commission on Sales,Commission sur les ventes
Commission rate cannot be greater than 100,Taux de commission ne peut pas être supérieure à 100
Communication,Communication
Communication HTML,Communication HTML
Communication History,Histoire de la communication
Communication log.,Journal des communications.
Communications,communications
Company,Entreprise
Company (not Customer or Supplier) master.,Fermeture compte {0} doit être de type « responsabilité »
Company Abbreviation,Abréviation de l'entreprise
Company Details,Détails de la société
Company Email,Société Email
"Company Email ID not found, hence mail not sent",Remarque: Il n'est pas assez solde de congés d'autorisation de type {0}
Company Info,Informations sur la société
Company Name,Nom de la société
Company Settings,des paramètres de société
Company is missing in warehouses {0},Société est manquant dans les entrepôts {0}
Company is required,Société est tenue
Company registration numbers for your reference. Example: VAT Registration Numbers etc.,"Numéros d&#39;immatriculation de la Société pour votre référence. Numéros d&#39;enregistrement TVA, etc: par exemple"
Company registration numbers for your reference. Tax numbers etc.,"Numéros d&#39;immatriculation de la Société pour votre référence. Numéros de taxes, etc"
"Company, Month and Fiscal Year is mandatory","Société , le mois et l'année fiscale est obligatoire"
Compensatory Off,faire
Complete,Compléter
Complete Setup,congé de maladie
Completed,Terminé
Completed Production Orders,Terminé les ordres de fabrication
Completed Qty,Quantité complétée
Completion Date,Date d&#39;achèvement
Completion Status,L&#39;état d&#39;achèvement
Computer,ordinateur
Computers,Ordinateurs
Confirmation Date,date de confirmation
Confirmed orders from Customers.,Confirmé commandes provenant de clients.
Consider Tax or Charge for,Prenons l&#39;impôt ou charge pour
Considered as Opening Balance,Considéré comme Solde d&#39;ouverture
Considered as an Opening Balance,Considéré comme un solde d&#39;ouverture
Consultant,Consultant
Consulting,consultant
Consumable,consommable
Consumable Cost,Coût de consommable
Consumable cost per hour,Coût de consommable par heure
Consumed Qty,Quantité consommée
Consumer Products,Produits de consommation
Contact,Contacter
Contact Control,Contactez contrôle
Contact Desc,Contacter Desc
Contact Details,Coordonnées
Contact Email,Contact Courriel
Contact HTML,Contacter HTML
Contact Info,Information de contact
Contact Mobile No,Contact Mobile Aucune
Contact Name,Contact Nom
Contact No.,Contactez No.
Contact Person,Personne à contacter
Contact Type,Type de contact
Contact master.,'N'a pas de série »ne peut pas être « Oui »pour non - article en stock
Contacts,S'il vous plaît entrer la quantité pour l'article {0}
Content,Teneur
Content Type,Type de contenu
Contra Voucher,Bon Contra
Contract,contrat
Contract End Date,Date de fin du contrat
Contract End Date must be greater than Date of Joining,Fin du contrat La date doit être supérieure à date d'adhésion
Contribution (%),Contribution (%)
Contribution to Net Total,Contribution à Total net
Conversion Factor,Facteur de conversion
Conversion Factor is required,Facture de vente {0} a déjà été soumis
Conversion factor cannot be in fractions,Installation Remarque {0} a déjà été soumis
Conversion factor for default Unit of Measure must be 1 in row {0},revenu
Conversion rate cannot be 0 or 1,Un groupe de clients existe avec le même nom s'il vous plaît changer le nom du client ou renommer le groupe de clients
Convert into Recurring Invoice,Convertir en facture récurrente
Convert to Group,Convertir en groupe
Convert to Ledger,Autre Ledger
Converted,Converti
Copy From Item Group,Copy From Group article
Cosmetics,produits de beauté
Cost Center,Centre de coûts
Cost Center Details,Coût Center Détails
Cost Center Name,Coût Nom du centre
Cost Center is required for 'Profit and Loss' account {0},Quantité de minute
Cost Center is required in row {0} in Taxes table for type {1},Livré de série n ° {0} ne peut pas être supprimé
Cost Center with existing transactions can not be converted to group,S'il vous plaît entrer les détails de l' article
Cost Center with existing transactions can not be converted to ledger,Point {0} a atteint sa fin de vie sur {1}
Cost Center {0} does not belong to Company {1},Numéro de commande requis pour objet {0}
Cost of Goods Sold,Montant payé + Write Off montant ne peut être supérieur à Total
Costing,Costing
Country,Pays
Country Name,Nom Pays
Country wise default Address Templates,Modèles pays sage d'adresses par défaut
"Country, Timezone and Currency","Pays , Fuseau horaire et devise"
Create Bank Voucher for the total salary paid for the above selected criteria,Créer Chèques de la Banque pour le salaire total payé pour les critères ci-dessus sélectionnées
Create Customer,créer clientèle
Create Material Requests,Créer des demandes de matériel
Create New,créer un nouveau
Create Opportunity,créer une opportunité
Create Production Orders,Créer des ordres de fabrication
Create Quotation,créer offre
Create Receiver List,Créer une liste Receiver
Create Salary Slip,Créer bulletin de salaire
Create Stock Ledger Entries when you submit a Sales Invoice,Créer un registre des stocks entrées lorsque vous soumettez une facture de vente
"Create and manage daily, weekly and monthly email digests.","Créer et gérer des recueils d' email quotidiens, hebdomadaires et mensuels ."
Create rules to restrict transactions based on values.,Créer des règles pour restreindre les transactions fondées sur des valeurs .
Created By,Créé par
Creates salary slip for above mentioned criteria.,Crée le bulletin de salaire pour les critères mentionnés ci-dessus.
Creation Date,date de création
Creation Document No,Création document n
Creation Document Type,Type de document de création
Creation Time,Date de création
Credentials,Lettres de créance
Credit,Crédit
Credit Amt,Crédit Amt
Credit Card,Carte de crédit
Credit Card Voucher,Bon de carte de crédit
Credit Controller,Credit Controller
Credit Days,Jours de crédit
Credit Limit,Limite de crédit
Credit Note,Note de crédit
Credit To,Crédit Pour
Currency,Monnaie
Currency Exchange,Change de devises
Currency Name,Nom de la devise
Currency Settings,Paramètres de devises
Currency and Price List,Monnaie et liste de prix
Currency exchange rate master.,Campagne . # # # #
Current Address,Adresse actuelle
Current Address Is,Adresse actuelle
Current Assets,Ordre de fabrication {0} doit être soumis
Current BOM,Nomenclature actuelle
Current BOM and New BOM can not be same,Référence # {0} {1} du
Current Fiscal Year,Exercice en cours
Current Liabilities,Le solde doit être
Current Stock,Stock actuel
Current Stock UOM,Emballage Stock actuel
Current Value,Valeur actuelle
Custom,Coutume
Custom Autoreply Message,Message personnalisé Autoreply
Custom Message,Message personnalisé
Customer,Client
Customer (Receivable) Account,Compte client (à recevoir)
Customer / Item Name,Client / Nom d&#39;article
Customer / Lead Address,Client / plomb adresse
Customer / Lead Name,Entrepôt {0} n'existe pas
Customer > Customer Group > Territory,Client> Groupe de clientèle> Territoire
Customer Account Head,Compte client Head
Customer Acquisition and Loyalty,Acquisition et fidélisation client
Customer Address,Adresse du client
Customer Addresses And Contacts,Adresses et contacts clients
Customer Addresses and Contacts,Les adresses de clients et contacts
Customer Code,Code client
Customer Codes,Codes du Client
Customer Details,Détails du client
Customer Feedback,Réactions des clients
Customer Group,Groupe de clients
Customer Group / Customer,Groupe de client / client
Customer Group Name,Nom du groupe client
Customer Intro,Intro à la clientèle
Customer Issue,Numéro client
Customer Issue against Serial No.,Numéro de la clientèle contre Serial No.
Customer Name,Nom du client
Customer Naming By,Client de nommage par
Customer Service,Service à la clientèle
Customer database.,Base de données clients.
Customer is required,Approuver rôle ne peut pas être même que le rôle de l'État est applicable aux
Customer master.,utilisateur spécifique
Customer required for 'Customerwise Discount',Colonne inconnu : {0}
Customer {0} does not belong to project {1},S'il vous plaît définir la valeur par défaut {0} dans Société {0}
Customer {0} does not exist,Client {0} n'existe pas
Customer's Item Code,Code article client
Customer's Purchase Order Date,Bon de commande de la date de clientèle
Customer's Purchase Order No,Bon de commande du client Non
Customer's Purchase Order Number,Nombre bon de commande du client
Customer's Vendor,Client Fournisseur
Customers Not Buying Since Long Time,Les clients ne pas acheter Depuis Long Time
Customerwise Discount,Remise Customerwise
Customize,Personnaliser
Customize the Notification,Personnaliser la notification
Customize the introductory text that goes as a part of that email. Each transaction has a separate introductory text.,Personnaliser le texte d&#39;introduction qui se déroule comme une partie de cet e-mail. Chaque transaction a un texte séparé d&#39;introduction.
DN Detail,Détail DN
Daily,Quotidien
Daily Time Log Summary,Daily Time Sommaire du journal
Database Folder ID,Identifiant du dossier de la base de données
Database of potential customers.,Base de données de clients potentiels.
Date,Date
Date Format,Format de date
Date Of Retirement,Date de la retraite
Date Of Retirement must be greater than Date of Joining,Date de la retraite doit être supérieure à date d'adhésion
Date is repeated,La date est répétée
Date of Birth,Date de naissance
Date of Issue,Date d&#39;émission
Date of Joining,Date d&#39;adhésion
Date of Joining must be greater than Date of Birth,enregistrement précédent
Date on which lorry started from supplier warehouse,Date à laquelle le camion a commencé à partir de l&#39;entrepôt fournisseur
Date on which lorry started from your warehouse,Date à laquelle le camion a commencé à partir de votre entrepôt
Dates,Dates
Days Since Last Order,Jours depuis la dernière commande
Days for which Holidays are blocked for this department.,Jours fériés pour lesquels sont bloqués pour ce département.
Dealer,Revendeur
Debit,Débit
Debit Amt,Débit Amt
Debit Note,Note de débit
Debit To,Débit Pour
Debit and Credit not equal for this voucher. Difference is {0}.,Débit et de crédit ne correspond pas à ce document . La différence est {0} .
Deduct,Déduire
Deduction,Déduction
Deduction Type,Type de déduction
Deduction1,Deduction1
Deductions,Déductions
Default,Par défaut
Default Account,Compte par défaut
Default Address Template cannot be deleted,Adresse par défaut modèle ne peut pas être supprimé
Default Amount,Montant par défaut
Default BOM,Nomenclature par défaut
Default Bank / Cash account will be automatically updated in POS Invoice when this mode is selected.,Par défaut Banque / argent compte sera automatiquement mis à jour dans la facture POS lorsque ce mode est sélectionné.
Default Bank Account,Compte bancaire par défaut
Default Buying Cost Center,Centre de coûts d'achat par défaut
Default Buying Price List,Défaut d'achat Liste des Prix
Default Cash Account,Compte de trésorerie par défaut
Default Company,Société défaut
Default Currency,Devise par défaut
Default Customer Group,Groupe de clients par défaut
Default Expense Account,Compte de dépenses par défaut
Default Income Account,Compte d&#39;exploitation par défaut
Default Item Group,Groupe d&#39;éléments par défaut
Default Price List,Liste des prix défaut
Default Purchase Account in which cost of the item will be debited.,Compte Achat par défaut dans lequel le coût de l&#39;article sera débité.
Default Selling Cost Center,Coût des marchandises vendues
Default Settings,Paramètres par défaut
Default Source Warehouse,Source d&#39;entrepôt par défaut
Default Stock UOM,Stock défaut Emballage
Default Supplier,Par défaut Fournisseur
Default Supplier Type,Fournisseur Type par défaut
Default Target Warehouse,Cible d&#39;entrepôt par défaut
Default Territory,Territoire défaut
Default Unit of Measure,Unité de mesure par défaut
"Default Unit of Measure can not be changed directly because you have already made some transaction(s) with another UOM. To change default UOM, use 'UOM Replace Utility' tool under Stock module.","Unité de mesure de défaut ne peut pas être modifié directement parce que vous avez déjà fait une transaction (s ) avec un autre UDM . Pour changer Emballage par défaut , utiliser l'outil « Emballage Remplacer Utility"" sous module de Stock ."
Default Valuation Method,Méthode d&#39;évaluation par défaut
Default Warehouse,Entrepôt de défaut
Default Warehouse is mandatory for stock Item.,{0} {1} contre le projet de loi {2} du {3}
Default settings for accounting transactions.,Les paramètres par défaut pour les opérations comptables .
Default settings for buying transactions.,non Soumis
Default settings for selling transactions.,principal
Default settings for stock transactions.,minute
Defense,défense
"Define Budget for this Cost Center. To set budget action, see <a href=""#!List/Company"">Company Master</a>","Définir le budget pour ce centre de coûts. Pour définir l&#39;action budgétaire, voir <a href=""#!List/Company"">Maître Société</a>"
Del,Suppr
Delete,Supprimer
Delete {0} {1}?,Supprimer {0} {1} ?
Delivered,Livré
Delivered Items To Be Billed,Les items livrés à être facturés
Delivered Qty,Qté livrée
Delivered Serial No {0} cannot be deleted,médical
Delivery Date,Date de livraison
Delivery Details,Détails de la livraison
Delivery Document No,Pas de livraison de documents
Delivery Document Type,Type de document de livraison
Delivery Note,Bon de livraison
Delivery Note Item,Point de Livraison
Delivery Note Items,Articles bordereau de livraison
Delivery Note Message,Note Message de livraison
Delivery Note No,Remarque Aucune livraison
Delivery Note Required,Remarque livraison requis
Delivery Note Trends,Bordereau de livraison Tendances
Delivery Note {0} is not submitted,Livraison Remarque {0} n'est pas soumis
Delivery Note {0} must not be submitted,Pas de clients ou fournisseurs Comptes trouvé
Delivery Notes {0} must be cancelled before cancelling this Sales Order,Quantité en ligne {0} ( {1} ) doit être la même que la quantité fabriquée {2}
Delivery Status,Statut de la livraison
Delivery Time,L'heure de la livraison
Delivery To,Livrer à
Department,Département
Department Stores,Grands Magasins
Depends on LWP,Dépend de LWP
Depreciation,Actifs d'impôt
Description,Description
Description HTML,Description du HTML
Designation,Désignation
Designer,créateur
Detailed Breakup of the totals,Breakup détaillée des totaux
Details,Détails
Difference (Dr - Cr),Différence (Dr - Cr )
Difference Account,Compte de la différence
"Difference Account must be a 'Liability' type account, since this Stock Reconciliation is an Opening Entry","Compte de la différence doit être un compte de type « responsabilité », car ce stock réconciliation est une ouverture d'entrée"
Different UOM for items will lead to incorrect (Total) Net Weight value. Make sure that Net Weight of each item is in the same UOM.,Différents Emballage des articles mènera à incorrects (Total ) Valeur de poids . Assurez-vous que poids net de chaque article se trouve dans la même unité de mesure .
Direct Expenses,{0} {1} a été modifié . S'il vous plaît rafraîchir .
Direct Income,Choisissez votre langue
Disable,"Groupe ajoutée, rafraîchissant ..."
Disable Rounded Total,Désactiver totale arrondie
Disabled,Handicapé
Discount  %,% Remise
Discount %,% Remise
Discount (%),Remise (%)
Discount Amount,S'il vous plaît tirer des articles de livraison Note
"Discount Fields will be available in Purchase Order, Purchase Receipt, Purchase Invoice","Les champs d&#39;actualisation sera disponible en commande, reçu d&#39;achat, facture d&#39;achat"
Discount Percentage,Annuler Matériel Visiter {0} avant d'annuler ce numéro de client
Discount Percentage can be applied either against a Price List or for all Price List.,Pourcentage de réduction peut être appliquée contre une liste de prix ou pour toute liste de prix.
Discount must be less than 100,La remise doit être inférieure à 100
Discount(%),Remise (%)
Dispatch,envoi
Display all the individual items delivered with the main items,Afficher tous les articles individuels livrés avec les principaux postes
Distribute transport overhead across items.,Distribuer surdébit de transport pour tous les items.
Distribution,Répartition
Distribution Id,Id distribution
Distribution Name,Nom distribution
Distributor,Distributeur
Divorced,Divorcé
Do Not Contact,Ne communiquez pas avec
Do not show any symbol like $ etc next to currencies.,Ne plus afficher n&#39;importe quel symbole comme $ etc à côté de devises.
Do really want to unstop production order: ,Do really want to unstop production order: 
Do you really want to STOP ,Do you really want to STOP 
Do you really want to STOP this Material Request?,Voulez-vous vraiment arrêter cette Demande de Matériel ?
Do you really want to Submit all Salary Slip for month {0} and year {1},"Statut du document de transition {0} {1}, n'est pas autorisé"
Do you really want to UNSTOP ,Do you really want to UNSTOP 
Do you really want to UNSTOP this Material Request?,Voulez-vous vraiment à ce unstop Demande de Matériel ?
Do you really want to stop production order: ,Do you really want to stop production order: 
Doc Name,Nom de Doc
Doc Type,Doc Type d&#39;
Document Description,Description du document
Document Type,Type de document
Documents,Documents
Domain,Domaine
Don't send Employee Birthday Reminders,Ne pas envoyer des employés anniversaire rappels
Download Materials Required,Télécharger Matériel requis
Download Reconcilation Data,Télécharger Rapprochement des données
Download Template,Télécharger le modèle
Download a report containing all raw materials with their latest inventory status,Télécharger un rapport contenant toutes les matières premières avec leur dernier état des stocks
"Download the Template, fill appropriate data and attach the modified file.","Télécharger le modèle , remplir les données appropriées et joindre le fichier modifié ."
"Download the Template, fill appropriate data and attach the modified file.All dates and employee combination in the selected period will come in the template, with existing attendance records","Télécharger le modèle, remplir les données appropriées et joindre le fichier modifié. Toutes les dates et la combinaison de l'employé dans la période sélectionnée viendront dans le modèle, avec les records de fréquentation existants"
Draft,Avant-projet
Dropbox,Dropbox
Dropbox Access Allowed,Dropbox accès autorisé
Dropbox Access Key,Dropbox Clé d&#39;accès
Dropbox Access Secret,Dropbox accès secrète
Due Date,Due Date
Due Date cannot be after {0},La date d'échéance ne peut pas être après {0}
Due Date cannot be before Posting Date,La date d'échéance ne peut être antérieure Date de publication
Duplicate Entry. Please check Authorization Rule {0},Point {0} n'est pas un objet sérialisé
Duplicate Serial No entered for Item {0},Dupliquer N ° de série entré pour objet {0}
Duplicate entry,dupliquer entrée
Duplicate row {0} with same {1},Pièces de journal {0} sont non liée
Duties and Taxes,S'il vous plaît mettre trésorerie de défaut ou d'un compte bancaire en mode de paiement {0}
ERPNext Setup,ERPNext installation
Earliest,plus tôt
Earnest Money,S'il vous plaît sélectionner le type de charge de premier
Earning,Revenus
Earning & Deduction,Gains et déduction
Earning Type,Gagner Type d&#39;
Earning1,Earning1
Edit,Éditer
Edu. Cess on Excise,Edu. Cess sur l'accise
Edu. Cess on Service Tax,Edu. Cess sur des services fiscaux
Edu. Cess on TDS,Edu. Cess sur TDS
Education,éducation
Educational Qualification,Qualification pour l&#39;éducation
Educational Qualification Details,Détails de qualification d&#39;enseignement
Eg. smsgateway.com/api/send_sms.cgi,Par exemple. smsgateway.com / api / send_sms.cgi
Either debit or credit amount is required for {0},Soit de débit ou de montant de crédit est nécessaire pour {0}
Either target qty or target amount is mandatory,Voulez-vous vraiment arrêter
Either target qty or target amount is mandatory.,annuel
Electrical,local
Electricity Cost,Coût de l'électricité
Electricity cost per hour,Coût de l'électricité par heure
Electronics,électronique
Email,Email
Email Digest,Email Digest
Email Digest Settings,Paramètres de messagerie Digest
Email Digest: ,Email Digest: 
Email Id,Identification d&#39;email
"Email Id where a job applicant will email e.g. ""jobs@example.com""",Identification d&#39;email où un demandeur d&#39;emploi enverra par courriel par exemple &quot;jobs@example.com&quot;
Email Notifications,Notifications par courriel
Email Sent?,Envoyer envoyés?
"Email id must be unique, already exists for {0}","Email id doit être unique , existe déjà pour {0}"
Email ids separated by commas.,identifiants de messagerie séparées par des virgules.
"Email settings to extract Leads from sales email id e.g. ""sales@example.com""",Paramètres de messagerie pour extraire des ventes Leads e-mail par exemple id &quot;sales@example.com&quot;
Emergency Contact,En cas d'urgence
Emergency Contact Details,Détails de contact d&#39;urgence
Emergency Phone,téléphone d'urgence
Employee,Employé
Employee Birthday,Anniversaire des employés
Employee Details,Détails des employés
Employee Education,Formation des employés
Employee External Work History,Antécédents de travail des employés externe
Employee Information,Renseignements sur l&#39;employé
Employee Internal Work History,Antécédents de travail des employés internes
Employee Internal Work Historys,Historys employés de travail internes
Employee Leave Approver,Congé employé approbateur
Employee Leave Balance,Congé employé Solde
Employee Name,Nom de l&#39;employé
Employee Number,Numéro d&#39;employé
Employee Records to be created by,Dossiers sur les employés à être créées par
Employee Settings,Réglages des employés
Employee Type,Type de contrat
"Employee designation (e.g. CEO, Director etc.).",Vous devez enregistrer le formulaire avant de procéder
Employee master.,Stock Emballage updatd pour objet {0}
Employee record is created using selected field. ,dossier de l&#39;employé est créé en utilisant champ sélectionné.
Employee records.,Les dossiers des employés.
Employee relieved on {0} must be set as 'Left',S'il vous plaît entrer unité de mesure par défaut
Employee {0} has already applied for {1} between {2} and {3},Employé {0} a déjà appliqué pour {1} entre {2} et {3}
Employee {0} is not active or does not exist,"Employé {0} n'est pas actif , ou n'existe pas"
Employee {0} was on leave on {1}. Cannot mark attendance.,Employé {0} a été en congé de {1} . Vous ne pouvez pas marquer la fréquentation .
Employees Email Id,Les employés Id Email
Employment Details,Détails de l&#39;emploi
Employment Type,Type d&#39;emploi
Enable / disable currencies.,Vieillissement date est obligatoire pour l'ouverture d'entrée
Enabled,Activé
Encashment Date,Date de l&#39;encaissement
End Date,Date de fin
End Date can not be less than Start Date,Évaluation de l'objet mis à jour
End date of current invoice's period,Date de fin de la période de facturation en cours
End of Life,Fin de vie
Energy,énergie
Engineer,ingénieur
Enter Verification Code,Entrez le code de vérification
Enter campaign name if the source of lead is campaign.,Entrez le nom de la campagne si la source de plomb est la campagne.
Enter department to which this Contact belongs,Entrez département auquel appartient ce contact
Enter designation of this Contact,Entrez la désignation de ce contact
"Enter email id separated by commas, invoice will be mailed automatically on particular date","Entrez Identifiant courriels séparé par des virgules, la facture sera envoyée automatiquement à la date particulière"
Enter items and planned qty for which you want to raise production orders or download raw materials for analysis.,Introduisez les articles et qté planifiée pour laquelle vous voulez soulever ordres de fabrication ou de télécharger des matières premières pour l&#39;analyse.
Enter name of campaign if source of enquiry is campaign,Entrez le nom de la campagne si la source de l&#39;enquête est la campagne
"Enter static url parameters here (Eg. sender=ERPNext, username=ERPNext, password=1234 etc.)","Entrez les paramètres url statiques (par exemple ici sender = ERPNext, username = ERPNext, mot de passe = 1234 etc)"
Enter the company name under which Account Head will be created for this Supplier,Entrez le nom de la société en vertu de laquelle Head compte sera créé pour ce Fournisseur
Enter url parameter for message,Entrez le paramètre url pour le message
Enter url parameter for receiver nos,Entrez le paramètre url pour nos récepteurs
Entertainment & Leisure,Entertainment & Leisure
Entertainment Expenses,Frais de représentation
Entries,Entrées
Entries against ,Entries against 
Entries are not allowed against this Fiscal Year if the year is closed.,Les inscriptions ne sont pas autorisés contre cette exercice si l&#39;année est fermé.
Equity,Opération {0} est répété dans le tableau des opérations
Error: {0} > {1},Erreur: {0} > {1}
Estimated Material Cost,Coût des matières premières estimée
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Même s'il existe plusieurs règles de tarification avec la plus haute priorité, les priorités internes alors suivantes sont appliquées:"
Everyone can read,Tout le monde peut lire
"Example: ABCD.#####If series is set and Serial No is not mentioned in transactions, then automatic serial number will be created based on this series. If you always want to explicitly mention Serial Nos for this item. leave this blank.",". Exemple: ABCD # # # # #  Si la série est réglé et n ° de série n'est pas mentionné dans les transactions, le numéro de série alors automatique sera créé sur la base de cette série. Si vous voulez toujours de mentionner explicitement série n ° de cet article. laisser ce champ vide."
Exchange Rate,Taux de change
Excise Duty 10,Droits d'accise 10
Excise Duty 14,Droits d'accise 14
Excise Duty 4,Droits d'accise 4
Excise Duty 8,Droits d'accise 8
Excise Duty @ 10,Droits d'accise @ 10
Excise Duty @ 14,Droits d'accise @ 14
Excise Duty @ 4,Droits d'accise @ 4
Excise Duty @ 8,Droits d'accise @ 8
Excise Duty Edu Cess 2,Droits d'accise Edu Cess 2
Excise Duty SHE Cess 1,Droits d'accise ELLE Cess 1
Excise Page Number,Numéro de page d&#39;accise
Excise Voucher,Bon d&#39;accise
Execution,exécution
Executive Search,Executive Search
Exemption Limit,Limite d&#39;exemption
Exhibition,Exposition
Existing Customer,Client existant
Exit,Sortie
Exit Interview Details,Quittez Détails Interview
Expected,Attendu
Expected Completion Date can not be less than Project Start Date,Pourcentage de réduction
Expected Date cannot be before Material Request Date,Date prévu ne peut pas être avant Matériel Date de la demande
Expected Delivery Date,Date de livraison prévue
Expected Delivery Date cannot be before Purchase Order Date,Une autre structure salariale {0} est active pour les employés {0} . S'il vous plaît faire son statut « inactif » pour continuer.
Expected Delivery Date cannot be before Sales Order Date,"Stock réconciliation peut être utilisé pour mettre à jour le stock à une date donnée , généralement selon l'inventaire physique ."
Expected End Date,Date de fin prévue
Expected Start Date,Date de début prévue
Expense,frais
Expense / Difference account ({0}) must be a 'Profit or Loss' account,Dépenses / compte de la différence ({0}) doit être un compte «de résultat»
Expense Account,Compte de dépenses
Expense Account is mandatory,Compte de dépenses est obligatoire
Expense Claim,Demande d&#39;indemnité de
Expense Claim Approved,Demande d&#39;indemnité Approuvé
Expense Claim Approved Message,Demande d&#39;indemnité Approuvé message
Expense Claim Detail,Détail remboursement des dépenses
Expense Claim Details,Détails de la réclamation des frais de
Expense Claim Rejected,Demande d&#39;indemnité rejetée
Expense Claim Rejected Message,Demande d&#39;indemnité rejeté le message
Expense Claim Type,Type de demande d&#39;indemnité
Expense Claim has been approved.,Demande de remboursement a été approuvé .
Expense Claim has been rejected.,Demande de remboursement a été rejetée .
Expense Claim is pending approval. Only the Expense Approver can update status.,Remboursement de frais est en attente d'approbation . Seulement l'approbateur des frais peut mettre à jour le statut .
Expense Date,Date de frais
Expense Details,Détail des dépenses
Expense Head,Chef des frais
Expense account is mandatory for item {0},Contre le projet de loi {0} {1} daté
Expense or Difference account is mandatory for Item {0} as it impacts overall stock value,Frais ou différence compte est obligatoire pour objet {0} car il impacts valeur globale des actions
Expenses,Note: Ce centre de coûts est un groupe . Vous ne pouvez pas faire les écritures comptables contre des groupes .
Expenses Booked,Dépenses Réservé
Expenses Included In Valuation,Frais inclus dans l&#39;évaluation
Expenses booked for the digest period,Charges comptabilisées pour la période digest
Expiry Date,Date d&#39;expiration
Exports,Exportations
External,Externe
Extract Emails,Extrait Emails
FCFS Rate,Taux PAPS
Failed: ,Échec:
Family Background,Antécédents familiaux
Fax,Fax
Features Setup,Features Setup
Feed,Flux
Feed Type,Type de flux
Feedback,Commentaire
Female,Femme
Fetch exploded BOM (including sub-assemblies),Fetch nomenclature éclatée ( y compris les sous -ensembles )
"Field available in Delivery Note, Quotation, Sales Invoice, Sales Order","Champ disponible dans la note de livraison, devis, facture de vente, Sales Order"
Files Folder ID,Les fichiers d&#39;identification des dossiers
Fill the form and save it,Remplissez le formulaire et l'enregistrer
Filter based on customer,Filtre basé sur le client
Filter based on item,Filtre basé sur l'article
Financial / accounting year.,Point {0} a été saisi plusieurs fois contre une même opération
Financial Analytics,Financial Analytics
Financial Services,services financiers
Financial Year End Date,Date de fin de l'exercice financier
Financial Year Start Date,Les paramètres par défaut pour la vente de transactions .
Finished Goods,Produits finis
First Name,Prénom
First Responded On,D&#39;abord répondu le
Fiscal Year,Exercice
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Exercice Date de début et de fin d'exercice la date sont réglées dans l'année fiscale {0}
Fiscal Year Start Date and Fiscal Year End Date cannot be more than a year apart.,Exercice date de début et de fin d'exercice date ne peut être plus d'un an d'intervalle.
Fiscal Year Start Date should not be greater than Fiscal Year End Date,Exercice Date de début ne doit pas être supérieure à fin d'exercice Date de
Fixed Asset,Actifs immobilisés
Fixed Assets,Facteur de conversion est requis
Follow via Email,Suivez par e-mail
"Following table will show values if items are sub - contracted. These values will be fetched from the master of ""Bill of Materials"" of sub - contracted items.",Le tableau suivant indique les valeurs si les articles sont en sous - traitance. Ces valeurs seront extraites de la maîtrise de la «Bill of Materials&quot; de sous - traitance articles.
Food,Alimentation
"Food, Beverage & Tobacco","Alimentation , boissons et tabac"
"For 'Sales BOM' items, Warehouse, Serial No and Batch No will be considered from the 'Packing List' table. If Warehouse and Batch No are same for all packing items for any 'Sales BOM' item, those values can be entered in the main Item table, values will be copied to 'Packing List' table.","Pour les articles ""ventes de nomenclature», Entrepôt, N ° de série et de lot n ° sera considéré comme de la table la «Liste d'emballage. Si Entrepôt et lot n ° sont les mêmes pour tous les articles d'emballage pour tout article 'Sales nomenclature », ces valeurs peuvent être entrées dans le tableau principal de l'article, les valeurs seront copiés sur« Liste d'emballage »table."
For Company,Pour l&#39;entreprise
For Employee,Pour les employés
For Employee Name,Pour Nom de l&#39;employé
For Price List,Annuler matériaux Visites {0} avant l'annulation de cette visite d'entretien
For Production,Pour la production
For Reference Only.,Pour référence seulement.
For Sales Invoice,Pour Facture de vente
For Server Side Print Formats,Server Side Formats d&#39;impression
For Supplier,pour fournisseur
For Warehouse,Pour Entrepôt
For Warehouse is required before Submit,Warehouse est nécessaire avant Soumettre
"For e.g. 2012, 2012-13","Pour exemple, 2012, 2012-13"
For reference,Pour référence
For reference only.,À titre de référence seulement.
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Pour la commodité des clients, ces codes peuvent être utilisés dans des formats d&#39;impression comme les factures et les bons de livraison"
Fraction,Fraction
Fraction Units,Unités fraction
Freeze Stock Entries,Congeler entrées en stocks
Freeze Stocks Older Than [Days],Vous ne pouvez pas entrer bon actuelle dans «Contre Journal Voucher ' colonne
Freight and Forwarding Charges,Fret et d'envoi en sus
Friday,Vendredi
From,À partir de
From Bill of Materials,De Bill of Materials
From Company,De Company
From Currency,De Monnaie
From Currency and To Currency cannot be same,De leur monnaie et à devises ne peut pas être la même
From Customer,Du client
From Customer Issue,De émission à la clientèle
From Date,Partir de la date
From Date cannot be greater than To Date,Date d'entrée ne peut pas être supérieur à ce jour
From Date must be before To Date,Partir de la date doit être antérieure à ce jour
From Date should be within the Fiscal Year. Assuming From Date = {0},De la date doit être dans l'exercice. En supposant Date d'= {0}
From Delivery Note,De bon de livraison
From Employee,De employés
From Lead,Du plomb
From Maintenance Schedule,De Calendrier d'entretien
From Material Request,De Demande de Matériel
From Opportunity,De Opportunity
From Package No.,De Ensemble numéro
From Purchase Order,De bon de commande
From Purchase Receipt,De ticket de caisse
From Quotation,De offre
From Sales Order,De Sales Order
From Supplier Quotation,De Fournisseur offre
From Time,From Time
From Value,De la valeur
From and To dates required,De et la date exigée
From value must be less than to value in row {0},Parent Site Web page
Frozen,Frozen
Frozen Accounts Modifier,Frozen comptes modificateur
Fulfilled,Remplies
Full Name,Nom et Prénom
Full-time,À plein temps
Fully Billed,Entièrement Qualifié
Fully Completed,Entièrement complété
Fully Delivered,Entièrement Livré
Furniture and Fixture,Meubles et articles d'ameublement
Further accounts can be made under Groups but entries can be made against Ledger,D'autres comptes peuvent être faites dans les groupes mais les entrées peuvent être faites contre Ledger
"Further accounts can be made under Groups, but entries can be made against Ledger",Frais de vente
Further nodes can be only created under 'Group' type nodes,D'autres nœuds peuvent être créées que sous les nœuds de type 'Groupe'
GL Entry,Entrée GL
Gantt Chart,Diagramme de Gantt
Gantt chart of all tasks.,Diagramme de Gantt de toutes les tâches.
Gender,Sexe
General,Général
General Ledger,Grand livre général
Generate Description HTML,Générer HTML Description
Generate Material Requests (MRP) and Production Orders.,Lieu à des demandes de matériel (MRP) et de la procédure de production.
Generate Salary Slips,Générer les bulletins de salaire
Generate Schedule,Générer annexe
Generates HTML to include selected image in the description,Génère du code HTML pour inclure l&#39;image sélectionnée dans la description
Get Advances Paid,Obtenez Avances et acomptes versés
Get Advances Received,Obtenez Avances et acomptes reçus
Get Current Stock,Obtenez Stock actuel
Get Items,Obtenir les éléments
Get Items From Sales Orders,Obtenir des éléments de Sales Orders
Get Items from BOM,Obtenir des éléments de nomenclature
Get Last Purchase Rate,Obtenez Purchase Rate Dernière
Get Outstanding Invoices,Obtenez Factures en souffrance
Get Relevant Entries,Obtenez les entrées pertinentes
Get Sales Orders,Obtenez des commandes clients
Get Specification Details,Obtenez les détails Spécification
Get Stock and Rate,Obtenez stock et taux
Get Template,Obtenez modèle
Get Terms and Conditions,Obtenez Termes et Conditions
Get Unreconciled Entries,Obtenez non rapprochés entrées
Get Weekly Off Dates,Obtenez hebdomadaires Dates Off
"Get valuation rate and available stock at source/target warehouse on mentioned posting date-time. If serialized item, please press this button after entering serial nos.","Obtenez taux d&#39;évaluation et le stock disponible à la source / cible d&#39;entrepôt sur l&#39;affichage mentionné de date-heure. Si sérialisé article, s&#39;il vous plaît appuyez sur cette touche après avoir entré numéros de série."
Global Defaults,Par défaut globaux
Global POS Setting {0} already created for company {1},Monter : {0}
Global Settings,Paramètres globaux
"Go to the appropriate group (usually Application of Funds > Current Assets > Bank Accounts and create a new Account Ledger (by clicking on Add Child) of type ""Bank""",Aller au groupe approprié (habituellement utilisation des fonds > Actif à court terme > Comptes bancaires et créer un nouveau compte Ledger ( en cliquant sur Ajouter un enfant ) de type «Banque»
"Go to the appropriate group (usually Source of Funds > Current Liabilities > Taxes and Duties and create a new Account Ledger (by clicking on Add Child) of type ""Tax"" and do mention the Tax rate.",Aller au groupe approprié (généralement source de fonds > Passif à court terme > Impôts et taxes et créer un nouveau compte Ledger ( en cliquant sur Ajouter un enfant ) de type « impôt» et ne mentionnent le taux de l'impôt.
Goal,Objectif
Goals,Objectifs
Goods received from Suppliers.,Marchandises reçues des fournisseurs.
Google Drive,Google Drive
Google Drive Access Allowed,Google Drive accès autorisé
Government,Si différente de l'adresse du client
Graduate,Diplômé
Grand Total,Grand Total
Grand Total (Company Currency),Total (Société Monnaie)
"Grid ""","grille """
Grocery,épicerie
Gross Margin %,Marge brute%
Gross Margin Value,Valeur Marge brute
Gross Pay,Salaire brut
Gross Pay + Arrear Amount +Encashment Amount - Total Deduction,Salaire brut + + Montant Montant échu Encaissement - Déduction totale
Gross Profit,Bénéfice brut
Gross Profit (%),Bénéfice brut (%)
Gross Weight,Poids brut
Gross Weight UOM,Emballage Poids brut
Group,Groupe
Group by Account,Groupe par compte
Group by Voucher,Règles pour ajouter les frais d'envoi .
Group or Ledger,Groupe ou Ledger
Groups,Groupes
HR Manager,Directeur des Ressources Humaines
HR Settings,Réglages RH
HTML / Banner that will show on the top of product list.,HTML / bannière qui apparaîtra sur le haut de la liste des produits.
Half Day,Demi-journée
Half Yearly,La moitié annuel
Half-yearly,Semestriel
Happy Birthday!,Joyeux anniversaire !
Hardware,Sales Person cible Variance article Groupe Sage
Has Batch No,A lot no
Has Child Node,A Node enfant
Has Serial No,N ° de série a
Head of Marketing and Sales,Responsable du marketing et des ventes
Header,En-tête
Health Care,soins de santé
Health Concerns,Préoccupations pour la santé
Health Details,Détails de santé
Held On,Tenu le
Help HTML,Aide HTML
"Help: To link to another record in the system, use ""#Form/Note/[Note Name]"" as the Link URL. (don't use ""http://"")","Aide: Pour lier à un autre enregistrement dans le système, utiliser &quot;# Form / Note / [Note Nom]», comme l&#39;URL du lien. (Ne pas utiliser &quot;http://&quot;)"
"Here you can maintain family details like name and occupation of parent, spouse and children","Ici vous pouvez conserver les détails de famille comme nom et la profession des parents, le conjoint et les enfants"
"Here you can maintain height, weight, allergies, medical concerns etc","Ici vous pouvez maintenir la hauteur, le poids, allergies, etc médicaux préoccupations"
Hide Currency Symbol,Masquer le symbole monétaire
High,Haut
History In Company,Dans l&#39;histoire de l&#39;entreprise
Hold,Tenir
Holiday,Vacances
Holiday List,Liste de vacances
Holiday List Name,Nom de la liste de vacances
Holiday master.,Débit doit être égal à crédit . La différence est {0}
Holidays,Fêtes
Home,Accueil
Host,Hôte
"Host, Email and Password required if emails are to be pulled","D&#39;accueil, e-mail et mot de passe requis si les courriels sont d&#39;être tiré"
Hour,heure
Hour Rate,Taux horraire
Hour Rate Labour,Travail heure Tarif
Hours,Heures
How Pricing Rule is applied?,Comment Prix règle est appliquée?
How frequently?,Quelle est la fréquence?
"How should this currency be formatted? If not set, will use system defaults","Comment cette monnaie est formaté? S&#39;il n&#39;est pas défini, utilisera par défaut du système"
Human Resources,Ressources humaines
Identification of the package for the delivery (for print),Identification de l&#39;emballage pour la livraison (pour l&#39;impression)
If Income or Expense,Si les produits ou charges
If Monthly Budget Exceeded,Si le budget mensuel dépassé
"If Sale BOM is defined, the actual BOM of the Pack is displayed as table. Available in Delivery Note and Sales Order",N ° de série {0} Etat doit être «disponible» à livrer
"If Supplier Part Number exists for given Item, it gets stored here","Si le numéro de pièce fournisseur existe pour objet donné, il est stocké ici"
If Yearly Budget Exceeded,Si le budget annuel dépassé
"If checked, BOM for sub-assembly items will be considered for getting raw materials. Otherwise, all sub-assembly items will be treated as a raw material.","Si elle est cochée, la nomenclature des sous-ensembles points seront examinés pour obtenir des matières premières. Sinon, tous les éléments du sous-ensemble sera traitée comme une matière première."
"If checked, Total no. of Working Days will include holidays, and this will reduce the value of Salary Per Day","Si elle est cochée, aucune totale. des jours de travail comprennent vacances, ce qui réduira la valeur de salaire par jour"
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","Si elle est cochée, le montant de la taxe sera considéré comme déjà inclus dans le tarif Imprimer / Print Montant"
If different than customer address,Point {0} a déjà été renvoyé
"If disable, 'Rounded Total' field will not be visible in any transaction","Si désactiver, &#39;arrondi totale «champ ne sera pas visible dans toute transaction"
"If enabled, the system will post accounting entries for inventory automatically.","S&#39;il est activé, le système affichera les écritures comptables pour l&#39;inventaire automatiquement."
If more than one package of the same type (for print),Si plus d&#39;un paquet du même type (pour l&#39;impression)
"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","Si plusieurs règles de tarification continuent de prévaloir, les utilisateurs sont invités à définir manuellement la priorité à résoudre les conflits."
"If no change in either Quantity or Valuation Rate, leave the cell blank.","Si aucun changement soit Quantité ou évaluation noter , laisser la cellule vide."
If not applicable please enter: NA,S&#39;il n&#39;est pas applicable s&#39;il vous plaît entrez: NA
"If not checked, the list will have to be added to each Department where it has to be applied.","Si ce n&#39;est pas cochée, la liste devra être ajouté à chaque département où il doit être appliqué."
"If selected Pricing Rule is made for 'Price', it will overwrite Price List. Pricing Rule price is the final price, so no further discount should be applied. Hence, in transactions like Sales Order, Purchase Order etc, it will be fetched in 'Rate' field, rather than 'Price List Rate' field.","Si Tarif choisi la règle est faite pour 'Prix', il va écraser Prix. Prix Prix de la règle est le prix définitif, donc pas de réduction supplémentaire doit être appliquée. Ainsi, dans les transactions comme des commandes clients, bons de commande, etc, il sera récupéré dans le champ «Taux», plutôt que le champ 'Prix List Noter »."
"If specified, send the newsletter using this email address","S&#39;il est spécifié, envoyer le bulletin en utilisant cette adresse e-mail"
"If the account is frozen, entries are allowed to restricted users.","Si le compte est gelé , les entrées sont autorisés pour les utilisateurs restreints ."
"If this Account represents a Customer, Supplier or Employee, set it here.","Si ce compte représente un client, fournisseur ou employé, l&#39;indiquer ici."
"If two or more Pricing Rules are found based on the above conditions, Priority is applied. Priority is a number between 0 to 20 while default value is zero (blank). Higher number means it will take precedence if there are multiple Pricing Rules with same conditions.","Si on trouve deux ou plusieurs règles de tarification sur la base des conditions ci-dessus, la priorité est appliqué. Priorité est un nombre compris entre 0 à 20 alors que la valeur par défaut est zéro (blanc). Nombre plus élevé signifie qu'il sera prioritaire s'il existe plusieurs règles de tarification avec les mêmes conditions."
If you follow Quality Inspection. Enables Item QA Required and QA No in Purchase Receipt,Si vous suivez contrôle de la qualité . Permet article AQ requis et AQ Pas de ticket de caisse
If you have Sales Team and Sale Partners (Channel Partners)  they can be tagged and maintain their contribution in the sales activity,"Si vous avez équipe de vente et Partenaires Vente (Channel Partners), ils peuvent être marqués et maintenir leur contribution à l&#39;activité commerciale"
"If you have created a standard template in Purchase Taxes and Charges Master, select one and click on the button below.","Si vous avez créé un modèle standard de taxes à l&#39;achat et Master accusations, sélectionnez-le et cliquez sur le bouton ci-dessous."
"If you have created a standard template in Sales Taxes and Charges Master, select one and click on the button below.","Si vous avez créé un modèle standard en taxes de vente et les frais de Master, sélectionnez-le et cliquez sur le bouton ci-dessous."
"If you have long print formats, this feature can be used to split the page to be printed on multiple pages with all headers and footers on each page","Si vous avez longtemps imprimer des formats, cette fonction peut être utilisée pour diviser la page à imprimer sur plusieurs pages avec tous les en-têtes et pieds de page sur chaque page"
If you involve in manufacturing activity. Enables Item 'Is Manufactured',Invalid Nom d'utilisateur Mot de passe ou de soutien . S'il vous plaît corriger et essayer à nouveau.
Ignore,Ignorer
Ignore Pricing Rule,Ignorer Prix règle
Ignored: ,Ignoré:
Image,Image
Image View,Voir l&#39;image
Implementation Partner,Partenaire de mise en œuvre
Import Attendance,Importer Participation
Import Failed!,Importation a échoué!
Import Log,Importer Connexion
Import Successful!,Importez réussie !
Imports,Importations
In Hours,Dans Heures
In Process,In Process
In Qty,Qté
In Value,Valeur
In Words,Dans les mots
In Words (Company Currency),En Words (Société Monnaie)
In Words (Export) will be visible once you save the Delivery Note.,Dans Words (Exportation) sera visible une fois que vous enregistrez le bon de livraison.
In Words will be visible once you save the Delivery Note.,Dans les mots seront visibles une fois que vous enregistrez le bon de livraison.
In Words will be visible once you save the Purchase Invoice.,Dans les mots seront visibles une fois que vous enregistrez la facture d&#39;achat.
In Words will be visible once you save the Purchase Order.,Dans les mots seront visibles une fois que vous enregistrez le bon de commande.
In Words will be visible once you save the Purchase Receipt.,Dans les mots seront visibles une fois que vous enregistrez le reçu d&#39;achat.
In Words will be visible once you save the Quotation.,Dans les mots seront visibles une fois que vous enregistrez le devis.
In Words will be visible once you save the Sales Invoice.,Dans les mots seront visibles une fois que vous enregistrez la facture de vente.
In Words will be visible once you save the Sales Order.,Dans les mots seront visibles une fois que vous enregistrez le bon de commande.
Incentives,Incitations
Include Reconciled Entries,Inclure les entrées rapprochées
Include holidays in Total no. of Working Days,Inclure les vacances en aucun totale. de jours de travail
Income,Extraire automatiquement les demandeurs d'emploi à partir d'une boîte aux lettres
Income / Expense,Produits / charges
Income Account,Compte de revenu
Income Booked,Revenu Réservé
Income Tax,Facteur de conversion UDM est nécessaire dans la ligne {0}
Income Year to Date,Année revenu à ce jour
Income booked for the digest period,Revenu réservée pour la période digest
Incoming,Nouveau
Incoming Rate,Taux d&#39;entrée
Incoming quality inspection.,Contrôle de la qualité entrant.
Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Nombre incorrect de General Ledger Entrées trouvées. Vous avez peut-être choisi le bon compte dans la transaction.
Incorrect or Inactive BOM {0} for Item {1} at row {2},Mauvaise ou inactif BOM {0} pour objet {1} à la ligne {2}
Indicates that the package is a part of this delivery (Only Draft),Indique que le package est une partie de cette livraison (Seuls les projets)
Indirect Expenses,N ° de série {0} créé
Indirect Income,{0} {1} statut est débouchées
Individual,Individuel
Industry,Industrie
Industry Type,Secteur d&#39;activité
Inspected By,Inspecté par
Inspection Criteria,Critères d&#39;inspection
Inspection Required,Inspection obligatoire
Inspection Type,Type d&#39;inspection
Installation Date,Date d&#39;installation
Installation Note,Note d&#39;installation
Installation Note Item,Article Remarque Installation
Installation Note {0} has already been submitted,Les demandes matérielles {0} créé
Installation Status,Etat de l&#39;installation
Installation Time,Temps d&#39;installation
Installation date cannot be before delivery date for Item {0},Date d'installation ne peut pas être avant la date de livraison pour l'article {0}
Installation record for a Serial No.,Dossier d&#39;installation d&#39;un n ° de série
Installed Qty,Qté installée
Instructions,Instructions
Integrate incoming support emails to Support Ticket,Intégrer des emails entrants soutien à l'appui de billets
Interested,Intéressé
Intern,interne
Internal,Interne
Internet Publishing,Publication Internet
Introduction,Introduction
Invalid Barcode,Barcode invalide
Invalid Barcode or Serial No,"Soldes de comptes de type "" banque "" ou "" Cash"""
Invalid Mail Server. Please rectify and try again.,électrique
Invalid Master Name,Invalid Nom du Maître
Invalid User Name or Support Password. Please rectify and try again.,Numéro de référence et date de référence est nécessaire pour {0}
Invalid quantity specified for item {0}. Quantity should be greater than 0.,Quantité spécifiée non valide pour l'élément {0} . Quantité doit être supérieur à 0 .
Inventory,Inventaire
Inventory & Support,Inventaire & Support
Investment Banking,Banques d'investissement
Investments,Laisser Bill of Materials devrait être «oui» . Parce que un ou plusieurs nomenclatures actifs présents pour cet article
Invoice Date,Date de la facture
Invoice Details,Détails de la facture
Invoice No,Aucune facture
Invoice Number,Numéro de facture
Invoice Period From,Période facture de
Invoice Period From and Invoice Period To dates mandatory for recurring invoice,Période facture et la période de facturation Pour les dates obligatoires pour la facture récurrente
Invoice Period To,Période facture Pour
Invoice Type,Type de facture
Invoice/Journal Voucher Details,Facture / Journal Chèques Détails
Invoiced Amount (Exculsive Tax),Montant facturé ( impôt Exculsive )
Is Active,Est active
Is Advance,Est-Advance
Is Cancelled,Est annulée
Is Carry Forward,Est-Report
Is Default,Est défaut
Is Encash,Est encaisser
Is Fixed Asset Item,Est- Fixed Asset article
Is LWP,Est-LWP
Is Opening,Est l&#39;ouverture
Is Opening Entry,Est l&#39;ouverture d&#39;entrée
Is POS,Est-POS
Is Primary Contact,Est-ressource principale
Is Purchase Item,Est-Item
Is Sales Item,Est-Point de vente
Is Service Item,Est-Point de service
Is Stock Item,Est Produit en stock
Is Sub Contracted Item,Est-Sub article à contrat
Is Subcontracted,Est en sous-traitance
Is this Tax included in Basic Rate?,Est-ce Taxes incluses dans le taux de base?
Issue,Question
Issue Date,Date d&#39;émission
Issue Details,Détails de la demande
Issued Items Against Production Order,Articles émis contre un ordre de fabrication
It can also be used to create opening stock entries and to fix stock value.,Il peut également être utilisé pour créer les entrées en stocks d'ouverture et de fixer la valeur des actions .
Item,article
Item Advanced,Article avancée
Item Barcode,Barcode article
Item Batch Nos,Nos lots d&#39;articles
Item Code,Code de l&#39;article
Item Code > Item Group > Brand,Code de l'article> Le groupe d'articles> Marque
Item Code and Warehouse should already exist.,Code article et entrepôt doivent déjà exister.
Item Code cannot be changed for Serial No.,Code article ne peut pas être modifié pour le numéro de série
Item Code is mandatory because Item is not automatically numbered,"Code de l'article est obligatoire, car l'article n'est pas numéroté automatiquement"
Item Code required at Row No {0},Aucun résultat
Item Customer Detail,Détail d&#39;article
Item Description,Description de l&#39;objet
Item Desription,Desription article
Item Details,Détails d&#39;article
Item Group,Groupe d&#39;éléments
Item Group Name,Nom du groupe d&#39;article
Item Group Tree,Point arborescence de groupe
Item Group not mentioned in item master for item {0},Le groupe d'articles ne sont pas mentionnés dans le maître de l'article pour l'article {0}
Item Groups in Details,Groupes d&#39;articles en détails
Item Image (if not slideshow),Image Article (si ce n&#39;est diaporama)
Item Name,Nom d&#39;article
Item Naming By,Point de noms en
Item Price,Prix ​​de l&#39;article
Item Prices,Prix ​​du lot
Item Quality Inspection Parameter,Paramètre d&#39;inspection Article de qualité
Item Reorder,Réorganiser article
Item Serial No,Point No de série
Item Serial Nos,Point n ° de série
Item Shortage Report,Point Pénurie rapport
Item Supplier,Fournisseur d&#39;article
Item Supplier Details,Détails de produit Point
Item Tax,Point d&#39;impôt
Item Tax Amount,Taxes article
Item Tax Rate,Taux d&#39;imposition article
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,avant-première
Item Tax1,Article impôts1
Item To Manufacture,Point à la fabrication de
Item UOM,Article Emballage
Item Website Specification,Spécification Site élément
Item Website Specifications,Spécifications Site du lot
Item Wise Tax Detail,Liste des Prix doit être applicable pour l'achat ou la vente d'
Item Wise Tax Detail ,Détail de l&#39;article de la taxe Wise
Item is required,Point n'est nécessaire
Item is updated,S'il vous plaît entrez prévue Quantité pour l'article {0} à la ligne {1}
Item master.,Maître d'objet .
"Item must be a purchase item, as it is present in one or many Active BOMs","L'article doit être un élément de l'achat , car il est présent dans un ou plusieurs nomenclatures actifs"
Item or Warehouse for row {0} does not match Material Request,Une autre entrée de clôture de la période {0} a été faite après {1}
Item table can not be blank,Tableau de l'article ne peut pas être vide
Item to be manufactured or repacked,Ce point doit être manufacturés ou reconditionnés
Item valuation updated,Utilisation des fonds ( actif)
Item will be saved by this name in the data base.,L&#39;article sera sauvé par ce nom dans la base de données.
Item {0} appears multiple times in Price List {1},S'il vous plaît indiquer Devise par défaut en maître de compagnie et par défaut mondiaux
Item {0} does not exist,Point {0} n'existe pas
Item {0} does not exist in the system or has expired,Point {0} n'existe pas dans le système ou a expiré
Item {0} does not exist in {1} {2},Applicable à partir du
Item {0} has already been returned,Nouveau Stock UDM doit être différent de stock actuel Emballage
Item {0} has been entered multiple times against same operation,Barcode {0} déjà utilisé dans l'article {1}
Item {0} has been entered multiple times with same description or date,Si vous impliquer dans l'activité manufacturière . Permet Point ' est fabriqué '
Item {0} has been entered multiple times with same description or date or warehouse,Nbre maxi
Item {0} has been entered twice,Point {0} doit être vente ou de service Point de {1}
Item {0} has reached its end of life on {1},dépenses
Item {0} ignored since it is not a stock item,S'il vous plaît mentionner pas de visites requises
Item {0} is cancelled,Nom de la campagne est nécessaire
Item {0} is not Purchase Item,Point {0} n'est pas acheter l'article
Item {0} is not a serialized Item,"Société Email ID introuvable , donc postez pas envoyé"
Item {0} is not a stock Item,Point {0} n'est pas un stock Article
Item {0} is not active or end of life has been reached,« À jour» est nécessaire
Item {0} is not setup for Serial Nos. Check Item master,Point {0} n'est pas configuré pour maître numéros de série Check Point
Item {0} is not setup for Serial Nos. Column must be blank,Point {0} n'est pas configuré pour Serial colonne n ° doit être vide
Item {0} must be Sales Item,Point {0} doit être objet de vente
Item {0} must be Sales or Service Item in {1},Ajouter au panier
Item {0} must be Service Item,Réglages pour le Module des ressources humaines
Item {0} must be a Purchase Item,Parent Site Route
Item {0} must be a Sales Item,Point {0} doit être un élément de ventes
Item {0} must be a Service Item.,Point {0} doit être un service Point .
Item {0} must be a Sub-contracted Item,Exercice Date de début
Item {0} must be a stock Item,Point {0} doit être un stock Article
Item {0} must be manufactured or sub-contracted,Point {0} doit être fabriqué ou sous-traité
Item {0} not found,Point {0} introuvable
Item {0} with Serial No {1} is already installed,Projets Système
Item {0} with same description entered twice,Centre de coûts est obligatoire pour objet {0}
"Item, Warranty, AMC (Annual Maintenance Contract) details will be automatically fetched when Serial Number is selected.","Item, Garantie, AMC (contrat d&#39;entretien annuel) détails seront automatiquement récupérées lorsque le numéro de série est sélectionnée."
Item-wise Price List Rate,Article sage Prix Tarif
Item-wise Purchase History,Historique des achats point-sage
Item-wise Purchase Register,S&#39;enregistrer Achat point-sage
Item-wise Sales History,Point-sage Historique des ventes
Item-wise Sales Register,Ventes point-sage S&#39;enregistrer
"Item: {0} managed batch-wise, can not be reconciled using \					Stock Reconciliation, instead use Stock Entry","Article: {0} discontinu géré, ne peut être conciliée à l'aide \ Stock réconciliation, au lieu d'utiliser Stock entrée"
Item: {0} not found in the system,Article : {0} introuvable dans le système
Items,Articles
Items To Be Requested,Articles à demander
Items required,produits
"Items to be requested which are ""Out of Stock"" considering all warehouses based on projected qty and minimum order qty","Articles à être demandés, qui sont &quot;Out of Stock&quot; compte tenu de tous les entrepôts basés sur quantité projetée et qté minimum"
Items which do not exist in Item master can also be entered on customer's request,Les éléments qui n&#39;existent pas dans la maîtrise d&#39;article peut également être inscrits sur la demande du client
Itemwise Discount,Remise Itemwise
Itemwise Recommended Reorder Level,Itemwise recommandée SEUIL DE COMMANDE
Job Applicant,Demandeur d&#39;emploi
Job Opening,Offre d&#39;emploi
Job Profile,Profil d'emploi
Job Title,Titre de l'emploi
"Job profile, qualifications required etc.",Non authroized depuis {0} dépasse les limites
Jobs Email Settings,Paramètres de messagerie Emploi
Journal Entries,Journal Entries
Journal Entry,Journal d'écriture
Journal Voucher,Bon Journal
Journal Voucher Detail,Détail pièce de journal
Journal Voucher Detail No,Détail Bon Journal No
Journal Voucher {0} does not have account {1} or already matched,Journal Bon {0} n'a pas encore compte {1} ou déjà identifié
Journal Vouchers {0} are un-linked,Date de livraison prévue ne peut pas être avant ventes Date de commande
Keep a track of communication related to this enquiry which will help for future reference.,Gardez une trace de la communication liée à cette enquête qui aidera pour référence future.
Keep it web friendly 900px (w) by 100px (h),Gardez web 900px amical ( w) par 100px ( h )
Key Performance Area,Section de performance clé
Key Responsibility Area,Section à responsabilité importante
Kg,kg
LR Date,LR Date
LR No,LR Non
Label,Étiquette
Landed Cost Item,Article coût en magasin
Landed Cost Items,Articles prix au débarquement
Landed Cost Purchase Receipt,Landed Cost reçu d&#39;achat
Landed Cost Purchase Receipts,Landed Cost reçus d&#39;achat
Landed Cost Wizard,Assistant coût en magasin
Landed Cost updated successfully,Entrepôt réservés nécessaire pour stock Article {0} à la ligne {1}
Language,Langue
Last Name,Nom de famille
Last Purchase Rate,Purchase Rate Dernière
Latest,dernier
Lead,Conduire
Lead Details,Le plomb Détails
Lead Id,Id plomb
Lead Name,Nom du chef de
Lead Owner,Conduire du propriétaire
Lead Source,Source plomb
Lead Status,Lead Etat
Lead Time Date,Plomb Date Heure
Lead Time Days,Diriger jours Temps
Lead Time days is number of days by which this item is expected in your warehouse. This days is fetched in Material Request when you select this item.,Diriger jours Temps est le nombre de jours dont cet article est prévu dans votre entrepôt. Ces jours sont récupérées dans la Demande de Matériel quand vous sélectionnez cette option.
Lead Type,Type de câbles
Lead must be set if Opportunity is made from Lead,Chef de file doit être réglée si l'occasion est composé de plomb
Leave Allocation,Laisser Allocation
Leave Allocation Tool,Laisser outil de répartition
Leave Application,Demande de congés
Leave Approver,Laisser approbateur
Leave Approvers,Laisser approbateurs
Leave Balance Before Application,Laisser Solde Avant d&#39;application
Leave Block List,Laisser Block List
Leave Block List Allow,Laisser Block List Autoriser
Leave Block List Allowed,Laisser Block List admis
Leave Block List Date,Laisser Date de Block List
Leave Block List Dates,Laisser Dates de listes rouges d&#39;
Leave Block List Name,Laisser Nom de la liste de blocage
Leave Blocked,Laisser Bloqué
Leave Control Panel,Laisser le Panneau de configuration
Leave Encashed?,Laisser encaissés?
Leave Encashment Amount,Laisser Montant Encaissement
Leave Type,Laisser Type d&#39;
Leave Type Name,Laisser Nom Type
Leave Without Pay,Congé sans solde
Leave application has been approved.,Demande d'autorisation a été approuvé .
Leave application has been rejected.,Demande d'autorisation a été rejetée .
Leave approver must be one of {0},Abréviation ne peut pas avoir plus de 5 caractères
Leave blank if considered for all branches,Laisser vide si cela est jugé pour toutes les branches
Leave blank if considered for all departments,Laisser vide si cela est jugé pour tous les ministères
Leave blank if considered for all designations,Laisser vide si cela est jugé pour toutes les désignations
Leave blank if considered for all employee types,Laisser vide si cela est jugé pour tous les types d&#39;employés
"Leave can be approved by users with Role, ""Leave Approver""",Le congé peut être approuvées par les utilisateurs avec le rôle «Laissez approbateur&quot;
Leave of type {0} cannot be longer than {1},Les entrées en stocks existent contre entrepôt {0} ne peut pas réaffecter ou modifier Maître Nom '
Leaves Allocated Successfully for {0},Forums
Leaves for type {0} already allocated for Employee {1} for Fiscal Year {0},Vous ne pouvez pas produire plus d'article {0} que la quantité de commande client {1}
Leaves must be allocated in multiples of 0.5,"Les feuilles doivent être alloués par multiples de 0,5"
Ledger,Grand livre
Ledgers,livres
Left,Gauche
Legal,juridique
Legal Expenses,Actifs stock
Letter Head,A en-tête
Letter Heads for print templates.,Journal Bon {0} n'a pas encore compte {1} .
Level,Niveau
Lft,Lft
Liability,responsabilité
List a few of your customers. They could be organizations or individuals.,Énumérer quelques-unes de vos clients . Ils pourraient être des organisations ou des individus .
List a few of your suppliers. They could be organizations or individuals.,Énumérer quelques-unes de vos fournisseurs . Ils pourraient être des organisations ou des individus .
List items that form the package.,Liste des articles qui composent le paquet.
List this Item in multiple groups on the website.,Liste cet article dans plusieurs groupes sur le site.
"List your products or services that you buy or sell. Make sure to check the Item Group, Unit of Measure and other properties when you start.",Référencez vos produits ou services que vous achetez ou vendez.
"List your tax heads (e.g. VAT, Excise; they should have unique names) and their standard rates. This will create a standard template, which you can edit and add more later.","Inscrivez vos têtes d'impôt (par exemple, la TVA , accises , ils doivent avoir des noms uniques ) et leur taux standard."
Loading...,Chargement en cours ...
Loans (Liabilities),Prêts ( passif)
Loans and Advances (Assets),Prêts et avances ( actif)
Local,arrondis
Login,Connexion
Login with your new User ID,Connectez-vous avec votre nouveau nom d'utilisateur
Logo,Logo
Logo and Letter Heads,Logo et lettres chefs
Lost,perdu
Lost Reason,Raison perdu
Low,Bas
Lower Income,Basse revenu
MTN Details,Détails MTN
Main,Nombre de points pour tous les objectifs devraient être 100 . C'est {0}
Main Reports,Rapports principaux
Maintain Same Rate Throughout Sales Cycle,Maintenir même taux long cycle de vente
Maintain same rate throughout purchase cycle,Maintenir le taux de même tout au long du cycle d&#39;achat
Maintenance,Entretien
Maintenance Date,Date de l&#39;entretien
Maintenance Details,Détails de maintenance
Maintenance Schedule,Calendrier d&#39;entretien
Maintenance Schedule Detail,Détail calendrier d&#39;entretien
Maintenance Schedule Item,Article calendrier d&#39;entretien
Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',Sélectionnez à télécharger:
Maintenance Schedule {0} exists against {0},Champ {0} n'est pas sélectionnable.
Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Programme de maintenance {0} doit être annulée avant d'annuler cette commande client
Maintenance Schedules,Programmes d&#39;entretien
Maintenance Status,Statut d&#39;entretien
Maintenance Time,Temps de maintenance
Maintenance Type,Type d&#39;entretien
Maintenance Visit,Visite de maintenance
Maintenance Visit Purpose,But Visite d&#39;entretien
Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Doublons {0} avec la même {1}
Maintenance start date can not be before delivery date for Serial No {0},Entretien date de début ne peut pas être avant la date de livraison pour série n ° {0}
Major/Optional Subjects,Sujets principaux / en option
Make ,Faire
Make Accounting Entry For Every Stock Movement,Faites Entrée Comptabilité Pour chaque mouvement Stock
Make Bank Voucher,Assurez-Bon Banque
Make Credit Note,Assurez Note de crédit
Make Debit Note,Assurez- notes de débit
Make Delivery,Assurez- livraison
Make Difference Entry,Assurez Entrée Différence
Make Excise Invoice,Faire accise facture
Make Installation Note,Faire Installation Remarque
Make Invoice,Assurez- facture
Make Maint. Schedule,Assurez- Maint . calendrier
Make Maint. Visit,Assurez- Maint . Visiter
Make Maintenance Visit,Assurez visite d'entretien
Make Packing Slip,Faites le bordereau d'
Make Payment,Effectuer un paiement
Make Payment Entry,Effectuer un paiement d'entrée
Make Purchase Invoice,Faire la facture d'achat
Make Purchase Order,Faites bon de commande
Make Purchase Receipt,Assurez- ticket de caisse
Make Salary Slip,Faire fiche de salaire
Make Salary Structure,Faire structure salariale
Make Sales Invoice,Faire la facture de vente
Make Sales Order,Assurez- Commande
Make Supplier Quotation,Faire Fournisseur offre
Make Time Log Batch,Prenez le temps Connexion lot
Male,Masculin
Manage Customer Group Tree.,Gérer l'arborescence de groupe de clients .
Manage Sales Partners.,Gérer partenaires commerciaux.
Manage Sales Person Tree.,Gérer les ventes personne Arbre .
Manage Territory Tree.,"Un élément existe avec le même nom ( {0} ) , s'il vous plaît changer le nom du groupe de l'article ou renommer l'élément"
Manage cost of operations,Gérer les coûts d&#39;exploitation
Management,gestion
Manager,directeur
"Mandatory if Stock Item is ""Yes"". Also the default warehouse where reserved quantity is set from Sales Order.",Obligatoire si le stock L&#39;article est &quot;Oui&quot;. Aussi l&#39;entrepôt par défaut où quantité réservée est fixé à partir de la commande client.
Manufacture against Sales Order,Fabrication à l&#39;encontre des commandes clients
Manufacture/Repack,Fabrication / Repack
Manufactured Qty,Quantité fabriquée
Manufactured quantity will be updated in this warehouse,Quantité fabriquée sera mis à jour dans cet entrepôt
Manufactured quantity {0} cannot be greater than planned quanitity {1} in Production Order {2},Quantité fabriquée {0} ne peut pas être supérieure à quanitity prévu {1} dans un ordre de fabrication {2}
Manufacturer,Fabricant
Manufacturer Part Number,Numéro de pièce du fabricant
Manufacturing,Fabrication
Manufacturing Quantity,Quantité de fabrication
Manufacturing Quantity is mandatory,Fabrication Quantité est obligatoire
Margin,Marge
Marital Status,État civil
Market Segment,Segment de marché
Marketing,commercialisation
Marketing Expenses,Dépenses de marketing
Married,Marié
Mass Mailing,Mailing de masse
Master Name,Nom de Maître
Master Name is mandatory if account type is Warehouse,Nom du Master est obligatoire si le type de compte est Entrepôt
Master Type,Type de Maître
Masters,Maîtres
Match non-linked Invoices and Payments.,Correspondre non liées factures et paiements.
Material Issue,Material Issue
Material Receipt,Réception matériau
Material Request,Demande de matériel
Material Request Detail No,Détail Demande Support Aucun
Material Request For Warehouse,Demande de matériel pour l&#39;entrepôt
Material Request Item,Article demande de matériel
Material Request Items,Articles Demande de matériel
Material Request No,Demande de Support Aucun
Material Request Type,Type de demande de matériel
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Demande de Matériel d'un maximum de {0} peut être faite pour objet {1} contre Commande {2}
Material Request used to make this Stock Entry,Demande de Matériel utilisé pour réaliser cette Stock Entrée
Material Request {0} is cancelled or stopped,Demande de Matériel {0} est annulé ou arrêté
Material Requests for which Supplier Quotations are not created,Les demandes significatives dont les cotes des fournisseurs ne sont pas créés
Material Requests {0} created,Devis {0} de type {1}
Material Requirement,Material Requirement
Material Transfer,De transfert de matériel
Materials,Matériels
Materials Required (Exploded),Matériel nécessaire (éclatée)
Max 5 characters,5 caractères maximum
Max Days Leave Allowed,Laisser jours Max admis
Max Discount (%),Max Réduction (%)
Max Qty,Vous ne pouvez pas Désactiver ou cancle BOM car elle est liée à d'autres nomenclatures
Max discount allowed for item: {0} is {1}%,Réduction de Max permis pour l'article: {0} {1} est%
Maximum Amount,Montant maximal
Maximum allowed credit is {0} days after posting date,Crédit maximum autorisé est de {0} jours après la date de report
Maximum {0} rows allowed,"Afficher / Masquer les caractéristiques de série comme nos , POS , etc"
Maxiumm discount for Item {0} is {1}%,Remise Maxiumm pour objet {0} {1} est %
Medical,Numéro de référence est obligatoire si vous avez entré date de référence
Medium,Moyen
"Merging is only possible if following properties are same in both records. Group or Ledger, Root Type, Company",La fusion n'est possible que si les propriétés suivantes sont les mêmes dans les deux registres .
Message,Message
Message Parameter,Paramètre message
Message Sent,Message envoyé
Message updated,un message de mise à jour
Messages,Messages
Messages greater than 160 characters will be split into multiple messages,Un message de plus de 160 caractères sera découpé en plusieurs mesage
Middle Income,Revenu intermédiaire
Milestone,Étape importante
Milestone Date,Date de Milestone
Milestones,Jalons
Milestones will be added as Events in the Calendar,Jalons seront ajoutées au fur événements dans le calendrier
Min Order Qty,Quantité de commande minimale
Min Qty,Compte {0} est gelé
Min Qty can not be greater than Max Qty,Quantité de minute ne peut être supérieure à Max Quantité
Minimum Amount,Montant minimum
Minimum Order Qty,Quantité de commande minimum
Minute,Le salaire net ne peut pas être négatif
Misc Details,Détails Divers
Miscellaneous Expenses,Nombre de mots
Miscelleneous,Miscelleneous
Mobile No,Aucun mobile
Mobile No.,Mobile n °
Mode of Payment,Mode de paiement
Modern,Moderne
Monday,Lundi
Month,Mois
Monthly,Mensuel
Monthly Attendance Sheet,Feuille de présence mensuel
Monthly Earning & Deduction,Revenu mensuel &amp; Déduction
Monthly Salary Register,S&#39;enregistrer Salaire mensuel
Monthly salary statement.,Fiche de salaire mensuel.
More Details,Plus de détails
More Info,Plus d&#39;infos
Motion Picture & Video,Motion Picture & Video
Moving Average,Moyenne mobile
Moving Average Rate,Moving Prix moyen
Mr,M.
Ms,Mme
Multiple Item prices.,Prix ​​des ouvrages multiples.
"Multiple Price Rule exists with same criteria, please resolve \			conflict by assigning priority. Price Rules: {0}","Multiple règle de prix existe avec les mêmes critères, s'il vous plaît résoudre \ conflit en attribuant des priorités. Règles de prix: {0}"
Music,musique
Must be Whole Number,Doit être un nombre entier
Name,Nom
Name and Description,Nom et description
Name and Employee ID,Nom et ID employé
"Name of new Account. Note: Please don't create accounts for Customers and Suppliers, they are created automatically from the Customer and Supplier master","Nom du nouveau compte . Note: S'il vous plaît ne créez pas de comptes pour les clients et les fournisseurs , ils sont créés automatiquement à partir du client et maître du fournisseur"
Name of person or organization that this address belongs to.,Nom de la personne ou de l&#39;organisation que cette adresse appartient.
Name of the Budget Distribution,Nom de la Répartition du budget
Naming Series,Nommer Série
Negative Quantity is not allowed,Quantité négatif n'est pas autorisé
Negative Stock Error ({6}) for Item {0} in Warehouse {1} on {2} {3} in {4} {5},Facture de vente {0} doit être annulée avant d'annuler cette commande client
Negative Valuation Rate is not allowed,Négatif évaluation Taux n'est pas autorisé
Negative balance in Batch {0} for Item {1} at Warehouse {2} on {3} {4},Coût Nom Centre existe déjà
Net Pay,Salaire net
Net Pay (in words) will be visible once you save the Salary Slip.,Salaire net (en lettres) sera visible une fois que vous enregistrez le bulletin de salaire.
Net Profit / Loss,Bénéfice net / perte nette
Net Total,Total net
Net Total (Company Currency),Total net (Société Monnaie)
Net Weight,Poids net
Net Weight UOM,Emballage Poids Net
Net Weight of each Item,Poids net de chaque article
Net pay cannot be negative,Landed Cost correctement mis à jour
Never,Jamais
New ,Nouveau
New Account,nouveau compte
New Account Name,Nom du nouveau compte
New BOM,Nouvelle nomenclature
New Communications,Communications Nouveau-
New Company,nouvelle entreprise
New Cost Center,Nouveau centre de coût
New Cost Center Name,Nouveau centre de coûts Nom
New Delivery Notes,Nouveaux bons de livraison
New Enquiries,New Renseignements
New Leads,New Leads
New Leave Application,Nouvelle demande d&#39;autorisation
New Leaves Allocated,Nouvelle Feuilles alloué
New Leaves Allocated (In Days),Feuilles de nouveaux alloués (en jours)
New Material Requests,Demandes des matériaux nouveaux
New Projects,Nouveaux projets
New Purchase Orders,De nouvelles commandes
New Purchase Receipts,Reçus d&#39;achat de nouveaux
New Quotations,Citations de nouvelles
New Sales Orders,Nouvelles commandes clients
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,S'il vous plaît créer clientèle de plomb {0}
New Stock Entries,Entrées Stock nouvelles
New Stock UOM,Bourse de New UDM
New Stock UOM is required,{0} {1} a déjà été soumis
New Stock UOM must be different from current stock UOM,S'il vous plaît entrer nos mobiles valides
New Supplier Quotations,Citations Fournisseur de nouveaux
New Support Tickets,Support Tickets nouvelles
New UOM must NOT be of type Whole Number,Nouveau UDM doit pas être de type entier Nombre
New Workplace,Travail du Nouveau-
Newsletter,Bulletin
Newsletter Content,Newsletter Content
Newsletter Status,Statut newsletter
Newsletter has already been sent,Entrepôt requis pour stock Article {0}
"Newsletters to contacts, leads.","Bulletins aux contacts, prospects."
Newspaper Publishers,Éditeurs de journaux
Next,Suivant
Next Contact By,Suivant Par
Next Contact Date,Date Contact Suivant
Next Date,Date suivante
Next email will be sent on:,Email sera envoyé le:
No,Non
No Customer Accounts found.,Aucun client ne représente trouvés.
No Customer or Supplier Accounts found,Aucun compte client ou fournisseur trouvé
No Expense Approvers. Please assign 'Expense Approver' Role to atleast one user,Compte {0} est inactif
No Item with Barcode {0},Bon de commande {0} ' arrêté '
No Item with Serial No {0},non autorisé
No Items to pack,Pas d'éléments pour emballer
No Leave Approvers. Please assign 'Leave Approver' Role to atleast one user,Pas approbateurs congé. S'il vous plaît attribuer le rôle « congé approbateur » à atleast un utilisateur
No Permission,Aucune autorisation
No Production Orders created,Section de base
No Supplier Accounts found. Supplier Accounts are identified based on 'Master Type' value in account record.,Aucun fournisseur ne représente trouvés. Comptes fournisseurs sont identifiés sur la base de la valeur «Maître Type ' dans le compte rendu.
No accounting entries for the following warehouses,Pas d'entrées comptables pour les entrepôts suivants
No addresses created,Aucune adresse créée
No contacts created,Pas de contacts créés
No default Address Template found. Please create a new one from Setup > Printing and Branding > Address Template.,Aucune valeur par défaut Adresse modèle trouvé. S'il vous plaît créer un nouveau à partir de Configuration> Presse et Branding> Adresse modèle.
No default BOM exists for Item {0},services impressionnants
No description given,Le jour (s ) sur lequel vous postulez pour congé sont les vacances . Vous n'avez pas besoin de demander l'autorisation .
No employee found,Aucun employé trouvé
No employee found!,Aucun employé trouvé!
No of Requested SMS,Pas de SMS demandés
No of Sent SMS,Pas de SMS envoyés
No of Visits,Pas de visites
No permission,État d'approbation doit être « approuvé » ou « Rejeté »
No record found,Aucun enregistrement trouvé
No records found in the Invoice table,Aucun documents trouvés dans le tableau de la facture
No records found in the Payment table,Aucun documents trouvés dans le tableau de paiement
No salary slip found for month: ,Pas de bulletin de salaire trouvé en un mois:
Non Profit,À but non lucratif
Nos,Transaction non autorisée contre arrêté l'ordre de fabrication {0}
Not Active,Non actif
Not Applicable,Non applicable
Not Available,Indisponible
Not Billed,Non Facturé
Not Delivered,Non Livré
Not Set,non définie
Not allowed to update stock transactions older than {0},Non autorisé à mettre à jour les transactions boursières de plus que {0}
Not authorized to edit frozen Account {0},Message totale (s )
Not authroized since {0} exceeds limits,{0} {1} a été modifié . S'il vous plaît Actualiser
Not permitted,Sélectionnez à télécharger:
Note,Remarque
Note User,Remarque utilisateur
"Note: Backups and files are not deleted from Dropbox, you will have to delete them manually.","Remarque: Les sauvegardes et les fichiers ne sont pas effacés de Dropbox, vous devrez supprimer manuellement."
"Note: Backups and files are not deleted from Google Drive, you will have to delete them manually.","Remarque: Les sauvegardes et les fichiers ne sont pas supprimés de Google Drive, vous devrez supprimer manuellement."
Note: Due Date exceeds the allowed credit days by {0} day(s),Batch Log Time {0} doit être « déposés »
Note: Email will not be sent to disabled users,Remarque: E-mail ne sera pas envoyé aux utilisateurs handicapés
Note: Item {0} entered multiple times,Stock ne peut pas être mis à jour contre livraison Remarque {0}
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,Casual congé
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,Remarque : Le système ne vérifie pas sur - livraison et la sur- réservation pour objet {0} que la quantité ou le montant est égal à 0
Note: There is not enough leave balance for Leave Type {0},S'il vous plaît spécifier un ID de ligne valide pour {0} en ligne {1}
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Prix ​​règle pour l'escompte
Note: {0},Compte avec des nœuds enfants ne peut pas être converti en livre
Notes,Remarques
Notes:,notes:
Nothing to request,Pas de requête à demander
Notice (days),Avis ( jours )
Notification Control,Contrôle de notification
Notification Email Address,Adresse e-mail de notification
Notify by Email on creation of automatic Material Request,Notification par courriel lors de la création de la demande de matériel automatique
Number Format,Format numérique
Offer Date,Date de l'offre
Office,Bureau
Office Equipments,Équipement de bureau
Office Maintenance Expenses,Date d'adhésion doit être supérieure à Date de naissance
Office Rent,POS Global Setting {0} déjà créé pour la compagnie {1}
Old Parent,Parent Vieux
On Net Total,Le total net
On Previous Row Amount,Le montant rangée précédente
On Previous Row Total,Le total de la rangée précédente
Online Auctions,Enchères en ligne
Only Leave Applications with status 'Approved' can be submitted,Date de livraison prévue ne peut pas être avant commande date
"Only Serial Nos with status ""Available"" can be delivered.","Seulement série n ° avec le statut "" disponible "" peut être livré ."
Only leaf nodes are allowed in transaction,Seuls les noeuds feuilles sont autorisées dans une transaction
Only the selected Leave Approver can submit this Leave Application,Seul le congé approbateur sélectionné peut soumettre cette demande de congé
Open,Ouvert
Open Production Orders,Commandes ouverte de production
Open Tickets,Open Billets
Opening (Cr),Ouverture ( Cr )
Opening (Dr),{0} doit être inférieur ou égal à {1}
Opening Date,Date d&#39;ouverture
Opening Entry,Entrée ouverture
Opening Qty,Quantité d'ouverture
Opening Time,Ouverture Heure
Opening Value,Valeur d'ouverture
Opening for a Job.,Ouverture d&#39;un emploi.
Operating Cost,Coût d&#39;exploitation
Operation Description,Description de l&#39;opération
Operation No,Opération No
Operation Time (mins),Temps de fonctionnement (min)
Operation {0} is repeated in Operations Table,S'il vous plaît sélectionner préfixe premier
Operation {0} not present in Operations Table,Opération {0} ne présente dans le tableau des opérations
Operations,Opérations
Opportunity,Occasion
Opportunity Date,Date de possibilité
Opportunity From,De opportunité
Opportunity Item,Article occasion
Opportunity Items,Articles Opportunité
Opportunity Lost,Une occasion manquée
Opportunity Type,Type d&#39;opportunité
Optional. This setting will be used to filter in various transactions.,Facultatif. Ce paramètre sera utilisé pour filtrer dans diverses opérations .
Order Type,Type d&#39;ordre
Order Type must be one of {0},type d'ordre doit être l'un des {0}
Ordered,ordonné
Ordered Items To Be Billed,Articles commandés à facturer
Ordered Items To Be Delivered,Articles commandés à livrer
Ordered Qty,commandé Quantité
"Ordered Qty: Quantity ordered for purchase, but not received.","Commandé Quantité: Quantité de commande pour l'achat , mais pas reçu ."
Ordered Quantity,Quantité commandée
Orders released for production.,Commandes validé pour la production.
Organization Name,Nom de l'organisme
Organization Profile,Maître de l'employé .
Organization branch master.,Point impôt Row {0} doit avoir un compte de type de l'impôt sur le revenu ou de dépenses ou ou taxé
Organization unit (department) master.,Unité d'organisation (département) maître .
Other,Autre
Other Details,Autres détails
Others,autres
Out Qty,out Quantité
Out Value,Dehors Valeur
Out of AMC,Sur AMC
Out of Warranty,Hors garantie
Outgoing,Sortant
Outstanding Amount,Encours
Outstanding for {0} cannot be less than zero ({1}),Participation pour les employés {0} est déjà marqué
Overhead,Au-dessus
Overheads,Les frais généraux
Overlapping conditions found between:,S'il vous plaît entrez l'adresse e-mail
Overview,vue d'ensemble
Owned,Détenue
Owner,propriétaire
P L A - Cess Portion,PLA - Cess Portion
PL or BS,PL ou BS
PO Date,date de PO
PO No,PO Non
POP3 Mail Server,Serveur de messagerie POP3
POP3 Mail Settings,Paramètres de messagerie POP3
POP3 mail server (e.g. pop.gmail.com),POP3 serveur de messagerie (par exemple pop.gmail.com)
POP3 server e.g. (pop.gmail.com),Serveur POP3 par exemple (pop.gmail.com)
POS Setting,Réglage POS
POS Setting required to make POS Entry,POS Réglage nécessaire pour faire POS Entrée
POS Setting {0} already created for user: {1} and company {2},Point {0} a été saisi deux fois
POS View,POS View
PR Detail,Détail PR
Package Item Details,Détails d&#39;article de l&#39;emballage
Package Items,Articles paquet
Package Weight Details,Détails Poids de l&#39;emballage
Packed Item,Article d&#39;emballage de livraison Note
Packed quantity must equal quantity for Item {0} in row {1},Emballé quantité doit être égale à la quantité pour l'article {0} à la ligne {1}
Packing Details,Détails d&#39;emballage
Packing List,Packing List
Packing Slip,Bordereau
Packing Slip Item,Emballage article Slip
Packing Slip Items,Emballage Articles Slip
Packing Slip(s) cancelled,Point {0} doit être un élément de sous- traitance
Page Break,Saut de page
Page Name,Nom de la page
Paid Amount,Montant payé
Paid amount + Write Off Amount can not be greater than Grand Total,Comptes provisoires ( passif)
Pair,Assistant de configuration
Parameter,Paramètre
Parent Account,Compte Parent
Parent Cost Center,Centre de coûts Parent
Parent Customer Group,Groupe Client parent
Parent Detail docname,DocName Détail Parent
Parent Item,Article Parent
Parent Item Group,Groupe d&#39;éléments Parent
Parent Item {0} must be not Stock Item and must be a Sales Item,Vous ne pouvez pas ouvrir par exemple lorsque son {0} est ouvert
Parent Party Type,S'il vous plaît entrez groupe compte parent pour le compte d'entrepôt
Parent Sales Person,Parent Sales Person
Parent Territory,Territoire Parent
Parent Website Page,«Sur la base » et « Regrouper par » ne peut pas être la même
Parent Website Route,Montant de l'impôt après réduction Montant
Parenttype,ParentType
Part-time,À temps partiel
Partially Completed,Partiellement réalisé
Partly Billed,Présentée en partie
Partly Delivered,Livré en partie
Partner Target Detail,Détail Cible partenaire
Partner Type,Type de partenaire
Partner's Website,Le site web du partenaire
Party,Intervenants
Party Account,Compte Parti
Party Type,Type de partie
Party Type Name,This Time Connexion conflit avec {0}
Passive,Passif
Passport Number,Numéro de passeport
Password,Mot de passe
Pay To / Recd From,Pay To / RECD De
Payable,Impôt sur le revenu
Payables,Dettes
Payables Group,Groupe Dettes
Payment Days,Jours de paiement
Payment Due Date,Date d'échéance
Payment Period Based On Invoice Date,Période de paiement basé sur Date de la facture
Payment Reconciliation,Rapprochement des paiements
Payment Reconciliation Invoice,Rapprochement des paiements de facture
Payment Reconciliation Invoices,Les factures de réconciliation de paiement
Payment Reconciliation Payment,Rapprochement des paiements Paiement
Payment Reconciliation Payments,Paiements de réconciliation de paiement
Payment Type,Type de paiement
Payment cannot be made for empty cart,Le paiement ne peut être fait pour le chariot vide
Payment of salary for the month {0} and year {1},Centre de coûts est nécessaire à la ligne {0} dans le tableau des impôts pour le type {1}
Payments,Paiements
Payments Made,Paiements effectués
Payments Received,Paiements reçus
Payments made during the digest period,Les paiements effectués au cours de la période digest
Payments received during the digest period,Les paiements reçus au cours de la période digest
Payroll Settings,Paramètres de la paie
Pending,En attendant
Pending Amount,Montant en attente
Pending Items {0} updated,Machines et installations
Pending Review,Attente d&#39;examen
Pending SO Items For Purchase Request,"Articles en attente Donc, pour demande d&#39;achat"
Pension Funds,Les fonds de pension
Percent Complete,Pour cent complet
Percentage Allocation,Répartition en pourcentage
Percentage Allocation should be equal to 100%,Pourcentage allocation doit être égale à 100 %
Percentage variation in quantity to be allowed while receiving or delivering this item.,Pourcentage de variation de la quantité à être autorisé lors de la réception ou la livraison de cet article.
Percentage you are allowed to receive or deliver more against the quantity ordered. For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to receive 110 units.,Pourcentage que vous êtes autorisé à recevoir ou de livrer plus sur la quantité commandée. Par exemple: Si vous avez commandé 100 unités. et votre allocation est de 10% alors que vous êtes autorisé à recevoir 110 unités.
Performance appraisal.,L&#39;évaluation des performances.
Period,période
Period Closing Voucher,Bon clôture de la période
Periodicity,Périodicité
Permanent Address,Adresse permanente
Permanent Address Is,Adresse permanente est
Permission,Permission
Personal,Personnel
Personal Details,Données personnelles
Personal Email,Courriel personnel
Pharmaceutical,pharmaceutique
Pharmaceuticals,médicaments
Phone,Téléphone
Phone No,N ° de téléphone
Piecework,travail à la pièce
Pincode,Le code PIN
Place of Issue,Lieu d&#39;émission
Plan for maintenance visits.,Plan pour les visites de maintenance.
Planned Qty,Quantité planifiée
"Planned Qty: Quantity, for which, Production Order has been raised, but is pending to be manufactured.","Prévue Quantité: Quantité , pour qui , un ordre de fabrication a été soulevée , mais est en attente d' être fabriqué ."
Planned Quantity,Quantité planifiée
Planning,planification
Plant,Plante
Plant and Machinery,Facture d'achat {0} est déjà soumis
Please Enter Abbreviation or Short Name properly as it will be added as Suffix to all Account Heads.,S&#39;il vous plaît Entrez Abréviation ou nom court correctement car il sera ajouté comme suffixe à tous les chefs de compte.
Please Update SMS Settings,S'il vous plaît Mettre à jour les paramètres de SMS
Please add expense voucher details,Attachez votre image
Please add to Modes of Payment from Setup.,S'il vous plaît ajoutez à Modes de paiement de configuration.
Please check 'Is Advance' against Account {0} if this is an advance entry.,Exercice / comptabilité .
Please click on 'Generate Schedule',"S'il vous plaît cliquer sur "" Générer annexe '"
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"S'il vous plaît cliquer sur "" Générer annexe ' pour aller chercher de série n ° ajouté pour objet {0}"
Please click on 'Generate Schedule' to get schedule,"S'il vous plaît cliquer sur "" Générer annexe » pour obtenir le calendrier"
Please create Customer from Lead {0},Prix ​​/ Rabais
Please create Salary Structure for employee {0},« Date de début prévue » ne peut être supérieur à ' Date de fin prévue '
Please create new account from Chart of Accounts.,S'il vous plaît créer un nouveau compte de plan comptable .
Please do NOT create Account (Ledgers) for Customers and Suppliers. They are created directly from the Customer / Supplier masters.,S'il vous plaît ne créez pas de compte ( grands livres ) pour les clients et les fournisseurs . Ils sont créés directement par les maîtres clients / fournisseurs .
Please enter 'Expected Delivery Date',S'il vous plaît entrer « Date de livraison prévue '
Please enter 'Is Subcontracted' as Yes or No,{0} {1} contre facture {1}
Please enter 'Repeat on Day of Month' field value,1 devise = [ ? ] Fraction
Please enter Account Receivable/Payable group in company master,Les paramètres par défaut pour l'achat des transactions .
Please enter Approving Role or Approving User,S'il vous plaît entrer approuver ou approuver Rôle utilisateur
Please enter BOM for Item {0} at row {1},S'il vous plaît entrer nomenclature pour objet {0} à la ligne {1}
Please enter Company,S'il vous plaît entrer Société
Please enter Cost Center,S'il vous plaît entrer Centre de coûts
Please enter Delivery Note No or Sales Invoice No to proceed,S&#39;il vous plaît entrer livraison Remarque Aucune facture de vente ou Non pour continuer
Please enter Employee Id of this sales parson,S'il vous plaît entrer employés Id de ce pasteur de vente
Please enter Expense Account,S&#39;il vous plaît entrer Compte de dépenses
Please enter Item Code to get batch no,S'il vous plaît entrez le code d'article pour obtenir n ° de lot
Please enter Item Code.,S'il vous plaît entrez le code d'article .
Please enter Item first,S'il vous plaît entrer article premier
Please enter Maintaince Details first,S'il vous plaît entrer Maintaince Détails première
Please enter Master Name once the account is created.,S'il vous plaît entrer Maître Nom une fois le compte créé .
Please enter Planned Qty for Item {0} at row {1},Vous ne pouvez pas sélectionner le type de charge comme « Sur la ligne précédente Montant » ou « Le précédent Row totale » pour l'évaluation . Vous ne pouvez sélectionner que l'option «Total» pour le montant de la ligne précédente ou total de la ligne précédente
Please enter Production Item first,S'il vous plaît entrer en production l'article premier
Please enter Purchase Receipt No to proceed,S&#39;il vous plaît entrer Achat réception Non pour passer
Please enter Reference date,S'il vous plaît entrer Date de référence
Please enter Warehouse for which Material Request will be raised,S'il vous plaît entrer Entrepôt à qui demande de matériel sera porté
Please enter Write Off Account,S'il vous plaît entrer amortissent compte
Please enter atleast 1 invoice in the table,recevable
Please enter company first,S'il vous plaît entrez première entreprise
Please enter company name first,S'il vous plaît entrez le nom de l'entreprise d'abord
Please enter default Unit of Measure,Entrepôt de cible dans la ligne {0} doit être la même que la production de commande
Please enter default currency in Company Master,S'il vous plaît entrer devise par défaut en maître de compagnie
Please enter email address,Allouer des feuilles pour une période .
Please enter item details,"Pour signaler un problème, passez à"
Please enter message before sending,"Vous ne pouvez pas supprimer Aucune série {0} en stock . Première retirer du stock, puis supprimer ."
Please enter parent account group for warehouse account,Matière première
Please enter parent cost center,Le projet de loi n ° {0} déjà réservé dans la facture d'achat {1}
Please enter quantity for Item {0},Point {0} est annulée
Please enter relieving date.,Type de partie de Parent
Please enter sales order in the above table,S'il vous plaît entrez la commande client dans le tableau ci-dessus
Please enter valid Company Email,S'il vous plaît entrer une adresse valide Société Email
Please enter valid Email Id,Maître Organisation de branche .
Please enter valid Personal Email,S'il vous plaît entrer une adresse valide personnels
Please enter valid mobile nos,nos
Please find attached Sales Invoice #{0},S'il vous plaît trouver ci-joint la facture de vente # {0}
Please install dropbox python module,S&#39;il vous plaît installer Dropbox module Python
Please mention no of visits required,Paiement du salaire pour le mois {0} et {1} an
Please pull items from Delivery Note,POS- Cadre . #
Please save the Newsletter before sending,{0} {1} n'est pas soumis
Please save the document before generating maintenance schedule,S'il vous plaît enregistrer le document avant de générer le calendrier d'entretien
Please see attachment,S'il vous plaît voir la pièce jointe
Please select Bank Account,S&#39;il vous plaît sélectionner compte bancaire
Please select Carry Forward if you also want to include previous fiscal year's balance leaves to this fiscal year,S&#39;il vous plaît sélectionnez Report si vous souhaitez également inclure le solde de l&#39;exercice précédent ne laisse à cet exercice
Please select Category first,S'il vous plaît sélectionnez d'abord Catégorie
Please select Charge Type first,S'il vous plaît sélectionnez le type de Facturation de la première
Please select Fiscal Year,S'il vous plaît sélectionner l'Exercice
Please select Group or Ledger value,Nombre BOM pas permis non manufacturé article {0} à la ligne {1}
Please select Incharge Person's name,S'il vous plaît sélectionnez le nom de la personne Incharge
Please select Invoice Type and Invoice Number in atleast one row,S'il vous plaît sélectionnez facture type et numéro de facture dans atleast une rangée
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Sales BOM",Contactez- maître .
Please select Price List,S&#39;il vous plaît sélectionnez Liste des Prix
Please select Start Date and End Date for Item {0},S'il vous plaît sélectionnez Date de début et date de fin de l'article {0}
Please select Time Logs.,S'il vous plaît sélectionner registres de temps.
Please select a csv file,S&#39;il vous plaît sélectionner un fichier csv
Please select a valid csv file with data,Date de liquidation ne peut pas être avant le check date dans la ligne {0}
Please select a value for {0} quotation_to {1},S'il vous plaît sélectionnez une valeur pour {0} {1} quotation_to
"Please select an ""Image"" first","S'il vous plaît sélectionnez ""Image "" première"
Please select charge type first,Immobilisations
Please select company first,S'il vous plaît sélectionnez première entreprise
Please select company first.,S'il vous plaît sélectionnez première entreprise.
Please select item code,Etes-vous sûr de vouloir unstop
Please select month and year,S&#39;il vous plaît sélectionner le mois et l&#39;année
Please select prefix first,nourriture
Please select the document type first,S&#39;il vous plaît sélectionner le type de document premier
Please select weekly off day,Laissez uniquement les applications ayant le statut « Approuvé » peut être soumis
Please select {0},S'il vous plaît sélectionnez {0}
Please select {0} first,S'il vous plaît sélectionnez {0} premier
Please select {0} first.,S'il vous plaît sélectionnez {0} en premier.
Please set Dropbox access keys in your site config,S'il vous plaît définir les clés d'accès Dropbox sur votre site config
Please set Google Drive access keys in {0},S'il vous plaît définir les clés d'accès Google lecteurs dans {0}
Please set default Cash or Bank account in Mode of Payment {0},Les frais de téléphone
Please set default value {0} in Company {0},tous les territoires
Please set {0},S'il vous plaît mettre {0}
Please setup Employee Naming System in Human Resource > HR Settings,S&#39;il vous plaît configuration Naming System employés en ressources humaines&gt; Paramètres RH
Please setup numbering series for Attendance via Setup > Numbering Series,S'il vous plaît configuration série de numérotation à la fréquentation via Configuration> Série de numérotation
Please setup your chart of accounts before you start Accounting Entries,S'il vous plaît configurer votre plan de comptes avant de commencer Écritures comptables
Please specify,Veuillez spécifier
Please specify Company,S&#39;il vous plaît préciser Company
Please specify Company to proceed,Veuillez indiquer Société de procéder
Please specify Default Currency in Company Master and Global Defaults,N ° de série {0} n'existe pas
Please specify a,Veuillez spécifier un
Please specify a valid 'From Case No.',S&#39;il vous plaît indiquer une valide »De Affaire n &#39;
Please specify a valid Row ID for {0} in row {1},Il s'agit d'un site d'exemple généré automatiquement à partir de ERPNext
Please specify either Quantity or Valuation Rate or both,S'il vous plaît spécifier Quantité ou l'évaluation des taux ou à la fois
Please submit to update Leave Balance.,S'il vous plaît soumettre à jour de congé balance .
Plot,terrain
Plot By,terrain par
Point of Sale,Point de vente
Point-of-Sale Setting,Point-of-Sale Réglage
Post Graduate,Message d&#39;études supérieures
Postal,Postal
Postal Expenses,Frais postaux
Posting Date,Date de publication
Posting Time,Affichage Temps
Posting date and posting time is mandatory,Date d'affichage et l'affichage est obligatoire
Posting timestamp must be after {0},Horodatage affichage doit être après {0}
Potential opportunities for selling.,Possibilités pour la vente.
Preferred Billing Address,Préféré adresse de facturation
Preferred Shipping Address,Preferred Adresse de livraison
Prefix,Préfixe
Present,Présent
Prevdoc DocType,Prevdoc DocType
Prevdoc Doctype,Prevdoc Doctype
Preview,Aperçu
Previous,Précedent
Previous Work Experience,L&#39;expérience de travail antérieure
Price,Profil de l'organisation
Price / Discount,Utilisateur Notes est obligatoire
Price List,Liste des prix
Price List Currency,Devise Prix
Price List Currency not selected,Liste des Prix devise sélectionné
Price List Exchange Rate,Taux de change Prix de liste
Price List Name,Nom Liste des Prix
Price List Rate,Prix ​​Liste des Prix
Price List Rate (Company Currency),Tarifs Taux (Société Monnaie)
Price List master.,Liste de prix principale.
Price List must be applicable for Buying or Selling,Compte {0} doit être SAMES comme crédit du compte dans la facture d'achat en ligne {0}
Price List not selected,Barcode valide ou N ° de série
Price List {0} is disabled,Série {0} déjà utilisé dans {1}
Price or Discount,Frais d'administration
Pricing Rule,Provision pour plus - livraison / facturation excessive franchi pour objet {0}
Pricing Rule Help,Prix règle Aide
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Prix règle est d'abord sélectionné sur la base de «postuler en« champ, qui peut être l'article, groupe d'articles ou de marque."
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","Prix règle est faite pour remplacer la liste des prix / définir le pourcentage de remise, sur la base de certains critères."
Pricing Rules are further filtered based on quantity.,Les règles de tarification sont encore filtrés en fonction de la quantité.
Print Format Style,Format d&#39;impression style
Print Heading,Imprimer Cap
Print Without Amount,Imprimer Sans Montant
Print and Stationary,Appréciation {0} créé pour les employés {1} dans la plage de date donnée
Printing and Branding,équité
Priority,Priorité
Private Equity,Private Equity
Privilege Leave,Point {0} doit être fonction Point
Probation,probation
Process Payroll,processus de paye
Produced,produit
Produced Quantity,Quantité produite
Product Enquiry,Demande d&#39;information produit
Production,Production
Production Order,Ordre de fabrication
Production Order status is {0},Feuilles alloué avec succès pour {0}
Production Order {0} must be cancelled before cancelling this Sales Order,Tous les groupes de clients
Production Order {0} must be submitted,Client / Nom plomb
Production Orders,Ordres de fabrication
Production Orders in Progress,Les commandes de produits en cours
Production Plan Item,Élément du plan de production
Production Plan Items,Éléments du plan de production
Production Plan Sales Order,Plan de Production Ventes Ordre
Production Plan Sales Orders,Vente Plan d&#39;ordres de production
Production Planning Tool,Outil de planification de la production
Products,Produits
"Products will be sorted by weight-age in default searches. More the weight-age, higher the product will appear in the list.","Les produits seront triés par poids-âge dans les recherches par défaut. Plus le poids-âge, plus le produit apparaîtra dans la liste."
Professional Tax,Taxe Professionnelle
Profit and Loss,Pertes et profits
Profit and Loss Statement,Compte de résultat
Project,Projet
Project Costing,Des coûts de projet
Project Details,Détails du projet
Project Manager,Chef de projet
Project Milestone,Des étapes du projet
Project Milestones,Étapes du projet
Project Name,Nom du projet
Project Start Date,Date de début du projet
Project Type,Type de projet
Project Value,Valeur du projet
Project activity / task.,Activité de projet / tâche.
Project master.,Projet de master.
Project will get saved and will be searchable with project name given,Projet sera sauvegardé et sera consultable avec le nom de projet donné
Project wise Stock Tracking,Projet sage Stock Tracking
Project-wise data is not available for Quotation,alloué avec succès
Projected,Projection
Projected Qty,Qté projeté
Projects,Projets
Projects & System,Pas de commande de production créées
Prompt for Email on Submission of,Prompt for Email relative à la présentation des
Proposal Writing,Rédaction de propositions
Provide email id registered in company,Fournir id e-mail enregistrée dans la société
Provisional Profit / Loss (Credit),Résultat provisoire / Perte (crédit)
Public,Public
Published on website at: {0},Publié sur le site Web le: {0}
Publishing,édition
Pull sales orders (pending to deliver) based on the above criteria,Tirez les ordres de vente (en attendant de livrer) sur la base des critères ci-dessus
Purchase,Achat
Purchase / Manufacture Details,Achat / Fabrication Détails
Purchase Analytics,Les analyses des achats
Purchase Common,Achat commun
Purchase Details,Détails de l'achat
Purchase Discounts,Rabais sur l&#39;achat
Purchase Invoice,Facture achat
Purchase Invoice Advance,Paiement à l&#39;avance Facture
Purchase Invoice Advances,Achat progrès facture
Purchase Invoice Item,Achat d&#39;article de facture
Purchase Invoice Trends,Achat Tendances facture
Purchase Invoice {0} is already submitted,Voulez-vous vraiment de soumettre tout bulletin de salaire pour le mois {0} et {1} an
Purchase Order,Bon de commande
Purchase Order Item,Achat Passer commande
Purchase Order Item No,Achetez article ordonnance n
Purchase Order Item Supplied,Point de commande fourni
Purchase Order Items,Achetez articles de la commande
Purchase Order Items Supplied,Articles commande fourni
Purchase Order Items To Be Billed,Purchase Order articles qui lui seront facturées
Purchase Order Items To Be Received,Articles de bons de commande pour être reçu
Purchase Order Message,Achat message Ordre
Purchase Order Required,Bon de commande requis
Purchase Order Trends,Bon de commande Tendances
Purchase Order number required for Item {0},Vous ne pouvez pas reporter {0}
Purchase Order {0} is 'Stopped',Poster n'existe pas . S'il vous plaît ajoutez poste !
Purchase Order {0} is not submitted,entrer une valeur
Purchase Orders given to Suppliers.,Achetez commandes faites aux fournisseurs.
Purchase Receipt,Achat Réception
Purchase Receipt Item,Achat d&#39;article de réception
Purchase Receipt Item Supplied,Article reçu d&#39;achat fournis
Purchase Receipt Item Supplieds,Achat Supplieds point de réception
Purchase Receipt Items,Acheter des articles reçus
Purchase Receipt Message,Achat message de réception
Purchase Receipt No,Achetez un accusé de réception
Purchase Receipt Required,Réception achat requis
Purchase Receipt Trends,Achat Tendances reçus
Purchase Receipt number required for Item {0},Numéro du bon de réception requis pour objet {0}
Purchase Receipt {0} is not submitted,Reçu d'achat {0} n'est pas soumis
Purchase Register,Achat S&#39;inscrire
Purchase Return,Achat de retour
Purchase Returned,Achetez retour
Purchase Taxes and Charges,Impôts achat et les frais
Purchase Taxes and Charges Master,Impôts achat et Master frais
Purchse Order number required for Item {0},Ordre de fabrication {0} doit être annulée avant d'annuler cette commande client
Purpose,But
Purpose must be one of {0},L'objectif doit être l'un des {0}
QA Inspection,QA inspection
Qty,Qté
Qty Consumed Per Unit,Quantité consommée par unité
Qty To Manufacture,Quantité à fabriquer
Qty as per Stock UOM,Qté en stock pour Emballage
Qty to Deliver,Quantité à livrer
Qty to Order,Quantité à commander
Qty to Receive,Quantité à recevoir
Qty to Transfer,Qté à Transférer
Qualification,Qualification
Quality,Qualité
Quality Inspection,Inspection de la Qualité
Quality Inspection Parameters,Paramètres inspection de la qualité
Quality Inspection Reading,Lecture d&#39;inspection de la qualité
Quality Inspection Readings,Lectures inspection de la qualité
Quality Inspection required for Item {0},Inspection de la qualité requise pour l'article {0} 
Quality Management,Gestion de la qualité
Quantity,Quantité
Quantity Requested for Purchase,Quantité demandée pour l&#39;achat
Quantity and Rate,Quantité et taux
Quantity and Warehouse,Quantité et entrepôt
Quantity cannot be a fraction in row {0},Quantité ne peut pas être une fraction de la rangée
Quantity for Item {0} must be less than {1},Quantité de l'article {0} doit être inférieur à {1}
Quantity in row {0} ({1}) must be same as manufactured quantity {2},Entrepôt ne peut pas être supprimé car il existe entrée stock registre pour cet entrepôt .
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Quantité de produit obtenue après fabrication / reconditionnement des quantités données de matières premières
Quantity required for Item {0} in row {1},Quantité requise pour objet {0} à la ligne {1}
Quarter,Trimestre
Quarterly,Trimestriel
Quick Help,Aide rapide
Quotation,Devis
Quotation Item,Article devis
Quotation Items,Articles de devis
Quotation Lost Reason,Devis perdu la raison
Quotation Message,Message du devis
Quotation To,Devis Pour
Quotation Trends,Devis Tendances
Quotation {0} is cancelled,Devis {0} est annulée
Quotation {0} not of type {1},Activer / désactiver les monnaies .
Quotations received from Suppliers.,Devis reçus des fournisseurs.
Quotes to Leads or Customers.,Citations à prospects ou clients.
Raise Material Request when stock reaches re-order level,Soulever demande de matériel lorsque le stock atteint le niveau de réapprovisionnement
Raised By,Raised By
Raised By (Email),Raised By (e-mail)
Random,Aléatoire
Range,Gamme
Rate,Taux
Rate ,Taux
Rate (%),Taux (%)
Rate (Company Currency),Taux (Monnaie de la société)
Rate Of Materials Based On,Taux de matériaux à base
Rate and Amount,Taux et le montant
Rate at which Customer Currency is converted to customer's base currency,Vitesse à laquelle la devise du client est converti en devise de base du client
Rate at which Price list currency is converted to company's base currency,Taux auquel la monnaie Liste de prix est converti en devise de base entreprise
Rate at which Price list currency is converted to customer's base currency,Taux auquel la monnaie Liste de prix est converti en devise de base du client
Rate at which customer's currency is converted to company's base currency,Vitesse à laquelle la devise du client est converti en devise de base entreprise
Rate at which supplier's currency is converted to company's base currency,Taux auquel la monnaie du fournisseur est converti en devise de base entreprise
Rate at which this tax is applied,Vitesse à laquelle cet impôt est appliqué
Raw Material,S'il vous plaît entrez la date et l'heure de l'événement !
Raw Material Item Code,Raw Code article Matière
Raw Materials Supplied,Des matières premières fournies
Raw Materials Supplied Cost,Coût des matières premières fournies
Raw material cannot be same as main Item,Point {0} ignoré car il n'est pas un article en stock
Re-Order Level,Re-Order niveau
Re-Order Qty,Re-Cdt
Re-order,Re-order
Re-order Level,Re-order niveau
Re-order Qty,Re-order Quantité
Read,Lire
Reading 1,Lecture 1
Reading 10,Lecture 10
Reading 2,Lecture 2
Reading 3,Reading 3
Reading 4,Reading 4
Reading 5,Reading 5
Reading 6,Lecture 6
Reading 7,Lecture 7
Reading 8,Lecture 8
Reading 9,Lecture 9
Real Estate,Immobilier
Reason,Raison
Reason for Leaving,Raison du départ
Reason for Resignation,Raison de la démission
Reason for losing,Raison pour perdre
Recd Quantity,Quantité recd
Receivable,Impression et image de marque
Receivable / Payable account will be identified based on the field Master Type,Compte à recevoir / payer sera identifié en fonction du champ Type de maître
Receivables,Créances
Receivables / Payables,Créances / dettes
Receivables Group,Groupe de créances
Received Date,Date de réception
Received Items To Be Billed,Articles reçus à être facturé
Received Qty,Quantité reçue
Received and Accepted,Reçus et acceptés
Receiver List,Liste des récepteurs
Receiver List is empty. Please create Receiver List,Soit quantité de cible ou le montant cible est obligatoire .
Receiver Parameter,Paramètre récepteur
Recipients,Destinataires
Reconcile,réconcilier
Reconciliation Data,Données de réconciliation
Reconciliation HTML,Réconciliation HTML
Reconciliation JSON,Réconciliation JSON
Record item movement.,Enregistrer le mouvement de l&#39;objet.
Recurring Id,Id récurrent
Recurring Invoice,Facture récurrente
Recurring Type,Type de courant
Reduce Deduction for Leave Without Pay (LWP),Réduire la déduction de congé sans solde (PLT)
Reduce Earning for Leave Without Pay (LWP),Réduire Gagner de congé sans solde (PLT)
Ref,Réf
Ref Code,Code de référence de
Ref SQ,Réf SQ
Reference,Référence
Reference #{0} dated {1},"Vous ne pouvez pas surfacturer pour objet {0} à la ligne {0} plus de {1} . Pour permettre la surfacturation , s'il vous plaît mettre dans 'Configuration '> ' par défaut globales'"
Reference Date,Date de Référence
Reference Name,Nom de référence
Reference No & Reference Date is required for {0},contacts
Reference No is mandatory if you entered Reference Date,"Centre de coûts est nécessaire pour compte » de profits et pertes "" {0}"
Reference Number,Numéro de référence
Reference Row #,"Ne peut directement fixer le montant . Pour le type de charge « réelle » , utilisez le champ de taux"
Refresh,Rafraîchir
Registration Details,Détails de l&#39;enregistrement
Registration Info,D&#39;informations Inscription
Rejected,Rejeté
Rejected Quantity,Quantité rejetée
Rejected Serial No,Rejeté N ° de série
Rejected Warehouse,Entrepôt rejetée
Rejected Warehouse is mandatory against regected item,Entrepôt rejeté est obligatoire contre l'article regected
Relation,Rapport
Relieving Date,Date de soulager
Relieving Date must be greater than Date of Joining,Vous n'êtes pas autorisé à ajouter ou mettre à jour les entrées avant {0}
Remark,Remarque
Remarks,Remarques
Remarks Custom,Remarques sur commande
Rename,Renommer
Rename Log,Renommez identifiez-vous
Rename Tool,Outils de renommage
Rent Cost,louer coût
Rent per hour,Louer par heure
Rented,Loué
Repeat on Day of Month,Répétez le Jour du Mois
Replace,Remplacer
Replace Item / BOM in all BOMs,Remplacer l&#39;élément / BOM dans toutes les nomenclatures
Replied,Répondu
Report Date,Date du rapport
Report Type,Rapport Genre
Report Type is mandatory,Bulletin de salaire de l'employé {0} déjà créé pour ce mois-ci
Reports to,Rapports au
Reqd By Date,Reqd par date
Reqd by Date,Reqd par date
Request Type,Type de demande
Request for Information,Demande de renseignements
Request for purchase.,Demande d&#39;achat.
Requested,demandé
Requested For,Pour demandée
Requested Items To Be Ordered,Articles demandés à commander
Requested Items To Be Transferred,Articles demandé à être transférés
Requested Qty,Quantité demandée
"Requested Qty: Quantity requested for purchase, but not ordered.","Demandé Quantité: Quantité demandée pour l'achat , mais pas ordonné ."
Requests for items.,Les demandes d&#39;articles.
Required By,Requis par
Required Date,Requis Date
Required Qty,Quantité requise
Required only for sample item.,Requis uniquement pour les articles de l&#39;échantillon.
Required raw materials issued to the supplier for producing a sub - contracted item.,Matières premières nécessaires délivrés au fournisseur pour la production d&#39;un élément sous - traitance.
Research,recherche
Research & Development,Recherche & Développement
Researcher,chercheur
Reseller,Revendeur
Reserved,réservé
Reserved Qty,Quantité réservés
"Reserved Qty: Quantity ordered for sale, but not delivered.","Réservés Quantité: Quantité de commande pour la vente , mais pas livré ."
Reserved Quantity,Quantité réservée
Reserved Warehouse,Entrepôt réservé 
Reserved Warehouse in Sales Order / Finished Goods Warehouse,Entrepôt réservé à des commandes clients / entrepôt de produits finis
Reserved Warehouse is missing in Sales Order,Réservé entrepôt est manquant dans l&#39;ordre des ventes
Reserved Warehouse required for stock Item {0} in row {1},Centre de coûts par défaut de vente
Reserved warehouse required for stock item {0},Ajoutez à cela les restrictions de l'utilisateur
Reserves and Surplus,Réserves et de l'excédent
Reset Filters,réinitialiser les filtres
Resignation Letter Date,Date de lettre de démission
Resolution,Résolution
Resolution Date,Date de Résolution
Resolution Details,Détails de la résolution
Resolved By,Résolu par
Rest Of The World,revenu indirect
Retail,Détail
Retail & Wholesale,Retail & Wholesale
Retailer,Détaillant
Review Date,Date de revoir
Rgt,Rgt
Role Allowed to edit frozen stock,Rôle autorisés à modifier stock congelé
Role that is allowed to submit transactions that exceed credit limits set.,Rôle qui est autorisé à soumettre des transactions qui dépassent les limites de crédit fixées.
Root Type,Type de Racine
Root Type is mandatory,Type de Root est obligatoire
Root account can not be deleted,Prix ​​ou à prix réduits
Root cannot be edited.,Racine ne peut pas être modifié.
Root cannot have a parent cost center,Racine ne peut pas avoir un centre de coûts parent
Rounded Off,Période est trop courte
Rounded Total,Totale arrondie
Rounded Total (Company Currency),Totale arrondie (Société Monnaie)
Row # ,Row #
Row # {0}: ,Ligne # {0}: 
Row #{0}: Ordered qty can not less than item's minimum order qty (defined in item master).,Ligne # {0}: quantité Commandé ne peut pas moins que l'ordre minimum quantité de produit (défini dans le maître de l'article).
Row #{0}: Please specify Serial No for Item {1},Ligne # {0}: S'il vous plaît spécifier Pas de série pour objet {1}
Row {0}: Account does not match with \						Purchase Invoice Credit To account,Ligne {0}: compte ne correspond pas à \ Facture d'achat crédit du compte
Row {0}: Account does not match with \						Sales Invoice Debit To account,Ligne {0}: compte ne correspond pas à \ la facture de vente de débit Pour tenir compte
Row {0}: Conversion Factor is mandatory,Ligne {0}: facteur de conversion est obligatoire
Row {0}: Credit entry can not be linked with a Purchase Invoice,Ligne {0} : entrée de crédit ne peut pas être lié à une facture d'achat
Row {0}: Debit entry can not be linked with a Sales Invoice,Ligne {0} : entrée de débit ne peut pas être lié à une facture de vente
Row {0}: Payment amount must be less than or equals to invoice outstanding amount. Please refer Note below.,Ligne {0}: Montant du paiement doit être inférieur ou égal montant de la facture exceptionnelle. S'il vous plaît se référer note ci-dessous.
Row {0}: Qty is mandatory,Ligne {0}: Quantité est obligatoire
"Row {0}: Qty not avalable in warehouse {1} on {2} {3}.					Available Qty: {4}, Transfer Qty: {5}","Ligne {0}: Qté pas avalable dans l'entrepôt {1} sur {2} {3}. Disponible Quantité: {4}, Transfert Quantité: {5}"
"Row {0}: To set {1} periodicity, difference between from and to date \						must be greater than or equal to {2}","Ligne {0}: Pour définir {1} périodicité, la différence entre de et à jour \ doit être supérieur ou égal à {2}"
Row {0}:Start Date must be before End Date,Ligne {0} : Date de début doit être avant Date de fin
Rules for adding shipping costs.,S'il vous plaît entrer atleast une facture dans le tableau
Rules for applying pricing and discount.,Tous ces éléments ont déjà été facturés
Rules to calculate shipping amount for a sale,Règles de calcul du montant de l&#39;expédition pour une vente
S.O. No.,S.O. Non.
SHE Cess on Excise,ELLE CESS sur l'accise
SHE Cess on Service Tax,ELLE CESS sur des services fiscaux
SHE Cess on TDS,ELLE CESS sur TDS
SMS Center,Centre SMS
SMS Gateway URL,URL SMS Gateway
SMS Log,SMS Log
SMS Parameter,Paramètre SMS
SMS Sender Name,SMS Sender Nom
SMS Settings,Paramètres SMS
SO Date,SO Date
SO Pending Qty,SO attente Qté
SO Qty,SO Quantité
Salary,Salaire
Salary Information,Information sur le salaire
Salary Manager,Salaire Responsable
Salary Mode,Mode de rémunération
Salary Slip,Glissement des salaires
Salary Slip Deduction,Déduction bulletin de salaire
Salary Slip Earning,Slip Salaire Gagner
Salary Slip of employee {0} already created for this month,Entrepôt réservé requis pour l'article courant {0}
Salary Structure,Grille des salaires
Salary Structure Deduction,Déduction structure salariale
Salary Structure Earning,Structure salariale Gagner
Salary Structure Earnings,Bénéfice structure salariale
Salary breakup based on Earning and Deduction.,rupture des salaires basée sur l&#39;obtention et la déduction.
Salary components.,Éléments du salaire.
Salary template master.,Maître de modèle de salaires .
Sales,Ventes
Sales Analytics,Analytics Sales
Sales BOM,BOM ventes
Sales BOM Help,Aide nomenclature des ventes
Sales BOM Item,Article nomenclature des ventes
Sales BOM Items,Articles ventes de nomenclature
Sales Browser,Exceptionnelle pour {0} ne peut pas être inférieur à zéro ( {1} )
Sales Details,Détails ventes
Sales Discounts,Escomptes sur ventes
Sales Email Settings,Réglages Courriel Ventes
Sales Expenses,Fournisseur numéro de livraison en double dans {0}
Sales Extras,Extras ventes
Sales Funnel,Entonnoir des ventes
Sales Invoice,Facture de vente
Sales Invoice Advance,Advance facture de vente
Sales Invoice Item,Article facture de vente
Sales Invoice Items,Facture de vente Articles
Sales Invoice Message,Message facture de vente
Sales Invoice No,Aucune facture de vente
Sales Invoice Trends,Soldes Tendances de la facture
Sales Invoice {0} has already been submitted,BOM {0} n'est pas actif ou non soumis
Sales Invoice {0} must be cancelled before cancelling this Sales Order,Montant du rabais
Sales Order,Commande
Sales Order Date,Date de Commande
Sales Order Item,Poste de commande client
Sales Order Items,Articles Sales Order
Sales Order Message,Message de commande client
Sales Order No,Ordonnance n ° de vente
Sales Order Required,Commande obligatoire
Sales Order Trends,Ventes Tendances des commandes
Sales Order required for Item {0},Commande requis pour objet {0}
Sales Order {0} is not submitted,Maximum {0} lignes autorisées
Sales Order {0} is not valid,Company ( pas client ou fournisseur ) maître .
Sales Order {0} is stopped,Commande {0} est arrêté
Sales Partner,Sales Partner
Sales Partner Name,Nom Sales Partner
Sales Partner Target,Cible Sales Partner
Sales Partners Commission,Partenaires Sales Commission
Sales Person,Sales Person
Sales Person Name,Nom Sales Person
Sales Person Target Variance Item Group-Wise,S'il vous plaît entrer un message avant de l'envoyer
Sales Person Targets,Personne objectifs de vente
Sales Person-wise Transaction Summary,Sales Person-sage Résumé de la transaction
Sales Register,Registre des ventes
Sales Return,Ventes de retour
Sales Returned,ventes renvoyé
Sales Taxes and Charges,Taxes de vente et frais
Sales Taxes and Charges Master,Taxes de vente et frais de Master
Sales Team,Équipe des ventes
Sales Team Details,Détails équipe de vente
Sales Team1,Ventes Equipe1
Sales and Purchase,Vente et achat
Sales campaigns.,Campagnes de vente .
Salutation,Salutation
Sample Size,Taille de l&#39;échantillon
Sanctioned Amount,Montant sanctionné
Saturday,Samedi
Schedule,Calendrier
Schedule Date,calendrier Date
Schedule Details,Planning Détails
Scheduled,Prévu
Scheduled Date,Date prévue
Scheduled to send to {0},Prévu pour envoyer à {0}
Scheduled to send to {0} recipients,Prévu pour envoyer à {0} bénéficiaires
Scheduler Failed Events,Events Calendrier perdus
School/University,Ecole / Université
Score (0-5),Score (0-5)
Score Earned,Score gagné
Score must be less than or equal to 5,Score doit être inférieur ou égal à 5
Scrap %,Scrap%
Seasonality for setting budgets.,Saisonnalité de l&#39;établissement des budgets.
Secretary,secrétaire
Secured Loans,Pas de nomenclature par défaut existe pour objet {0}
Securities & Commodity Exchanges,Valeurs mobilières et des bourses de marchandises
Securities and Deposits,Titres et des dépôts
"See ""Rate Of Materials Based On"" in Costing Section",Voir «Taux de matériaux à base de« coûts dans la section
"Select ""Yes"" for sub - contracting items",Sélectionnez &quot;Oui&quot; pour la sous - traitance articles
"Select ""Yes"" if this item is used for some internal purpose in your company.",Sélectionnez &quot;Oui&quot; si cet objet est utilisé à des fins internes de votre entreprise.
"Select ""Yes"" if this item represents some work like training, designing, consulting etc.","Sélectionnez &quot;Oui&quot; si cet objet représente un travail comme la formation, la conception, la consultation, etc"
"Select ""Yes"" if you are maintaining stock of this item in your Inventory.",Sélectionnez &quot;Oui&quot; si vous le maintien des stocks de cet article dans votre inventaire.
"Select ""Yes"" if you supply raw materials to your supplier to manufacture this item.",Sélectionnez &quot;Oui&quot; si vous fournir des matières premières à votre fournisseur pour la fabrication de cet article.
Select Brand...,Sélectionnez une marque ...
Select Budget Distribution to unevenly distribute targets across months.,Sélectionnez Répartition du budget à répartir inégalement cibles à travers mois.
"Select Budget Distribution, if you want to track based on seasonality.","Sélectionnez Répartition du budget, si vous voulez suivre en fonction de la saisonnalité."
Select Company...,Sélectionnez Société ...
Select DocType,Sélectionnez DocType
Select Fiscal Year...,Sélectionnez Exercice ...
Select Items,Sélectionner les objets
Select Project...,Sélectionnez Projet ...
Select Purchase Receipts,Sélectionnez reçus d'achat
Select Sales Orders,Sélectionnez les commandes clients
Select Sales Orders from which you want to create Production Orders.,Sélectionnez les commandes clients à partir de laquelle vous souhaitez créer des ordres de fabrication.
Select Time Logs and Submit to create a new Sales Invoice.,Sélectionnez registres de temps et de soumettre à créer une nouvelle facture de vente.
Select Transaction,Sélectionnez Transaction
Select Warehouse...,Sélectionnez Entrepôt ...
Select Your Language,« Jours depuis la dernière commande» doit être supérieur ou égal à zéro
Select account head of the bank where cheque was deposited.,Sélectionnez tête compte de la banque où chèque a été déposé.
Select company name first.,Sélectionnez le nom de la première entreprise.
Select template from which you want to get the Goals,Sélectionnez le modèle à partir duquel vous souhaitez obtenir des Objectifs
Select the Employee for whom you are creating the Appraisal.,Sélectionnez l&#39;employé pour lequel vous créez l&#39;évaluation.
Select the period when the invoice will be generated automatically,Sélectionnez la période pendant laquelle la facture sera générée automatiquement
Select the relevant company name if you have multiple companies,Sélectionnez le nom de l&#39;entreprise concernée si vous avez de multiples entreprises
Select the relevant company name if you have multiple companies.,Sélectionnez le nom de l&#39;entreprise concernée si vous avez plusieurs sociétés.
Select who you want to send this newsletter to,Sélectionnez qui vous souhaitez envoyer ce bulletin à
Select your home country and check the timezone and currency.,Choisissez votre pays d'origine et vérifier le fuseau horaire et la monnaie .
"Selecting ""Yes"" will allow this item to appear in Purchase Order , Purchase Receipt.","La sélection de &quot;Oui&quot; permettra cet article à paraître dans bon de commande, facture d&#39;achat."
"Selecting ""Yes"" will allow this item to figure in Sales Order, Delivery Note","La sélection de &quot;Oui&quot; permettra de comprendre cet article dans l&#39;ordonnance de vente, bon de livraison"
"Selecting ""Yes"" will allow you to create Bill of Material showing raw material and operational costs incurred to manufacture this item.",La sélection de &quot;Oui&quot; vous permettra de créer des nomenclatures montrant des matières premières et des coûts d&#39;exploitation engagés pour la fabrication de cet article.
"Selecting ""Yes"" will allow you to make a Production Order for this item.",La sélection de &quot;Oui&quot; vous permettra de faire un ordre de fabrication pour cet article.
"Selecting ""Yes"" will give a unique identity to each entity of this item which can be viewed in the Serial No master.",La sélection de &quot;Oui&quot; donner une identité unique à chaque entité de cet article qui peut être consulté dans le N ° de série maître.
Selling,Vente
Selling Settings,Réglages de vente
"Selling must be checked, if Applicable For is selected as {0}","Vente doit être vérifiée, si pour Applicable est sélectionné comme {0}"
Send,Envoyer
Send Autoreply,Envoyer Autoreply
Send Email,Envoyer un email
Send From,Envoyer partir de
Send Notifications To,Envoyer des notifications aux
Send Now,Envoyer maintenant
Send SMS,Envoyer un SMS
Send To,Send To
Send To Type,Envoyer à taper
Send mass SMS to your contacts,Envoyer un SMS en masse à vos contacts
Send to this list,Envoyer cette liste
Sender Name,Nom de l&#39;expéditeur
Sent On,Sur envoyé
Separate production order will be created for each finished good item.,Pour la production séparée sera créée pour chaque article produit fini.
Serial No,N ° de série
Serial No / Batch,N ° de série / lot
Serial No Details,Détails Pas de série
Serial No Service Contract Expiry,N ° de série expiration du contrat de service
Serial No Status,N ° de série Statut
Serial No Warranty Expiry,N ° de série expiration de garantie
Serial No is mandatory for Item {0},Pas de série est obligatoire pour objet {0}
Serial No {0} created,aucune autorisation
Serial No {0} does not belong to Delivery Note {1},N ° de série {0} ne fait pas partie de la livraison Remarque {1}
Serial No {0} does not belong to Item {1},compensatoire
Serial No {0} does not belong to Warehouse {1},Les paramètres par défaut pour les transactions boursières .
Serial No {0} does not exist,Maître d'adresses.
Serial No {0} has already been received,Négatif Stock erreur ( {6} ) pour le point {0} dans {1} Entrepôt sur ​​{2} {3} {4} en {5}
Serial No {0} is under maintenance contract upto {1},Budget ne peut être réglé pour les centres de coûts du Groupe
Serial No {0} is under warranty upto {1},Compte {0} n'appartient pas à la Société {1}
Serial No {0} not in stock,N ° de série {0} pas en stock
Serial No {0} quantity {1} cannot be a fraction,N ° de série {0} {1} quantité ne peut pas être une fraction
Serial No {0} status must be 'Available' to Deliver,Pour la liste de prix
Serial Nos Required for Serialized Item {0},Dupliquer entrée . S'il vous plaît vérifier une règle d'autorisation {0}
Serial Number Series,Série Série Nombre
Serial number {0} entered more than once,Numéro de série {0} est entré plus d'une fois
Serialized Item {0} cannot be updated \					using Stock Reconciliation,Sérialisé article {0} ne peut pas être mis à jour \ utilisant Stock réconciliation
Series,série
Series List for this Transaction,Liste série pour cette transaction
Series Updated,Mise à jour de la série
Series Updated Successfully,prix règle
Series is mandatory,Congé de type {0} ne peut pas être plus long que {1}
Series {0} already used in {1},La date à laquelle la prochaine facture sera générée . Il est généré lors de la soumission .
Service,service
Service Address,Adresse du service
Service Tax,Service Tax
Services,Services
Set,Série est obligatoire
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Valeurs par défaut comme : societé , devise , année financière en cours , etc"
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,Set Point du Groupe sages budgets sur ce territoire. Vous pouvez également inclure la saisonnalité en réglant la distribution.
Set Status as Available,Définir l'état comme disponible
Set as Default,Définir par défaut
Set as Lost,Définir comme perdu
Set prefix for numbering series on your transactions,Définir le préfixe de numérotation des séries sur vos transactions
Set targets Item Group-wise for this Sales Person.,Fixer des objectifs élément de groupe-sage pour cette personne des ventes.
Setting Account Type helps in selecting this Account in transactions.,Type de compte Configuration aide à sélectionner ce compte dans les transactions.
Setting this Address Template as default as there is no other default,"La définition de cette adresse modèle par défaut, car il n'ya pas d'autre défaut"
Setting up...,Mise en place ...
Settings,Réglages
Settings for HR Module,Utilisateur {0} est désactivé
"Settings to extract Job Applicants from a mailbox e.g. ""jobs@example.com""",Paramètres pour extraire demandeurs d&#39;emploi à partir d&#39;une boîte aux lettres par exemple &quot;jobs@example.com&quot;
Setup,Configuration
Setup Already Complete!!,Configuration déjà complet !
Setup Complete,installation terminée
Setup SMS gateway settings,paramètres de la passerelle SMS de configuration
Setup Series,Série de configuration
Setup Wizard,actif à court terme
Setup incoming server for jobs email id. (e.g. jobs@example.com),Configuration serveur entrant pour les emplois id e-mail . (par exemple jobs@example.com )
Setup incoming server for sales email id. (e.g. sales@example.com),Cas No (s ) en cours d'utilisation . Essayez de l'affaire n ° {0}
Setup incoming server for support email id. (e.g. support@example.com),Configuration serveur entrant de soutien id e-mail . (par exemple support@example.com )
Share,Partager
Share With,Partager avec
Shareholders Funds,actionnaires Fonds
Shipments to customers.,Les livraisons aux clients.
Shipping,Livraison
Shipping Account,Compte de livraison
Shipping Address,Adresse de livraison
Shipping Amount,Montant de livraison
Shipping Rule,Livraison règle
Shipping Rule Condition,Livraison Condition de règle
Shipping Rule Conditions,Règle expédition Conditions
Shipping Rule Label,Livraison règle étiquette
Shop,Magasiner
Shopping Cart,Panier
Short biography for website and other publications.,Courte biographie pour le site Web et d&#39;autres publications.
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.",Voir &quot;En stock&quot; ou &quot;Pas en stock» basée sur le stock disponible dans cet entrepôt.
"Show / Hide features like Serial Nos, POS etc.",commercial
Show In Website,Afficher dans le site Web
Show a slideshow at the top of the page,Afficher un diaporama en haut de la page
Show in Website,Afficher dans Site Web
Show rows with zero values,Afficher lignes avec des valeurs nulles
Show this slideshow at the top of the page,Voir ce diaporama en haut de la page
Sick Leave,{0} numéros de série valides pour objet {1}
Signature,Signature
Signature to be appended at the end of every email,Signature d&#39;être ajouté à la fin de chaque e-mail
Single,Unique
Single unit of an Item.,Une seule unité d&#39;un élément.
Sit tight while your system is being setup. This may take a few moments.,Asseyez-vous serré alors que votre système est en cours d' installation. Cela peut prendre quelques instants .
Slideshow,Diaporama
Soap & Detergent,Savons et de Détergents
Software,logiciel
Software Developer,Software Developer
"Sorry, Serial Nos cannot be merged","Désolé , série n ne peut pas être fusionné"
"Sorry, companies cannot be merged","Désolé , les entreprises ne peuvent pas être fusionnés"
Source,Source
Source File,magasins
Source Warehouse,Source d&#39;entrepôt
Source and target warehouse cannot be same for row {0},Frais juridiques
Source of Funds (Liabilities),Source des fonds ( Passif )
Source warehouse is mandatory for row {0},Entrepôt de Source est obligatoire pour la ligne {0}
Spartan,Spartan
"Special Characters except ""-"" and ""/"" not allowed in naming series","Caractères spéciaux sauf "" - "" et ""/"" pas autorisés à nommer série"
Specification Details,Détails Spécifications
Specifications,caractéristiques
"Specify a list of Territories, for which, this Price List is valid","Spécifiez une liste des territoires, pour qui, cette liste de prix est valable"
"Specify a list of Territories, for which, this Shipping Rule is valid","Spécifiez une liste des territoires, pour qui, cette règle d&#39;expédition est valide"
"Specify a list of Territories, for which, this Taxes Master is valid","Spécifiez une liste des territoires, pour qui, cette Taxes Master est valide"
"Specify the operations, operating cost and give a unique Operation no to your operations.","Précisez les activités, le coût d'exploitation et de donner une opération unique, non à vos opérations ."
Split Delivery Note into packages.,Séparer le bon de livraison dans des packages.
Sports,sportif
Sr,Sr
Standard,Standard
Standard Buying,achat standard
Standard Reports,Rapports standard
Standard Selling,vente standard
Standard contract terms for Sales or Purchase.,Date prévue d'achèvement ne peut pas être inférieure à projet Date de début
Start,Démarrer
Start Date,Date de début
Start date of current invoice's period,Date de début de la période de facturation en cours
Start date should be less than end date for Item {0},{0} budget pour compte {1} contre des centres de coûts {2} dépassera par {3}
State,État
Statement of Account,Relevé de compte
Static Parameters,Paramètres statiques
Status,Statut
Status must be one of {0},Le statut doit être l'un des {0}
Status of {0} {1} is now {2},Statut de {0} {1} est maintenant {2}
Status updated to {0},Etat mis à jour à {0}
Statutory info and other general information about your Supplier,Informations légales et autres informations générales au sujet de votre Fournisseur
Stay Updated,Point {0} apparaît plusieurs fois dans la liste des prix {1}
Stock,Stock
Stock Adjustment,Stock ajustement
Stock Adjustment Account,Compte d&#39;ajustement de stock
Stock Ageing,Stock vieillissement
Stock Analytics,Analytics stock
Stock Assets,payable
Stock Balance,Solde Stock
Stock Entries already created for Production Order ,Entrées stock déjà créés pour ordre de fabrication
Stock Entry,Entrée Stock
Stock Entry Detail,Détail d&#39;entrée Stock
Stock Expenses,Facteur de conversion de l'unité de mesure par défaut doit être de 1 à la ligne {0}
Stock Frozen Upto,Stock Frozen Jusqu&#39;à
Stock Ledger,Stock Ledger
Stock Ledger Entry,Stock Ledger Entry
Stock Ledger entries balances updated,Stock Ledger entrées soldes à jour
Stock Level,Niveau de stock
Stock Liabilities,Passif stock
Stock Projected Qty,Stock projeté Quantité
Stock Queue (FIFO),Stock file d&#39;attente (FIFO)
Stock Received But Not Billed,Stock reçus mais non facturés
Stock Reconcilation Data,Stock Rapprochement des données
Stock Reconcilation Template,Stock Réconciliation modèle
Stock Reconciliation,Stock réconciliation
"Stock Reconciliation can be used to update the stock on a particular date, usually as per physical inventory.",talon
Stock Settings,Paramètres de stock
Stock UOM,Stock UDM
Stock UOM Replace Utility,Utilitaire Stock Remplacer Emballage
Stock UOM updatd for Item {0},Entrepôts .
Stock Uom,Stock UDM
Stock Value,Valeur de l&#39;action
Stock Value Difference,Stock Value Différence
Stock balances updated,"Profil de l' emploi , les qualifications requises , etc"
Stock cannot be updated against Delivery Note {0},désactiver
Stock entries exist against warehouse {0} cannot re-assign or modify 'Master Name',Warehouse est obligatoire pour les stock Article {0} à la ligne {1}
Stock transactions before {0} are frozen,transactions d'actions avant {0} sont gelés
Stop,Stop
Stop Birthday Reminders,Arrêter anniversaire rappels
Stop Material Request,Matériel de demande d'arrêt
Stop users from making Leave Applications on following days.,"Empêcher les utilisateurs de faire des demandes d&#39;autorisation, les jours suivants."
Stop!,Stop!
Stopped,Arrêté
Stopped order cannot be cancelled. Unstop to cancel.,Compte des parents ne peut pas être un grand livre
Stores,Livraison Remarque {0} ne doit pas être soumis
Stub,Source et l'entrepôt cible ne peuvent pas être de même pour la ligne {0}
Sub Assemblies,sous assemblées
"Sub-currency. For e.g. ""Cent""",Sous-monnaie. Pour exemple: &quot;Cent&quot;
Subcontract,Sous-traiter
Subject,Sujet
Submit Salary Slip,Envoyer le bulletin de salaire
Submit all salary slips for the above selected criteria,Soumettre tous les bulletins de salaire pour les critères sélectionnés ci-dessus
Submit this Production Order for further processing.,Envoyer cette ordonnance de production pour un traitement ultérieur .
Submitted,Soumis
Subsidiary,Filiale
Successful: ,Succès:
Successfully Reconciled,Réconcilié avec succès
Suggestions,Suggestions
Sunday,Dimanche
Supplier,Fournisseur
Supplier (Payable) Account,Fournisseur compte (à payer)
Supplier (vendor) name as entered in supplier master,Fournisseur (vendeur) le nom saisi dans master fournisseur
Supplier > Supplier Type,Fournisseur> Type de fournisseur
Supplier Account Head,Fournisseur compte Head
Supplier Address,Adresse du fournisseur
Supplier Addresses and Contacts,Adresses des fournisseurs et contacts
Supplier Details,Détails de produit
Supplier Intro,Intro Fournisseur
Supplier Invoice Date,Date de la facture fournisseur
Supplier Invoice No,Fournisseur facture n
Supplier Name,Nom du fournisseur
Supplier Naming By,Fournisseur de nommage par
Supplier Part Number,Numéro de pièce fournisseur
Supplier Quotation,Devis Fournisseur
Supplier Quotation Item,Article Devis Fournisseur
Supplier Reference,Référence fournisseur
Supplier Type,Type de fournisseur
Supplier Type / Supplier,Fournisseur Type / Fournisseur
Supplier Type master.,Solde de compte {0} doit toujours être {1}
Supplier Warehouse,Entrepôt Fournisseur
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Peut se référer ligne que si le type de charge est « Le précédent Montant de la ligne » ou « Précédent Row Total»
Supplier database.,Base de données fournisseurs.
Supplier master.,Maître du fournisseur .
Supplier warehouse where you have issued raw materials for sub - contracting,Fournisseur entrepôt où vous avez émis des matières premières pour la sous - traitance
Supplier-Wise Sales Analytics,Fournisseur - Wise ventes Analytics
Support,Soutenir
Support Analtyics,Analtyics de soutien
Support Analytics,Analytics soutien
Support Email,Soutien Email
Support Email Settings,Soutien des paramètres de messagerie
Support Password,Mot de passe soutien
Support Ticket,Support Ticket
Support queries from customers.,En charge les requêtes des clients.
Symbol,Symbole
Sync Support Mails,Synchroniser mails de soutien
Sync with Dropbox,Synchroniser avec Dropbox
Sync with Google Drive,Synchronisation avec Google Drive
System,Système
System Settings,Paramètres système
"System User (login) ID. If set, it will become default for all HR forms.","L&#39;utilisateur du système (login) ID. S&#39;il est défini, il sera par défaut pour toutes les formes de ressources humaines."
TDS (Advertisement),TDS (Publicité)
TDS (Commission),TDS (Commission)
TDS (Contractor),TDS (entrepreneur)
TDS (Interest),TDS (Intérêts)
TDS (Rent),TDS (Location)
TDS (Salary),TDS (Salaire)
Target  Amount,Montant Cible
Target Detail,Détail cible
Target Details,Détails cibles
Target Details1,Cible Details1
Target Distribution,Distribution cible
Target On,cible sur
Target Qty,Qté cible
Target Warehouse,Cible d&#39;entrepôt
Target warehouse in row {0} must be same as Production Order,Bon de commande {0} n'est pas soumis
Target warehouse is mandatory for row {0},Entrepôt de cible est obligatoire pour la ligne {0}
Task,Tâche
Task Details,Détails de la tâche
Tasks,tâches
Tax,Impôt
Tax Amount After Discount Amount,Aucun article avec Barcode {0}
Tax Assets,avec les groupes
Tax Category can not be 'Valuation' or 'Valuation and Total' as all items are non-stock items,"Catégorie impôt ne peut pas être « évaluation » ou « évaluation et totale », comme tous les articles sont des articles hors stock"
Tax Rate,Taux d&#39;imposition
Tax and other salary deductions.,De l&#39;impôt et autres déductions salariales.
Tax detail table fetched from item master as a string and stored in this field.Used for Taxes and Charges,table détail d'impôt alla chercher du maître de l'article sous forme de chaîne et stockée dans ce domaine. Utilisé pour les impôts et charges
Tax template for buying transactions.,Modèle d'impôt pour l'achat d' opérations .
Tax template for selling transactions.,Modèle de la taxe pour la vente de transactions .
Taxable,Imposable
Taxes,Impôts
Taxes and Charges,Impôts et taxes
Taxes and Charges Added,Taxes et redevances Ajouté
Taxes and Charges Added (Company Currency),Les impôts et les frais supplémentaires (Société Monnaie)
Taxes and Charges Calculation,Taxes et frais de calcul
Taxes and Charges Deducted,Taxes et frais déduits
Taxes and Charges Deducted (Company Currency),Impôts et Charges déduites (Société Monnaie)
Taxes and Charges Total,Taxes et frais total
Taxes and Charges Total (Company Currency),Les impôts et les frais totaux (Société Monnaie)
Technology,technologie
Telecommunications,télécommunications
Telephone Expenses,Location de bureaux
Television,télévision
Template,Modèle
Template for performance appraisals.,Modèle pour l'évaluation du rendement .
Template of terms or contract.,Modèle de termes ou d&#39;un contrat.
Temporary Accounts (Assets),Évaluation Taux requis pour objet {0}
Temporary Accounts (Liabilities),"S'il vous plaît sélectionner Point où "" Est Stock Item"" est ""Non"" et "" Est- Point de vente "" est ""Oui"" et il n'y a pas d'autre nomenclature ventes"
Temporary Assets,actifs temporaires
Temporary Liabilities,Engagements temporaires
Term Details,Détails terme
Terms,termes
Terms and Conditions,Termes et Conditions
Terms and Conditions Content,Termes et Conditions de contenu
Terms and Conditions Details,Termes et Conditions Détails
Terms and Conditions Template,Termes et Conditions modèle
Terms and Conditions1,Termes et conditions1
Terretory,Terretory
Territory,Territoire
Territory / Customer,Territoire / client
Territory Manager,Territory Manager
Territory Name,Nom du territoire
Territory Target Variance Item Group-Wise,Entretien Visitez {0} doit être annulée avant d'annuler cette commande client
Territory Targets,Les objectifs du Territoire
Test,Test
Test Email Id,Id Test Email
Test the Newsletter,Testez la Newsletter
The BOM which will be replaced,La nomenclature qui sera remplacé
The First User: You,Le premier utilisateur: Vous
"The Item that represents the Package. This Item must have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes""",L&#39;article qui représente le package. Cet article doit avoir «Est Produit en stock&quot; comme &quot;No&quot; et &quot;Est Point de vente&quot; que &quot;Oui&quot;
The Organization,l'Organisation
"The account head under Liability, in which Profit/Loss will be booked","Le compte tête sous la responsabilité , dans lequel Bénéfice / perte sera comptabilisée"
The date on which next invoice will be generated. It is generated on submit.,La date à laquelle la prochaine facture sera générée. Il est généré lors de la soumission.
The date on which recurring invoice will be stop,La date à laquelle la facture récurrente sera arrêter
"The day of the month on which auto invoice will be generated e.g. 05, 28 etc ","Le jour du mois au cours duquel la facture automatique sera généré, par exemple 05, 28, etc"
The day(s) on which you are applying for leave are holiday. You need not apply for leave.,S'il vous plaît entrer comptes débiteurs groupe / à payer en master de l'entreprise
The first Leave Approver in the list will be set as the default Leave Approver,Le premier congé approbateur dans la liste sera définie comme le congé approbateur de défaut
The first user will become the System Manager (you can change that later).,Le premier utilisateur deviendra le gestionnaire du système ( vous pouvez changer cela plus tard ) .
The gross weight of the package. Usually net weight + packaging material weight. (for print),Le poids brut du colis. Habituellement poids net + poids du matériau d&#39;emballage. (Pour l&#39;impression)
The name of your company for which you are setting up this system.,Le nom de votre entreprise pour laquelle vous configurez ce système .
The net weight of this package. (calculated automatically as sum of net weight of items),Le poids net de ce paquet. (Calculé automatiquement comme la somme du poids net des articles)
The new BOM after replacement,La nouvelle nomenclature après le remplacement
The rate at which Bill Currency is converted into company's base currency,La vitesse à laquelle le projet de loi Monnaie est convertie en monnaie de base entreprise
The unique id for tracking all recurring invoices. It is generated on submit.,L&#39;identifiant unique pour le suivi de toutes les factures récurrentes. Il est généré lors de la soumission.
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Ensuite, les règles de tarification sont filtrés sur la base de clientèle, par groupe de clients, Territoire, fournisseur, le type de fournisseur, campagne, etc Sales Partner"
There are more holidays than working days this month.,Compte de capital
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Il ne peut y avoir une règle de livraison Etat avec 0 ou valeur vide pour "" To Value """
There is not enough leave balance for Leave Type {0},Il n'y a pas assez de solde de congés d'autorisation de type {0}
There is nothing to edit.,Il n'y a rien à modifier.
There was an error. One probable reason could be that you haven't saved the form. Please contact support@erpnext.com if the problem persists.,Il y avait une erreur . Une raison probable pourrait être que vous n'avez pas enregistré le formulaire. S'il vous plaît contacter support@erpnext.com si le problème persiste .
There were errors.,Il y avait des erreurs .
This Currency is disabled. Enable to use in transactions,Cette devise est désactivé . Permettre d'utiliser dans les transactions
This Leave Application is pending approval. Only the Leave Apporver can update status.,Cette demande de congé est en attente d'approbation . Seul le congé Apporver peut mettre à jour le statut .
This Time Log Batch has been billed.,This Time Connexion lot a été facturé.
This Time Log Batch has been cancelled.,This Time Connexion lot a été annulé.
This Time Log conflicts with {0},N ° de série {0} ne fait pas partie de l'article {1}
This format is used if country specific format is not found,Ce format est utilisé si le format spécifique au pays n'est pas trouvé
This is a root account and cannot be edited.,Il s'agit d'un compte root et ne peut être modifié .
This is a root customer group and cannot be edited.,Il s'agit d'un groupe de clients de la racine et ne peut être modifié .
This is a root item group and cannot be edited.,Ceci est un groupe d'élément de racine et ne peut être modifié .
This is a root sales person and cannot be edited.,Il s'agit d'une personne de ventes de racines et ne peut être modifié .
This is a root territory and cannot be edited.,C'est un territoire de racine et ne peut être modifié .
This is an example website auto-generated from ERPNext,Par défaut Warehouse est obligatoire pour les stock Article .
This is the number of the last created transaction with this prefix,Il s&#39;agit du numéro de la dernière transaction créée par ce préfixe
This will be used for setting rule in HR module,Il sera utilisé pour la règle de réglage dans le module RH
Thread HTML,Discussion HTML
Thursday,Jeudi
Time Log,Temps Connexion
Time Log Batch,Temps connecter Batch
Time Log Batch Detail,Temps connecter Détail du lot
Time Log Batch Details,Le journal du temps les détails du lot
Time Log Batch {0} must be 'Submitted',Geler stocks Older Than [ jours]
Time Log Status must be Submitted.,Log Time Etat doit être soumis.
Time Log for tasks.,Le journal du temps pour les tâches.
Time Log is not billable,Heure du journal n'est pas facturable
Time Log {0} must be 'Submitted',« Pertes et profits » compte de type {0} n'est pas autorisé dans l'ouverture d'entrée
Time Zone,Fuseau horaire
Time Zones,Fuseaux horaires
Time and Budget,Temps et budget
Time at which items were delivered from warehouse,Heure à laquelle les articles ont été livrés à partir de l&#39;entrepôt
Time at which materials were received,Heure à laquelle les matériaux ont été reçues
Title,Titre
Titles for print templates e.g. Proforma Invoice.,Solde négatif dans le lot {0} pour objet {1} à {2} Entrepôt sur ​​{3} {4}
To,À
To Currency,Pour Devise
To Date,À ce jour
To Date should be same as From Date for Half Day leave,Pour la date doit être le même que Date d' autorisation pour une demi-journée
To Date should be within the Fiscal Year. Assuming To Date = {0},Pour la date doit être dans l'exercice. En supposant à ce jour = {0}
To Discuss,Pour discuter
To Do List,To Do List
To Package No.,Pour Emballer n °
To Produce,pour Produire
To Time,To Time
To Value,To Value
To Warehouse,Pour Entrepôt
"To add child nodes, explore tree and click on the node under which you want to add more nodes.","Pour ajouter des nœuds de l'enfant , explorer arborescence et cliquez sur le nœud sous lequel vous voulez ajouter d'autres nœuds ."
"To assign this issue, use the ""Assign"" button in the sidebar.","Pour attribuer ce problème, utilisez le bouton &quot;Affecter&quot; dans la barre latérale."
To create a Bank Account,Pour créer un compte bancaire
To create a Tax Account,Pour créer un compte d'impôt
"To create an Account Head under a different company, select the company and save customer.","Pour créer un compte Head en vertu d&#39;une autre entreprise, sélectionnez l&#39;entreprise et sauver client."
To date cannot be before from date,À ce jour ne peut pas être avant la date
To enable <b>Point of Sale</b> features,Pour permettre <b>Point de Vente</b> fonctionnalités
To enable <b>Point of Sale</b> view,Pour activer <b> point de vente < / b > vue
To get Item Group in details table,Pour obtenir Groupe d&#39;éléments dans le tableau de détails
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","D'inclure la taxe dans la ligne {0} dans le prix de l'article , les impôts dans les lignes {1} doivent également être inclus"
"To merge, following properties must be same for both items","Pour fusionner , les propriétés suivantes doivent être les mêmes pour les deux articles"
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","De ne pas appliquer la règle Prix dans une transaction particulière, toutes les règles de tarification applicables doivent être désactivés."
"To set this Fiscal Year as Default, click on 'Set as Default'","Pour définir cette Année financière que par défaut , cliquez sur "" Définir par défaut """
To track any installation or commissioning related work after sales,Pour suivre toute installation ou mise en service après-vente des travaux connexes
"To track brand name in the following documents Delivery Note, Opportunity, Material Request, Item, Purchase Order, Purchase Voucher, Purchaser Receipt, Quotation, Sales Invoice, Sales BOM, Sales Order, Serial No",Impossible de charge : {0}
To track item in sales and purchase documents based on their serial nos. This is can also used to track warranty details of the product.,Pour suivre pièce documents de vente et d&#39;achat en fonction de leurs numéros de série. Ce n&#39;est peut également être utilisé pour suivre les détails de la garantie du produit.
To track items in sales and purchase documents with batch nos<br><b>Preferred Industry: Chemicals etc</b>,"Pour suivre les articles de chiffre d&#39;affaires et des documents d&#39;achat avec nos lots <br> <b>Industrie préféré: produits chimiques, etc</b>"
To track items using barcode. You will be able to enter items in Delivery Note and Sales Invoice by scanning barcode of item.,Pour suivre les éléments à l&#39;aide de code à barres. Vous serez en mesure d&#39;entrer dans les articles bon de livraison et la facture de vente par balayage de code à barres de l&#39;article.
Too many columns. Export the report and print it using a spreadsheet application.,Trop de colonnes. Exporter le rapport et l'imprimer à l'aide d'un tableur.
Tools,Outils
Total,Total
Total ({0}),Total ({0})
Total Advance,Advance totale
Total Amount,Montant total
Total Amount To Pay,Montant total à payer
Total Amount in Words,Montant total en mots
Total Billing This Year: ,Facturation totale de cette année:
Total Characters,Nombre de caractères
Total Claimed Amount,Montant total réclamé
Total Commission,Total de la Commission
Total Cost,Coût total
Total Credit,Crédit total
Total Debit,Débit total
Total Debit must be equal to Total Credit. The difference is {0},Débit total doit être égal au total du crédit .
Total Deduction,Déduction totale
Total Earning,Gains totale
Total Experience,Total Experience
Total Hours,Total des heures
Total Hours (Expected),Total des heures (prévue)
Total Invoiced Amount,Montant total facturé
Total Leave Days,Total des jours de congé
Total Leaves Allocated,Feuilles total alloué
Total Message(s),Comptes temporaires ( actif)
Total Operating Cost,Coût d&#39;exploitation total
Total Points,Total des points
Total Raw Material Cost,Coût total des matières premières
Total Sanctioned Amount,Montant total sanctionné
Total Score (Out of 5),Score total (sur 5)
Total Tax (Company Currency),Total des Taxes (Société Monnaie)
Total Taxes and Charges,Total Taxes et frais
Total Taxes and Charges (Company Currency),Total des taxes et charges (Société Monnaie)
Total allocated percentage for sales team should be 100,Pourcentage total alloué à l'équipe de vente devrait être de 100
Total amount of invoices received from suppliers during the digest period,Montant total des factures reçues des fournisseurs durant la période digest
Total amount of invoices sent to the customer during the digest period,Montant total des factures envoyées au client au cours de la période digest
Total cannot be zero,Total ne peut pas être zéro
Total in words,Total en mots
Total points for all goals should be 100. It is {0},Date de fin ne peut pas être inférieure à Date de début
Total valuation for manufactured or repacked item(s) can not be less than total valuation of raw materials,Évaluation totale pour article (s) sont manufacturés ou reconditionnés ne peut pas être inférieur à l'évaluation totale des matières premières
Total weightage assigned should be 100%. It is {0},Weightage totale attribuée devrait être de 100 % . Il est {0}
Totals,Totaux
Track Leads by Industry Type.,Piste mène par type d'industrie .
Track this Delivery Note against any Project,Suivre ce bon de livraison contre tout projet
Track this Sales Order against any Project,Suivre ce décret ventes contre tout projet
Transaction,Transaction
Transaction Date,Date de la transaction
Transaction not allowed against stopped Production Order {0},installation terminée
Transfer,Transférer
Transfer Material,transfert de matériel
Transfer Raw Materials,Transfert matières premières
Transferred Qty,transféré Quantité
Transportation,transport
Transporter Info,Infos Transporter
Transporter Name,Nom Transporter
Transporter lorry number,Numéro camion transporteur
Travel,Quantité ne peut pas être une fraction dans la ligne {0}
Travel Expenses,Code article nécessaire au rang n ° {0}
Tree Type,Type d' arbre
Tree of Item Groups.,Arbre de groupes des ouvrages .
Tree of finanial Cost Centers.,Il ne faut pas mettre à jour les entrées de plus que {0}
Tree of finanial accounts.,Arborescence des comptes financiers.
Trial Balance,Balance
Tuesday,Mardi
Type,Type
Type of document to rename.,Type de document à renommer.
"Type of leaves like casual, sick etc.","Type de feuilles comme occasionnel, etc malades"
Types of Expense Claim.,Types de demande de remboursement.
Types of activities for Time Sheets,Types d&#39;activités pour les feuilles de temps
"Types of employment (permanent, contract, intern etc.).",S'il vous plaît vous connecter à Upvote !
UOM Conversion Detail,Détail de conversion Emballage
UOM Conversion Details,Détails conversion UOM
UOM Conversion Factor,Facteur de conversion Emballage
UOM Conversion factor is required in row {0},Point {0} a été saisi plusieurs fois avec la même description ou la date ou de l'entrepôt
UOM Name,Nom UDM
UOM coversion factor required for UOM: {0} in Item: {1},Facteur de coversion Emballage requis pour Emballage: {0} dans l'article: {1}
Under AMC,En vertu de l&#39;AMC
Under Graduate,Sous Graduate
Under Warranty,Sous garantie
Unit,unité
Unit of Measure,Unité de mesure
Unit of Measure {0} has been entered more than once in Conversion Factor Table,Unité de mesure {0} a été saisi plus d'une fois dans facteur de conversion de table
"Unit of measurement of this item (e.g. Kg, Unit, No, Pair).","Unité de mesure de cet article (Kg par exemple, unité, Non, Pair)."
Units/Hour,Unités / heure
Units/Shifts,Unités / Quarts de travail
Unpaid,Non rémunéré
Unreconciled Payment Details,Non rapprochés détails de paiement
Unscheduled,Non programmé
Unsecured Loans,Les prêts non garantis
Unstop,déboucher
Unstop Material Request,Unstop Demande de Matériel
Unstop Purchase Order,Unstop Commande
Unsubscribed,Désabonné
Update,Mettre à jour
Update Clearance Date,Mettre à jour Date de Garde
Update Cost,mise à jour des coûts
Update Finished Goods,Marchandises mise à jour terminée
Update Landed Cost,Mise à jour d'arrivée Coût
Update Series,Update Series
Update Series Number,Numéro de série mise à jour
Update Stock,Mise à jour Stock
Update bank payment dates with journals.,Mise à jour bancaire dates de paiement des revues.
Update clearance date of Journal Entries marked as 'Bank Vouchers',Date d'autorisation de mise à jour des entrées de journal marqué comme « Banque Bons »
Updated,Mise à jour
Updated Birthday Reminders,Mise à jour anniversaire rappels
Upload Attendance,Téléchargez Participation
Upload Backups to Dropbox,Téléchargez sauvegardes à Dropbox
Upload Backups to Google Drive,Téléchargez sauvegardes à Google Drive
Upload HTML,Téléchargez HTML
Upload a .csv file with two columns: the old name and the new name. Max 500 rows.,Télécharger un fichier csv avec deux colonnes:. L&#39;ancien nom et le nouveau nom. Max 500 lignes.
Upload attendance from a .csv file,Téléchargez la présence d&#39;un fichier. Csv
Upload stock balance via csv.,Téléchargez solde disponible via csv.
Upload your letter head and logo - you can edit them later.,Téléchargez votre tête et logo lettre - vous pouvez les modifier plus tard .
Upper Income,Revenu élevé
Urgent,Urgent
Use Multi-Level BOM,Utilisez Multi-Level BOM
Use SSL,Utiliser SSL
Used for Production Plan,Utilisé pour plan de production
User,Utilisateurs
User ID,ID utilisateur
User ID not set for Employee {0},ID utilisateur non défini pour les employés {0}
User Name,Nom d&#39;utilisateur
User Name or Support Password missing. Please enter and try again.,Nom d'utilisateur ou mot de passe manquant de soutien . S'il vous plaît entrer et essayer à nouveau.
User Remark,Remarque l&#39;utilisateur
User Remark will be added to Auto Remark,Remarque l&#39;utilisateur sera ajouté à Remarque Auto
User Remarks is mandatory,recharger la page
User Specific,Achat et vente
User must always select,L&#39;utilisateur doit toujours sélectionner
User {0} is already assigned to Employee {1},Utilisateur {0} est déjà attribué à l'employé {1}
User {0} is disabled,Territoire cible Variance article Groupe Sage
Username,Nom d&#39;utilisateur
Users with this role are allowed to create / modify accounting entry before frozen date,Les utilisateurs ayant ce rôle sont autorisés à créer / modifier l'entrée de la comptabilité avant la date congelés
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Les utilisateurs ayant ce rôle sont autorisés à fixer les comptes gelés et de créer / modifier des entrées comptables contre les comptes gelés
Utilities,Utilitaires
Utility Expenses,Commande {0} n'est pas soumis
Valid For Territories,Valable pour les territoires
Valid From,Aucun article avec Serial Non {0}
Valid Upto,Jusqu&#39;à valide
Valid for Territories,Valable pour les Territoires
Validate,Valider
Valuation,Évaluation
Valuation Method,Méthode d&#39;évaluation
Valuation Rate,Taux d&#39;évaluation
Valuation Rate required for Item {0},{0} {1} est l'état 'arrêté'
Valuation and Total,Valorisation et Total
Value,Valeur
Value or Qty,Valeur ou Quantité
Vehicle Dispatch Date,Date de véhicule Dispatch
Vehicle No,Aucun véhicule
Venture Capital,capital de risque
Verified By,Vérifié par
View Ledger,Voir Ledger
View Now,voir maintenant
Visit report for maintenance call.,Visitez le rapport de l&#39;appel d&#39;entretien.
Voucher #,bon #
Voucher Detail No,Détail volet n °
Voucher Detail Number,Bon nombre de Détail
Voucher ID,ID Bon
Voucher No,Bon Pas
Voucher Type,Type de Bon
Voucher Type and Date,Type de chèques et date
Walk In,Walk In
Warehouse,entrepôt
Warehouse Contact Info,Entrepôt Info Contact
Warehouse Detail,Détail de l'entrepôt
Warehouse Name,Nom de l'entrepôt
Warehouse and Reference,Entrepôt et référence
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,Descendre : {0}
Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Entrepôt ne peut être modifié via Stock Entrée / bon de livraison / reçu d'achat
Warehouse cannot be changed for Serial No.,Entrepôt ne peut être modifié pour le numéro de série
Warehouse is mandatory for stock Item {0} in row {1},Facteur de conversion ne peut pas être dans les fractions
Warehouse is missing in Purchase Order,Entrepôt est manquant dans la commande d'achat
Warehouse not found in the system,Entrepôt pas trouvé dans le système
Warehouse required for stock Item {0},{0} est obligatoire
Warehouse where you are maintaining stock of rejected items,Entrepôt où vous êtes maintenant le bilan des éléments rejetés
Warehouse {0} can not be deleted as quantity exists for Item {1},Entrepôt {0} ne peut pas être supprimé car il existe quantité pour objet {1}
Warehouse {0} does not belong to company {1},Entrepôt {0} n'appartient pas à la société {1}
Warehouse {0} does not exist,{0} n'est pas un courriel valide Identifiant
Warehouse {0}: Company is mandatory,Entrepôt {0}: Société est obligatoire
Warehouse {0}: Parent account {1} does not bolong to the company {2},Entrepôt {0}: compte de Parent {1} ne BOLONG à la société {2}
Warehouse-Wise Stock Balance,Warehouse-Wise Stock Solde
Warehouse-wise Item Reorder,Warehouse-sage Réorganiser article
Warehouses,Entrepôts
Warehouses.,Entrepôts.
Warn,Avertir
Warning: Leave application contains following block dates,Attention: la demande d&#39;autorisation contient les dates de blocs suivants
Warning: Material Requested Qty is less than Minimum Order Qty,Attention: Matériel requis Quantité est inférieure Quantité minimum à commander
Warning: Sales Order {0} already exists against same Purchase Order number,S'il vous plaît vérifier ' Est Advance' contre compte {0} si c'est une entrée avance .
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Attention : Le système ne vérifie pas la surfacturation depuis montant pour objet {0} dans {1} est nulle
Warranty / AMC Details,Garantie / Détails AMC
Warranty / AMC Status,Garantie / Statut AMC
Warranty Expiry Date,Date d'expiration de la garantie
Warranty Period (Days),Période de garantie (jours)
Warranty Period (in days),Période de garantie (en jours)
We buy this Item,Nous achetons cet article
We sell this Item,Nous vendons cet article
Website,Site Web
Website Description,Description du site Web
Website Item Group,Groupe Article Site
Website Item Groups,Groupes d&#39;articles Site web
Website Settings,Réglages Site web
Website Warehouse,Entrepôt site web
Wednesday,Mercredi
Weekly,Hebdomadaire
Weekly Off,Hebdomadaire Off
Weight UOM,Poids Emballage
"Weight is mentioned,\nPlease mention ""Weight UOM"" too","Le poids est indiqué , \ nVeuillez mentionne "" Poids Emballage « trop"
Weightage,Weightage
Weightage (%),Weightage (%)
Welcome,Bienvenue
Welcome to ERPNext. Over the next few minutes we will help you setup your ERPNext account. Try and fill in as much information as you have even if it takes a bit longer. It will save you a lot of time later. Good Luck!,"Bienvenue à ERPNext . Au cours des prochaines minutes, nous allons vous aider à configurer votre compte ERPNext . Essayez de remplir autant d'informations que vous avez même si cela prend un peu plus longtemps . Elle vous fera économiser beaucoup de temps plus tard . Bonne chance !"
Welcome to ERPNext. Please select your language to begin the Setup Wizard.,Tête de compte {0} créé
What does it do?,Que faut-il faire ?
"When any of the checked transactions are ""Submitted"", an email pop-up automatically opened to send an email to the associated ""Contact"" in that transaction, with the transaction as an attachment. The user may or may not send the email.","Lorsque l&#39;une des opérations contrôlées sont «soumis», un e-mail pop-up s&#39;ouvre automatiquement pour envoyer un courrier électronique à l&#39;associé &quot;Contact&quot; dans cette transaction, la transaction en pièce jointe. L&#39;utilisateur peut ou ne peut pas envoyer l&#39;e-mail."
"When submitted, the system creates difference entries to set the given stock and valuation on this date.","Lorsqu'il est utilisé, le système crée des entrées de différence pour définir le stock et l'évaluation donnée à cette date ."
Where items are stored.,Lorsque des éléments sont stockés.
Where manufacturing operations are carried out.,Lorsque les opérations de fabrication sont réalisées.
Widowed,Veuf
Will be calculated automatically when you enter the details,Seront calculés automatiquement lorsque vous entrez les détails
Will be updated after Sales Invoice is Submitted.,Sera mis à jour après la facture de vente est soumise.
Will be updated when batched.,Sera mis à jour lorsque lots.
Will be updated when billed.,Sera mis à jour lorsqu&#39;ils sont facturés.
Wire Transfer,Virement
With Operations,Avec des opérations
With Period Closing Entry,Avec l'entrée de clôture de la période
Work Details,Détails de travail
Work Done,Travaux effectués
Work In Progress,Work In Progress
Work-in-Progress Warehouse,Entrepôt Work-in-Progress
Work-in-Progress Warehouse is required before Submit,Les travaux en progrès entrepôt est nécessaire avant Soumettre
Working,De travail
Working Days,Jours ouvrables
Workstation,Workstation
Workstation Name,Nom de station de travail
Write Off Account,Ecrire Off compte
Write Off Amount,Ecrire Off Montant
Write Off Amount <=,Ecrire Off Montant &lt;=
Write Off Based On,Ecrire Off Basé sur
Write Off Cost Center,Ecrire Off Centre de coûts
Write Off Outstanding Amount,Ecrire Off Encours
Write Off Voucher,Ecrire Off Bon
Wrong Template: Unable to find head row.,Modèle tort: ​​Impossible de trouver la ligne de tête.
Year,Année
Year Closed,L'année est fermée
Year End Date,Fin de l'exercice Date de
Year Name,Nom Année
Year Start Date,Date de début Année
Year of Passing,Année de passage
Yearly,Annuel
Yes,Oui
You are not authorized to add or update entries before {0},{0} est maintenant par défaut exercice. S'il vous plaît rafraîchir votre navigateur pour que le changement prenne effet .
You are not authorized to set Frozen value,Vous n'êtes pas autorisé à mettre en valeur Frozen
You are the Expense Approver for this record. Please Update the 'Status' and Save,Vous êtes l'approbateur de dépenses pour cet enregistrement . S'il vous plaît mettre à jour le «Status» et Save
You are the Leave Approver for this record. Please Update the 'Status' and Save,Vous êtes l'approbateur congé pour cet enregistrement . S'il vous plaît mettre à jour le «Status» et Save
You can enter any date manually,Vous pouvez entrer une date manuellement
You can enter the minimum quantity of this item to be ordered.,Vous pouvez entrer la quantité minimale de cet élément à commander.
You can not change rate if BOM mentioned agianst any item,Vous ne pouvez pas modifier le taux si BOM mentionné agianst un article
You can not enter both Delivery Note No and Sales Invoice No. Please enter any one.,Vous ne pouvez pas entrer à la fois bon de livraison et la facture de vente n ° n ° S'il vous plaît entrer personne.
You can not enter current voucher in 'Against Journal Voucher' column,"D'autres comptes peuvent être faites dans les groupes , mais les entrées peuvent être faites contre Ledger"
You can set Default Bank Account in Company master,Articles en attente {0} mise à jour
You can start by selecting backup frequency and granting access for sync,Vous pouvez commencer par sélectionner la fréquence de sauvegarde et d'accorder l'accès pour la synchronisation
You can submit this Stock Reconciliation.,Vous pouvez soumettre cette Stock réconciliation .
You can update either Quantity or Valuation Rate or both.,Vous pouvez mettre à jour soit Quantité ou l'évaluation des taux ou les deux.
You cannot credit and debit same account at the same time,Vous ne pouvez pas crédit et de débit même compte en même temps
You have entered duplicate items. Please rectify and try again.,Vous avez entré les doublons . S'il vous plaît corriger et essayer à nouveau.
You may need to update: {0},Vous devrez peut-être mettre à jour : {0}
You must Save the form before proceeding,Vous devez sauvegarder le formulaire avant de continuer
Your Customer's TAX registration numbers (if applicable) or any general information,Votre Client numéros d&#39;immatriculation fiscale (le cas échéant) ou toute autre information générale
Your Customers,vos clients
Your Login Id,Votre ID de connexion
Your Products or Services,Vos produits ou services
Your Suppliers,vos fournisseurs
Your email address,Frais indirects
Your financial year begins on,"Vous ne pouvez pas changer la devise par défaut de l'entreprise , car il ya des opérations existantes . Les opérations doivent être annulées pour changer la devise par défaut ."
Your financial year ends on,Votre exercice se termine le
Your sales person who will contact the customer in future,Votre personne de ventes qui prendra contact avec le client dans le futur
Your sales person will get a reminder on this date to contact the customer,Votre personne de ventes recevoir un rappel de cette date pour contacter le client
Your setup is complete. Refreshing...,Votre installation est terminée. Rafraîchissant ...
Your support email id - must be a valid email - this is where your emails will come!,Votre e-mail id soutien - doit être une adresse email valide - c&#39;est là que vos e-mails viendra!
[Error],[Error]
[Select],[Sélectionner ]
`Freeze Stocks Older Than` should be smaller than %d days.,Fichier source
and,et
are not allowed.,ne sont pas autorisés .
assigned by,attribué par
cannot be greater than 100,ne peut pas être supérieure à 100
"e.g. ""Build tools for builders""","par exemple "" Construire des outils pour les constructeurs """
"e.g. ""MC""","par exemple ""MC"""
"e.g. ""My Company LLC""","par exemple "" Mon Company LLC """
e.g. 5,par exemple 5
"e.g. Bank, Cash, Credit Card","par exemple, bancaire, Carte de crédit"
"e.g. Kg, Unit, Nos, m","kg par exemple, l&#39;unité, n, m"
e.g. VAT,par exemple TVA
eg. Cheque Number,par exemple. Numéro de chèque
example: Next Day Shipping,Exemple: Jour suivant Livraison
lft,lft
old_parent,old_parent
rgt,rgt
subject,sujet
to,à
website page link,Lien vers page web
{0} '{1}' not in Fiscal Year {2},Profil d'emploi
{0} Credit limit {0} crossed,N ° de série {0} ne fait pas partie d' entrepôt {1}
{0} Serial Numbers required for Item {0}. Only {0} provided.,{0} numéros de série requis pour objet {0} . Seulement {0} fournie .
{0} budget for Account {1} against Cost Center {2} will exceed by {3},Alternative lien de téléchargement
{0} can not be negative,{0} ne peut pas être négatif
{0} created,L'article est mis à jour
{0} does not belong to Company {1},joindre l'image
{0} entered twice in Item Tax,{0} est entré deux fois dans l'impôt de l'article
{0} is an invalid email address in 'Notification Email Address',{0} est une adresse e-mail valide dans 'Notification Email '
{0} is mandatory,Restrictions de l'utilisateur
{0} is mandatory for Item {1},{0} est obligatoire pour objet {1}
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} est obligatoire. Peut-être que dossier de change n'est pas créé pour {1} et {2}.
{0} is not a stock Item,« De Date ' est nécessaire
{0} is not a valid Batch Number for Item {1},{0} n'est pas un numéro de lot valable pour objet {1}
{0} is not a valid Leave Approver. Removing row #{1}.,{0} n'est pas un congé approbateur valide. Retrait rangée # {1}.
{0} is not a valid email id,S'il vous plaît sélectionner la valeur de groupe ou Ledger
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,matériel
{0} is required,{0} ne peut pas être acheté en utilisant Panier
{0} must be a Purchased or Sub-Contracted Item in row {1},{0} doit être un article acheté ou sous-traitées à la ligne {1}
{0} must be reduced by {1} or you should increase overflow tolerance,{0} doit être réduite par {1} ou vous devez augmenter la tolérance de dépassement
{0} must have role 'Leave Approver',Nouveau Stock UDM est nécessaire
{0} valid serial nos for Item {1},BOM {0} pour objet {1} à la ligne {2} est inactif ou non soumis
{0} {1} against Bill {2} dated {3},{0} {1} contre le projet de loi en date du {2} {3}
{0} {1} against Invoice {2},investissements
{0} {1} has already been submitted,"S'il vous plaît entrer » est sous-traitée "" comme Oui ou Non"
{0} {1} has been modified. Please refresh.,Point ou Entrepôt à la ligne {0} ne correspond pas à la Demande de Matériel
{0} {1} is not submitted,Accepté Rejeté + Quantité doit être égale à la quantité reçue pour objet {0}
{0} {1} must be submitted,{0} {1} doit être soumis
{0} {1} not in any Fiscal Year,{0} {1} pas en cours d'un exercice
{0} {1} status is 'Stopped',Type Nom de la partie
{0} {1} status is Stopped,{0} {1} statut est arrêté
{0} {1} status is Unstopped,Vous ne pouvez pas reporter le numéro de rangée supérieure ou égale à numéro de la ligne actuelle pour ce type de charge
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: Centre de coûts est obligatoire pour objet {2}
{0}: {1} not found in Invoice Details table,{0}: {1} ne trouve pas dans la table Détails de la facture
