"""Customer Provided Item"" cannot be Purchase Item also","""Elementul furnizat de client"" nu poate fi și articolul de cumpărare",
"""Customer Provided Item"" cannot have Valuation Rate","""Elementul furnizat de client"" nu poate avea rata de evaluare",
"""Is Fixed Asset"" cannot be unchecked, as Asset record exists against the item","""Este activ fix"" nu poate fi debifată deoarece există informații împotriva produsului",
'Based On' and 'Group By' can not be same,'Bazat pe' și 'Grupat dupa' nu pot fi identice,
'Days Since Last Order' must be greater than or equal to zero,'Zile de la ultima comandă' trebuie să fie mai mare sau egal cu zero,
'Entries' cannot be empty,'Intrările' nu pot fi vide,
'From Date' is required,'Din Data' este necesar,
'From Date' must be after 'To Date','Din Data' trebuie să fie dupã 'Până în Data',
'Has Serial No' can not be 'Yes' for non-stock item,'Are numãr de serie' nu poate fi 'Da' pentru articolele care nu au stoc,
'Opening',&quot;Deschiderea&quot;,
'To Case No.' cannot be less than 'From Case No.','Până la situația nr.' nu poate fi mai mică decât 'De la situația nr.',
'To Date' is required,'Până la data' este necesară,
'Total',&#39;Total&#39;,
'Update Stock' can not be checked because items are not delivered via {0},"""Actualizare stoc"" nu poate fi activat, deoarece obiectele nu sunt livrate prin {0}",
'Update Stock' cannot be checked for fixed asset sale,&quot;Actualizare stoc&quot; nu poate fi verificată de vânzare de active fixe,
1 exact match.,1 potrivire exactă.,
90-Above,90-si mai mult,
A Customer Group exists with same name please change the Customer name or rename the Customer Group,Există un grup de clienți cu același nume; vă rugăm să schimbați numele clientului sau să redenumiți grupul de clienți,
A Default Service Level Agreement already exists.,Există deja un Acord de nivel de serviciu implicit.,
A Lead requires either a person's name or an organization's name,"Un conducător necesită fie numele unei persoane, fie numele unei organizații",
A customer with the same name already exists,Un client cu același nume există deja,
A question must have more than one options,O întrebare trebuie să aibă mai multe opțiuni,
A qustion must have at least one correct options,O chestiune trebuie să aibă cel puțin o opțiune corectă,
A4,A4,
API Endpoint,API Endpoint,
API Key,Cheie API,
Abbr can not be blank or space,Abr. nu poate fi gol sau spațiu,
Abbreviation already used for another company,Abreviere deja folosita pentru o altă companie,
Abbreviation cannot have more than 5 characters,Prescurtarea nu poate conține mai mult de 5 caractere,
Abbreviation is mandatory,Abreviere este obligatorie,
About the Company,Despre companie,
About your company,Despre Compania ta,
Above,Deasupra,
Academic Term,Termen academic,
Academic Term: ,Termen academic:,
Academic Year,An academic,
Academic Year: ,An academic:,
Accepted + Rejected Qty must be equal to Received quantity for Item {0},Cant. acceptată + respinsă trebuie să fie egală cu cantitatea recepționată pentru articolul {0},
Access Token,Acces Token,
Accessable Value,Valoare accesibilă,
Account,Cont,
Account Number,Numar de cont,
Account Number {0} already used in account {1},Numărul contului {0} deja utilizat în contul {1},
Account Pay Only,Contul Plătiți numai,
Account Type,Tipul Contului,
Account Type for {0} must be {1},Tipul de cont pentru {0} trebuie să fie {1},
"Account balance already in Credit, you are not allowed to set 'Balance Must Be' as 'Debit'","Soldul contului este deja în credit, nu vă este permis să setați ""Balanța trebuie să fie"" drept ""Debit"".",
"Account balance already in Debit, you are not allowed to set 'Balance Must Be' as 'Credit'","Soldul contului este deja în credit, nu vă este permis să setați ""Balanța trebuie să fie"" drept ""Credit"".",
Account number for account {0} is not available.<br> Please setup your Chart of Accounts correctly.,Numărul contului pentru contul {0} nu este disponibil. <br> Vă rugăm să configurați corect planul de conturi.,
Account with child nodes cannot be converted to ledger,Un cont cu noduri copil nu poate fi transformat în registru contabil,
Account with child nodes cannot be set as ledger,Cont cu noduri copil nu poate fi setat ca Registru Contabil,
Account with existing transaction can not be converted to group.,Un cont cu tranzacții existente nu poate fi transformat în grup.,
Account with existing transaction can not be deleted,Un cont cu tranzacții existente nu poate fi șters,
Account with existing transaction cannot be converted to ledger,Un cont cu tranzacții existente nu poate fi transformat în registru contabil,
Account {0} does not belong to company: {1},Contul {0} nu aparține companiei: {1},
Account {0} does not belongs to company {1},Contul {0} nu aparține companiei {1},
Account {0} does not exist,Contul {0} nu există,
Account {0} does not exists,Contul {0} nu există,
Account {0} does not match with Company {1} in Mode of Account: {2},Contul {0} nu se potrivește cu Compania {1} în modul de cont: {2},
Account {0} has been entered multiple times,Contul {0} a fost introdus de mai multe ori,
Account {0} is added in the child company {1},Contul {0} este adăugat în compania copil {1},
Account {0} is frozen,Contul {0} este Blocat,
Account {0} is invalid. Account Currency must be {1},Contul {0} nu este valid. Valuta contului trebuie să fie {1},
Account {0}: Parent account {1} can not be a ledger,Contul {0}: cont Părinte {1} nu poate fi un registru,
Account {0}: Parent account {1} does not belong to company: {2},Contul {0}: cont Părinte {1} nu apartine companiei: {2},
Account {0}: Parent account {1} does not exist,Contul {0}: cont părinte {1} nu există,
Account {0}: You can not assign itself as parent account,Contul {0}: nu puteți atribui contului în sine calitatea de cont părinte,
Account: {0} can only be updated via Stock Transactions,Contul: {0} poate fi actualizat doar prin Tranzacții stoc,
Account: {0} with currency: {1} can not be selected,Contul: {0} cu moneda: {1} nu poate fi selectat,
Accountant,Contabil,
Accounting,Contabilitate,
Accounting Entry for Asset,Înregistrare contabilă a activelor,
Accounting Entry for Stock,Intrare Contabilă pentru Stoc,
Accounting Entry for {0}: {1} can only be made in currency: {2},Intrarea contabila pentru {0}: {1} se poate face numai în valuta: {2},
Accounting Ledger,Registru Jurnal,
Accounting journal entries.,Inregistrari contabile de jurnal.,
Accounts,Conturi,
Accounts Manager,Manager de Conturi,
Accounts Payable,Conturi de plată,
Accounts Payable Summary,Rezumat conturi pentru plăți,
Accounts Receivable,Conturi de Incasare,
Accounts Receivable Summary,Rezumat conturi de încasare,
Accounts User,Conturi de utilizator,
Accounts table cannot be blank.,Planul de conturi nu poate fi gol.,
Accumulated Depreciation,Amortizarea cumulată,
Accumulated Depreciation Amount,Sumă Amortizarea cumulată,
Accumulated Depreciation as on,Amortizarea ca pe acumulat,
Accumulated Monthly,lunar acumulat,
Accumulated Values,Valorile acumulate,
Accumulated Values in Group Company,Valori acumulate în compania grupului,
Achieved ({}),Realizat ({}),
Action,Acțiune:,
Action Initialised,Acțiune inițiată,
Actions,Acțiuni,
Active,Activ,
Activity Cost exists for Employee {0} against Activity Type - {1},Există cost activitate pentru angajatul {0} comparativ tipului de activitate - {1},
Activity Cost per Employee,Cost activitate per angajat,
Activity Type,Tip Activitate,
Actual Cost,Costul actual,
Actual Delivery Date,Data de livrare efectivă,
Actual Qty,Cant. Efectivă,
Actual Qty is mandatory,Cantitatea efectivă este obligatorie,
Actual Qty {0} / Waiting Qty {1},Cant. reală {0} / Cant. în așteptare {1},
Actual Qty: Quantity available in the warehouse.,Cantitate Actuală: Cantitate disponibilă în depozit.,
Actual qty in stock,Cant. efectivă în stoc,
Actual type tax cannot be included in Item rate in row {0},Taxa efectivă de tip nu poate fi inclusă în tariful articolului din rândul {0},
Add,Adaugă,
Add / Edit Prices,Adăugați / editați preturi,
Add Comment,Adăugă Comentariu,
Add Customers,Adăugați clienți,
Add Employees,Adăugă Angajați,
Add Item,Adăugă Element,
Add Items,Adăugă Elemente,
Add Leads,Adaugă Oportunități,
Add Multiple Tasks,Adăugă Sarcini Multiple,
Add Sales Partners,Adăugă Parteneri de Vânzări,
Add Serial No,Adăugaţi Nr. de Serie,
Add Students,Adăugă Elevi,
Add Suppliers,Adăugă Furnizori,
Add Time Slots,Adăugă Intervale de Timp,
Add Timesheets,Adăugă Pontaje,
Add Timeslots,Adăugă Intervale de Timp,
Add Users to Marketplace,Adăugă Utilizatori la Marketplace,
Add a new address,Adăugați o adresă nouă,
Add cards or custom sections on homepage,Adăugați carduri sau secțiuni personalizate pe pagina principală,
Add more items or open full form,Adăugă mai multe elemente sau deschide formular complet,
Add notes,Adăugați note,
Add the rest of your organization as your users. You can also add invite Customers to your portal by adding them from Contacts,"Adăugați restul organizației dvs. ca utilizatori. Puteți, de asemenea, invita Clienții în portal prin adăugarea acestora din Contacte",
Add/Remove Recipients,Adăugaţi/Stergeţi Destinatari,
Added,Adăugat,
Added {0} users,{0} utilizatori adăugați,
Additional Salary Component Exists.,Există o componentă suplimentară a salariului.,
Address,Adresă,
Address Line 2,Adresă Linie 2,
Address Name,Numele adresei,
Address Title,Titlu adresă,
Address Type,Tip adresă,
Administrative Expenses,Cheltuieli administrative,
Administrative Officer,Ofițer administrativ,
Administrator,Administrator,
Admission,Admitere,
Admission and Enrollment,Admitere și înscriere,
Admissions for {0},Admitere pentru {0},
Admit,admite,
Admitted,Admis,
Advance Amount,Sumă în avans,
Advance Payments,Plățile în avans,
Advance account currency should be same as company currency {0},Advance valuta contului ar trebui să fie aceeași ca moneda companiei {0},
Advance amount cannot be greater than {0} {1},Suma avans nu poate fi mai mare decât {0} {1},
Advertising,Publicitate,
Aerospace,Spaţiul aerian,
Against,Comparativ,
Against Account,Comparativ contului,
Against Journal Entry {0} does not have any unmatched {1} entry,Comparativ intrării {0} în jurnal nu are nici o intrare nepotrivită {1},
Against Journal Entry {0} is already adjusted against some other voucher,Comparativ intrării {0} în jurnal este deja ajustată comparativ altui voucher,
Against Supplier Invoice {0} dated {1},Contra facturii furnizorului {0} din data {1},
Against Voucher,Contra voucherului,
Against Voucher Type,Contra tipului de voucher,
Age,Vârstă,
Age (Days),Vârsta (zile),
Ageing Based On,Uzură bazată pe,
Ageing Range 1,Clasă de uzură 1,
Ageing Range 2,Clasă de uzură 2,
Ageing Range 3,Clasă de uzură 3,
Agriculture,Agricultură,
Agriculture (beta),Agricultura (beta),
Airline,linie aeriană,
All Accounts,Toate conturile,
All Addresses.,Toate adresele.,
All Assessment Groups,Toate grupurile de evaluare,
All BOMs,toate BOM,
All Contacts.,Toate contactele.,
All Customer Groups,Toate grupurile de clienți,
All Day,Toată ziua,
All Departments,Toate departamentele,
All Healthcare Service Units,Toate unitățile de servicii medicale,
All Item Groups,Toate grupurile articolului,
All Products,Toate produsele,
All Products or Services.,Toate produsele sau serviciile.,
All Student Admissions,Toate Admitere Student,
All Supplier Groups,Toate grupurile de furnizori,
All Supplier scorecards.,Toate cardurile de evaluare ale furnizorilor.,
All Territories,Toate Teritoriile,
All Warehouses,toate Depozite,
All communications including and above this shall be moved into the new Issue,"Toate comunicările, inclusiv și deasupra acestora, vor fi mutate în noua ediție",
All items have already been transferred for this Work Order.,Toate articolele au fost deja transferate pentru această comandă de lucru.,
All other ITC,Toate celelalte ITC,
All the mandatory Task for employee creation hasn't been done yet.,Toate sarcinile obligatorii pentru crearea de angajați nu au fost încă încheiate.,
Allocate Payment Amount,Alocați suma de plată,
Allocated Amount,Sumă alocată,
Allocating leaves...,Alocarea frunzelor ...,
Already record exists for the item {0},Încă există înregistrare pentru articolul {0},
"Already set default in pos profile {0} for user {1}, kindly disabled default","Deja a fost setat implicit în profilul pos {0} pentru utilizatorul {1}, dezactivat în mod prestabilit",
Alternate Item,Articol alternativ,
Alternative item must not be same as item code,Elementul alternativ nu trebuie să fie identic cu cel al articolului,
Amended From,Modificat din,
Amount,Sumă,
Amount After Depreciation,Suma după amortizare,
Amount of Integrated Tax,Suma impozitului integrat,
Amount of TDS Deducted,Cantitatea de TDS dedusă,
Amount should not be less than zero.,Suma nu trebuie să fie mai mică de zero.,
Amount to Bill,Sumă pentru facturare,
Amount {0} {1} against {2} {3},Suma {0} {1} împotriva {2} {3},
Amount {0} {1} deducted against {2},Suma {0} {1} dedusă împotriva {2},
Amount {0} {1} transferred from {2} to {3},Suma {0} {1} transferată de la {2} la {3},
Amount {0} {1} {2} {3},Suma {0} {1} {2} {3},
Amt,Suma,
"An Item Group exists with same name, please change the item name or rename the item group","Există un grup de articole cu aceeaşi denumire, vă rugăm să schimbați denumirea articolului sau să redenumiţi grupul articolului",
An academic term with this 'Academic Year' {0} and 'Term Name' {1} already exists. Please modify these entries and try again.,Un termen academic cu acest &quot;An universitar&quot; {0} și &quot;Numele Termenul&quot; {1} există deja. Vă rugăm să modificați aceste intrări și încercați din nou.,
An error occurred during the update process,A apărut o eroare în timpul procesului de actualizare,
"An item exists with same name ({0}), please change the item group name or rename the item","Există un articol cu aceeaşi denumire ({0}), vă rugăm să schimbați denumirea grupului articolului sau să redenumiţi articolul",
Analyst,Analist,
Annual Billing: {0},Facturare anuală: {0},
Another Budget record '{0}' already exists against {1} '{2}' and account '{3}' for fiscal year {4},O altă înregistrare bugetară {0} există deja pentru {1} &#39;{2}&#39; și contul &#39;{3}&#39; pentru anul fiscal {4},
Another Period Closing Entry {0} has been made after {1},O altă intrare închidere de perioada {0} a fost efectuată după {1},
Another Sales Person {0} exists with the same Employee id,Un alt Sales Person {0} există cu același ID Angajat,
Antibiotic,Antibiotic,
Apparel & Accessories,Îmbrăcăminte și accesorii,
Applicable For,Aplicabil pentru,
"Applicable if the company is SpA, SApA or SRL","Se aplică dacă compania este SpA, SApA sau SRL",
Applicable if the company is a limited liability company,Se aplică dacă compania este o societate cu răspundere limitată,
Applicable if the company is an Individual or a Proprietorship,Se aplică dacă compania este o persoană fizică sau o proprietate,
Application of Funds (Assets),Aplicarea fondurilor (active),
Applied,Aplicat,
Appointment Confirmation,Confirmare programare,
Appointment Duration (mins),Durata intalnire (minute),
Appointment Type,Tip de întâlnire,
Appointment {0} and Sales Invoice {1} cancelled,Mențiunea {0} și factura de vânzări {1} au fost anulate,
Appointments and Encounters,Numiri și întâlniri,
Appointments and Patient Encounters,Numiri și întâlniri cu pacienții,
Appraisal {0} created for Employee {1} in the given date range,Expertiza {0} creată pentru angajatul {1} în intervalul de timp dat,
Approving Role cannot be same as role the rule is Applicable To,Aprobarea unui rol nu poate fi aceeaşi cu rolul. Regula este aplicabilă pentru,
Approving User cannot be same as user the rule is Applicable To,Aprobarea unui utilizator nu poate fi aceeași cu utilizatorul. Regula este aplicabilă pentru,
"Apps using current key won't be able to access, are you sure?","Aplicațiile care utilizează cheia curentă nu vor putea accesa, sunteți sigur?",
Are you sure you want to cancel this appointment?,Sigur doriți să anulați această întâlnire?,
Arrear,restanță,
As Examiner,Ca Examiner,
As On Date,Ca pe data,
As Supervisor,Ca supraveghetor,
As per rules 42 & 43 of CGST Rules,Conform regulilor 42 și 43 din Regulile CGST,
As per section 17(5),În conformitate cu secțiunea 17 (5),
Assessment,Evaluare,
Assessment Criteria,Criterii de evaluare,
Assessment Group,Grup de evaluare,
Assessment Group: ,Grup de evaluare:,
Assessment Plan,Plan de evaluare,
Assessment Plan Name,Numele planului de evaluare,
Assessment Report,Raport de evaluare,
Assessment Reports,Rapoarte de evaluare,
Assessment Result,Rezultatul evaluării,
Assessment Result record {0} already exists.,Inregistrarea Rezultatului evaluării {0} există deja.,
Asset,activ,
Asset Category,Categorie activ,
Asset Category is mandatory for Fixed Asset item,Categorie Activ este obligatorie pentru articolul Activ Fix,
Asset Maintenance,Întreținerea activelor,
Asset Movement,Miscarea activelor,
Asset Movement record {0} created,Mișcarea de înregistrare a activelor {0} creat,
Asset Name,Denumire activ,
Asset Received But Not Billed,"Activul primit, dar nu facturat",
Asset Value Adjustment,Ajustarea valorii activelor,
"Asset cannot be cancelled, as it is already {0}","Activul nu poate fi anulat, deoarece este deja {0}",
Asset scrapped via Journal Entry {0},Activ casate prin Jurnal de intrare {0},
"Asset {0} cannot be scrapped, as it is already {1}","Activul {0} nu poate fi scos din uz, deoarece este deja {1}",
Asset {0} does not belong to company {1},Activul {0} nu aparține companiei {1},
Asset {0} must be submitted,Activul {0} trebuie transmis,
Assets,Active,
Assign To,Atribuţi pentru,
Associate,Asociaţi,
At least one mode of payment is required for POS invoice.,Cel puțin un mod de plată este necesar factura POS.,
Atleast one item should be entered with negative quantity in return document,Cel puțin un articol ar trebui să fie introdus cu cantitate negativa în documentul de returnare,
Atleast one of the Selling or Buying must be selected,Cel puţin una din opţiunile de vânzare sau cumpărare trebuie să fie selectată,
Atleast one warehouse is mandatory,Cel puţin un depozit este obligatoriu,
Attach Logo,Atașați logo,
Attachment,Atașament,
Attachments,Ataşamente,
Attendance can not be marked for future dates,Prezenţa nu poate fi consemnată pentru date viitoare,
Attendance date can not be less than employee's joining date,Data de prezență nu poate fi anteriara datii angajarii salariatului,
Attendance for employee {0} is already marked,Prezenţa pentru angajatul {0} este deja consemnată,
Attendance has been marked successfully.,Prezența a fost marcată cu succes.,
Attendance not submitted for {0} as {1} on leave.,Participarea nu a fost trimisă pentru {0} ca {1} în concediu.,
Attribute table is mandatory,Tabelul atribut este obligatoriu,
Attribute {0} selected multiple times in Attributes Table,Atributul {0} este selectat de mai multe ori în tabelul Atribute,
Authorized Signatory,Semnatar autorizat,
Auto Material Requests Generated,Cereri materiale Auto Generat,
Auto Repeat,Auto Repetare,
Auto repeat document updated,Documentul repetat automat a fost actualizat,
Automotive,Autopropulsat,
Available,Disponibil,
Available Qty,Cantitate disponibilă,
Available Selling,Vânzări disponibile,
Available for use date is required,Data de utilizare disponibilă pentru utilizare este necesară,
Available slots,Sloturi disponibile,
Available {0},Disponibile {0},
Available-for-use Date should be after purchase date,Data disponibilă pentru utilizare ar trebui să fie după data achiziției,
Average Age,Varsta medie,
Average Rate,Rata medie,
Avg Daily Outgoing,Ieșire zilnică medie,
Avg. Buying Price List Rate,Med. Achiziționarea ratei listei de prețuri,
Avg. Selling Price List Rate,Med. Rata de listare a prețurilor de vânzare,
Avg. Selling Rate,Rată Medie de Vânzare,
BOM,BOM,
BOM Browser,BOM Browser,
BOM No,Nr. BOM,
BOM Rate,Rata BOM,
BOM Stock Report,BOM Raport stoc,
BOM and Manufacturing Quantity are required,BOM și cantitatea de producție sunt necesare,
BOM does not contain any stock item,BOM nu conține nici un element de stoc,
BOM {0} does not belong to Item {1},BOM {0} nu aparţine articolului {1},
BOM {0} must be active,BOM {0} trebuie să fie activ,
BOM {0} must be submitted,BOM {0} trebuie să fie introdus,
Balance,Bilanţ,
Balance (Dr - Cr),Sold (Dr-Cr),
Balance ({0}),Sold ({0}),
Balance Qty,Cantitate de bilanţ,
Balance Sheet,Bilanț,
Balance Value,Valoarea bilanţului,
Balance for Account {0} must always be {1},Bilanţă pentru contul {0} trebuie să fie întotdeauna {1},
Bank,bancă,
Bank Account,Cont bancar,
Bank Accounts,Conturi bancare,
Bank Draft,Ciorna bancară,
Bank Name,Denumire bancă,
Bank Overdraft Account,Descoperire cont bancar,
Bank Reconciliation,Reconciliere bancară,
Bank Reconciliation Statement,Extras de cont reconciliere bancară,
Bank Statement,Extras de cont,
Bank Statement Settings,Setările declarației bancare,
Bank Statement balance as per General Ledger,Banca echilibru Declarație pe General Ledger,
Bank account cannot be named as {0},Contul bancar nu poate fi numit ca {0},
Bank/Cash transactions against party or for internal transfer,tranzacții bancare / numerar contra partidului sau pentru transfer intern,
Banking,Bancar,
Banking and Payments,Bancare și plăți,
Barcode {0} already used in Item {1},Cod de bare {0} deja folosit pentru articolul {1},
Barcode {0} is not a valid {1} code,Codul de bare {0} nu este un cod valid {1},
Base URL,URL-ul de bază,
Based On,Bazat pe,
Based On Payment Terms,Pe baza condițiilor de plată,
Batch,Lot,
Batch Entries,Înregistrări pe lot,
Batch ID is mandatory,ID-ul lotului este obligatoriu,
Batch Inventory,Lot Inventarul,
Batch Name,Nume lot,
Batch No,Lot nr.,
Batch number is mandatory for Item {0},Numărul aferent lotului este obligatoriu pentru articolul {0},
Batch {0} of Item {1} has expired.,Lot {0} din {1} Postul a expirat.,
Batch {0} of Item {1} is disabled.,Lotul {0} al elementului {1} este dezactivat.,
Batch: ,Lot:,
Batches,Sarjele,
Become a Seller,Deveniți un vânzător,
Bill,Factură,
Bill Date,Dată factură,
Bill No,Factură nr.,
Bill of Materials,Reţete de Producţie,
Bill of Materials (BOM),Lista de materiale (BOM),
Billable Hours,Ore Billable,
Billed,Facturat,
Billed Amount,Sumă facturată,
Billing Address,Adresa De Facturare,
Billing Address is same as Shipping Address,Adresa de facturare este aceeași cu adresa de expediere,
Billing Amount,Suma de facturare,
Billing Status,Stare facturare,
Billing currency must be equal to either default company's currency or party account currency,"Valuta de facturare trebuie să fie identica fie cu valuta implicită a companiei, fie cu moneda contului de partid",
Bills raised by Suppliers.,Facturi cu valoarea ridicată de către furnizori.,
Bills raised to Customers.,Facturi cu valoarea ridicată pentru clienți.,
Biotechnology,Biotehnologie,
Black,Negru,
Blanket Orders from Costumers.,Comenzi cuverturi de la clienți.,
Block Invoice,Blocați factura,
Boms,BOM,
Both Trial Period Start Date and Trial Period End Date must be set,"Trebuie să fie setată atât data de începere a perioadei de încercare, cât și data de încheiere a perioadei de încercare",
Both Warehouse must belong to same Company,Ambele Depozite trebuie să aparțină aceleiași companii,
Branch,ramură,
Broadcasting,Transminiune,
Brokerage,brokeraj,
Browse BOM,Navigare BOM,
Budget Against,Buget împotriva,
Budget List,Lista de bugete,
Budget Variance Report,Raport de variaţie buget,
Budget cannot be assigned against Group Account {0},Buget nu pot fi atribuite în Grupa Contul {0},
"Budget cannot be assigned against {0}, as it's not an Income or Expense account","Bugetul nu pot fi atribuite în {0}, deoarece nu este un cont venituri sau cheltuieli",
Buildings,Corpuri,
Bundle items at time of sale.,Set de articole în momemntul vânzării.,
Business Development Manager,Manager pentru Dezvoltarea Afacerilor,
Buy,A cumpara,
Buying,Cumpărare,
Buying Amount,Sumă de cumpărare,
Buying Price List,Achiziționarea listei de prețuri,
Buying Rate,Rata de cumparare,
"Buying must be checked, if Applicable For is selected as {0}","Destinat Cumpărării trebuie să fie bifat, dacă Se Aplica Pentru este selectat ca şi {0}",
By {0},Până la {0},
Bypass credit check at Sales Order ,Anulați verificarea creditului la Ordin de vânzări,
C-Form records,Înregistrări formular-C,
C-form is not applicable for Invoice: {0},Formularul C nu se aplică pentru factură: {0},
CEO,CEO,
CESS Amount,Suma CESS,
CGST Amount,Suma CGST,
CRM,CRM,
CWIP Account,Contul CWIP,
Calculated Bank Statement balance,Calculat Bank echilibru Declaratie,
Campaign,Campanie,
Can be approved by {0},Poate fi aprobat/a de către {0},
"Can not filter based on Account, if grouped by Account","Nu se poate filtra pe baza de cont, în cazul gruparii in functie de Cont",
"Can not filter based on Voucher No, if grouped by Voucher","Nu se poate filtra pe baza voucher Nr., în cazul gruparii in functie de Voucher",
"Can not mark Inpatient Record Discharged, there are Unbilled Invoices {0}","Nu se poate marca evacuarea inpatientului, există facturi neachitate {0}",
Can only make payment against unbilled {0},Plata se poate efectua numai în cazul factrilor neachitate {0},
Can refer row only if the charge type is 'On Previous Row Amount' or 'Previous Row Total',Se poate face referire la inregistrare numai dacă tipul de taxa este 'Suma inregistrare precedenta' sau 'Total inregistrare precedenta',
"Can't change valuation method, as there are transactions against some items which does not have it's own valuation method","Metoda de evaluare nu poate fi schimbată, deoarece există tranzacții împotriva anumitor elemente care nu au metoda de evaluare proprie",
Can't create standard criteria. Please rename the criteria,Nu se pot crea criterii standard. Renunțați la criterii,
Cancel,Anulează,
Cancel Material Visit {0} before cancelling this Warranty Claim,Anulează Stivuitoare Vizitați {0} înainte de a anula acest revendicarea Garanție,
Cancel Material Visits {0} before cancelling this Maintenance Visit,Anuleaza Vizite Material {0} înainte de a anula această Vizita de întreținere,
Cancel Subscription,Anulează Abonament,
Cancel the journal entry {0} first,Anulați mai întâi înregistrarea jurnalului {0},
Canceled,Anulat,
"Cannot Submit, Employees left to mark attendance","Nu se poate trimite, Angajații lăsați să marcheze prezența",
Cannot be a fixed asset item as Stock Ledger is created.,"Nu poate fi un element de activ fix, deoarece este creat un registru de stoc.",
Cannot cancel because submitted Stock Entry {0} exists,"Nu pot anula, deoarece a prezentat Bursa de intrare {0} există",
Cannot cancel transaction for Completed Work Order.,Nu se poate anula tranzacția pentru comanda finalizată de lucru.,
Cannot cancel {0} {1} because Serial No {2} does not belong to the warehouse {3},Nu se poate anula {0} {1} deoarece numărul de serie {2} nu aparține depozitului {3},
Cannot change Attributes after stock transaction. Make a new Item and transfer stock to the new Item,Nu se poate modifica atributele după tranzacția de stoc. Creați un element nou și transferați stocul la noul element,
Cannot change Fiscal Year Start Date and Fiscal Year End Date once the Fiscal Year is saved.,Nu se poate schimba anul fiscal Data de începere și se termină anul fiscal Data odată ce anul fiscal este salvată.,
Cannot change Service Stop Date for item in row {0},Nu se poate schimba data de începere a serviciului pentru elementul din rândul {0},
Cannot change Variant properties after stock transaction. You will have to make a new Item to do this.,Nu se pot modifica proprietățile Variant după tranzacția stoc. Va trebui să faceți un nou element pentru a face acest lucru.,
"Cannot change company's default currency, because there are existing transactions. Transactions must be cancelled to change the default currency.","Nu se poate schimba moneda implicita a companiei, deoarece există tranzacții in desfasurare. Tranzacțiile trebuie să fie anulate pentru a schimba moneda implicita.",
Cannot change status as student {0} is linked with student application {1},Nu se poate schimba statutul de student ca {0} este legat cu aplicația de student {1},
Cannot convert Cost Center to ledger as it has child nodes,"Nu se poate converti de cost Centrul de registru, deoarece are noduri copil",
Cannot covert to Group because Account Type is selected.,Nu se poate sub acoperire la Grupul pentru că este selectată Tip cont.,
Cannot create Retention Bonus for left Employees,Nu se poate crea Bonus de retenție pentru angajații stânga,
Cannot create a Delivery Trip from Draft documents.,Nu se poate crea o călătorie de livrare din documentele Draft.,
Cannot deactivate or cancel BOM as it is linked with other BOMs,"Nu se poate deactiva sau anula FDM, deoarece este conectat cu alte FDM-uri",
"Cannot declare as lost, because Quotation has been made.","Nu se poate declara pierdut, pentru că Oferta a fost realizata.",
Cannot deduct when category is for 'Valuation' or 'Valuation and Total',Nu se poate deduce când categoria este de 'Evaluare' sau 'Evaluare și total',
Cannot deduct when category is for 'Valuation' or 'Vaulation and Total',Nu se poate deduce atunci când este categoria de &quot;evaluare&quot; sau &quot;Vaulation și Total&quot;,
"Cannot delete Serial No {0}, as it is used in stock transactions","Nu se poate șterge de serie nr {0}, așa cum este utilizat în tranzacțiile bursiere",
Cannot enroll more than {0} students for this student group.,Nu se poate inscrie mai mult de {0} studenți pentru acest grup de studenți.,
Cannot produce more Item {0} than Sales Order quantity {1},Nu se pot produce mai multe Articole {0} decât cantitatea din Ordinul de Vânzări {1},
Cannot promote Employee with status Left,Nu puteți promova angajatul cu starea Stânga,
Cannot refer row number greater than or equal to current row number for this Charge type,Nu se poate face referire la un număr de inregistare mai mare sau egal cu numărul curent de inregistrare pentru acest tip de Incasare,
Cannot select charge type as 'On Previous Row Amount' or 'On Previous Row Total' for first row,Nu se poate selecta tipul de incasare ca 'Suma inregistrare precedenta' sau 'Total inregistrare precedenta' pentru prima inregistrare,
Cannot set as Lost as Sales Order is made.,Nu se poate seta pierdut deoarece se intocmeste comandă de vânzări.,
Cannot set authorization on basis of Discount for {0},Nu se poate seta autorizare pe baza de Discount pentru {0},
Cannot set multiple Item Defaults for a company.,Nu se pot seta mai multe setări implicite pentru o companie.,
Cannot set quantity less than delivered quantity,Cantitatea nu poate fi mai mică decât cea livrată,
Cannot set quantity less than received quantity,Cantitatea nu poate fi mai mică decât cea primită,
Cannot set the field <b>{0}</b> for copying in variants,Nu se poate seta câmpul <b>{0}</b> pentru copiere în variante,
Cannot transfer Employee with status Left,Nu se poate transfera angajatul cu starea Stânga,
Cannot {0} {1} {2} without any negative outstanding invoice,Nu se poate {0} {1} {2} in lipsa unei facturi negative restante,
Capital Equipments,Echipamente de capital,
Capital Stock,Capital Stock,
Capital Work in Progress,Capitalul în curs de desfășurare,
Cart,Coș,
Cart is Empty,Cosul este gol,
Case No(s) already in use. Try from Case No {0},Cazul nr. (s) este deja utilizat. Încercați din cazul nr. {s},
Cash,Numerar,
Cash Flow Statement,Situația fluxurilor de trezorerie,
Cash Flow from Financing,Cash Flow de la finanțarea,
Cash Flow from Investing,Cash Flow de la Investiții,
Cash Flow from Operations,Cash Flow din Operațiuni,
Cash In Hand,Bani în mână,
Cash or Bank Account is mandatory for making payment entry,Pentru a face o inregistrare de plată este obligatoriu numerar sau cont bancar,
Cashier Closing,Încheierea caselor,
Category,Categorie,
Category Name,Nume Categorie,
Caution,Prudență,
Central Tax,Impozitul central,
Certification,Certificare,
Cess,CESS,
Change Amount,Sumă schimbare,
Change Item Code,Modificați codul elementului,
Change Release Date,Modificați data de lansare,
Change Template Code,Schimbați codul de șablon,
Changing Customer Group for the selected Customer is not allowed.,Schimbarea Grupului de Clienți pentru Clientul selectat nu este permisă.,
Chapter,Capitol,
Chapter information.,Informații despre capitol.,
Charge of type 'Actual' in row {0} cannot be included in Item Rate,"Taxa de tip 'Efectiv' în inregistrarea {0} nu poate fi inclus în Rata Articol""",
Chargeble,Chargeble,
Charges are updated in Purchase Receipt against each item,Tarifele sunt actualizate în Primirea cumparare pentru fiecare articol,
"Charges will be distributed proportionately based on item qty or amount, as per your selection","Taxele vor fi distribuite proporțional în funcție de produs Cantitate sau valoarea, ca pe dvs. de selecție",
Chart of Cost Centers,Diagramă Centre de Cost,
Check all,Selectați toate,
Checkout,Verifică,
Chemical,Chimic,
Cheque,Cec,
Cheque/Reference No,Cecul / de referință nr,
Cheques Required,Verificări necesare,
Cheques and Deposits incorrectly cleared,Cecuri și Depozite respingă incorect,
Child Task exists for this Task. You can not delete this Task.,Sarcina pentru copii există pentru această sarcină. Nu puteți șterge această activitate.,
Child nodes can be only created under 'Group' type nodes,noduri pentru copii pot fi create numai în noduri de tip &quot;grup&quot;,
Child warehouse exists for this warehouse. You can not delete this warehouse.,Există depozit copil pentru acest depozit. Nu puteți șterge acest depozit.,
Circular Reference Error,Eroare de referință Circular,
City,Oraș,
City/Town,Oras/Localitate,
Clay,Lut,
Clear filters,Șterge filtrele,
Clear values,Valori clare,
Clearance Date,Data Aprobare,
Clearance Date not mentioned,Data Aprobare nespecificata,
Clearance Date updated,Clearance-ul Data actualizat,
Client,Client,
Client ID,ID-ul clientului,
Client Secret,Secret Client,
Clinical Procedure,Procedura clinică,
Clinical Procedure Template,Formularul procedurii clinice,
Close Balance Sheet and book Profit or Loss.,Inchideti Bilanțul și registrul Profit sau Pierdere.,
Close Loan,Împrumut închis,
Close the POS,Închideți POS,
Closed,Închis,
Closed order cannot be cancelled. Unclose to cancel.,Pentru închis nu poate fi anulată. Pentru a anula redeschide.,
Closing (Cr),De închidere (Cr),
Closing (Dr),De închidere (Dr),
Closing (Opening + Total),Închidere (Deschidere + Total),
Closing Account {0} must be of type Liability / Equity,Contul {0} de închidere trebuie să fie de tip răspunderii / capitaluri proprii,
Closing Balance,Soldul de încheiere,
Code,Cod,
Collapse All,Reduceți totul În această,
Color,Culoare,
Colour,Culoare,
Combined invoice portion must equal 100%,Partea facturată combinată trebuie să fie egală cu 100%,
Commercial,Comercial,
Commission,Comision,
Commission Rate %,Rata comisionului %,
Commission on Sales,Comision pentru Vânzări,
Commission rate cannot be greater than 100,Rata de comision nu poate fi mai mare decat 100,
Community Forum,Community Forum,
Company (not Customer or Supplier) master.,Directorul Companiei(nu al Clientului sau al Furnizorui).,
Company Abbreviation,Abreviere Companie,
Company Abbreviation cannot have more than 5 characters,Abrevierea companiei nu poate avea mai mult de 5 caractere,
Company Name,Denumire Furnizor,
Company Name cannot be Company,Numele Companiei nu poate fi Companie,
Company currencies of both the companies should match for Inter Company Transactions.,Monedele companiilor ambelor companii ar trebui să se potrivească cu tranzacțiile Inter-Company.,
Company is manadatory for company account,Compania este managerială pentru contul companiei,
Company name not same,Numele companiei nu este același,
Company {0} does not exist,Firma {0} nu există,
Compensatory leave request days not in valid holidays,Plățile compensatorii pleacă în zilele de sărbători valabile,
Complaint,Reclamație,
Completion Date,Data Finalizare,
Computer,Computer,
Condition,Condiție,
Configure,Configurarea,
Configure {0},Configurare {0},
Confirmed orders from Customers.,Comenzi confirmate de la clienți.,
Connect Amazon with ERPNext,Conectați-vă la Amazon cu ERPNext,
Connect Shopify with ERPNext,Conectați-vă la Shopify cu ERPNext,
Connect to Quickbooks,Conectați-vă la agendele rapide,
Connected to QuickBooks,Conectat la QuickBooks,
Connecting to QuickBooks,Conectarea la QuickBooks,
Consultation,Consultare,
Consultations,consultări,
Consulting,Consilia,
Consumable,Consumabile,
Consumed,Consumat,
Consumed Amount,Consumat Suma,
Consumed Qty,Cantitate consumată,
Consumer Products,Produse consumator,
Contact,Persoana de Contact,
Contact Us,Contacteaza-ne,
Content,Continut,
Content Masters,Maeștri de conținut,
Content Type,Tip Conținut,
Continue Configuration,Continuați configurarea,
Contract,Contract,
Contract End Date must be greater than Date of Joining,Data de Incheiere Contract trebuie să fie ulterioara Datei Aderării,
Contribution %,Contribuția%,
Contribution Amount,Contribuția Suma,
Conversion factor for default Unit of Measure must be 1 in row {0},Factor de Conversie pentru Unitatea de Măsură implicita trebuie să fie 1 pentru inregistrarea {0},
Conversion rate cannot be 0 or 1,Rata de conversie nu poate fi 0 sau 1,
Convert to Group,Transformă în grup,
Convert to Non-Group,Converti la non-Group,
Cosmetics,Cosmetică,
Cost Center,Centrul de cost,
Cost Center Number,Numărul centrului de costuri,
Cost Center and Budgeting,Centrul de costuri și buget,
Cost Center is required in row {0} in Taxes table for type {1},Centrul de Cost este necesar pentru inregistrarea {0} din tabelul Taxe pentru tipul {1},
Cost Center with existing transactions can not be converted to group,Centrul de Cost cu tranzacții existente nu poate fi transformat în grup,
Cost Center with existing transactions can not be converted to ledger,Centrul de Cost cu tranzacții existente nu poate fi transformat în registru contabil,
Cost Centers,Centre de cost,
Cost Updated,Cost actualizat,
Cost as on,Cost cu o schimbare ca pe,
Cost of Delivered Items,Costul de articole livrate,
Cost of Goods Sold,Cost Bunuri Vândute,
Cost of Issued Items,Costul de articole emise,
Cost of New Purchase,Costul de achiziție nouă,
Cost of Purchased Items,Costul de produsele cumparate,
Cost of Scrapped Asset,Costul de active scoase din uz,
Cost of Sold Asset,Costul de active vândute,
Cost of various activities,Costul diverse activități,
"Could not create Credit Note automatically, please uncheck 'Issue Credit Note' and submit again","Nu s-a putut crea Nota de credit în mod automat, debifați &quot;Notați nota de credit&quot; și trimiteți-o din nou",
Could not generate Secret,Nu am putut genera secret,
Could not retrieve information for {0}.,Nu s-au putut obține informații pentru {0}.,
Could not solve criteria score function for {0}. Make sure the formula is valid.,Nu s-a putut rezolva funcția de evaluare a criteriilor pentru {0}. Asigurați-vă că formula este validă.,
Could not solve weighted score function. Make sure the formula is valid.,Nu s-a putut rezolva funcția de scor ponderat. Asigurați-vă că formula este validă.,
Could not submit some Salary Slips,Nu am putut trimite unele Salariile,
"Could not update stock, invoice contains drop shipping item.","Nu s-a putut actualiza stocul, factura conține elementul de expediere.",
Country wise default Address Templates,Șabloanele țară înțelept adresa implicită,
Course Code: ,Codul cursului:,
Course Enrollment {0} does not exists,Înscrierea la curs {0} nu există,
Course Schedule,Program de curs de,
Course: ,Curs:,
Cr,Cr,
Create,Creează,
Create BOM,Creați BOM,
Create Delivery Trip,Creați călătorie de livrare,
Create Employee,Creați angajat,
Create Employee Records,Crearea angajaților Records,
"Create Employee records to manage leaves, expense claims and payroll","Crearea de înregistrări angajaților pentru a gestiona frunze, cheltuieli și salarizare creanțe",
Create Fee Schedule,Creați programul de taxe,
Create Fees,Creați taxe,
Create Inter Company Journal Entry,Creați jurnalul companiei Inter,
Create Invoice,Creați factură,
Create Invoices,Creați facturi,
Create Job Card,Creați carte de muncă,
Create Journal Entry,Creați intrarea în jurnal,
Create Lead,Creați Lead,
Create Leads,Creează Piste,
Create Maintenance Visit,Creați vizită de întreținere,
Create Material Request,Creați solicitare de materiale,
Create Multiple,Creați mai multe,
Create Opening Sales and Purchase Invoices,Creați deschiderea vânzărilor și facturilor de achiziție,
Create Payment Entries,Creați intrări de plată,
Create Payment Entry,Creați intrare de plată,
Create Print Format,Creați Format imprimare,
Create Purchase Order,Creați comanda de aprovizionare,
Create Purchase Orders,Creare comenzi de aprovizionare,
Create Quotation,Creare Ofertă,
Create Sales Invoice,Creați factură de vânzări,
Create Sales Order,Creați o comandă de vânzări,
Create Sales Orders to help you plan your work and deliver on-time,Creați comenzi de vânzare pentru a vă ajuta să vă planificați munca și să vă livrați la timp,
Create Sample Retention Stock Entry,Creați intrare de stoc de reținere a eșantionului,
Create Student,Creați student,
Create Student Batch,Creați lot de elevi,
Create Student Groups,Creați Grupurile de studenți,
Create Supplier Quotation,Creați ofertă pentru furnizori,
Create Tax Template,Creați șablonul fiscal,
Create Timesheet,Creați o foaie de lucru,
Create User,Creaza utilizator,
Create Users,Creați utilizatori,
Create Variant,Creați varianta,
Create Variants,Creați variante,
"Create and manage daily, weekly and monthly email digests.","Creare și gestionare rezumate e-mail zilnice, săptămânale și lunare.",
Create customer quotes,Creați citate client,
Create rules to restrict transactions based on values.,Creare reguli pentru restricționare tranzacții bazate pe valori.,
Created {0} scorecards for {1} between: ,A creat {0} cărți de scor pentru {1} între:,
Creating Company and Importing Chart of Accounts,Crearea companiei și importul graficului de conturi,
Creating Fees,Crearea de taxe,
Creating student groups,Crearea grupurilor de studenți,
Creating {0} Invoice,Crearea facturii {0},
Credit,Credit,
Credit ({0}),Credit ({0}),
Credit Account,Cont de credit,
Credit Balance,Balanța de credit,
Credit Card,Card de credit,
Credit Days cannot be a negative number,Zilele de credit nu pot fi un număr negativ,
Credit Limit,Limita de credit,
Credit Note,Nota de credit,
Credit Note Amount,Nota de credit Notă,
Credit Note Issued,Nota de credit Eliberat,
Credit Note {0} has been created automatically,Nota de credit {0} a fost creată automat,
Credit limit has been crossed for customer {0} ({1}/{2}),Limita de credit a fost depășită pentru clientul {0} ({1} / {2}),
Creditors,creditorii,
Criteria weights must add up to 100%,Criteriile de greutate trebuie să adauge până la 100%,
Crop Cycle,Ciclu de recoltare,
Crops & Lands,Culturi și terenuri,
Currency Exchange must be applicable for Buying or for Selling.,Cursul valutar trebuie să fie aplicabil pentru cumpărare sau pentru vânzare.,
Currency can not be changed after making entries using some other currency,Moneda nu poate fi schimbat după efectuarea înregistrări folosind un altă valută,
Currency exchange rate master.,Maestru cursului de schimb valutar.,
Currency for {0} must be {1},Moneda pentru {0} trebuie să fie {1},
Currency is required for Price List {0},Moneda este necesară pentru lista de prețuri {0},
Currency of the Closing Account must be {0},Valuta contului de închidere trebuie să fie {0},
Currency of the price list {0} must be {1} or {2},Moneda din lista de prețuri {0} trebuie să fie {1} sau {2},
Currency should be same as Price List Currency: {0},Valuta trebuie sa fie aceeasi cu Moneda Preturilor: {0},
Current Assets,Active curente,
Current BOM and New BOM can not be same,FDM-ul curent și FDM-ul nou nu pot fi identici,
Current Liabilities,Raspunderi Curente,
Current Qty,Cantitate curentă,
Current invoice {0} is missing,Factura curentă {0} lipsește,
Custom HTML,Personalizat HTML,
Custom?,Personalizat?,
Customer,Client,
Customer Addresses And Contacts,Adrese de clienți și Contacte,
Customer Contact,Clientul A lua legatura,
Customer Database.,Baza de Date Client.,
Customer Group,Grup Clienți,
Customer LPO,Clientul LPO,
Customer LPO No.,Client nr. LPO,
Customer Name,Nume client,
Customer POS Id,ID POS utilizator,
Customer Service,Service Client,
Customer and Supplier,Client și Furnizor,
Customer is required,Clientul este necesar,
Customer isn't enrolled in any Loyalty Program,Clientul nu este înscris în niciun program de loialitate,
Customer required for 'Customerwise Discount',Client necesar pentru 'Reducere Client',
Customer {0} does not belong to project {1},Clientul {0} nu aparține proiectului {1},
Customer {0} is created.,Clientul {0} este creat.,
Customers in Queue,Clienții din coadă,
Customize Homepage Sections,Personalizați secțiunile homepage,
Customizing Forms,Personalizare Formulare,
Daily Project Summary for {0},Rezumatul zilnic al proiectului pentru {0},
Daily Reminders,Memento de zi cu zi,
Data Import and Export,Datele de import și export,
Data Import and Settings,Import de date și setări,
Database of potential customers.,Bază de date cu clienți potențiali.,
Date Format,Format Dată,
Date Of Retirement must be greater than Date of Joining,Data Pensionare trebuie să fie ulterioara Datei Aderării,
Date of Birth,Data Nașterii,
Date of Birth cannot be greater than today.,Data Nașterii nu poate fi mai mare decât în prezent.,
Date of Commencement should be greater than Date of Incorporation,Data de Începere ar trebui să fie mai mare decât data înființării,
Date of Joining,Data aderării,
Date of Joining must be greater than Date of Birth,Data Aderării trebuie să fie ulterioara Datei Nașterii,
Date of Transaction,Data tranzacției,
Day,Zi,
Debit,Debit,
Debit ({0}),Debit ({0}),
Debit Account,Cont Debit,
Debit Note,Notă Debit,
Debit Note Amount,Sumă Notă Debit,
Debit Note Issued,Notă Debit Eliberată,
Debit To is required,Pentru debit este necesar,
Debit and Credit not equal for {0} #{1}. Difference is {2}.,Debit și credit nu este egal pentru {0} # {1}. Diferența este {2}.,
Debtors,Debitori,
Debtors ({0}),Debitorilor ({0}),
Declare Lost,Declar pierdut,
Default Activity Cost exists for Activity Type - {0},Există implicit Activitate Cost de activitate de tip - {0},
Default BOM ({0}) must be active for this item or its template,Implicit BOM ({0}) trebuie să fie activ pentru acest element sau șablon de,
Default BOM for {0} not found,BOM implicit pentru {0} nu a fost găsit,
Default BOM not found for Item {0} and Project {1},Implicit BOM nu a fost găsit pentru articolele {0} și proiectul {1},
Default Letter Head,Implicit Scrisoare Șef,
Default Tax Template,Implicit Template fiscal,
Default Unit of Measure for Item {0} cannot be changed directly because you have already made some transaction(s) with another UOM. You will need to create a new Item to use a different Default UOM.,"Unitatea de măsură implicită pentru postul {0} nu poate fi schimbat direct, deoarece aveti si voi deja unele tranzacții (i) cu un alt UOM. Veți avea nevoie pentru a crea un nou element pentru a utiliza un alt implicit UOM.",
Default Unit of Measure for Variant '{0}' must be same as in Template '{1}',Unitatea implicit de măsură pentru Variant &#39;{0} &quot;trebuie să fie la fel ca în Template&quot; {1} &quot;,
Default settings for buying transactions.,Setări implicite pentru tranzacțiilor de achizitie.,
Default settings for selling transactions.,Setări implicite pentru tranzacțiile de vânzare.,
Default tax templates for sales and purchase are created.,Se creează șabloane fiscale predefinite pentru vânzări și achiziții.,
Defaults,Implicite,
Defense,Apărare,
Define Project type.,Definiți tipul de proiect.,
Define budget for a financial year.,Definiți bugetul pentru un exercițiu financiar.,
Define various loan types,Definirea diferitelor tipuri de împrumut,
Del,del,
Delay in payment (Days),Întârziere de plată (zile),
Delete all the Transactions for this Company,Ștergeți toate tranzacțiile de acest companie,
Deletion is not permitted for country {0},Ștergerea nu este permisă pentru țara {0},
Delivered,Livrat,
Delivered Amount,Suma Pronunțată,
Delivered Qty,Cantitate Livrata,
Delivered: {0},Livrate: {0},
Delivery,Livrare,
Delivery Date,Data de Livrare,
Delivery Note,Nota de Livrare,
Delivery Note {0} is not submitted,Nota de Livrare {0} nu este introdusa,
Delivery Note {0} must not be submitted,Nota de Livrare {0} nu trebuie sa fie introdusa,
Delivery Notes {0} must be cancelled before cancelling this Sales Order,Nota de Livrare {0} trebuie sa fie anulată înainte de a anula aceasta Comandă de Vânzări,
Delivery Notes {0} updated,Notele de livrare {0} sunt actualizate,
Delivery Status,Starea de Livrare,
Delivery Trip,Excursie la expediere,
Delivery warehouse required for stock item {0},Depozit de livrare necesar pentru articol stoc {0},
Department,Departament,
Department Stores,Magazine Departament,
Depreciation,Depreciere,
Depreciation Amount,Sumă de amortizare,
Depreciation Amount during the period,Suma de amortizare în timpul perioadei,
Depreciation Date,Data de amortizare,
Depreciation Eliminated due to disposal of assets,Amortizare Eliminată din cauza eliminării activelor,
Depreciation Entry,amortizare intrare,
Depreciation Method,Metoda de amortizare,
Depreciation Row {0}: Depreciation Start Date is entered as past date,Rândul de amortizare {0}: Data de începere a amortizării este introdusă ca dată trecută,
Depreciation Row {0}: Expected value after useful life must be greater than or equal to {1},Rata de amortizare {0}: Valoarea estimată după viața utilă trebuie să fie mai mare sau egală cu {1},
Depreciation Row {0}: Next Depreciation Date cannot be before Available-for-use Date,Rândul de amortizare {0}: Data următoarei amortizări nu poate fi înaintea datei disponibile pentru utilizare,
Depreciation Row {0}: Next Depreciation Date cannot be before Purchase Date,Rata de amortizare {0}: Data următoare a amortizării nu poate fi înainte de data achiziției,
Designer,proiectant,
Detailed Reason,Motiv detaliat,
Details,Detalii,
Details of Outward Supplies and inward supplies liable to reverse charge,"Detalii despre consumabile externe și consumabile interioare, care pot fi percepute invers",
Details of the operations carried out.,Detalii privind operațiunile efectuate.,
Diagnosis,Diagnostic,
Did not find any item called {0},Nu am gasit nici un element numit {0},
Diff Qty,Cantitate diferențială,
Difference Account,Diferența de Cont,
"Difference Account must be a Asset/Liability type account, since this Stock Reconciliation is an Opening Entry","Diferența cont trebuie să fie un cont de tip activ / pasiv, deoarece acest stoc Reconcilierea este un intrare de deschidere",
Difference Amount,Diferență Sumă,
Difference Amount must be zero,Diferența Suma trebuie să fie zero,
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.,Un UOM diferit pentru articole va conduce la o valoare incorecta pentru Greutate Neta (Total). Asigurați-vă că Greutatea Netă a fiecărui articol este în același UOM.,
Direct Expenses,Cheltuieli directe,
Direct Income,Venituri Directe,
Disable,Dezactivați,
Disabled template must not be default template,șablon cu handicap nu trebuie să fie șablon implicit,
Disburse Loan,Împrumut de debit,
Disbursed,debursate,
Disc,Disc,
Discharge,descărcare,
Discount,Reducere,
Discount Percentage can be applied either against a Price List or for all Price List.,Procentul de reducere se poate aplica fie pe o listă de prețuri sau pentru toate lista de prețuri.,
Discount must be less than 100,Reducerea trebuie să fie mai mică de 100,
Diseases & Fertilizers,Boli și îngrășăminte,
Dispatch,Expediere,
Dispatch Notification,Notificare de expediere,
Dispatch State,Statul de expediere,
Distance,Distanţă,
Distribution,distribuire,
Distributor,Distribuitor,
Dividends Paid,Dividendele plătite,
Do you really want to restore this scrapped asset?,Sigur doriți să restabiliți acest activ casate?,
Do you really want to scrap this asset?,Chiar vrei să resturi acest activ?,
Do you want to notify all the customers by email?,Doriți să notificăți toți clienții prin e-mail?,
Doc Date,Data Documentelor,
Doc Name,Denumire Doc,
Doc Type,Tip Doc,
Docs Search,Căutare în Docs,
Document Name,Document Nume,
Document Type,Tip Document,
Domain,Domeniu,
Domains,Domenii,
Done,Făcut,
Donor,Donator,
Donor Type information.,Informații tip donator.,
Donor information.,Informații despre donator.,
Download JSON,Descărcați JSON,
Draft,Proiect,
Drop Ship,Drop navelor,
Drug,Medicament,
Due / Reference Date cannot be after {0},Datorită / Reference Data nu poate fi după {0},
Due Date cannot be before Posting / Supplier Invoice Date,Data scadentă nu poate fi înainte de data de înregistrare / factură a furnizorului,
Due Date is mandatory,Due Date este obligatorie,
Duplicate Entry. Please check Authorization Rule {0},Inregistrare Duplicat. Vă rugăm să verificați Regula de Autorizare {0},
Duplicate Serial No entered for Item {0},Nr. Serial introdus pentru articolul {0} este duplicat,
Duplicate customer group found in the cutomer group table,grup de clienți dublu exemplar găsit în tabelul grupului cutomer,
Duplicate entry,Inregistrare duplicat,
Duplicate item group found in the item group table,Grup de element dublu exemplar găsit în tabelul de grup de elemente,
Duplicate roll number for student {0},Numărul de rolă duplicat pentru student {0},
Duplicate row {0} with same {1},Inregistrare {0} este duplicata cu aceeași {1},
Duplicate {0} found in the table,Duplicat {0} găsit în tabel,
Duration in Days,Durata în Zile,
Duties and Taxes,Impozite și taxe,
E-Invoicing Information Missing,Informații privind facturarea electronică lipsă,
ERPNext Demo,ERPNext Demo,
ERPNext Settings,Setări ERPNext,
Earliest,cel mai devreme,
Earnest Money,Banii cei mai castigati,
Edit,Editați | ×,
Edit Publishing Details,Editați detaliile publicării,
"Edit in full page for more options like assets, serial nos, batches etc.","Modificați pe pagina completă pentru mai multe opțiuni, cum ar fi active, numere de serie, loturi etc.",
Education,Educaţie,
Either location or employee must be required,Trebuie să fie necesară locația sau angajatul,
Either target qty or target amount is mandatory,Cantitatea țintă sau valoarea țintă este obligatorie,
Either target qty or target amount is mandatory.,Cantitatea țintă sau valoarea țintă este obligatorie.,
Electrical,Electric,
Electronic Equipments,Echipamente electronice,
Electronics,Electronică,
Eligible ITC,ITC eligibil,
Email Account,Contul de e-mail,
Email Address,Adresa de email,
"Email Address must be unique, already exists for {0}","Adresa de e-mail trebuie să fie unic, există deja pentru {0}",
Email Digest: ,Email Digest:,
Email Reminders will be sent to all parties with email contacts,Mementourile de e-mail vor fi trimise tuturor părților cu contacte de e-mail,
Email Sent,E-mail trimis,
Email Template,Șablon de e-mail,
Email not found in default contact,E-mailul nu a fost găsit în contactul implicit,
Email sent to {0},E-mail trimis la {0},
Employee,Angajat,
Employee Advances,Avansuri ale angajaților,
Employee ID,card de identitate al angajatului,
Employee Lifecycle,Durata de viață a angajatului,
Employee Name,Nume angajat,
Employee Promotion cannot be submitted before Promotion Date ,Promovarea angajaților nu poate fi depusă înainte de data promoției,
Employee Transfer cannot be submitted before Transfer Date ,Transferul angajaților nu poate fi depus înainte de data transferului,
Employee cannot report to himself.,Angajat nu pot raporta la sine.,
Employee {0} has already applied for {1} between {2} and {3} : ,Angajatul {0} a solicitat deja {1} între {2} și {3}:,
Employee {0} of grade {1} have no default leave policy,Angajații {0} ai clasei {1} nu au o politică de concediu implicită,
Enable / disable currencies.,Activare / dezactivare valute.,
Enabled,Activat,
"Enabling 'Use for Shopping Cart', as Shopping Cart is enabled and there should be at least one Tax Rule for Shopping Cart","Dacă activați opțiunea &quot;Utilizare pentru Cos de cumparaturi &#39;, ca Cosul de cumparaturi este activat și trebuie să existe cel puțin o regulă fiscală pentru Cos de cumparaturi",
End Date,Dată finalizare,
End Date can not be less than Start Date,Data de încheiere nu poate fi mai mică decât data de începere,
End Date cannot be before Start Date.,Data de încheiere nu poate fi înainte de data de începere.,
End Year,Anul de încheiere,
End Year cannot be before Start Year,Sfârșitul anului nu poate fi înainte de Anul de început,
End on,Terminați,
Ends On date cannot be before Next Contact Date.,Sfârșitul de data nu poate fi înaintea datei următoarei persoane de contact.,
Energy,Energie,
Engineer,Inginer,
Enough Parts to Build,Piese de schimb suficient pentru a construi,
Enroll,A se inscrie,
Enrolling student,student inregistrat,
Enrolling students,Înscrierea studenților,
Enter depreciation details,Introduceți detaliile de depreciere,
Enter the Bank Guarantee Number before submittting.,Introduceți numărul de garanție bancară înainte de depunere.,
Enter the name of the Beneficiary before submittting.,Introduceți numele Beneficiarului înainte de depunerea.,
Enter the name of the bank or lending institution before submittting.,Introduceți numele băncii sau al instituției de credit înainte de depunere.,
Enter value betweeen {0} and {1},Introduceți valoarea dintre {0} și {1},
Entertainment & Leisure,Divertisment & Relaxare,
Entertainment Expenses,Cheltuieli de Divertisment,
Equity,echitate,
Error Log,eroare Log,
Error evaluating the criteria formula,Eroare la evaluarea formulei de criterii,
Error in formula or condition: {0},Eroare în formulă sau o condiție: {0},
Error: Not a valid id?,Eroare: Nu a id valid?,
Estimated Cost,Cost estimat,
"Even if there are multiple Pricing Rules with highest priority, then following internal priorities are applied:","Chiar dacă există mai multe reguli de stabilire a prețurilor, cu cea mai mare prioritate, se aplică apoi următoarele priorități interne:",
Exchange Gain/Loss,Cheltuiala / Venit din diferente de curs valutar,
Exchange Rate Revaluation master.,Master reevaluarea cursului de schimb.,
Exchange Rate must be same as {0} {1} ({2}),Cursul de schimb trebuie să fie același ca și {0} {1} ({2}),
Excise Invoice,Factura acciza,
Execution,Execuţie,
Executive Search,Cautare executiva,
Expand All,Extinde toate,
Expected Delivery Date,Data de Livrare Preconizata,
Expected Delivery Date should be after Sales Order Date,Data de livrare preconizată trebuie să fie după data de comandă de vânzare,
Expected End Date,Data de Incheiere Preconizata,
Expected Hrs,Se așteptau ore,
Expected Start Date,Data de Incepere Preconizata,
Expense,cheltuială,
Expense / Difference account ({0}) must be a 'Profit or Loss' account,"Cheltuială cont / Diferența ({0}) trebuie să fie un cont de ""profit sau pierdere""",
Expense Account,Cont de cheltuieli,
Expense Claim,Solicitare Cheltuială,
Expense Claims,Creanțe cheltuieli,
Expense account is mandatory for item {0},Cont de cheltuieli este obligatoriu pentru articolul {0},
Expenses,cheltuieli,
Expenses Included In Asset Valuation,Cheltuieli incluse în evaluarea activelor,
Expenses Included In Valuation,Cheltuieli incluse în evaluare,
Expired Batches,Loturile expirate,
Expires On,Expira la,
Expiring On,Expirând On,
Expiry (In Days),Expirării (în zile),
Explore,Explorați,
Export E-Invoices,Export facturi electronice,
Extra Large,Extra mare,
Extra Small,Extra Small,
Fail,eșua,
Failed,A eșuat,
Failed to create website,Eroare la crearea site-ului,
Failed to install presets,Eroare la instalarea presetărilor,
Failed to login,Eroare la autentificare,
Failed to setup company,Setarea companiei nu a reușit,
Failed to setup defaults,Setările prestabilite nu au reușit,
Failed to setup post company fixtures,Nu sa reușit configurarea posturilor companiei,
Fax,Fax,
Fee,taxă,
Fee Created,Taxa a fost creată,
Fee Creation Failed,Crearea de comisioane a eșuat,
Fee Creation Pending,Crearea taxelor în așteptare,
Fee Records Created - {0},Taxa de inregistrare Creat - {0},
Feedback,Reactie,
Fees,Taxele de,
Female,Feminin,
Fetch Data,Fetch Data,
Fetch Subscription Updates,Actualizați abonamentul la preluare,
Fetch exploded BOM (including sub-assemblies),Obtine FDM expandat (inclusiv subansamblurile),
Fetching records......,Recuperarea înregistrărilor ......,
Field Name,Nume câmp,
Fieldname,Nume câmp,
Fields,Câmpuri,
"Filter Fields Row #{0}: Fieldname <b>{1}</b> must be of type ""Link"" or ""Table MultiSelect""",Rândul câmpurilor de filtrare # {0}: Numele de câmp <b>{1}</b> trebuie să fie de tipul &quot;Link&quot; sau &quot;MultiSelect de tabel&quot;,
Filter Total Zero Qty,Filtrați numărul total zero,
Finance Book,Cartea de finanțe,
Financial / accounting year.,An financiar / contabil.,
Financial Services,Servicii financiare,
Financial Statements,Situațiile financiare,
Financial Year,An financiar,
Finish,finalizarea,
Finished Good,Terminat bine,
Finished Good Item Code,Cod articol bun finalizat,
Finished Goods,Produse finite,
Finished Item {0} must be entered for Manufacture type entry,Postul terminat {0} trebuie să fie introdusă de intrare de tip fabricarea,
Finished product quantity <b>{0}</b> and For Quantity <b>{1}</b> cannot be different,Produsul finit <b>{0}</b> și Cantitatea <b>{1}</b> nu pot fi diferite,
First Name,Prenume,
"Fiscal Regime is mandatory, kindly set the fiscal regime in the company {0}","Regimul fiscal este obligatoriu, vă rugăm să setați regimul fiscal în companie {0}",
Fiscal Year,An fiscal,
Fiscal Year End Date should be one year after Fiscal Year Start Date,Data de încheiere a anului fiscal trebuie să fie un an de la data începerii anului fiscal,
Fiscal Year Start Date and Fiscal Year End Date are already set in Fiscal Year {0},Data începerii anului fiscal și se termină anul fiscal la data sunt deja stabilite în anul fiscal {0},
Fiscal Year Start Date should be one year earlier than Fiscal Year End Date,Data de începere a anului fiscal ar trebui să fie cu un an mai devreme decât data de încheiere a anului fiscal,
Fiscal Year {0} does not exist,Anul fiscal {0} nu există,
Fiscal Year {0} is required,Anul fiscal {0} este necesară,
Fixed Asset,Activ Fix,
Fixed Asset Item must be a non-stock item.,Fix elementul de activ trebuie să fie un element de bază non-stoc.,
Fixed Assets,Active Fixe,
Following Material Requests have been raised automatically based on Item's re-order level,Ca urmare a solicitărilor de materiale au fost ridicate în mod automat în funcție de nivelul de re-comanda item,
Following accounts might be selected in GST Settings:,Următoarele conturi ar putea fi selectate în Setări GST:,
Following course schedules were created,Următoarele programe au fost create,
Following item {0} is not marked as {1} item. You can enable them as {1} item from its Item master,Următorul articol {0} nu este marcat ca {1} element. Puteți să le activați ca element {1} din capitolul Articol,
Following items {0} are not marked as {1} item. You can enable them as {1} item from its Item master,Următoarele elemente {0} nu sunt marcate ca {1} element. Puteți să le activați ca element {1} din capitolul Articol,
"Food, Beverage & Tobacco","Produse Alimentare, Bauturi si Tutun",
For,Pentru,
"For 'Product Bundle' 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 'Product Bundle' item, those values can be entered in the main Item table, values will be copied to 'Packing List' table.","Pentru elementele &quot;produse Bundle&quot;, Warehouse, Serial No și lot nr vor fi luate în considerare de la &quot;ambalare List&quot; masa. Dacă Warehouse și Lot nr sunt aceleași pentru toate elementele de ambalaj pentru produs orice &quot;Bundle produs&quot;, aceste valori pot fi introduse în tabelul de punctul principal, valorile vor fi copiate &quot;de ambalare Lista&quot; masă.",
For Quantity (Manufactured Qty) is mandatory,Pentru Cantitate (fabricat Cant) este obligatorie,
For Supplier,Pentru Furnizor,
For Warehouse,Pentru depozit,
For Warehouse is required before Submit,Pentru Depozit este necesar înainte de Inregistrare,
"For an item {0}, quantity must be negative number","Pentru un element {0}, cantitatea trebuie să fie număr negativ",
"For an item {0}, quantity must be positive number","Pentru un element {0}, cantitatea trebuie să fie un număr pozitiv",
"For job card {0}, you can only make the 'Material Transfer for Manufacture' type stock entry","Pentru cartea de muncă {0}, puteți înscrie doar stocul de tip „Transfer de material pentru fabricare”",
"For row {0} in {1}. To include {2} in Item rate, rows {3} must also be included","Pentru rândul {0} în {1}. Pentru a include {2} ratei punctul, randuri {3} De asemenea, trebuie să fie incluse",
For row {0}: Enter Planned Qty,Pentru rândul {0}: Introduceți cantitatea planificată,
"For {0}, only credit accounts can be linked against another debit entry","Pentru {0}, numai conturi de credit poate fi legat de o altă intrare în debit",
"For {0}, only debit accounts can be linked against another credit entry","Pentru {0}, numai conturi de debit poate fi legat de o altă intrare în credit",
Forum Activity,Activitatea Forumului,
Free item code is not selected,Codul gratuit al articolului nu este selectat,
Freight and Forwarding Charges,Incarcatura și Taxe de Expediere,
Frequency,Frecvență,
Friday,Vineri,
From,De la,
From Address 1,De la adresa 1,
From Address 2,Din adresa 2,
From Currency and To Currency cannot be same,Din Valuta și In Valuta nu pot fi identice,
From Date and To Date lie in different Fiscal Year,De la data și până la data se află în anul fiscal diferit,
From Date cannot be greater than To Date,De la data nu poate fi mai mare decât la data,
From Date must be before To Date,Din Data trebuie să fie anterioara Pana la Data,
From Date should be within the Fiscal Year. Assuming From Date = {0},De la data trebuie să fie în anul fiscal. Presupunând că la data = {0},
From Datetime,De la Datetime,
From Delivery Note,Din Nota de livrare,
From Fiscal Year,Din anul fiscal,
From GSTIN,De la GSTIN,
From Party Name,De la numele partidului,
From Pin Code,Din codul PIN,
From Place,De la loc,
From Range has to be less than To Range,Din Gama trebuie să fie mai mică de la gama,
From State,Din stat,
From Time,Din Time,
From Time Should Be Less Than To Time,Din timp ar trebui să fie mai puțin decât timpul,
From Time cannot be greater than To Time.,Din Timpul nu poate fi mai mare decât în timp.,
"From a supplier under composition scheme, Exempt and Nil rated","De la un furnizor în regim de compoziție, Exempt și Nil au evaluat",
From and To dates required,Datele De La și Pana La necesare,
From value must be less than to value in row {0},Din valoare trebuie să fie mai mică decat in valoare pentru inregistrarea {0},
From {0} | {1} {2},De la {0} | {1} {2},
Fulfillment,Împlinire,
Full Name,Nume complet,
Fully Depreciated,Depreciata pe deplin,
Furnitures and Fixtures,Furnitures și Programe,
"Further accounts can be made under Groups, but entries can be made against non-Groups","Conturile suplimentare pot fi făcute sub Groups, dar intrările pot fi făcute împotriva non-Grupuri",
Further cost centers can be made under Groups but entries can be made against non-Groups,"Centre de costuri pot fi realizate în grupuri, dar intrările pot fi făcute împotriva non-Grupuri",
Further nodes can be only created under 'Group' type nodes,Noduri suplimentare pot fi create numai în noduri de tip 'Grup',
GSTIN,GSTIN,
GSTR3B-Form,GSTR3B-Form,
Gain/Loss on Asset Disposal,Câștigul / Pierdere de eliminare a activelor,
Gantt Chart,Diagrama Gantt,
Gantt chart of all tasks.,Diagrama Gantt a tuturor sarcinilor.,
Gender,Sex,
General,General,
General Ledger,Registru Contabil General,
Generate Material Requests (MRP) and Work Orders.,Generează cereri de material (MRP) și comenzi de lucru.,
Generate Secret,Generați secret,
Get Invocies,Obțineți invocări,
Get Invoices,Obțineți facturi,
Get Invoices based on Filters,Obțineți facturi bazate pe filtre,
Get Items from BOM,Obține articole din FDM,
Get Items from Healthcare Services,Obțineți articole din serviciile de asistență medicală,
Get Items from Prescriptions,Obțineți articole din prescripții,
Get Items from Product Bundle,Obține elemente din Bundle produse,
Get Suppliers,Obțineți furnizori,
Get Suppliers By,Obțineți furnizori prin,
Get Updates,Obțineți actualizări,
Get customers from,Obțineți clienți de la,
Get from Patient Encounter,Ia de la întâlnirea cu pacienții,
Getting Started,Noțiuni de bază,
GitHub Sync ID,ID-ul de sincronizare GitHub,
Global settings for all manufacturing processes.,Setările globale pentru toate procesele de producție.,
Go to the Desktop and start using ERPNext,Du-te la desktop și începe să utilizați ERPNext,
GoCardless SEPA Mandate,GoCardless Mandatul SEPA,
GoCardless payment gateway settings,Setările gateway-ului de plată GoCardless,
Goal and Procedure,Obiectivul și procedura,
Goals cannot be empty,Obiectivele nu poate fi gol,
Goods In Transit,Bunuri în tranzit,
Goods Transferred,Mărfuri transferate,
Goods and Services Tax (GST India),Mărfuri și servicii fiscale (GST India),
Goods are already received against the outward entry {0},Mărfurile sunt deja primite cu intrarea exterioară {0},
Government,Guvern,
Grand Total,Total general,
Grant,Acorda,
Grant Application,Cerere de finanțare nerambursabilă,
Grant Leaves,Grant Frunze,
Grant information.,Acordați informații.,
Grocery,Băcănie,
Gross Profit,Profit brut,
Gross Profit %,Profit Brut%,
Gross Profit / Loss,Profit brut / Pierdere,
Gross Purchase Amount,Sumă brută Cumpărare,
Gross Purchase Amount is mandatory,Valoarea brută Achiziția este obligatorie,
Group by Account,Grup in functie de Cont,
Group by Party,Grup după partid,
Group by Voucher,Grup in functie de Voucher,
Group by Voucher (Consolidated),Grup după Voucher (Consolidat),
Group node warehouse is not allowed to select for transactions,depozit nod grup nu este permis să selecteze pentru tranzacții,
Group to Non-Group,Grup non-grup,
Group your students in batches,Grupa elevii în loturi,
Groups,Grupuri,
Guardian1 Email ID,Codul de e-mail al Guardian1,
Guardian1 Mobile No,Guardian1 mobil nr,
Guardian1 Name,Nume Guardian1,
Guardian2 Email ID,Codul de e-mail Guardian2,
Guardian2 Mobile No,Guardian2 mobil nr,
Guardian2 Name,Nume Guardian2,
HR Manager,Manager Resurse Umane,
HSN,HSN,
HSN/SAC,HSN / SAC,
Half Yearly,Semestrial,
Half-Yearly,Semestrial,
Hardware,Hardware,
Head of Marketing and Sales,Director de Marketing și Vânzări,
Health Care,Servicii de Sanatate,
Healthcare,Sănătate,
Healthcare (beta),Servicii medicale (beta),
Healthcare Practitioner,Medicul de îngrijire medicală,
Healthcare Practitioner not available on {0},Medicul de îngrijire medicală nu este disponibil la {0},
Healthcare Practitioner {0} not available on {1},Medicul de îngrijire medicală {0} nu este disponibil la {1},
Healthcare Service Unit,Serviciul de asistență medicală,
Healthcare Service Unit Tree,Unitatea de servicii de asistență medicală,
Healthcare Service Unit Type,Tipul unității de servicii medicale,
Healthcare Services,Servicii pentru sanatate,
Healthcare Settings,Setări de asistență medicală,
Help Results for,Rezultate de ajutor pentru,
High,Ridicat,
High Sensitivity,Sensibilitate crescută,
Hold,Păstrarea / Ţinerea / Deţinerea,
Hold Invoice,Rețineți factura,
Holiday,Vacanţă,
Holiday List,Lista de vacanță,
Hotel Rooms of type {0} are unavailable on {1},Camerele Hotel de tip {0} nu sunt disponibile în {1},
Hotels,Hoteluri,
Hourly,ore,
Hours,ore,
How Pricing Rule is applied?,Cum se aplică regula pret?,
Hub Category,Categorie Hub,
Hub Sync ID,Hub ID de sincronizare,
Human Resource,Resurse umane,
Human Resources,Resurse umane,
IGST Amount,Suma IGST,
IP Address,Adresa IP,
ITC Available (whether in full op part),ITC Disponibil (fie în opțiune integrală),
ITC Reversed,ITC inversat,
Identifying Decision Makers,Identificarea factorilor de decizie,
"If Auto Opt In is checked, then the customers will be automatically linked with the concerned Loyalty Program (on save)","Dacă este bifată opțiunea Auto Opt In, clienții vor fi conectați automat la programul de loialitate respectiv (la salvare)",
"If multiple Pricing Rules continue to prevail, users are asked to set Priority manually to resolve conflict.","În cazul în care mai multe reguli de stabilire a prețurilor continuă să prevaleze, utilizatorii sunt rugați să setați manual prioritate pentru a rezolva conflictul.",
"If selected Pricing Rule is made for 'Rate', it will overwrite Price List. Pricing Rule rate is the final rate, 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.","Dacă regula de preț este selectată pentru &quot;Rate&quot;, va suprascrie lista de prețuri. Tarifarea tarifului Rata de rată este rata finală, deci nu trebuie să aplicați nici o reducere suplimentară. Prin urmare, în tranzacții cum ar fi Comandă de Vânzare, Comandă de Achiziție etc, va fi extrasă în câmpul &quot;Rată&quot;, mai degrabă decât în câmpul &quot;Rata Prețurilor&quot;.",
"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.","În cazul în care două sau mai multe reguli de stabilire a prețurilor sunt găsite bazează pe condițiile de mai sus, se aplică prioritate. Prioritatea este un număr între 0 și 20 în timp ce valoarea implicită este zero (gol). Numărul mai mare înseamnă că va avea prioritate în cazul în care există mai multe norme de stabilire a prețurilor, cu aceleași condiții.",
"If unlimited expiry for the Loyalty Points, keep the Expiry Duration empty or 0.","Dacă expiră nelimitat pentru Punctele de loialitate, păstrați Durata de expirare goală sau 0.",
"If you have any questions, please get back to us.","Dacă aveți întrebări, vă rugăm să ne întoarcem la noi.",
Ignore Existing Ordered Qty,Ignorați cantitatea comandată existentă,
Image,Imagine,
Image View,Imagine Vizualizare,
Import Data,Importați date,
Import Day Book Data,Importați datele cărții de zi,
Import Log,Import Conectare,
Import Master Data,Importați datele de bază,
Import in Bulk,Importare în masă,
Import of goods,Importul de bunuri,
Import of services,Importul serviciilor,
Importing Items and UOMs,Importarea de articole și UOM-uri,
Importing Parties and Addresses,Importarea părților și adreselor,
In Maintenance,În Mentenanță,
In Production,In productie,
In Qty,În Cantitate,
In Stock Qty,În stoc Cantitate,
In Stock: ,In stoc:,
In Value,În valoare,
"In the case of multi-tier program, Customers will be auto assigned to the concerned tier as per their spent","În cazul unui program cu mai multe niveluri, Clienții vor fi automat alocați nivelului respectiv în funcție de cheltuielile efectuate",
Inactive,Inactiv,
Incentives,stimulente,
Include Default FB Entries,Includeți intrări implicite în cărți,
Include Exploded Items,Includeți articole explodate,
Include POS Transactions,Includeți tranzacțiile POS,
Include UOM,Includeți UOM,
Included in Gross Profit,Inclus în Profitul brut,
Income,Venit,
Income Account,Contul de venit,
Income Tax,Impozit pe venit,
Incoming,Primite,
Incoming Rate,Rate de intrare,
Incorrect number of General Ledger Entries found. You might have selected a wrong Account in the transaction.,Număr incorect de contabilitate intrările găsit. Este posibil să fi selectat un cont greșit în tranzacție.,
Increment cannot be 0,Creștere nu poate fi 0,
Increment for Attribute {0} cannot be 0,Creștere pentru Atribut {0} nu poate fi 0,
Indirect Expenses,Cheltuieli indirecte,
Indirect Income,Venituri indirecte,
Individual,Individual,
Ineligible ITC,ITC neeligibil,
Initiated,Iniţiat,
Inpatient Record,Înregistrări de pacienți,
Installation Note,Instalare Notă,
Installation Note {0} has already been submitted,Instalarea Nota {0} a fost deja prezentat,
Installation date cannot be before delivery date for Item {0},Data de instalare nu poate fi înainte de data de livrare pentru postul {0},
Installing presets,Instalarea presetărilor,
Institute Abbreviation,Institutul Abreviere,
Institute Name,Numele Institutului,
Instructor,Instructor,
Insufficient Stock,Stoc insuficient,
Insurance Start date should be less than Insurance End date,Asigurare Data de pornire ar trebui să fie mai mică de asigurare Data terminării,
Integrated Tax,Impozit integrat,
Inter-State Supplies,Consumabile inter-statale,
Internet Publishing,Editura Internet,
Intra-State Supplies,Furnizori intra-statale,
Introduction,Introducere,
Invalid Attribute,Atribut nevalid,
Invalid Blanket Order for the selected Customer and Item,Comanda nevalabilă pentru client și element selectat,
Invalid Company for Inter Company Transaction.,Companie nevalidă pentru tranzacția inter companie.,
Invalid GSTIN! A GSTIN must have 15 characters.,GSTIN nevalid! Un GSTIN trebuie să aibă 15 caractere.,
Invalid GSTIN! First 2 digits of GSTIN should match with State number {0}.,GSTIN nevalid! Primele 2 cifre ale GSTIN ar trebui să se potrivească cu numărul de stat {0}.,
Invalid GSTIN! The input you've entered doesn't match the format of GSTIN.,GSTIN nevalid! Intrarea introdusă nu corespunde formatului GSTIN.,
Invalid Posting Time,Ora nevalidă a postării,
Invalid attribute {0} {1},atribut nevalid {0} {1},
Invalid quantity specified for item {0}. Quantity should be greater than 0.,Cantitate nevalidă specificată pentru element {0}. Cantitatea ar trebui să fie mai mare decât 0.,
Invalid reference {0} {1},Referință invalid {0} {1},
Invalid {0},Invalid {0},
Invalid {0} for Inter Company Transaction.,Nevalabil {0} pentru tranzacția între companii.,
Invalid {0}: {1},Invalid {0}: {1},
Inventory,Inventarierea,
Investment Banking,Investment Banking,
Investments,investiţii,
Invoice,Factură,
Invoice Created,Factura creată,
Invoice Discounting,Reducerea facturilor,
Invoice Patient Registration,Inregistrarea pacientului,
Invoice Posting Date,Data Postare factură,
Invoice Type,Tip Factura,
Invoice already created for all billing hours,Factura deja creată pentru toate orele de facturare,
Invoice can't be made for zero billing hour,Factura nu poate fi făcută pentru cantitate 0 ore facturabile,
Invoice {0} no longer exists,Factura {0} nu mai există,
Invoiced,facturată,
Invoiced Amount,Sumă facturată,
Invoices,Facturi,
Invoices for Costumers.,Facturi pentru clienți.,
Inward supplies from ISD,Consumabile interioare de la ISD,
Inward supplies liable to reverse charge (other than 1 & 2 above),Livrări interne susceptibile de încărcare inversă (altele decât 1 și 2 de mai sus),
Is Active,Este activ,
Is Default,Este Implicit,
Is Existing Asset,Este activ existent,
Is Frozen,Este inghetat,
Is Group,Is Group,
Issue,Problema,
Issue Material,Eliberarea Material,
Issued,Emis,
Issues,Probleme,
It is needed to fetch Item Details.,Este nevoie să-i aducă Detalii despre articol.,
Item,Obiect,
Item 1,Postul 1,
Item 2,Punctul 2,
Item 3,Punctul 3,
Item 4,Punctul 4,
Item 5,Punctul 5,
Item Cart,Cos,
Item Code,Cod articol,
Item Code cannot be changed for Serial No.,Cod articol nu pot fi schimbate pentru Serial No.,
Item Code required at Row No {0},Cod Articol necesar la inregistrarea Nr. {0},
Item Description,Descriere Articol,
Item Group,Grup Articol,
Item Group Tree,Ramificatie Grup Articole,
Item Group not mentioned in item master for item {0},Grupa de articole care nu sunt menționate la punctul de master pentru element {0},
Item Name,Numele articolului,
Item Price added for {0} in Price List {1},Articol Preț adăugată pentru {0} în lista de prețuri {1},
"Item Price appears multiple times based on Price List, Supplier/Customer, Currency, Item, UOM, Qty and Dates.","Elementul Preț apare de mai multe ori pe baza listei de prețuri, furnizor / client, valută, element, UOM, cantitate și date.",
Item Price updated for {0} in Price List {1},Articol Preț actualizat pentru {0} în lista de prețuri {1},
Item Row {0}: {1} {2} does not exist in above '{1}' table,Rândul {0}: {1} {2} nu există în tabelul de mai sus {1},
Item Tax Row {0} must have account of type Tax or Income or Expense or Chargeable,Taxa Articol pentru inregistrarea {0} trebuie sa detina un cont de tip Fiscal sau De Venituri sau De Cheltuieli sau Taxabil,
Item Template,Șablon de șablon,
Item Variant Settings,Setări pentru variantele de articol,
Item Variant {0} already exists with same attributes,Postul Varianta {0} există deja cu aceleași atribute,
Item Variants,Variante Postul,
Item Variants updated,Variante de articol actualizate,
Item has variants.,Element are variante.,
Item must be added using 'Get Items from Purchase Receipts' button,"Postul trebuie să fie adăugate folosind ""obține elemente din Cumpără Încasări"" buton",
Item valuation rate is recalculated considering landed cost voucher amount,Rata de evaluare Articolul este recalculat în vedere aterizat sumă voucher de cost,
Item variant {0} exists with same attributes,Postul varianta {0} există cu aceleași atribute,
Item {0} does not exist,Articolul {0} nu există,
Item {0} does not exist in the system or has expired,Articolul {0} nu există în sistem sau a expirat,
Item {0} has already been returned,Articolul {0} a fost deja returnat,
Item {0} has been disabled,Postul {0} a fost dezactivat,
Item {0} has reached its end of life on {1},Articolul {0} a ajuns la sfârșitul cliclului sau de viață in {1},
Item {0} ignored since it is not a stock item,"Element {0} ignorat, deoarece nu este un element de stoc",
"Item {0} is a template, please select one of its variants","Postul {0} este un șablon, vă rugăm să selectați unul dintre variantele sale",
Item {0} is cancelled,Articolul {0} este anulat,
Item {0} is disabled,Postul {0} este dezactivat,
Item {0} is not a serialized Item,Articolul {0} nu este un articol serializat,
Item {0} is not a stock Item,Articolul{0} nu este un element de stoc,
Item {0} is not active or end of life has been reached,Articolul {0} nu este activ sau sfarsitul ciclului sau de viata a fost atins,
Item {0} is not setup for Serial Nos. Check Item master,Articolul {0} nu este configurat pentru Numerotare Seriala. Verificati Articolul Principal.,
Item {0} is not setup for Serial Nos. Column must be blank,Articolul {0} nu este configurat pentru Numerotare Seriala. Coloana trebuie să fie vida,
Item {0} must be a Fixed Asset Item,Postul {0} trebuie să fie un element activ fix,
Item {0} must be a Sub-contracted Item,Articolul {0} trebuie să fie un Articol Sub-contractat,
Item {0} must be a non-stock item,Postul {0} trebuie să fie un element de bază non-stoc,
Item {0} must be a stock Item,Articolul {0} trebuie să fie un Articol de Stoc,
Item {0} not found,Articolul {0} nu a fost găsit,
Item {0} not found in 'Raw Materials Supplied' table in Purchase Order {1},Postul {0} nu a fost găsit în &quot;Materii prime furnizate&quot; masă în Comandă {1},
Item {0}: Ordered qty {1} cannot be less than minimum order qty {2} (defined in Item).,Postul {0}: Cantitate comandat {1} nu poate fi mai mică de cantitate minimă de comandă {2} (definită la punctul).,
Item: {0} does not exist in the system,Postul: {0} nu există în sistemul,
Items,Articole,
Items Filter,Filtrarea elementelor,
Items and Pricing,Articole și Prețuri,
Items for Raw Material Request,Articole pentru cererea de materii prime,
Job Card,Carte de muncă,
Job card {0} created,Cartea de activitate {0} a fost creată,
Join,A adera,
Journal Entries {0} are un-linked,Intrările Jurnal {0} sunt ne-legate,
Journal Entry,Intrare în jurnal,
Journal Entry {0} does not have account {1} or already matched against other voucher,Jurnal de intrare {0} nu are cont {1} sau deja comparate cu alte voucher,
Kanban Board,Consiliul de Kanban,
Key Reports,Rapoarte cheie,
LMS Activity,Activitate LMS,
Lab Test,Test de laborator,
Lab Test Report,Raport de testare în laborator,
Lab Test Sample,Test de laborator,
Lab Test Template,Lab Test Template,
Lab Test UOM,Laboratorul de testare UOM,
Lab Tests and Vital Signs,Teste de laborator și semne vitale,
Lab result datetime cannot be before testing datetime,Rezultatul datetimei de laborator nu poate fi înainte de data testării,
Lab testing datetime cannot be before collection datetime,Timpul de testare al laboratorului nu poate fi înainte de data de colectare,
Label,Eticheta,
Laboratory,Laborator,
Large,Mare,
Last Communication,Ultima comunicare,
Last Communication Date,Ultima comunicare,
Last Name,Nume,
Last Order Amount,Ultima cantitate,
Last Order Date,Ultima comandă Data,
Last Purchase Price,Ultima valoare de cumpărare,
Last Purchase Rate,Ultima Rate de Cumparare,
Latest,Ultimul,
Latest price updated in all BOMs,Ultimul preț actualizat în toate BOM-urile,
Lead,Pistă,
Lead Count,Număr Pistă,
Lead Owner,Proprietar Pistă,
Lead Owner cannot be same as the Lead,Plumb Proprietarul nu poate fi aceeași ca de plumb,
Lead Time Days,Timpul in Zile Conducere,
Lead to Quotation,Pistă către Ofertă,
"Leads help you get business, add all your contacts and more as your leads","Oportunitati de afaceri ajuta să obțineți, adăugați toate contactele și mai mult ca dvs. conduce",
Learn,Învăța,
Leave Management,Lasă managementul,
Leave and Attendance,Plece și prezență,
Leave application {0} already exists against the student {1},Lăsați aplicația {0} să existe deja împotriva elevului {1},
Leaves has been granted sucessfully,Frunzele au fost acordate cu succes,
Leaves must be allocated in multiples of 0.5,"Concediile trebuie să fie alocate în multipli de 0.5""",
Ledger,Registru Contabil,
Legal,Juridic,
Legal Expenses,Cheltuieli Juridice,
Letter Head,Antet Scrisoare,
Letter Heads for print templates.,Antete de Scrisoare de Sabloane de Imprimare.,
Level,Nivel,
Liability,Răspundere,
Limit Crossed,limita Traversat,
Link to Material Request,Link la solicitarea materialului,
List of all share transactions,Lista tuturor tranzacțiilor cu acțiuni,
List of available Shareholders with folio numbers,Lista Acționarilor disponibili cu numere folio,
Loading Payment System,Încărcarea sistemului de plată,
Loan,Împrumut,
Loan Start Date and Loan Period are mandatory to save the Invoice Discounting,Data de început a împrumutului și perioada de împrumut sunt obligatorii pentru a salva reducerea facturilor,
Loans (Liabilities),Imprumuturi (Raspunderi),
Loans and Advances (Assets),Împrumuturi și avansuri (active),
Local,Local,
Logs for maintaining sms delivery status,Busteni pentru menținerea statutului de livrare sms,
Lost,Pierdut,
Lost Reasons,Motivele pierdute,
Low,Scăzut,
Low Sensitivity,Sensibilitate scăzută,
Lower Income,Micsoreaza Venit,
Loyalty Amount,Suma de loialitate,
Loyalty Point Entry,Punct de loialitate,
Loyalty Points,Puncte de loialitate,
"Loyalty Points will be calculated from the spent done (via the Sales Invoice), based on collection factor mentioned.","Punctele de loialitate vor fi calculate din suma cheltuită (prin factura de vânzare), pe baza factorului de colectare menționat.",
Loyalty Points: {0},Puncte de fidelitate: {0},
Loyalty Program,Program de fidelizare,
Main,Principal,
Maintenance,Mentenanţă,
Maintenance Log,Jurnal Mentenanță,
Maintenance Manager,Manager Mentenanță,
Maintenance Schedule,Program Mentenanță,
Maintenance Schedule is not generated for all the items. Please click on 'Generate Schedule',Programul de Mentenanta nu este generat pentru toate articolele. Vă rugăm să faceți clic pe 'Generare Program',
Maintenance Schedule {0} exists against {1},Planul de Mentenanță {0} există împotriva {1},
Maintenance Schedule {0} must be cancelled before cancelling this Sales Order,Programul de Mentenanță{0} trebuie anulat înainte de a anula această Comandă de Vânzări,
Maintenance Status has to be Cancelled or Completed to Submit,Starea de întreținere trebuie anulată sau finalizată pentru a fi trimisă,
Maintenance User,Întreținere utilizator,
Maintenance Visit,Vizită Mentenanță,
Maintenance Visit {0} must be cancelled before cancelling this Sales Order,Vizita de Mentenanță {0} trebuie să fie anulată înainte de a anula această Comandă de Vânzări,
Maintenance start date can not be before delivery date for Serial No {0},Data de Incepere a Mentenantei nu poate fi anterioara datei de livrare aferent de Nr. de Serie {0},
Make,Realizare,
Make Payment,Plateste,
Make project from a template.,Realizați proiectul dintr-un șablon.,
Making Stock Entries,Efectuarea de stoc Entries,
Male,Masculin,
Manage Customer Group Tree.,Gestioneaza Ramificatiile de Group a Clientului.,
Manage Sales Partners.,Gestionează Parteneri Vânzări,
Manage Sales Person Tree.,Gestioneaza Ramificatiile Persoanei responsabila cu Vanzarile,
Manage Territory Tree.,Gestioneaza Ramificatiile Teritoriule.,
Manage your orders,Gestionează Comenzi,
Management,Management,
Manager,Manager,
Managing Projects,Managementul Proiectelor,
Managing Subcontracting,Gestionarea Subcontracte,
Mandatory,Obligatoriu,
Mandatory field - Academic Year,Domeniu obligatoriu - An universitar,
Mandatory field - Get Students From,Domeniu obligatoriu - Obțineți elevii de la,
Mandatory field - Program,Câmp obligatoriu - Program,
Manufacture,Fabricare,
Manufacturer,Producător,
Manufacturer Part Number,Numarul de piesa,
Manufacturing,Producţie,
Manufacturing Quantity is mandatory,Cantitatea de fabricație este obligatorie,
Mapping,Cartografierea,
Mapping Type,Tipul de tipărire,
Mark Absent,Mark Absent,
Mark Half Day,Mark jumatate de zi,
Mark Present,Mark Prezent,
Marketing,Marketing,
Marketing Expenses,Cheltuieli de marketing,
Marketplace,Piata de desfacere,
Marketplace Error,Eroare de pe piață,
Masters,Masterat,
Match Payments with Invoices,Plățile se potrivesc cu facturi,
Match non-linked Invoices and Payments.,Potrivesc Facturi non-legate și plăți.,
Material,Material,
Material Consumption,Consumul de materiale,
Material Consumption is not set in Manufacturing Settings.,Consumul de materiale nu este setat în Setări de fabricare.,
Material Receipt,Primirea de material,
Material Request,Cerere de material,
Material Request Date,Cerere de material Data,
Material Request No,Cerere de material Nu,
"Material Request not created, as quantity for Raw Materials already available.","Cerere de material nefiind creată, ca cantitate pentru materiile prime deja disponibile.",
Material Request of maximum {0} can be made for Item {1} against Sales Order {2},Cerere de material de maximum {0} se poate face pentru postul {1} împotriva comandă de vânzări {2},
Material Request to Purchase Order,Cerere de material de cumpărare Ordine,
Material Request {0} is cancelled or stopped,Cerere de material {0} este anulată sau oprită,
Material Request {0} submitted.,Cerere de materiale {0} trimisă.,
Material Transfer,Transfer de material,
Material Transferred,Material transferat,
Material to Supplier,Material de Furnizor,
Max discount allowed for item: {0} is {1}%,Discount maxim permis pentru articol: {0} este {1}%,
Max: {0},Max: {0},
Maximum Samples - {0} can be retained for Batch {1} and Item {2}.,Probele maxime - {0} pot fi păstrate pentru lotul {1} și articolul {2}.,
Maximum Samples - {0} have already been retained for Batch {1} and Item {2} in Batch {3}.,Probele maxime - {0} au fost deja reținute pentru lotul {1} și articolul {2} din lotul {3}.,
Maximum discount for Item {0} is {1}%,Reducerea maximă pentru articolul {0} este {1}%,
Medical Code,Codul medical,
Medical Code Standard,Codul medical standard,
Medical Department,Departamentul medical,
Medical Record,Fișă medicală,
Medium,Medie,
Member Activity,Activitatea membrilor,
Member ID,Membru ID,
Member Name,Numele membrului,
Member information.,Informații despre membri.,
Membership,apartenență,
Membership Details,Detalii de membru,
Membership ID,ID-ul de membru,
Membership Type,Tipul de membru,
Memebership Details,Detalii de membru,
Memebership Type Details,Detalii despre tipul de membru,
Merge,contopi,
Merge Account,Îmbinare cont,
Merge with Existing Account,Mergeți cu contul existent,
"Merging is only possible if following properties are same in both records. Is Group, Root Type, Company","Fuziune este posibilă numai în cazul în care următoarele proprietăți sunt aceleași în ambele registre. Este Group, Root Type, Company",
Message Examples,Exemple de mesaje,
Message Sent,Mesajul a fost trimis,
Method,Metoda,
Middle Income,Venituri medii,
Middle Name,Al doilea nume,
Middle Name (Optional),Al Doilea Nume (Opțional),
Min Amt can not be greater than Max Amt,Min Amt nu poate fi mai mare decât Max Amt,
Min Qty can not be greater than Max Qty,Min Cantitate nu poate fi mai mare decât Max Cantitate,
Minimum Lead Age (Days),Vârsta minimă de plumb (zile),
Miscellaneous Expenses,Cheltuieli diverse,
Missing Currency Exchange Rates for {0},Lipsesc cursuri de schimb valutar pentru {0},
Missing email template for dispatch. Please set one in Delivery Settings.,Șablonul de e-mail lipsă pentru expediere. Alegeți unul din Setările de livrare.,
"Missing value for Password, API Key or Shopify URL","Valoare lipsă pentru parola, cheia API sau adresa URL pentru cumpărături",
Mode of Payment,Modul de plată,
Mode of Payments,Modul de plată,
Mode of Transport,Mijloc de transport,
Mode of Transportation,Mijloc de transport,
Model,Model,
Moderate Sensitivity,Sensibilitate moderată,
Monday,Luni,
Monthly,Lunar,
Monthly Distribution,Distributie lunar,
More,Mai mult,
More Information,Mai multe informatii,
More...,Mai Mult...,
Motion Picture & Video,Motion Picture & Video,
Move,Mutare,
Move Item,Postul mutare,
Multi Currency,Multi valutar,
Multiple Item prices.,Mai multe prețuri element.,
Multiple Loyalty Program found for the Customer. Please select manually.,Programul de loialitate multiplă găsit pentru client. Selectați manual.,
"Multiple Price Rules exists with same criteria, please resolve conflict by assigning priority. Price Rules: {0}","Reguli de preturi multiple există cu aceleași criterii, vă rugăm să rezolve conflictul prin atribuirea de prioritate. Reguli de preț: {0}",
Multiple Variants,Variante multiple,
Multiple fiscal years exist for the date {0}. Please set company in Fiscal Year,ani fiscali multiple exista in data de {0}. Vă rugăm să setați companie în anul fiscal,
Music,Muzica,
Name error: {0},Numele de eroare: {0},
Name of new Account. Note: Please don't create accounts for Customers and Suppliers,Numele de cont nou. Notă: Vă rugăm să nu creați conturi pentru clienți și furnizori,
Name or Email is mandatory,Nume sau E-mail este obligatorie,
Nature Of Supplies,Natura aprovizionării,
Navigating,Navigarea,
Needs Analysis,Analiza nevoilor,
Negative Quantity is not allowed,Nu este permisă cantitate negativă,
Negative Valuation Rate is not allowed,Negativ Rata de evaluare nu este permis,
Negotiation/Review,Negocierea / revizuire,
Net Asset value as on,Valoarea activelor nete pe,
Net Cash from Financing,Numerar net din Finantare,
Net Cash from Investing,Numerar net din investiții,
Net Cash from Operations,Numerar net din operațiuni,
Net Change in Accounts Payable,Schimbarea net în conturi de plătit,
Net Change in Accounts Receivable,Schimbarea net în conturile de creanțe,
Net Change in Cash,Schimbarea net în numerar,
Net Change in Equity,Schimbarea net în capitaluri proprii,
Net Change in Fixed Asset,Schimbarea net în active fixe,
Net Change in Inventory,Schimbarea net în inventar,
Net ITC Available(A) - (B),ITC net disponibil (A) - (B),
Net Profit,Profit net,
Net Total,Total net,
New Account Name,Nume nou cont,
New Address,Adresa noua,
New BOM,Nou BOM,
New Batch ID (Optional),ID-ul lotului nou (opțional),
New Batch Qty,Numărul nou de loturi,
New Company,Companie nouă,
New Cost Center Name,Numele noului centru de cost,
New Customer Revenue,Noi surse de venit pentru clienți,
New Customers,clienti noi,
New Department,Departamentul nou,
New Employee,Angajat nou,
New Location,Locație nouă,
New Quality Procedure,Noua procedură de calitate,
New Sales Invoice,Adauga factură de vânzări,
New Sales Person Name,Nume nou Agent de vânzări,
New Serial No cannot have Warehouse. Warehouse must be set by Stock Entry or Purchase Receipt,Noua ordine nu pot avea Warehouse. Depozit trebuie să fie stabilite de către Bursa de intrare sau de primire de cumparare,
New Warehouse Name,Nume nou depozit,
New credit limit is less than current outstanding amount for the customer. Credit limit has to be atleast {0},Noua limită de credit este mai mică decât valoarea curentă restante pentru client. Limita de credit trebuie să fie atleast {0},
New task,Sarcina noua,
New {0} pricing rules are created,Sunt create noi {0} reguli de preț,
Newspaper Publishers,Editorii de ziare,
Next,Următor,
Next Contact By cannot be same as the Lead Email Address,Următoarea Contact Prin faptul că nu poate fi aceeași cu adresa de e-mail Plumb,
Next Contact Date cannot be in the past,În continuare Contact Data nu poate fi în trecut,
Next Steps,Pasii urmatori,
No Action,Fara actiune,
No Customers yet!,Nu există clienți încă!,
No Data,No Data,
No Delivery Note selected for Customer {},Nu este selectată nicio notificare de livrare pentru client {},
No Item with Barcode {0},Nici un articol cu coduri de bare {0},
No Item with Serial No {0},Nici un articol cu ordine {0},
No Items available for transfer,Nu există elemente disponibile pentru transfer,
No Items selected for transfer,Nu există elemente selectate pentru transfer,
No Items to pack,Nu sunt produse în ambalaj,
No Items with Bill of Materials to Manufacture,Nu există niciun articol cu Lista de materiale pentru fabricarea,
No Items with Bill of Materials.,Nu există articole cu Bill of Materials.,
No Permission,Nici o permisiune,
No Remarks,Nu Observații,
No Result to submit,Niciun rezultat nu trebuie trimis,
No Student Groups created.,Nu există grupuri create de studenți.,
No Students in,Nu există studenți în,
No Tax Withholding data found for the current Fiscal Year.,Nu au fost găsite date privind reținerea fiscală pentru anul fiscal curent.,
No Work Orders created,Nu au fost create comenzi de lucru,
No accounting entries for the following warehouses,Nici o intrare contabile pentru următoarele depozite,
No contacts with email IDs found.,Nu au fost găsite contacte cu ID-urile de e-mail.,
No data for this period,Nu există date pentru această perioadă,
No description given,Nici o descriere dat,
No employees for the mentioned criteria,Nu există angajați pentru criteriile menționate,
No gain or loss in the exchange rate,Nu există cheltuieli sau venituri din diferente ale cursului de schimb,
No items listed,Nu sunt enumerate elemente,
No items to be received are overdue,Nu sunt întârziate niciun element de primit,
No material request created,Nu a fost creată nicio solicitare materială,
No of Interactions,Nr de interacțiuni,
No of Shares,Numărul de acțiuni,
No pending Material Requests found to link for the given items.,Nu au fost găsite solicitări de material în așteptare pentru link-ul pentru elementele date.,
No products found,Nu au fost găsite produse,
No products found.,Nu găsiți produse.,
No record found,Nu s-au găsit înregistrări,
No records found in the Invoice table,Nu sunt găsite inregistrari în tabelul de facturi înregistrate,
No records found in the Payment table,Nu sunt găsite în tabelul de plăți înregistrări,
No tasks,Nu există nicio sarcină,
No time sheets,Nu există nicio foaie de timp,
No values,Fără valori,
No {0} found for Inter Company Transactions.,Nu a fost găsit {0} pentru tranzacțiile Intercompanie.,
Non GST Inward Supplies,Consumabile interioare non-GST,
Non Profit,Non-Profit,
Non Profit (beta),Nonprofit (beta),
Non-GST outward supplies,Oferte externe non-GST,
Non-Group to Group,Non-Grup la Grup,
None,Nici unul,
None of the items have any change in quantity or value.,Nici unul din elementele au nici o schimbare în cantitate sau de valoare.,
Nos,nos,
Not Available,Indisponibil,
Not Marked,nemarcate,
Not Paid and Not Delivered,Nu sunt plătite și nu sunt livrate,
Not Permitted,Nu este permisă,
Not Started,Neînceput,
Not active,Nu este activ,
Not allow to set alternative item for the item {0},Nu permiteți setarea unui element alternativ pentru articolul {0},
Not allowed to update stock transactions older than {0},Nu este permis să actualizeze tranzacțiile bursiere mai vechi de {0},
Not authorized to edit frozen Account {0},Nu este autorizat pentru a edita Contul {0} blocat,
Not authroized since {0} exceeds limits,Nu authroized din {0} depășește limitele,
Not permitted for {0},Nu este permisă {0},
"Not permitted, configure Lab Test Template as required","Nu este permisă, configurați Șablon de testare Lab așa cum este necesar",
Not permitted. Please disable the Service Unit Type,Nu sunt acceptate. Dezactivați tipul unității de serviciu,
Note: Due / Reference Date exceeds allowed customer credit days by {0} day(s),Notă: Datorită / Reference Data depășește de companie zile de credit client de {0} zi (le),
Note: Item {0} entered multiple times,Notă: Articolul {0} a intrat de mai multe ori,
Note: Payment Entry will not be created since 'Cash or Bank Account' was not specified,"Notă: Plata de intrare nu va fi creat deoarece ""Cash sau cont bancar"" nu a fost specificat",
Note: System will not check over-delivery and over-booking for Item {0} as quantity or amount is 0,"Notă: Sistemul nu va verifica peste, livrare și supra-rezervări pentru postul {0} ca și cantitatea sau valoarea este 0",
Note: There is not enough leave balance for Leave Type {0},Notă: Nu este echilibrul concediu suficient pentru concediul de tip {0},
Note: This Cost Center is a Group. Cannot make accounting entries against groups.,Notă: Acest centru de cost este un grup. Nu pot face înregistrări contabile impotriva grupuri.,
Note: {0},Notă: {0},
Notes,Observații,
Nothing is included in gross,Nimic nu este inclus în brut,
Nothing more to show.,Nimic mai mult pentru a arăta.,
Notify Customers via Email,Notificați clienții prin e-mail,
Number,Număr,
Number of Depreciations Booked cannot be greater than Total Number of Depreciations,Numărul de Deprecieri Booked nu poate fi mai mare decât Număr total de Deprecieri,
Number of Interaction,Numărul interacțiunii,
Number of Order,Numărul de comandă,
"Number of new Account, it will be included in the account name as a prefix","Numărul de cont nou, acesta va fi inclus în numele contului ca prefix",
"Number of new Cost Center, it will be included in the cost center name as a prefix","Numărul noului Centru de cost, acesta va fi inclus în prefixul centrului de costuri",
Number of root accounts cannot be less than 4,Numărul de conturi root nu poate fi mai mic de 4,
Odometer,Contorul de kilometraj,
Office Equipments,Echipamente de birou,
Office Maintenance Expenses,Cheltuieli Mentenanță Birou,
Office Rent,Birou inchiriat,
On Hold,In asteptare,
On Net Total,Pe Net Total,
One customer can be part of only single Loyalty Program.,Un client poate face parte dintr-un singur program de loialitate.,
Online Auctions,Licitatii online,
"Only the Student Applicant with the status ""Approved"" will be selected in the table below.",În tabelul de mai jos va fi selectat numai Solicitantul studenților cu statutul &quot;Aprobat&quot;.,
Only users with {0} role can register on Marketplace,Numai utilizatorii cu rolul {0} se pot înregistra pe Marketplace,
Open BOM {0},Deschideți BOM {0},
Open Item {0},Deschis Postul {0},
Open Notifications,Notificări deschise,
Open Orders,Comenzi deschise,
Open a new ticket,Deschideți un nou bilet,
Opening,Deschidere,
Opening (Cr),Deschidere (Cr),
Opening (Dr),Deschidere (Dr),
Opening Accounting Balance,Sold Contabilitate,
Opening Accumulated Depreciation,Deschidere Amortizarea Acumulate,
Opening Accumulated Depreciation must be less than equal to {0},Amortizarea de deschidere trebuie să fie mai mică Acumulate decât egală cu {0},
Opening Balance,Soldul de deschidere,
Opening Balance Equity,Sold Equity,
Opening Date and Closing Date should be within same Fiscal Year,Deschiderea și data inchiderii ar trebui să fie în același an fiscal,
Opening Date should be before Closing Date,"Deschiderea Data ar trebui să fie, înainte de Data inchiderii",
Opening Entry Journal,Deschiderea Jurnalului de intrare,
Opening Invoice Creation Tool,Deschiderea Instrumentului de creare a facturilor,
Opening Invoice Item,Deschidere element factură,
Opening Invoices,Deschiderea facturilor,
Opening Invoices Summary,Sumar de deschidere a facturilor,
Opening Qty,Deschiderea Cantitate,
Opening Stock,deschidere stoc,
Opening Stock Balance,Sold Stock,
Opening Value,Valoarea de deschidere,
Opening {0} Invoice created,Deschidere {0} Factură creată,
Operation,Operație,
Operation Time must be greater than 0 for Operation {0},Funcționarea timp trebuie să fie mai mare decât 0 pentru funcționare {0},
"Operation {0} longer than any available working hours in workstation {1}, break down the operation into multiple operations","Operațiunea {0} mai mult decât orice ore de lucru disponibile în stație de lucru {1}, descompun operațiunea în mai multe operațiuni",
Operations,Operatii,
Operations cannot be left blank,Operații nu poate fi lăsat necompletat,
Opp Count,Opp Count,
Opp/Lead %,Opp / Plumb%,
Opportunities,Oportunități,
Opportunities by lead source,Oportunități după sursă pistă,
Opportunity,Oportunitate,
Opportunity Amount,Oportunitate Sumă,
"Optional. Sets company's default currency, if not specified.","Opțional. Setează implicit moneda companiei, în cazul în care nu este specificat.",
Optional. This setting will be used to filter in various transactions.,Opțional. Această setare va fi utilizat pentru a filtra în diverse tranzacții.,
Options,Optiuni,
Order Count,Numărătoarea comenzilor,
Order Entry,Intrare comandă,
Order Value,Valoarea comenzii,
Order rescheduled for sync,Ordonată reprogramată pentru sincronizare,
Order/Quot %,Ordine / Cotare%,
Ordered,Ordonat,
Ordered Qty,Ordonat Cantitate,
"Ordered Qty: Quantity ordered for purchase, but not received.","Comandat Cantitate: Cantitatea comandat pentru cumpărare, dar nu a primit.",
Orders,Comenzi,
Orders released for production.,Comenzi lansat pentru producție.,
Organization,Organizare,
Organization Name,Numele Organizatiei,
Other,Altul,
Other Reports,Alte rapoarte,
"Other outward supplies(Nil rated,Exempted)","Alte consumabile exterioare (Nil evaluat, scutit)",
Out Qty,Out Cantitate,
Out Value,Valoarea afară,
Out of Order,Scos din uz,
Outgoing,Trimise,
Outstanding,remarcabil,
Outstanding Amount,Remarcabil Suma,
Outstanding Amt,Impresionant Amt,
Outstanding Cheques and Deposits to clear,Cecuri restante și pentru a șterge Depozite,
Outstanding for {0} cannot be less than zero ({1}),Restante pentru {0} nu poate fi mai mică decât zero ({1}),
Outward taxable supplies(zero rated),Livrări impozabile externe (zero),
Overdue,întârziat,
Overlap in scoring between {0} and {1},Suprapunerea punctajului între {0} și {1},
Overlapping conditions found between:,Condiții se suprapun găsite între:,
Owner,Proprietar,
PAN,TIGAIE,
POS,POS,
POS Profile,POS Profil,
POS Profile is required to use Point-of-Sale,Profilul POS este necesar pentru a utiliza Punctul de vânzare,
POS Profile required to make POS Entry,POS Profil necesare pentru a face POS intrare,
POS Settings,Setări POS,
Packed quantity must equal quantity for Item {0} in row {1},Cantitate ambalate trebuie să fie egală cantitate pentru postul {0} în rândul {1},
Packing Slip,Slip de ambalare,
Packing Slip(s) cancelled,Slip de ambalare (e) anulate,
Paid,Plătit,
Paid Amount,Suma plătită,
Paid Amount cannot be greater than total negative outstanding amount {0},Suma plătită nu poate fi mai mare decât suma totală negativă restante {0},
Paid amount + Write Off Amount can not be greater than Grand Total,Suma plătită + Scrie Off Suma nu poate fi mai mare decât Grand total,
Paid and Not Delivered,Plătite și nu sunt livrate,
Parameter,Parametru,
Parent Item {0} must not be a Stock Item,Postul părinte {0} nu trebuie să fie un articol stoc,
Parents Teacher Meeting Attendance,Conferința părinților la conferința părintească,
Partially Depreciated,parțial Depreciata,
Partially Received,Parțial primite,
Party,Partener,
Party Name,Nume partid,
Party Type,Tip de partid,
Party Type and Party is mandatory for {0} account,Tipul partidului și partidul este obligatoriu pentru contul {0},
Party Type is mandatory,Tipul de partid este obligatorie,
Party is mandatory,Party este obligatorie,
Past Due Date,Data trecută,
Patient,Rabdator,
Patient Appointment,Numirea pacientului,
Patient Encounter,Întâlnirea cu pacienții,
Patient not found,Pacientul nu a fost găsit,
Pay Remaining,Plătiți rămase,
Pay {0} {1},Plătește {0} {1},
Payable,plătibil,
Payable Account,Contul furnizori,
Payment,Plată,
Payment Cancelled. Please check your GoCardless Account for more details,Plata anulată. Verificați contul GoCardless pentru mai multe detalii,
Payment Confirmation,Confirmarea platii,
Payment Document,Documentul de plată,
Payment Due Date,Data scadentă de plată,
Payment Entries {0} are un-linked,Intrările de plată {0} sunt nesemnalate legate,
Payment Entry,Intrare plăţi,
Payment Entry already exists,Există deja intrare plată,
Payment Entry has been modified after you pulled it. Please pull it again.,Plata intrare a fost modificat după ce-l tras. Vă rugăm să trage din nou.,
Payment Entry is already created,Plata Intrarea este deja creat,
Payment Failed. Please check your GoCardless Account for more details,Plata esuata. Verificați contul GoCardless pentru mai multe detalii,
Payment Gateway,Gateway de plată,
"Payment Gateway Account not created, please create one manually.","Plata Gateway Cont nu a fost creată, vă rugăm să creați manual unul.",
Payment Gateway Name,Numele gateway-ului de plată,
Payment Mode,Modul de plată,
Payment Receipt Note,Plată Primirea Note,
Payment Request,Cerere de plata,
Payment Request for {0},Solicitare de plată pentru {0},
Payment Tems,Tems de plată,
Payment Term,Termen de plata,
Payment Terms,Termeni de plată,
Payment Terms Template,Formularul termenilor de plată,
Payment Terms based on conditions,Termeni de plată în funcție de condiții,
Payment Type,Tip de plată,
"Payment Type must be one of Receive, Pay and Internal Transfer","Tipul de plată trebuie să fie unul dintre Primire, Pay și de transfer intern",
Payment against {0} {1} cannot be greater than Outstanding Amount {2},Plata împotriva {0} {1} nu poate fi mai mare decât Impresionant Suma {2},
Payment request {0} created,Solicitarea de plată {0} a fost creată,
Payments,Plăți,
Payroll Payable,Salarizare plateste,
Payslip,fluturaș,
Pending Activities,Activități în curs,
Pending Amount,În așteptarea Suma,
Pending Leaves,Frunze în așteptare,
Pending Qty,Așteptare Cantitate,
Pending Quantity,Cantitate în așteptare,
Pending Review,Revizuirea în curs,
Pending activities for today,Activități în așteptare pentru ziua de azi,
Pension Funds,Fondurile de pensii,
Percentage Allocation should be equal to 100%,Alocarea procent ar trebui să fie egală cu 100%,
Perception Analysis,Analiza percepției,
Period,Perioada,
Period Closing Entry,Intrarea Perioada de închidere,
Period Closing Voucher,Voucher perioadă de închidere,
Periodicity,Periodicitate,
Personal Details,Detalii personale,
Pharmaceutical,Farmaceutic,
Pharmaceuticals,Produse farmaceutice,
Physician,Medic,
Place Of Supply (State/UT),Locul livrării (stat / UT),
Place Order,Locul de comandă,
Plan Name,Numele planului,
Plan for maintenance visits.,Plan pentru vizite de mentenanță.,
Planned Qty,Planificate Cantitate,
"Planned Qty: Quantity, for which, Work Order has been raised, but is pending to be manufactured.","Cantitate planificată: cantitatea pentru care a fost ridicată comanda de lucru, dar este în curs de fabricare.",
Planning,Planificare,
Plants and Machineries,Plante și mașini,
Please Set Supplier Group in Buying Settings.,Setați Grupul de furnizori în Setări de cumpărare.,
Please add a Temporary Opening account in Chart of Accounts,Adăugați un cont de deschidere temporară în Planul de conturi,
Please add the account to root level Company - ,Vă rugăm să adăugați contul la nivelul companiei la nivel root -,
Please check Multi Currency option to allow accounts with other currency,Vă rugăm să verificați Multi opțiune de valuta pentru a permite conturi cu altă valută,
Please click on 'Generate Schedule',"Vă rugăm să faceți clic pe ""Generate Program""",
Please click on 'Generate Schedule' to fetch Serial No added for Item {0},"Vă rugăm să faceți clic pe ""Generate Program"", pentru a aduce ordine adăugat pentru postul {0}",
Please click on 'Generate Schedule' to get schedule,"Vă rugăm să faceți clic pe ""Generate Program"", pentru a obține programul",
Please create purchase receipt or purchase invoice for the item {0},Creați factura de cumpărare sau factura de achiziție pentru elementul {0},
Please define grade for Threshold 0%,Vă rugăm să definiți gradul pentru pragul 0%,
Please enable Applicable on Booking Actual Expenses,Activați aplicabil pentru cheltuielile curente de rezervare,
Please enable Applicable on Purchase Order and Applicable on Booking Actual Expenses,Activați aplicabil la comanda de aprovizionare și aplicabil cheltuielilor curente de rezervare,
Please enable pop-ups,Vă rugăm să activați pop-up-uri,
Please enter 'Is Subcontracted' as Yes or No,"Va rugam sa introduceti ""este subcontractată"" ca Da sau Nu",
Please enter API Consumer Key,Introduceți cheia de consum API,
Please enter API Consumer Secret,Introduceți secretul pentru clienți API,
Please enter Account for Change Amount,Vă rugăm să introduceți cont pentru Schimbare Sumă,
Please enter Approving Role or Approving User,Vă rugăm să introduceți Aprobarea Rolul sau aprobarea de utilizare,
Please enter Cost Center,Va rugam sa introduceti Cost Center,
Please enter Delivery Date,Introduceți data livrării,
Please enter Employee Id of this sales person,Vă rugăm să introduceți ID-ul de angajat al acestei persoane de vânzări,
Please enter Expense Account,Va rugam sa introduceti cont de cheltuieli,
Please enter Item Code to get Batch Number,Vă rugăm să introduceți codul de articol pentru a obține numărul de lot,
Please enter Item Code to get batch no,Va rugam sa introduceti codul articol pentru a obține lot nu,
Please enter Item first,Va rugam sa introduceti Articol primul,
Please enter Maintaince Details first,Va rugam sa introduceti maintaince detaliile prima,
Please enter Planned Qty for Item {0} at row {1},Va rugam sa introduceti planificate Cantitate pentru postul {0} la rândul {1},
Please enter Preferred Contact Email,Vă rugăm să introduceți preferate Contact E-mail,
Please enter Production Item first,Va rugam sa introduceti de producție Articol întâi,
Please enter Purchase Receipt first,Va rugam sa introduceti Primirea achiziția,
Please enter Receipt Document,Vă rugăm să introduceți Document Primirea,
Please enter Reference date,Vă rugăm să introduceți data de referință,
Please enter Reqd by Date,Introduceți Reqd după dată,
Please enter Woocommerce Server URL,Introduceți adresa URL a serverului Woocommerce,
Please enter Write Off Account,Va rugam sa introduceti Scrie Off cont,
Please enter atleast 1 invoice in the table,Va rugam sa introduceti cel putin 1 factura în tabelul,
Please enter company first,Va rugam sa introduceti prima companie,
Please enter company name first,Va rugam sa introduceti numele companiei în primul rând,
Please enter default currency in Company Master,Va rugam sa introduceti moneda implicit în Compania de Master,
Please enter message before sending,Vă rugăm să introduceți mesajul înainte de trimitere,
Please enter parent cost center,Vă rugăm să introduceți centru de cost părinte,
Please enter quantity for Item {0},Va rugam sa introduceti cantitatea pentru postul {0},
Please enter relieving date.,Vă rugăm să introduceți data alinarea.,
Please enter valid Financial Year Start and End Dates,Va rugam sa introduceti valabil financiare Anul începe și a termina Perioada,
Please enter valid email address,Introduceți adresa de e-mail validă,
Please enter {0} first,Va rugam sa introduceti {0} primul,
Please fill in all the details to generate Assessment Result.,Vă rugăm să completați toate detaliile pentru a genera rezultatul evaluării.,
Please identify/create Account (Group) for type - {0},Vă rugăm să identificați / să creați un cont (grup) pentru tipul - {0},
Please identify/create Account (Ledger) for type - {0},Vă rugăm să identificați / să creați un cont (contabil) pentru tipul - {0},
Please login as another user to register on Marketplace,Conectați-vă ca alt utilizator pentru a vă înregistra pe Marketplace,
Please make sure you really want to delete all the transactions for this company. Your master data will remain as it is. This action cannot be undone.,Vă rugăm să asigurați-vă că într-adevăr să ștergeți toate tranzacțiile pentru această companie. Datele dvs. de bază vor rămâne așa cum este. Această acțiune nu poate fi anulată.,
Please mention Basic and HRA component in Company,Vă rugăm să menționați componentele de bază și HRA în cadrul companiei,
Please mention Round Off Account in Company,Vă rugăm să menționați rotunji contul în companie,
Please mention Round Off Cost Center in Company,Vă rugăm să menționați rotunji Center cost în companie,
Please mention no of visits required,Vă rugăm să menționați nici de vizite necesare,
Please mention the Lead Name in Lead {0},Menționați numele de plumb din plumb {0},
Please pull items from Delivery Note,Vă rugăm să trage elemente de livrare Nota,
Please register the SIREN number in the company information file,Înregistrați numărul SIREN în fișierul cu informații despre companie,
Please remove this Invoice {0} from C-Form {1},Vă rugăm să eliminați acest factură {0} de la C-Form {1},
Please save the patient first,Salvați mai întâi pacientul,
Please save the report again to rebuild or update,Vă rugăm să salvați raportul din nou pentru a reconstrui sau actualiza,
"Please select Allocated Amount, Invoice Type and Invoice Number in atleast one row","Vă rugăm să selectați suma alocată, de tip Factură și factură Numărul din atleast rând una",
Please select Apply Discount On,Vă rugăm să selectați Aplicați Discount On,
Please select BOM against item {0},Selectați BOM pentru elementul {0},
Please select BOM for Item in Row {0},Vă rugăm să selectați BOM pentru postul în rândul {0},
Please select BOM in BOM field for Item {0},Vă rugăm să selectați BOM BOM în domeniu pentru postul {0},
Please select Category first,Vă rugăm să selectați categoria întâi,
Please select Charge Type first,Vă rugăm să selectați tipul de taxă în primul rând,
Please select Company,Vă rugăm să selectați Company,
Please select Company and Posting Date to getting entries,Selectați Company and Dateing date pentru a obține înregistrări,
Please select Company first,Vă rugăm să selectați Company primul,
Please select Completion Date for Completed Asset Maintenance Log,Selectați Data de încheiere pentru jurnalul de întreținere a activelor finalizat,
Please select Completion Date for Completed Repair,Selectați Data de finalizare pentru Repararea finalizată,
Please select Course,Selectați cursul,
Please select Drug,Selectați Droguri,
Please select Existing Company for creating Chart of Accounts,Vă rugăm să selectați Companie pentru crearea Existent Plan de conturi,
Please select Healthcare Service,Selectați Serviciul de asistență medicală,
"Please select Item where ""Is Stock Item"" is ""No"" and ""Is Sales Item"" is ""Yes"" and there is no other Product Bundle",Vă rugăm să selectați postul unde &quot;Este Piesa&quot; este &quot;nu&quot; și &quot;Este punctul de vânzare&quot; este &quot;da&quot; și nu este nici un alt produs Bundle,
Please select Maintenance Status as Completed or remove Completion Date,Selectați Stare de întreținere ca Completat sau eliminați Data de finalizare,
Please select Party Type first,Vă rugăm să selectați Party Type primul,
Please select Patient,Selectați pacientul,
Please select Patient to get Lab Tests,Selectați pacientul pentru a obține testele de laborator,
Please select Posting Date before selecting Party,Vă rugăm să selectați Dată postare înainte de a selecta Parte,
Please select Posting Date first,Vă rugăm să selectați postarea Data primei,
Please select Price List,Vă rugăm să selectați lista de prețuri,
Please select Program,Selectați Program,
Please select Qty against item {0},Selectați Cantitate pentru elementul {0},
Please select Sample Retention Warehouse in Stock Settings first,Vă rugăm să selectați mai întâi Warehouse de stocare a probelor din Setări stoc,
Please select Start Date and End Date for Item {0},Vă rugăm să selectați data de început și Data de final pentru postul {0},
Please select Student Admission which is mandatory for the paid student applicant,Selectați admiterea studenților care este obligatorie pentru solicitantul studenților plătiți,
Please select a BOM,Selectați un BOM,
Please select a Batch for Item {0}. Unable to find a single batch that fulfills this requirement,Selectați un lot pentru articolul {0}. Nu se poate găsi un singur lot care să îndeplinească această cerință,
Please select a Company,Vă rugăm să selectați o companie,
Please select a batch,Selectați un lot,
Please select a field to edit from numpad,Selectați un câmp de editat din numpad,
Please select a table,Selectați un tabel,
Please select a valid Date,Selectați o dată validă,
Please select a value for {0} quotation_to {1},Vă rugăm să selectați o valoare de {0} {1} quotation_to,
Please select a warehouse,Te rugăm să selectazi un depozit,
Please select at least one domain.,Selectați cel puțin un domeniu.,
Please select correct account,Vă rugăm să selectați contul corect,
Please select date,Vă rugăm să selectați data,
Please select item code,Vă rugăm să selectați codul de articol,
Please select month and year,Vă rugăm selectați luna și anul,
Please select the Company,Selectați compania,
Please select the Multiple Tier Program type for more than one collection rules.,Selectați tipul de program cu mai multe niveluri pentru mai multe reguli de colectare.,
Please select the assessment group other than 'All Assessment Groups',Selectați alt grup de evaluare decât &quot;Toate grupurile de evaluare&quot;,
Please select the document type first,Vă rugăm să selectați tipul de document primul,
Please select weekly off day,Vă rugăm să selectați zi liberă pe săptămână,
Please select {0},Vă rugăm să selectați {0},
Please select {0} first,Vă rugăm selectați 0} {întâi,
Please set 'Apply Additional Discount On',Vă rugăm să setați &quot;Aplicați discount suplimentar pe&quot;,
Please set 'Asset Depreciation Cost Center' in Company {0},Vă rugăm să setați &quot;Activ Center Amortizarea Cost&quot; în companie {0},
Please set 'Gain/Loss Account on Asset Disposal' in Company {0},Vă rugăm să setați &#39;Gain / Pierdere de cont privind Eliminarea activelor &quot;în companie {0},
Please set Account in Warehouse {0} or Default Inventory Account in Company {1},Vă rugăm să configurați contul în depozit {0} sau contul implicit de inventar din companie {1},
Please set B2C Limit in GST Settings.,Setați limita B2C în setările GST.,
Please set Company,Stabiliți compania,
Please set Company filter blank if Group By is 'Company',Filtru filtru de companie gol dacă grupul de grup este &quot;companie&quot;,
Please set Default Payroll Payable Account in Company {0},Vă rugăm să setați Cont Cheltuieli suplimentare salarizare implicit în companie {0},
Please set Depreciation related Accounts in Asset Category {0} or Company {1},Vă rugăm să setați Conturi aferente amortizării în categoria activelor {0} sau companie {1},
Please set GST Accounts in GST Settings,Vă rugăm să setați Conturi GST în Setări GST,
Please set Hotel Room Rate on {},Vă rugăm să stabiliți tariful camerei la {},
Please set Number of Depreciations Booked,Vă rugăm să setați Numărul de Deprecieri rezervat,
Please set Unrealized Exchange Gain/Loss Account in Company {0},Vă rugăm să setați Contul de Cheltuiala / Venit din diferente de curs valutar in companie {0},
Please set User ID field in an Employee record to set Employee Role,Vă rugăm să setați câmp ID de utilizator într-o înregistrare angajat să stabilească Angajat rol,
Please set a default Holiday List for Employee {0} or Company {1},Vă rugăm să setați o valoare implicită Lista de vacanță pentru angajat {0} sau companie {1},
Please set account in Warehouse {0},Vă rugăm să configurați un cont în Warehouse {0},
Please set an active menu for Restaurant {0},Vă rugăm să setați un meniu activ pentru Restaurant {0},
Please set associated account in Tax Withholding Category {0} against Company {1},Vă rugăm să setați contul asociat în categoria de reținere fiscală {0} împotriva companiei {1},
Please set at least one row in the Taxes and Charges Table,Vă rugăm să setați cel puțin un rând în tabelul Impozite și taxe,
Please set default Cash or Bank account in Mode of Payment {0},Vă rugăm să setați Cash implicit sau cont bancar în modul de plată {0},
Please set default account in Salary Component {0},Vă rugăm să setați contul implicit în Salariu Component {0},
Please set default customer in Restaurant Settings,Alegeți clientul implicit în Setări restaurant,
Please set default {0} in Company {1},Vă rugăm să setați implicit {0} în {1} companie,
Please set filter based on Item or Warehouse,Vă rugăm să setați filtru bazat pe postul sau depozit,
Please set leave policy for employee {0} in Employee / Grade record,Vă rugăm să stabiliți politica de concediu pentru angajatul {0} în evidența Angajat / Grad,
Please set recurring after saving,Vă rugăm să setați recurente după salvare,
Please set the Customer Address,Vă rugăm să setați Adresa Clientului,
Please set the Default Cost Center in {0} company.,Alegeți Centrul de cost implicit în compania {0}.,
Please set the Email ID for the Student to send the Payment Request,Vă rugăm să setați ID-ul de e-mail pentru ca studentul să trimită Solicitarea de plată,
Please set the Item Code first,Vă rugăm să setați mai întâi Codul elementului,
Please set the Payment Schedule,Vă rugăm să setați Programul de plată,
Please set {0} for address {1},Vă rugăm să setați {0} pentru adresa {1},
Please setup Students under Student Groups,Configurați elevii din grupurile de studenți,
Please specify Company,Vă rugăm să specificați companiei,
Please specify Company to proceed,Vă rugăm să specificați companiei pentru a continua,
Please specify a valid 'From Case No.',"Vă rugăm să specificați un valabil ""Din cauza nr""",
Please specify a valid Row ID for row {0} in table {1},Vă rugăm să specificați un ID rând valabil pentru rând {0} în tabelul {1},
Please specify at least one attribute in the Attributes table,Vă rugăm să specificați cel puțin un atribut în tabelul Atribute,
Please specify currency in Company,Vă rugăm să specificați în valută companie,
Please specify either Quantity or Valuation Rate or both,Vă rugăm să specificați fie Cantitate sau Evaluează evaluare sau ambele,
Please specify from/to range,Vă rugăm să precizați de la / la gama,
Please supply the specified items at the best possible rates,Vă rugăm să furnizeze elementele specificate la cele mai bune tarife posibile,
Please wait 3 days before resending the reminder.,Așteptați 3 zile înainte de a retrimite mementourile.,
Point of Sale,Point of Sale,
Point-of-Sale,Punct-de-Vânzare,
Point-of-Sale Profile,Profil Punct-de-Vânzare,
Portal,Portal,
Possible Supplier,posibil furnizor,
Postal Expenses,Cheltuieli poștale,
Posting Date,Dată postare,
Posting Date cannot be future date,Dată postare nu poate fi data viitoare,
Posting Time,Postarea de timp,
Posting date and posting time is mandatory,Data postării și postarea de timp este obligatorie,
Posting timestamp must be after {0},Timestamp postarea trebuie să fie după {0},
Potential opportunities for selling.,Potențiale oportunități de vânzare.,
Practitioner Schedule,Programul practicianului,
Pre Sales,Vânzări pre,
Preference,Preferinţă,
Prescribed Procedures,Proceduri prescrise,
Prescription,Reteta medicala,
Prescription Dosage,Dozaj de prescripție,
Prescription Duration,Durata prescrierii,
Prescriptions,Prescriptiile,
Prev,Anterior,
Preview,Previzualizați,
Previous Financial Year is not closed,Exercițiul financiar precedent nu este închis,
Price,Preț,
Price List,Lista Prețuri,
Price List Currency not selected,Lista de pret Valuta nu selectat,
Price List Rate,Lista de prețuri Rate,
Price List master.,Maestru Lista de prețuri.,
Price List must be applicable for Buying or Selling,Lista de prețuri trebuie să fie aplicabilă pentru cumpărarea sau vânzarea de,
Price List {0} is disabled or does not exist,Listă de prețuri {0} este dezactivat sau nu există,
Price or product discount slabs are required,Este necesară plăci de reducere a prețului sau a produsului,
Pricing,Stabilirea pretului,
Pricing Rule,Regulă de stabilire a prețurilor,
"Pricing Rule is first selected based on 'Apply On' field, which can be Item, Item Group or Brand.","Regula de stabilire a prețurilor este selectat în primul rând bazat pe ""Aplicați pe"" teren, care poate fi produs, Grupa de articole sau de brand.",
"Pricing Rule is made to overwrite Price List / define discount percentage, based on some criteria.","Regula de stabilire a prețurilor se face pentru a suprascrie Pret / defini procent de reducere, pe baza unor criterii.",
Pricing Rule {0} is updated,Regula prețurilor {0} este actualizată,
Pricing Rules are further filtered based on quantity.,Regulile de stabilire a prețurilor sunt filtrate în continuare în funcție de cantitate.,
Primary Address Details,Detalii despre adresa primară,
Primary Contact Details,Detalii de contact primare,
Print Format,Print Format,
Print IRS 1099 Forms,Tipărire formulare IRS 1099,
Print Report Card,Print Print Card,
Print Settings,Setări de imprimare,
Print and Stationery,Imprimare și articole de papetărie,
Print settings updated in respective print format,Setările de imprimare actualizate în format de imprimare respectiv,
Print taxes with zero amount,Imprimă taxele cu suma zero,
Printing and Branding,Imprimarea și Branding,
Private Equity,Private Equity,
Procedure,Procedură,
Process Day Book Data,Procesați datele despre cartea de zi,
Process Master Data,Procesați datele de master,
Processing Chart of Accounts and Parties,Procesarea Graficului de conturi și părți,
Processing Items and UOMs,Prelucrare elemente și UOM-uri,
Processing Party Addresses,Prelucrarea adreselor partidului,
Processing Vouchers,Procesarea voucherelor,
Procurement,achiziții publice,
Produced Qty,Cantitate produsă,
Product,Produs,
Product Bundle,Bundle produs,
Product Search,Cauta produse,
Production,Producţie,
Production Item,Producția Postul,
Products,Instrumente,
Profit and Loss,Profit și pierdere,
Profit for the year,Profitul anului,
Program,Program,
Program in the Fee Structure and Student Group {0} are different.,Programul din structura taxelor și grupul de studenți {0} este diferit.,
Program {0} does not exist.,Programul {0} nu există.,
Program: ,Program:,
Progress % for a task cannot be more than 100.,Progres% pentru o sarcină care nu poate fi mai mare de 100.,
Project Collaboration Invitation,Colaborare proiect Invitație,
Project Id,ID-ul proiectului,
Project Manager,Manager de proiect,
Project Name,Denumirea proiectului,
Project Start Date,Data de începere a proiectului,
Project Status,Status Proiect,
Project Summary for {0},Rezumatul proiectului pentru {0},
Project Update.,Actualizarea proiectului.,
Project Value,Valoare proiect,
Project activity / task.,Activitatea de proiect / sarcină.,
Project master.,Maestru proiect.,
Project-wise data is not available for Quotation,Date proiect-înțelept nu este disponibilă pentru ofertă,
Projected,Proiectat,
Projected Qty,Numărul estimat,
Projected Quantity Formula,Formula de cantitate proiectată,
Projects,proiecte,
Proposal Writing,Propunere de scriere,
Proposal/Price Quote,Propunere / Citat pret,
Prospecting,Prospectarea,
Provisional Profit / Loss (Credit),Profit provizorie / Pierdere (Credit),
Publications,Publicații,
Publish Items on Website,Publica Articole pe site-ul,
Published,Data publicării,
Publishing,editare,
Purchase,Cumpărarea,
Purchase Amount,Suma cumpărată,
Purchase Date,Data cumpărării,
Purchase Invoice,Factura de cumpărare,
Purchase Invoice {0} is already submitted,Factura de cumpărare {0} este deja depusă,
Purchase Manager,Cumpărare Director,
Purchase Master Manager,Cumpărare Maestru de Management,
Purchase Order,Comandă de aprovizionare,
Purchase Order Amount,Suma comenzii de cumpărare,
Purchase Order Amount(Company Currency),Suma comenzii de cumpărare (moneda companiei),
Purchase Order Date,Data comenzii de cumpărare,
Purchase Order Items not received on time,Elemente de comandă de cumpărare care nu au fost primite la timp,
Purchase Order number required for Item {0},Număr de comandă de aprovizionare necesare pentru postul {0},
Purchase Order to Payment,Comandă de aprovizionare de plata,
Purchase Order {0} is not submitted,Comandă {0} nu este prezentat,
Purchase Orders are not allowed for {0} due to a scorecard standing of {1}.,Comenzile de cumpărare nu sunt permise pentru {0} datorită unui punctaj din {1}.,
Purchase Orders given to Suppliers.,A achiziționa ordine de date Furnizori.,
Purchase Price List,Cumparare Lista de preturi,
Purchase Receipt,Primirea de cumpărare,
Purchase Receipt {0} is not submitted,Primirea de cumpărare {0} nu este prezentat,
Purchase Tax Template,Achiziționa Format fiscală,
Purchase User,Cumpărare de utilizare,
Purchase orders help you plan and follow up on your purchases,Comenzile de aprovizionare vă ajuta să planificați și să urmați pe achizițiile dvs.,
Purchasing,cumpărare,
Purpose must be one of {0},Scopul trebuie să fie una dintre {0},
Qty,Cantitate,
Qty To Manufacture,Cantitate pentru fabricare,
Qty Total,Cantitate totală,
Qty for {0},Cantitate pentru {0},
Qualification,Calificare,
Quality,Calitate,
Quality Action,Acțiune de calitate,
Quality Goal.,Obiectivul de calitate.,
Quality Inspection,Inspecție de calitate,
Quality Inspection: {0} is not submitted for the item: {1} in row {2},Inspecție de calitate: {0} nu este trimis pentru articol: {1} în rândul {2},
Quality Management,Managementul calității,
Quality Meeting,Întâlnire de calitate,
Quality Procedure,Procedura de calitate,
Quality Procedure.,Procedura de calitate.,
Quality Review,Evaluarea calității,
Quantity,Cantitate,
Quantity for Item {0} must be less than {1},Cantitatea pentru postul {0} trebuie să fie mai mică de {1},
Quantity in row {0} ({1}) must be same as manufactured quantity {2},"Cantitatea în rândul {0} ({1}), trebuie să fie aceeași ca și cantitatea produsă {2}",
Quantity must be less than or equal to {0},Cantitatea trebuie sa fie mai mic sau egal cu {0},
Quantity must not be more than {0},Cantitatea nu trebuie să fie mai mare de {0},
Quantity required for Item {0} in row {1},Cantitatea necesară pentru postul {0} în rândul {1},
Quantity should be greater than 0,Cantitatea trebuie sa fie mai mare decât 0,
Quantity to Make,Cantitate de făcut,
Quantity to Manufacture must be greater than 0.,Cantitatea să Fabricare trebuie sa fie mai mare decât 0.,
Quantity to Produce,Cantitate de produs,
Quantity to Produce can not be less than Zero,Cantitatea de produs nu poate fi mai mică decât Zero,
Query Options,Opțiuni de interogare,
Queued for replacing the BOM. It may take a few minutes.,În așteptare pentru înlocuirea BOM. Ar putea dura câteva minute.,
Queued for updating latest price in all Bill of Materials. It may take a few minutes.,A intrat în așteptare pentru actualizarea ultimului preț în toate materialele. Ar putea dura câteva minute.,
Quick Journal Entry,Quick Jurnal de intrare,
Quot Count,Contele de numere,
Quot/Lead %,Cota / Plumb%,
Quotation,Ofertă,
Quotation {0} is cancelled,Ofertă {0} este anulat,
Quotation {0} not of type {1},Ofertă {0} nu de tip {1},
Quotations,Cotațiile,
"Quotations are proposals, bids you have sent to your customers","Cotațiile sunt propuneri, sumele licitate le-ați trimis clienților dvs.",
Quotations received from Suppliers.,Cotatiilor primite de la furnizori.,
Quotations: ,Cotațiile:,
Quotes to Leads or Customers.,Citate la Oportunitati sau clienți.,
RFQs are not allowed for {0} due to a scorecard standing of {1},CV-urile nu sunt permise pentru {0} datorită unui punctaj din {1},
Range,Interval,
Rate,Rată,
Rate:,Rată:,
Rating,evaluare,
Raw Material,Material brut,
Raw Materials,Materie prima,
Raw Materials cannot be blank.,Materii Prime nu poate fi gol.,
Re-open,Re-deschide,
Read blog,Citiți blogul,
Read the ERPNext Manual,Citiți manualul ERPNext,
Reading Uploaded File,Citind fișierul încărcat,
Real Estate,Imobiliare,
Reason For Putting On Hold,Motivul pentru a pune în așteptare,
Reason for Hold,Motiv pentru reținere,
Reason for hold: ,Motivul de reținere:,
Receipt,Chitanţă,
Receipt document must be submitted,Document primire trebuie să fie depuse,
Receivable,De încasat,
Receivable Account,Cont Încasări,
Received,Primit,
Received On,Primit la,
Received Quantity,Cantitate primită,
Received Stock Entries,Înscrierile primite,
Receiver List is empty. Please create Receiver List,Receptor Lista goala. Vă rugăm să creați Receiver Lista,
Recipients,Destinatarii,
Reconcile,Reconcilierea,
"Record of all communications of type email, phone, chat, visit, etc.","Înregistrare a tuturor comunicărilor de tip e-mail, telefon, chat, vizita, etc.",
Records,Înregistrări,
Redirect URL,Redirecționare URL-ul,
Ref,Re,
Ref Date,Ref Data,
Reference,Referință,
Reference #{0} dated {1},Reference # {0} din {1},
Reference Date,Data de referință,
Reference Doctype must be one of {0},Referința Doctype trebuie să fie una dintre {0},
Reference Document,Documentul de referință,
Reference Document Type,Referință Document Type,
Reference No & Reference Date is required for {0},Nu referință și de referință Data este necesar pentru {0},
Reference No and Reference Date is mandatory for Bank transaction,De referință nr și de referință Data este obligatorie pentru tranzacție bancară,
Reference No is mandatory if you entered Reference Date,De referință nu este obligatorie în cazul în care ați introdus Reference Data,
Reference No.,Numărul de referință,
Reference Number,Numar de referinta,
Reference Type,Tipul Referință,
"Reference: {0}, Item Code: {1} and Customer: {2}","Referință: {0}, Cod articol: {1} și Client: {2}",
References,Referințe,
Refresh Token,Actualizează Indicativ,
Register,Înregistrare,
Rejected,Respinse,
Related,Legate de,
Relation with Guardian1,Relația cu Guardian1,
Relation with Guardian2,Relația cu Guardian2,
Release Date,Data eliberării,
Reload Linked Analysis,Reîncărcați Analiza Legată,
Remaining,Rămas,
Remaining Balance,Balanța rămasă,
Remarks,Remarci,
Reminder to update GSTIN Sent,Memento pentru actualizarea mesajului GSTIN Trimis,
Remove item if charges is not applicable to that item,Eliminați element cazul în care costurile nu se aplică în acest element,
Removed items with no change in quantity or value.,Articole eliminate fară nici o schimbare de cantitate sau  valoare.,
Reopen,Redeschide,
Reorder Level,Nivel pentru re-comanda,
Reorder Qty,Cantitatea de comandat,
Repeat Customer Revenue,Repetați Venituri Clienți,
Repeat Customers,Clienții repetate,
Replace BOM and update latest price in all BOMs,Înlocuiește BOM și actualizează prețul recent în toate BOM-urile,
Replied,A răspuns:,
Report,Raport,
Report Type,Tip Raport,
Report Type is mandatory,Tip Raport obligatoriu,
Reports,Rapoarte,
Reqd By Date,Cerere livrare la data de,
Reqd Qty,Reqd Cantitate,
Request for Quotation,Cerere de ofertă,
Request for Quotations,Cerere de Oferte,
Request for Raw Materials,Cerere pentru materii prime,
Request for purchase.,Cerere de achizitie.,
Request for quotation.,Cerere de ofertă.,
Requested Qty,Cant. Solicitată,
"Requested Qty: Quantity requested for purchase, but not ordered.","A solicitat Cantitate: Cantitatea solicitate pentru achiziții, dar nu a ordonat.",
Requesting Site,Solicitarea site-ului,
Requesting payment against {0} {1} for amount {2},Se solicita plata contra {0} {1} pentru suma {2},
Requestor,care a făcut cererea,
Required On,Cerut pe,
Required Qty,Cantitate ceruta,
Required Quantity,Cantitatea necesară,
Reschedule,Reprogramează,
Research,Cercetare,
Research & Development,Cercetare & Dezvoltare,
Researcher,Cercetător,
Resend Payment Email,Retrimiteți e-mail-ul de plată,
Reserve Warehouse,Rezervați Depozitul,
Reserved Qty,Cant. rezervata,
Reserved Qty for Production,Cant. rezervata pentru producție,
Reserved Qty for Production: Raw materials quantity to make manufacturing items.,Cantitate rezervată pentru producție: cantitate de materii prime pentru fabricarea articolelor de fabricație.,
"Reserved Qty: Quantity ordered for sale, but not delivered.","Rezervate Cantitate: Cantitatea comandat de vânzare, dar nu livrat.",
Reserved Warehouse is mandatory for Item {0} in Raw Materials supplied,Depozitul rezervat este obligatoriu pentru articolul {0} din materiile prime furnizate,
Reserved for manufacturing,Rezervat pentru fabricare,
Reserved for sale,Rezervat pentru vânzare,
Reserved for sub contracting,Rezervat pentru subcontractare,
Resistant,Rezistent,
Resolve error and upload again.,Rezolvați eroarea și încărcați din nou.,
Rest Of The World,Restul lumii,
Restart Subscription,Reporniți Abonament,
Restaurant,Restaurant,
Result Date,Data rezultatului,
Result already Submitted,Rezultatul deja trimis,
Resume,Reluare,
Retail,Cu amănuntul,
Retail & Wholesale,Retail & Wholesale,
Retail Operations,Operațiunile de vânzare cu amănuntul,
Retained Earnings,Venituri reținute,
Retention Stock Entry,Reținerea stocului,
Retention Stock Entry already created or Sample Quantity not provided,Reținerea stocului de stocare deja creată sau Cantitatea de eșantion care nu a fost furnizată,
Return,Întoarcere,
Return / Credit Note,Revenire / credit Notă,
Return / Debit Note,Returnare / debit Notă,
Returns,Se intoarce,
Reverse Journal Entry,Intrare în jurnal invers,
Review Invitation Sent,Examinarea invitației trimisă,
Review and Action,Revizuire și acțiune,
Rooms Booked,Camere rezervate,
Root Company,Companie de rădăcină,
Root Type,Rădăcină Tip,
Root Type is mandatory,Rădăcină de tip este obligatorie,
Root cannot be edited.,Rădăcină nu poate fi editat.,
Root cannot have a parent cost center,Rădăcină nu poate avea un centru de cost părinte,
Round Off,Rotunji,
Rounded Total,Rotunjite total,
Route,Traseu,
Row # {0}: ,Rând # {0}:,
Row # {0}: Batch No must be same as {1} {2},Row # {0}: Lot nr trebuie să fie aceeași ca și {1} {2},
Row # {0}: Cannot return more than {1} for Item {2},Row # {0}: nu se pot întoarce mai mult {1} pentru postul {2},
Row # {0}: Rate cannot be greater than the rate used in {1} {2},Rândul # {0}: Rata nu poate fi mai mare decât rata folosită în {1} {2},
Row # {0}: Serial No is mandatory,Row # {0}: Nu serial este obligatorie,
Row # {0}: Serial No {1} does not match with {2} {3},Row # {0}: Serial No {1} nu se potrivește cu {2} {3},
Row #{0} (Payment Table): Amount must be negative,Rândul # {0} (tabelul de plată): Suma trebuie să fie negativă,
Row #{0} (Payment Table): Amount must be positive,Rândul # {0} (tabelul de plată): Suma trebuie să fie pozitivă,
Row #{0}: Account {1} does not belong to company {2},Rândul # {0}: Contul {1} nu aparține companiei {2},
Row #{0}: Allocated Amount cannot be greater than outstanding amount.,Rândul # {0}: Suma alocată nu poate fi mai mare decât suma rămasă.,
"Row #{0}: Asset {1} cannot be submitted, it is already {2}","Rând # {0}: {1} activ nu poate fi prezentat, este deja {2}",
Row #{0}: Cannot set Rate if amount is greater than billed amount for Item {1}.,Rândul # {0}: nu se poate seta Rata dacă suma este mai mare decât suma facturată pentru articolul {1}.,
Row #{0}: Clearance date {1} cannot be before Cheque Date {2},Rând # {0}: Data de lichidare {1} nu poate fi înainte de Cheque Data {2},
Row #{0}: Duplicate entry in References {1} {2},Rândul # {0}: intrarea duplicat în referințe {1} {2},
Row #{0}: Expected Delivery Date cannot be before Purchase Order Date,Row # {0}: Data livrării așteptată nu poate fi înainte de data comenzii de achiziție,
Row #{0}: Item added,Rândul # {0}: articol adăugat,
Row #{0}: Journal Entry {1} does not have account {2} or already matched against another voucher,Rând # {0}: Jurnal de intrare {1} nu are cont {2} sau deja compensată împotriva unui alt voucher,
Row #{0}: Not allowed to change Supplier as Purchase Order already exists,Row # {0}: Nu este permis să schimbe furnizorul ca Comandă există deja,
Row #{0}: Please set reorder quantity,Row # {0}: Va rugam sa seta cantitatea reordona,
Row #{0}: Please specify Serial No for Item {1},Rând # {0}: Vă rugăm să specificați Nu serial pentru postul {1},
Row #{0}: Qty increased by 1,Rândul # {0}: cantitatea a crescut cu 1,
Row #{0}: Rate must be same as {1}: {2} ({3} / {4}) ,Row # {0}: Rata trebuie să fie aceeași ca și {1}: {2} ({3} / {4}),
Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry,Rândul # {0}: Tipul de document de referință trebuie să fie una dintre revendicările de cheltuieli sau intrări în jurnal,
"Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry","Rând # {0}: Tip document de referință trebuie să fie unul dintre comandă cumparare, factură sau Jurnal de intrare",
Row #{0}: Rejected Qty can not be entered in Purchase Return,Row # {0}: Respins Cantitate nu pot fi introduse în Purchase Întoarcere,
Row #{0}: Rejected Warehouse is mandatory against rejected Item {1},Row # {0}: Respins Warehouse este obligatorie împotriva postul respins {1},
Row #{0}: Reqd by Date cannot be before Transaction Date,Rândul # {0}: Reqd by Date nu poate fi înainte de data tranzacției,
Row #{0}: Set Supplier for item {1},Row # {0}: Set Furnizor de produs {1},
Row #{0}: Status must be {1} for Invoice Discounting {2},Rândul # {0}: starea trebuie să fie {1} pentru reducerea facturilor {2},
"Row #{0}: The batch {1} has only {2} qty. Please select another batch which has {3} qty available or split the row into multiple rows, to deliver/issue from multiple batches","Rândul # {0}: lotul {1} are doar {2} qty. Selectați un alt lot care are {3} qty disponibil sau împărți rândul în mai multe rânduri, pentru a livra / emite din mai multe loturi",
Row #{0}: Timings conflicts with row {1},Rând # {0}: conflicte timpilor cu rândul {1},
Row #{0}: {1} can not be negative for item {2},Row # {0}: {1} nu poate fi negativ pentru elementul {2},
Row No {0}: Amount cannot be greater than Pending Amount against Expense Claim {1}. Pending Amount is {2},Rândul nr {0}: Suma nu poate fi mai mare decât așteptarea Suma împotriva revendicării cheltuieli {1}. În așteptarea Suma este {2},
Row {0} : Operation is required against the raw material item {1},Rândul {0}: operația este necesară împotriva elementului de materie primă {1},
Row {0}# Item {1} cannot be transferred more than {2} against Purchase Order {3},Rândul {0} # Articol {1} nu poate fi transferat mai mult de {2} față de comanda de aprovizionare {3},
Row {0}: Activity Type is mandatory.,Rândul {0}: Activitatea de tip este obligatorie.,
Row {0}: Advance against Customer must be credit,Row {0}: avans Clientul trebuie să fie de credit,
Row {0}: Advance against Supplier must be debit,Row {0}: Advance împotriva Furnizor trebuie să fie de debit,
Row {0}: Allocated amount {1} must be less than or equals to Payment Entry amount {2},Rândul {0}: Suma alocată {1} trebuie să fie mai mic sau egal cu suma de plată de intrare {2},
Row {0}: Allocated amount {1} must be less than or equals to invoice outstanding amount {2},Rândul {0}: Suma alocată {1} trebuie să fie mai mic sau egal cu factura suma restanta {2},
Row {0}: An Reorder entry already exists for this warehouse {1},Rând {0}: O intrare de Comandă există deja pentru acest depozit {1},
Row {0}: Bill of Materials not found for the Item {1},Rândul {0}: Lista de materiale nu a fost găsit pentru elementul {1},
Row {0}: Conversion Factor is mandatory,Rând {0}: Factorul de conversie este obligatorie,
Row {0}: Cost center is required for an item {1},Rând {0}: este necesar un centru de cost pentru un element {1},
Row {0}: Credit entry can not be linked with a {1},Rând {0}: intrare de credit nu poate fi legat de o {1},
Row {0}: Currency of the BOM #{1} should be equal to the selected currency {2},Rând {0}: Moneda de BOM # {1} ar trebui să fie egal cu moneda selectată {2},
Row {0}: Debit entry can not be linked with a {1},Rând {0}: debit de intrare nu poate fi legat de o {1},
Row {0}: Depreciation Start Date is required,Rând {0}: este necesară începerea amortizării,
Row {0}: Enter location for the asset item {1},Rând {0}: introduceți locația pentru elementul de activ {1},
Row {0}: Exchange Rate is mandatory,Row {0}: Cursul de schimb este obligatoriu,
Row {0}: Expected Value After Useful Life must be less than Gross Purchase Amount,Rând {0}: Valoarea așteptată după viața utilă trebuie să fie mai mică decât suma brută de achiziție,
Row {0}: From Time and To Time is mandatory.,Rândul {0}: De la timp și de Ora este obligatorie.,
Row {0}: From Time and To Time of {1} is overlapping with {2},Rândul {0}: De la timp și Ora {1} se suprapune cu {2},
Row {0}: From time must be less than to time,Rândul {0}: Din timp trebuie să fie mai mic decât în timp,
Row {0}: Hours value must be greater than zero.,Rândul {0}: Valoarea ore trebuie să fie mai mare decât zero.,
Row {0}: Invalid reference {1},Rândul {0}: referință invalid {1},
Row {0}: Party / Account does not match with {1} / {2} in {3} {4},Rând {0}: Parte / conturi nu se potrivește cu {1} / {2} din {3} {4},
Row {0}: Party Type and Party is required for Receivable / Payable account {1},Row {0}: Partidul Tipul și Partidul este necesar pentru creanțe / cont plateste {1},
Row {0}: Payment against Sales/Purchase Order should always be marked as advance,Rând {0}: Plata împotriva Vânzări / Ordinului de Procurare ar trebui să fie întotdeauna marcate ca avans,
Row {0}: Please check 'Is Advance' against Account {1} if this is an advance entry.,"Rând {0}: Vă rugăm să verificați ""Este Advance"" împotriva Cont {1} dacă aceasta este o intrare în avans.",
Row {0}: Please set at Tax Exemption Reason in Sales Taxes and Charges,Rândul {0}: Vă rugăm să setați motivul scutirii de taxe în impozitele și taxele de vânzare,
Row {0}: Please set the Mode of Payment in Payment Schedule,Rândul {0}: Vă rugăm să setați modul de plată în programul de plată,
Row {0}: Please set the correct code on Mode of Payment {1},Rândul {0}: Vă rugăm să setați codul corect pe Modul de plată {1},
Row {0}: Quality Inspection rejected for item {1},Rândul {0}: Inspecția de calitate a fost respinsă pentru articolul {1},
Row {0}: UOM Conversion Factor is mandatory,Row {0}: Factorul de conversie UOM este obligatorie,
Row {0}: select the workstation against the operation {1},Rând {0}: selectați stația de lucru pentru operația {1},
Row {0}: {1} Serial numbers required for Item {2}. You have provided {3}.,Rând {0}: {1} Numerele de serie necesare pentru articolul {2}. Ați oferit {3}.,
Row {0}: {1} must be greater than 0,Rând {0}: {1} trebuie să fie mai mare de 0,
Row {0}: {1} {2} does not match with {3},Rând {0}: {1} {2} nu se potrivește cu {3},
Row {0}:Start Date must be before End Date,Rând {0}: Data începerii trebuie să fie înainte de Data de încheiere,
Rows with duplicate due dates in other rows were found: {0},Au fost găsite rânduri cu date scadente în alte rânduri: {0},
Rules for adding shipping costs.,Reguli pentru a adăuga costurile de transport maritim.,
Rules for applying pricing and discount.,Normele de aplicare de stabilire a prețurilor și de scont.,
S.O. No.,SO No.,
SGST Amount,Suma SGST,
SO Qty,SO Cantitate,
Safety Stock,Stoc de siguranta,
Salary,Salariu,
Salary Slip submitted for period from {0} to {1},Plata salariului trimisă pentru perioada de la {0} la {1},
Salary Structure must be submitted before submission of Tax Ememption Declaration,Structura salariului trebuie depusă înainte de depunerea Declarației de eliberare de impozite,
Sales,Vânzări,
Sales Account,Cont de vanzari,
Sales Expenses,Cheltuieli de Vânzare,
Sales Funnel,Pâlnie Vânzări,
Sales Invoice,Factură de vânzări,
Sales Invoice {0} has already been submitted,Factură de vânzări {0} a fost deja prezentat,
Sales Invoice {0} must be cancelled before cancelling this Sales Order,Factură de vânzări {0} trebuie anulată înainte de a anula această comandă de vânzări,
Sales Manager,Director De Vânzări,
Sales Master Manager,Vânzări Maestru de Management,
Sales Order,Comandă de vânzări,
Sales Order Item,Comandă de vânzări Postul,
Sales Order required for Item {0},Ordinul de vânzări necesar pentru postul {0},
Sales Order to Payment,Comanda de vânzări la plată,
Sales Order {0} is not submitted,Comandă de vânzări {0} nu este prezentat,
Sales Order {0} is not valid,Comandă de vânzări {0} nu este valid,
Sales Order {0} is {1},Comandă de vânzări {0} este {1},
Sales Orders,Comenzi de Vânzări,
Sales Partner,Partener de vânzări,
Sales Pipeline,Conductă de Vânzări,
Sales Price List,Lista de prețuri de vânzare,
Sales Return,Vânzări de returnare,
Sales Summary,Rezumat Vânzări,
Sales Tax Template,Format impozitul pe vânzări,
Sales Team,Echipa de vânzări,
Sales User,Vânzări de utilizare,
Sales and Returns,Vânzări și returnări,
Sales campaigns.,Campanii de vânzări.,
Sales orders are not available for production,Comenzile de vânzări nu sunt disponibile pentru producție,
Salutation,Salut,
Same Company is entered more than once,Aceeași societate este înscris de mai multe ori,
Same item cannot be entered multiple times.,Același articol nu poate fi introdus de mai multe ori.,
Same supplier has been entered multiple times,Același furnizor a fost introdus de mai multe ori,
Sample Collection,Colectie de mostre,
Sample quantity {0} cannot be more than received quantity {1},Cantitatea de probe {0} nu poate fi mai mare decât cantitatea primită {1},
Sanctioned,consacrat,
Sand,Nisip,
Saturday,Sâmbătă,
Saving {0},Salvarea {0},
Scan Barcode,Scanează codul de bare,
Schedule,Program,
Schedule Admission,Programați admiterea,
Schedule Course,Curs orar,
Schedule Date,Program Data,
Schedule Discharge,Programați descărcarea,
Scheduled,Programat,
Scheduled Upto,Programată până,
"Schedules for {0} overlaps, do you want to proceed after skiping overlaped slots ?","Programări pentru suprapunerile {0}, doriți să continuați după ce ați sări peste sloturile suprapuse?",
Score cannot be greater than Maximum Score,Scorul nu poate fi mai mare decât Scorul maxim,
Scorecards,Scorecardurilor,
Scrapped,dezmembrate,
Search,Căutare,
Search Results,rezultatele cautarii,
Search Sub Assemblies,Căutare subansambluri,
"Search by item code, serial number, batch no or barcode","Căutați după codul de articol, numărul de serie, numărul lotului sau codul de bare",
"Seasonality for setting budgets, targets etc.","Sezonalitatea pentru stabilirea bugetelor, obiective etc.",
Secret Key,Cheie secreta,
Secretary,Secretar,
Section Code,Codul secțiunii,
Secured Loans,Împrumuturi garantate,
Securities & Commodity Exchanges,A Valorilor Mobiliare și Burselor de Mărfuri,
Securities and Deposits,Titluri de valoare și depozite,
See All Articles,Vezi toate articolele,
See all open tickets,Vedeți toate biletele deschise,
See past orders,Vezi comenzile anterioare,
See past quotations,Vezi citate anterioare,
Select,Selectează,
Select Alternate Item,Selectați elementul alternativ,
Select Attribute Values,Selectați valorile atributelor,
Select BOM,Selectați BOM,
Select BOM and Qty for Production,Selectați BOM și Cant pentru producție,
"Select BOM, Qty and For Warehouse","Selectați BOM, Qty și For Warehouse",
Select Batch,Selectați lotul,
Select Batch Numbers,Selectați numerele lotului,
Select Brand...,Selectați marca ...,
Select Company,Selectați Companie,
Select Company...,Selectați compania ...,
Select Customer,Selectați Client,
Select Days,Selectați Zile,
Select Default Supplier,Selectați Furnizor implicit,
Select DocType,Selectați DocType,
Select Fiscal Year...,Selectați Anul fiscal ...,
Select Item (optional),Selectați elementul (opțional),
Select Items based on Delivery Date,Selectați elementele bazate pe data livrării,
Select Items to Manufacture,Selectați elementele de Fabricare,
Select Loyalty Program,Selectați programul de loialitate,
Select Patient,Selectați pacientul,
Select Possible Supplier,Selectați Posibil furnizor,
Select Quantity,Selectați Cantitate,
Select Serial Numbers,Selectați numerele de serie,
Select Target Warehouse,Selectați Target Warehouse,
Select Warehouse...,Selectați Depozit ...,
Select an account to print in account currency,Selectați un cont pentru a imprima în moneda contului,
Select at least one value from each of the attributes.,Selectați cel puțin o valoare din fiecare dintre atribute.,
Select change amount account,cont Selectați suma schimbare,
Select company first,Selectați mai întâi compania,
Select students manually for the Activity based Group,Selectați manual elevii pentru grupul bazat pe activități,
Select the customer or supplier.,Selectați clientul sau furnizorul.,
Select the nature of your business.,Selectați natura afacerii dumneavoastră.,
Select the program first,Selectați mai întâi programul,
Select to add Serial Number.,Selectați pentru a adăuga număr de serie.,
Select your Domains,Selectați-vă domeniile,
Selected Price List should have buying and selling fields checked.,Lista de prețuri selectată ar trebui să verifice câmpurile de cumpărare și vânzare.,
Sell,Vinde,
Selling,Vânzare,
Selling Amount,Vanzarea Suma,
Selling Price List,Listă Prețuri de Vânzare,
Selling Rate,Rata de vanzare,
"Selling must be checked, if Applicable For is selected as {0}","De vânzare trebuie să fie verificate, dacă este cazul Pentru este selectat ca {0}",
Send Grant Review Email,Trimiteți e-mailul de examinare a granturilor,
Send Now,Trimite Acum,
Send SMS,Trimite SMS,
Send mass SMS to your contacts,Trimite SMS-uri în masă a persoanelor de contact,
Sensitivity,Sensibilitate,
Sent,Trimis,
Serial No and Batch,Serial și Lot nr,
Serial No is mandatory for Item {0},Nu serial este obligatorie pentru postul {0},
Serial No {0} does not belong to Batch {1},Numărul de serie {0} nu aparține lotului {1},
Serial No {0} does not belong to Delivery Note {1},Serial No {0} nu aparține de livrare Nota {1},
Serial No {0} does not belong to Item {1},Serial Nu {0} nu aparține postul {1},
Serial No {0} does not belong to Warehouse {1},Serial Nu {0} nu apartine Warehouse {1},
Serial No {0} does not belong to any Warehouse,Serial nr {0} nu apartine nici unei Warehouse,
Serial No {0} does not exist,Serial Nu {0} nu există,
Serial No {0} has already been received,Serial Nu {0} a fost deja primit,
Serial No {0} is under maintenance contract upto {1},Serial Nu {0} este sub contract de întreținere pana {1},
Serial No {0} is under warranty upto {1},Serial Nu {0} este în garanție pana {1},
Serial No {0} not found,Serial nr {0} nu a fost găsit,
Serial No {0} not in stock,Serial Nu {0} nu este în stoc,
Serial No {0} quantity {1} cannot be a fraction,Serial Nu {0} {1} cantitate nu poate fi o fracțiune,
Serial Nos Required for Serialized Item {0},Serial nr necesare pentru postul serializat {0},
Serial Number: {0} is already referenced in Sales Invoice: {1},Numărul de serie: {0} este deja menționat în factura de vânzare: {1},
Serial Numbers,Numere de serie,
Serial Numbers in row {0} does not match with Delivery Note,Numerele de serie din rândul {0} nu se potrivesc cu Nota de livrare,
Serial no {0} has been already returned,Numărul serial {0} nu a fost deja returnat,
Serial number {0} entered more than once,Număr de serie {0} a intrat de mai multe ori,
Serialized Inventory,Inventarul serializat,
Series Updated,Seria Actualizat,
Series Updated Successfully,Seria Actualizat cu succes,
Series is mandatory,Seria este obligatorie,
Service,Servicii,
Service Level Agreement,Acord privind nivelul serviciilor,
Service Level Agreement.,Acord privind nivelul serviciilor.,
Service Level.,Nivel de servicii.,
Service Stop Date cannot be after Service End Date,Dată de încetare a serviciului nu poate fi după Data de încheiere a serviciului,
Service Stop Date cannot be before Service Start Date,Data de începere a serviciului nu poate fi înaintea datei de începere a serviciului,
Services,Servicii,
"Set Default Values like Company, Currency, Current Fiscal Year, etc.","Seta valorile implicite, cum ar fi Compania, valutar, Current Anul fiscal, etc",
Set Details,Setați detalii,
Set New Release Date,Setați noua dată de lansare,
Set Project and all Tasks to status {0}?,Setați proiectul și toate sarcinile la starea {0}?,
Set Status,Setați starea,
Set Tax Rule for shopping cart,Set Regula fiscală pentru coșul de cumpărături,
Set as Closed,Setați ca închis,
Set as Completed,Setați ca Finalizat,
Set as Lost,Setați ca Lost,
Set as Open,Setați ca Deschis,
Set default inventory account for perpetual inventory,Setați contul inventarului implicit pentru inventarul perpetuu,
Set this if the customer is a Public Administration company.,Setați acest lucru dacă clientul este o companie de administrare publică.,
Set {0} in asset category {1} or company {2},Setați {0} în categoria de active {1} sau în companie {2},
"Setting Events to {0}, since the Employee attached to the below Sales Persons does not have a User ID{1}","Setarea Evenimente la {0}, deoarece angajatul atașat la mai jos de vânzare Persoanele care nu are un ID de utilizator {1}",
Setting defaults,Setarea valorilor implicite,
Setting up Email,Configurarea e-mail,
Setting up Email Account,Configurarea contului de e-mail,
Setting up Employees,Configurarea angajati,
Setting up Taxes,Configurarea Impozite,
Setting up company,Înființarea companiei,
Settings,Setări,
"Settings for online shopping cart such as shipping rules, price list etc.","Setări pentru cosul de cumparaturi on-line, cum ar fi normele de transport maritim, lista de preturi, etc.",
Settings for website homepage,Setările pentru pagina de start site-ul web,
Settings for website product listing,Setări pentru listarea produselor site-ului web,
Settled,Stabilit,
Setup Gateway accounts.,Setup conturi Gateway.,
Setup SMS gateway settings,Setări de configurare SMS gateway-ul,
Setup cheque dimensions for printing,Dimensiunile de instalare pentru imprimare de verificare,
Setup default values for POS Invoices,Configurați valorile implicite pentru facturile POS,
Setup mode of POS (Online / Offline),Modul de configurare a POS (online / offline),
Setup your Institute in ERPNext,Configurați-vă Institutul în ERPNext,
Share Balance,Soldul acțiunilor,
Share Ledger,Împărțiți Registru Contabil,
Share Management,Gestiune partajare,
Share Transfer,Trimiteți transferul,
Share Type,Tipul de distribuire,
Shareholder,Acționar,
Ship To State,Transport către stat,
Shipments,Transporturile,
Shipping Address,Adresa de livrare,
"Shipping Address does not have country, which is required for this Shipping Rule","Adresa de expediere nu are țara, care este necesară pentru această regulă de transport",
Shipping rule only applicable for Buying,Regulă de expediere aplicabilă numai pentru cumpărături,
Shipping rule only applicable for Selling,Regulă de expediere aplicabilă numai pentru vânzare,
Shopify Supplier,Furnizor de magazin,
Shopping Cart,Cosul de cumparaturi,
Shopping Cart Settings,Setări Cosul de cumparaturi,
Short Name,Numele scurt,
Shortage Qty,Lipsă Cantitate,
Show Completed,Spectacol finalizat,
Show Cumulative Amount,Afișați suma cumulată,
Show Open,Afișați deschis,
Show Opening Entries,Afișare intrări de deschidere,
Show Payment Details,Afișați detaliile de plată,
Show Return Entries,Afișați înregistrările returnate,
Show Variant Attributes,Afișați atribute variate,
Show Variants,Arată Variante,
Show closed,Afișează închis,
Show exploded view,Afișați vizualizarea explodată,
Show only POS,Afișați numai POS,
Show unclosed fiscal year's P&L balances,Afișați soldurile L P &amp; anul fiscal unclosed lui,
Show zero values,Afiseaza valorile nule,
Silt,Nămol,
Single Variant,Varianta unică,
Single unit of an Item.,Unitate unică a unui articol.,
"Skipping Leave Allocation for the following employees, as Leave Allocation records already exists against them. {0}","Scăderea listei de alocare pentru următorii angajați, deoarece înregistrările privind alocarea listei există deja împotriva acestora. {0}",
Slideshow,Slideshow,
Slots for {0} are not added to the schedule,Sloturile pentru {0} nu sunt adăugate la program,
Small,Mic,
Soap & Detergent,Soap & Detergent,
Software,Software,
Software Developer,Software Developer,
Softwares,Softwares,
Soil compositions do not add up to 100,Compozițiile solului nu adaugă până la 100,
Sold,Vândut,
Some emails are invalid,Unele e-mailuri sunt nevalide,
Some information is missing,Lipsesc unele informații,
Something went wrong!,Ceva a mers prost!,
"Sorry, Serial Nos cannot be merged","Ne pare rău, Serial nr nu se pot uni",
Source,Sursă,
Source Name,sursa Nume,
Source Warehouse,Depozit Sursă,
Source and Target Location cannot be same,Sursa și locația țintă nu pot fi identice,
Source and target warehouse cannot be same for row {0},Sursă și depozit țintă nu poate fi același pentru rând {0},
Source and target warehouse must be different,Sursa și depozitul țintă trebuie să fie diferit,
Source of Funds (Liabilities),Sursa fondurilor (pasive),
Source warehouse is mandatory for row {0},Depozit sursă este obligatorie pentru rând {0},
Specified BOM {0} does not exist for Item {1},BOM specificată {0} nu există pentru postul {1},
Split,Despică,
Split Batch,Split Lot,
Split Issue,Emisiune separată,
Sports,Sport,
Standard Buying,Cumpararea Standard,
Standard Selling,Vânzarea standard,
Standard contract terms for Sales or Purchase.,Clauzele contractuale standard pentru vânzări sau de cumpărare.,
Start Date,Data începerii,
Start Date of Agreement can't be greater than or equal to End Date.,Data de începere a acordului nu poate fi mai mare sau egală cu data de încheiere.,
Start Year,Anul de începere,
Start date should be less than end date for Item {0},Data de începere trebuie să fie mai mică decât data de sfârșit pentru postul {0},
Start date should be less than end date for task {0},Data de începere ar trebui să fie mai mică decât data de încheiere pentru sarcina {0},
Start day is greater than end day in task '{0}',Ziua de început este mai mare decât ziua de sfârșit în sarcina &quot;{0}&quot;,
Start on,Începe,
State,Stat,
State/UT Tax,Impozitul de stat / UT,
Statement of Account,Extras de cont,
Status must be one of {0},Statusul trebuie să fie unul din {0},
Stock,Stoc,
Stock Adjustment,Ajustarea stoc,
Stock Analytics,Analytics stoc,
Stock Assets,Active Stoc,
Stock Available,Stoc disponibil,
Stock Balance,Stoc Sold,
Stock Entries already created for Work Order ,Înregistrări stoc deja create pentru comanda de lucru,
Stock Entry,Stoc de intrare,
Stock Entry {0} created,Arhivă de intrare {0} creat,
Stock Entry {0} is not submitted,Stock intrare {0} nu este prezentat,
Stock Expenses,Cheltuieli stoc,
Stock In Hand,Stoc în mână,
Stock Items,stoc,
Stock Ledger,Registru Contabil Stocuri,
Stock Ledger Entries and GL Entries are reposted for the selected Purchase Receipts,Stocul Ledger Înscrieri și GL intrările sunt postate pentru selectate Veniturile achiziție,
Stock Levels,Niveluri stoc,
Stock Liabilities,Pasive stoc,
Stock Qty,Cota stocului,
Stock Received But Not Billed,"Stock primite, dar nu Considerat",
Stock Reports,Rapoarte de stoc,
Stock Summary,Rezumat Stoc,
Stock Transactions,Tranzacții de stoc,
Stock UOM,Stoc UOM,
Stock Value,Valoare stoc,
Stock balance in Batch {0} will become negative {1} for Item {2} at Warehouse {3},echilibru stoc în Serie {0} va deveni negativ {1} pentru postul {2} la Depozitul {3},
Stock cannot be updated against Delivery Note {0},Stock nu poate fi actualizat împotriva livrare Nota {0},
Stock cannot be updated against Purchase Receipt {0},Stock nu poate fi actualizat cu confirmare de primire {0} Purchase,
Stock cannot exist for Item {0} since has variants,Stock nu poate exista pentru postul {0} deoarece are variante,
Stock transactions before {0} are frozen,Tranzacțiilor bursiere înainte de {0} sunt înghețate,
Stop,Oprire,
Stopped,Oprita,
"Stopped Work Order cannot be cancelled, Unstop it first to cancel","Oprirea comenzii de lucru nu poate fi anulată, deblocați mai întâi pentru a anula",
Stores,Magazine,
Student,Student,
Student Activity,Activitatea studenților,
Student Address,Adresa studenților,
Student Admissions,Admitere Student,
Student Attendance,Participarea studenților,
"Student Batches help you track attendance, assessments and fees for students","Student Sarjele ajută să urmăriți prezență, evaluările și taxele pentru studenți",
Student Email Address,Adresa de e-mail Student,
Student Email ID,ID-ul de student e-mail,
Student Group,Grupul studențesc,
Student Group Strength,Grupul Forței Studenților,
Student Group is already updated.,Grupul de studenți este deja actualizat.,
Student Group: ,Grupul studenților:,
Student ID,Carnet de student,
Student ID: ,Carnet de student:,
Student LMS Activity,Activitatea LMS a studenților,
Student Mobile No.,Elev mobil Nr,
Student Name,Numele studentului,
Student Name: ,Numele studentului:,
Student Report Card,Student Card de raportare,
Student is already enrolled.,Student este deja înscris.,
Student {0} - {1} appears Multiple times in row {2} & {3},Elev {0} - {1} apare ori multiple în rândul {2} &amp; {3},
Student {0} does not belong to group {1},Studentul {0} nu aparține grupului {1},
Student {0} exist against student applicant {1},Student {0} există împotriva solicitantului de student {1},
"Students are at the heart of the system, add all your students","Studenții sunt în centrul sistemului, adăugați toți elevii",
Sub Assemblies,Sub Assemblies,
Sub Type,Subtipul,
Sub-contracting,Sub-contractare,
Subcontract,subcontract,
Subject,Subiect,
Submit,Trimite,
Submit this Work Order for further processing.,Trimiteți acest ordin de lucru pentru o prelucrare ulterioară.,
Subscription,Abonament,
Subscription Management,Managementul abonamentelor,
Subscriptions,Abonamente,
Subtotal,subtotală,
Successful,De succes,
Successfully Reconciled,Împăcați cu succes,
Successfully Set Supplier,Setați cu succes furnizorul,
Successfully created payment entries,Au fost create intrări de plată cu succes,
Successfully deleted all transactions related to this company!,Șters cu succes toate tranzacțiile legate de aceasta companie!,
Sum of Scores of Assessment Criteria needs to be {0}.,Suma Scorurile de criterii de evaluare trebuie să fie {0}.,
Sum of points for all goals should be 100. It is {0},Suma de puncte pentru toate obiectivele ar trebui să fie 100. este {0},
Summary,Rezumat,
Summary for this month and pending activities,Rezumat pentru această lună și activități în așteptarea,
Summary for this week and pending activities,Rezumat pentru această săptămână și a activităților în curs,
Sunday,Duminică,
Suplier,furnizo,
Supplier,Furnizor,
Supplier Group,Grupul de furnizori,
Supplier Group master.,Managerul grupului de furnizori.,
Supplier Id,Furnizor Id,
Supplier Invoice Date cannot be greater than Posting Date,Furnizor Data facturii nu poate fi mai mare decât postare Data,
Supplier Invoice No,Furnizor Factura Nu,
Supplier Invoice No exists in Purchase Invoice {0},Furnizor Factura nr există în factură Purchase {0},
Supplier Name,Furnizor Denumire,
Supplier Part No,Furnizor de piesa,
Supplier Quotation,Furnizor ofertă,
Supplier Scorecard,Scorul de performanță al furnizorului,
Supplier Warehouse mandatory for sub-contracted Purchase Receipt,Furnizor Depozit obligatoriu pentru contractate sub-cumparare Primirea,
Supplier database.,Baza de date furnizor.,
Supplier {0} not found in {1},Furnizorul {0} nu a fost găsit în {1},
Supplier(s),Furnizor (e),
Supplies made to UIN holders,Materialele furnizate deținătorilor UIN,
Supplies made to Unregistered Persons,Furnizare pentru persoane neînregistrate,
Suppliies made to Composition Taxable Persons,Cupluri făcute persoanelor impozabile din componență,
Supply Type,Tip de aprovizionare,
Support,Suport,
Support Analytics,Suport Analytics,
Support Settings,Setări de sprijin,
Support Tickets,Bilete de sprijin,
Support queries from customers.,Interogări de suport din partea clienților.,
Susceptible,Susceptibil,
Sync has been temporarily disabled because maximum retries have been exceeded,"Sincronizarea a fost temporar dezactivată, deoarece au fost depășite încercările maxime",
Syntax error in condition: {0},Eroare de sintaxă în stare: {0},
Syntax error in formula or condition: {0},Eroare de sintaxă în formulă sau stare: {0},
System Manager,System Manager,
TDS Rate %,Rata TDS%,
Tap items to add them here,Atingeți elementele pentru a le adăuga aici,
Target,Țintă,
Target ({}),Țintă ({}),
Target On,Țintă pe,
Target Warehouse,Depozit Țintă,
Target warehouse is mandatory for row {0},Depozit țintă este obligatorie pentru rând {0},
Task,Sarcină,
Tasks,Sarcini,
Tasks have been created for managing the {0} disease (on row {1}),S-au creat sarcini pentru gestionarea bolii {0} (pe rândul {1}),
Tax,Impozite,
Tax Assets,Active Fiscale,
Tax Category,Categoria fiscală,
Tax Category for overriding tax rates.,Categorie de impozite pentru cote de impozitare superioare.,
"Tax Category has been changed to ""Total"" because all the Items are non-stock items",Categoria de taxe a fost modificată la &quot;Total&quot; deoarece toate elementele nu sunt elemente stoc,
Tax ID,ID impozit,
Tax Id: ,Cod fiscal:,
Tax Rate,Cota de impozitare,
Tax Rule Conflicts with {0},Conflicte normă fiscală cu {0},
Tax Rule for transactions.,Regula de impozit pentru tranzacțiile.,
Tax Template is mandatory.,Format de impozitare este obligatorie.,
Tax Withholding rates to be applied on transactions.,Ratele de reținere fiscală aplicabile tranzacțiilor.,
Tax template for buying transactions.,Șablon taxa pentru tranzacțiilor de cumpărare.,
Tax template for item tax rates.,Model de impozitare pentru cote de impozit pe articole.,
Tax template for selling transactions.,Șablon impozit pentru tranzacțiile de vânzare.,
Taxable Amount,Sumă impozabilă,
Taxes,Impozite,
Technology,Tehnologia nou-aparuta,
Telecommunications,Telecomunicații,
Telephone Expenses,Cheltuieli de telefon,
Television,Televiziune,
Template Name,Numele de șablon,
Template of terms or contract.,Șablon de termeni sau contractului.,
Templates of supplier scorecard criteria.,Șabloane ale criteriilor privind tabloul de bord al furnizorului.,
Templates of supplier scorecard variables.,Șabloane ale variabilelor pentru scorurile pentru furnizori.,
Templates of supplier standings.,Modele de clasificare a furnizorilor.,
Temporarily on Hold,Temporar în așteptare,
Temporary,Temporar,
Temporary Accounts,Conturi temporare,
Temporary Opening,Deschiderea temporară,
Terms and Conditions,Termeni si conditii,
Terms and Conditions Template,Termeni și condiții Format,
Territory,Teritoriu,
Thank you for your business!,Vă mulțumesc pentru afacerea dvs!,
The 'From Package No.' field must neither be empty nor it's value less than 1.,"&quot;Din pachetul nr.&quot; câmpul nu trebuie să fie nici gol, nici valoarea lui mai mică decât 1.",
The Brand,Marca,
The Item {0} cannot have Batch,Postul {0} nu poate avea Lot,
The Loyalty Program isn't valid for the selected company,Programul de loialitate nu este valabil pentru compania selectată,
The Payment Term at row {0} is possibly a duplicate.,"Termenul de plată la rândul {0} este, eventual, un duplicat.",
The Term End Date cannot be earlier than the Term Start Date. Please correct the dates and try again.,Pe termen Data de încheiere nu poate fi mai devreme decât Start Termen Data. Vă rugăm să corectați datele și încercați din nou.,
The Term End Date cannot be later than the Year End Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,Pe termen Data de încheiere nu poate fi mai târziu de Anul Data de încheiere a anului universitar la care este legat termenul (anului universitar {}). Vă rugăm să corectați datele și încercați din nou.,
The Term Start Date cannot be earlier than the Year Start Date of the Academic Year to which the term is linked (Academic Year {}). Please correct the dates and try again.,Start Termen Data nu poate fi mai devreme decât data Anul de începere a anului universitar la care este legat termenul (anului universitar {}). Vă rugăm să corectați datele și încercați din nou.,
The Year End Date cannot be earlier than the Year Start Date. Please correct the dates and try again.,Anul Data de încheiere nu poate fi mai devreme decât data An Start. Vă rugăm să corectați datele și încercați din nou.,
The amount of {0} set in this payment request is different from the calculated amount of all payment plans: {1}. Make sure this is correct before submitting the document.,Valoarea {0} stabilită în această solicitare de plată este diferită de suma calculată a tuturor planurilor de plată: {1}. Asigurați-vă că este corect înainte de a trimite documentul.,
The field From Shareholder cannot be blank,Câmpul From Shareholder nu poate fi gol,
The field To Shareholder cannot be blank,Câmpul către acționar nu poate fi necompletat,
The fields From Shareholder and To Shareholder cannot be blank,Câmpurile de la acționar și de la acționar nu pot fi goale,
The folio numbers are not matching,Numerele folio nu se potrivesc,
The holiday on {0} is not between From Date and To Date,Vacanta pe {0} nu este între De la data si pana in prezent,
The name of the institute for which you are setting up this system.,Numele institutului pentru care configurați acest sistem.,
The name of your company for which you are setting up this system.,Numele companiei dumneavoastră pentru care vă sunt configurarea acestui sistem.,
The number of shares and the share numbers are inconsistent,Numărul de acțiuni și numerele de acțiuni sunt incoerente,
The payment gateway account in plan {0} is different from the payment gateway account in this payment request,Contul gateway-ului de plată din plan {0} este diferit de contul gateway-ului de plată din această solicitare de plată,
The selected BOMs are not for the same item,Cele BOM selectate nu sunt pentru același articol,
The selected item cannot have Batch,Elementul selectat nu poate avea lot,
The seller and the buyer cannot be the same,Vânzătorul și cumpărătorul nu pot fi aceleași,
The shareholder does not belong to this company,Acționarul nu aparține acestei companii,
The shares already exist,Acțiunile există deja,
The shares don't exist with the {0},Acțiunile nu există cu {0},
"The task has been enqueued as a background job. In case there is any issue on processing in background, the system will add a comment about the error on this Stock Reconciliation and revert to the Draft stage","Sarcina a fost considerată ca o lucrare de fond. În cazul în care există vreo problemă cu privire la procesare în fundal, sistemul va adăuga un comentariu despre eroarea la această reconciliere a stocului și va reveni la etapa de proiectare.",
"Then Pricing Rules are filtered out based on Customer, Customer Group, Territory, Supplier, Supplier Type, Campaign, Sales Partner etc.","Apoi normelor privind prețurile sunt filtrate pe baza Customer, Client Group, Territory, furnizor, furnizor de tip, Campania, Vanzari Partener etc",
"There are inconsistencies between the rate, no of shares and the amount calculated","Există neconcordanțe între rata, numărul de acțiuni și suma calculată",
There can be multiple tiered collection factor based on the total spent. But the conversion factor for redemption will always be same for all the tier.,Pot exista un factor de colectare multiplu diferențiat bazat pe totalul cheltuit. Dar factorul de conversie pentru răscumpărare va fi întotdeauna același pentru toate nivelurile.,
There can only be 1 Account per Company in {0} {1},Nu poate fi doar un cont per companie în {0} {1},
"There can only be one Shipping Rule Condition with 0 or blank value for ""To Value""","Nu poate fi doar o singură regulă Condiții presetate cu 0 sau o valoare necompletată pentru ""la valoarea""",
There is not enough leave balance for Leave Type {0},Nu există echilibru concediu suficient pentru concediul de tip {0},
There is nothing to edit.,Nu este nimic pentru editat.,
There isn't any item variant for the selected item,Nu există variante de elemente pentru elementul selectat,
"There seems to be an issue with the server's GoCardless configuration. Don't worry, in case of failure, the amount will get refunded to your account.","Se pare că există o problemă cu configurația serverului GoCardless. Nu vă faceți griji, în caz de eșec, suma va fi rambursată în cont.",
There were errors creating Course Schedule,Au apărut erori la crearea programului de curs,
There were errors.,Au fost erori.,
This Item is a Template and cannot be used in transactions. Item attributes will be copied over into the variants unless 'No Copy' is set,"Acest post este un șablon și nu pot fi folosite în tranzacții. Atribute articol vor fi copiate pe în variantele cu excepția cazului în este setat ""Nu Copy""",
This Item is a Variant of {0} (Template).,Acest element este o variantă de {0} (șablon).,
This Month's Summary,Rezumatul acestei luni,
This Week's Summary,Rezumat această săptămână,
This action will stop future billing. Are you sure you want to cancel this subscription?,Această acțiune va opri facturarea viitoare. Sigur doriți să anulați acest abonament?,
This covers all scorecards tied to this Setup,Aceasta acoperă toate tabelele de scoruri legate de această configurație,
This document is over limit by {0} {1} for item {4}. Are you making another {3} against the same {2}?,Acest document este peste limita de {0} {1} pentru elementul {4}. Faci un alt {3} împotriva aceleași {2}?,
This is a root account and cannot be edited.,Acesta este un cont de rădăcină și nu pot fi editate.,
This is a root customer group and cannot be edited.,Acesta este un grup de clienți rădăcină și nu pot fi editate.,
This is a root department and cannot be edited.,Acesta este un departament rădăcină și nu poate fi editat.,
This is a root healthcare service unit and cannot be edited.,Aceasta este o unitate de asistență medicală rădăcină și nu poate fi editată.,
This is a root item group and cannot be edited.,Acesta este un grup element rădăcină și nu pot fi editate.,
This is a root sales person and cannot be edited.,Aceasta este o persoană de vânzări rădăcină și nu pot fi editate.,
This is a root supplier group and cannot be edited.,Acesta este un grup de furnizori rădăcini și nu poate fi editat.,
This is a root territory and cannot be edited.,Acesta este un teritoriu rădăcină și nu pot fi editate.,
This is an example website auto-generated from ERPNext,Acesta este un site web exemplu auto-generat de ERPNext,
This is based on logs against this Vehicle. See timeline below for details,Aceasta se bazează pe bușteni împotriva acestui vehicul. A se vedea calendarul de mai jos pentru detalii,
This is based on stock movement. See {0} for details,Aceasta se bazează pe mișcare stoc. A se vedea {0} pentru detalii,
This is based on the Time Sheets created against this project,Aceasta se bazează pe fișele de pontaj create împotriva acestui proiect,
This is based on the attendance of this Student,Aceasta se bazează pe prezența acestui student,
This is based on transactions against this Customer. See timeline below for details,Aceasta se bazează pe tranzacțiile împotriva acestui client. A se vedea calendarul de mai jos pentru detalii,
This is based on transactions against this Healthcare Practitioner.,Aceasta se bazează pe tranzacțiile împotriva acestui medic.,
This is based on transactions against this Patient. See timeline below for details,Aceasta se bazează pe tranzacțiile împotriva acestui pacient. Consultați linia temporală de mai jos pentru detalii,
This is based on transactions against this Sales Person. See timeline below for details,Aceasta se bazează pe tranzacțiile efectuate împotriva acestei persoane de vânzări. Consultați linia temporală de mai jos pentru detalii,
This is based on transactions against this Supplier. See timeline below for details,Aceasta se bazează pe tranzacțiile împotriva acestui furnizor. A se vedea calendarul de mai jos pentru detalii,
This {0} conflicts with {1} for {2} {3},Acest {0} conflicte cu {1} pentru {2} {3},
Time Sheet for manufacturing.,Fișa de timp pentru fabricație.,
Time Tracking,Urmărirea timpului,
"Time slot skiped, the slot {0} to {1} overlap exisiting slot {2} to {3}","Slotul de timp a fost anulat, slotul {0} până la {1} suprapune slotul existent {2} până la {3}",
Time slots added,Au fost adăugate sloturi de timp,
Time(in mins),Timp (în min),
Timer,Cronometrul,
Timer exceeded the given hours.,Timerul a depășit orele date.,
Timesheet,Pontaj,
Timesheet for tasks.,Timesheet pentru sarcini.,
Timesheet {0} is already completed or cancelled,Pontajul {0} este deja finalizat sau anulat,
Timesheets,pontaje,
"Timesheets help keep track of time, cost and billing for activites done by your team","Pontaje ajuta să urmăriți timp, costuri și de facturare pentru activitati efectuate de echipa ta",
Titles for print templates e.g. Proforma Invoice.,"Titluri de șabloane de imprimare, de exemplu proforma Factura.",
To,La,
To Address 1,Pentru a adresa 1,
To Address 2,Pentru a adresa 2,
To Bill,Pentru a Bill,
To Date,La Data,
To Date cannot be before From Date,Până în prezent nu poate fi înainte de data,
To Date cannot be less than From Date,Data nu poate fi mai mică decât Din data,
To Date must be greater than From Date,Pentru data trebuie să fie mai mare decât de la data,
To Date should be within the Fiscal Year. Assuming To Date = {0},Pentru a Data ar trebui să fie în anul fiscal. Presupunând Pentru a Data = {0},
To Datetime,Pentru a Datetime,
To Deliver,A livra,
To Deliver and Bill,Pentru a livra și Bill,
To Fiscal Year,Anul fiscal,
To GSTIN,Pentru GSTIN,
To Party Name,La numele partidului,
To Pin Code,Pentru a activa codul,
To Place,A plasa,
To Receive,A primi,
To Receive and Bill,Pentru a primi și Bill,
To State,A afirma,
To Warehouse,La Depozit,
To create a Payment Request reference document is required,Pentru a crea un document de referință privind solicitarea de plată este necesar,
"To filter based on Party, select Party Type first","Pentru a filtra pe baza Party, selectați Party Tip primul",
"To get the best out of ERPNext, we recommend that you take some time and watch these help videos.","Pentru a obține cele mai bune din ERPNext, vă recomandăm să luați ceva timp și de ceas aceste filme de ajutor.",
"To include tax in row {0} in Item rate, taxes in rows {1} must also be included","Pentru a include taxa în rândul {0} în rata articol, impozitele în rânduri {1} trebuie de asemenea să fie incluse",
To make Customer based incentive schemes.,Pentru a crea scheme de stimulare bazate pe client.,
"To merge, following properties must be same for both items","Pentru a îmbina, următoarele proprietăți trebuie să fie aceeași pentru ambele elemente",
"To not apply Pricing Rule in a particular transaction, all applicable Pricing Rules should be disabled.","De a nu aplica regula Preturi într-o anumită tranzacție, ar trebui să fie dezactivat toate regulile de tarifare aplicabile.",
"To set this Fiscal Year as Default, click on 'Set as Default'","Pentru a seta acest an fiscal ca implicit, faceți clic pe ""Set as Default""",
To view logs of Loyalty Points assigned to a Customer.,Pentru a vizualiza jurnalele punctelor de loialitate atribuite unui client.,
To {0},Pentru a {0},
To {0} | {1} {2},Pentru a {0} | {1} {2},
Toggle Filters,Comutați filtrele,
Too many columns. Export the report and print it using a spreadsheet application.,Prea multe coloane. Exporta raportul și imprima utilizând o aplicație de calcul tabelar.,
Tools,Instrumente,
Total (Credit),Total (Credit),
Total (Without Tax),Total (fără taxe),
Total Achieved,Raport Realizat,
Total Actual,Raport real,
Total Amount,Suma totală,
Total Amount Credited,Suma totală creditată,
Total Applicable Charges in Purchase Receipt Items table must be same as Total Taxes and Charges,Taxe totale aplicabile în tabelul de achiziție Chitanță Elementele trebuie să fie la fel ca total impozite și taxe,
Total Budget,Buget total,
Total Collected: {0},Totalul colectat: {0},
Total Commission,Total de Comisie,
Total Contribution Amount: {0},Suma totală a contribuției: {0},
Total Credit/ Debit Amount should be same as linked Journal Entry,Suma totală a creditului / debitului ar trebui să fie aceeași cu cea înregistrată în jurnal,
Total Debit must be equal to Total Credit. The difference is {0},Totală de debit trebuie să fie egal cu total Credit. Diferența este {0},
Total Invoiced Amount,Suma totală facturată,
Total Order Considered,Comanda total Considerat,
Total Order Value,Valoarea totală Comanda,
Total Outgoing,Raport de ieșire,
Total Outstanding,Total deosebit,
Total Outstanding Amount,Total Suma Impresionant,
Total Outstanding: {0},Total excepție: {0},
Total Paid Amount,Total Suma plătită,
Total Payment Amount in Payment Schedule must be equal to Grand / Rounded Total,Suma totală de plată în Planul de Plăți trebuie să fie egală cu Total / Rotunjit,
Total Payments,Total plăți,
Total Qty,Raport Cantitate,
Total Quantity,Cantitatea totala,
Total Revenue,Raport Venituri,
Total Student,Student total,
Total Target,Raport țintă,
Total Tax,Taxa totală,
Total Taxable Amount,Sumă impozabilă totală,
Total Taxable Value,Valoarea impozabilă totală,
Total Unpaid: {0},Neremunerat totală: {0},
Total Variance,Raport Variance,
Total Weightage of all Assessment Criteria must be 100%,Weightage totală a tuturor criteriilor de evaluare trebuie să fie 100%,
Total advance ({0}) against Order {1} cannot be greater than the Grand Total ({2}),avans total ({0}) împotriva Comanda {1} nu poate fi mai mare decât totalul ({2}),
Total advance amount cannot be greater than total claimed amount,Suma avansului total nu poate fi mai mare decât suma totală revendicată,
Total allocated leaves are more days than maximum allocation of {0} leave type for employee {1} in the period,Frunzele totale alocate sunt mai multe zile decât alocarea maximă a tipului de concediu {0} pentru angajatul {1} în perioada respectivă,
Total allocated leaves are more than days in the period,TOTAL frunze alocate sunt mai mult decât zile în perioada,
Total allocated percentage for sales team should be 100,Procentul total alocat pentru echipa de vânzări ar trebui să fie de 100,
Total cannot be zero,Totalul nu poate să fie zero,
Total contribution percentage should be equal to 100,Procentul total al contribuției ar trebui să fie egal cu 100,
Total hours: {0},Numărul total de ore: {0},
Total {0} ({1}),Total {0} ({1}),
"Total {0} for all items is zero, may be you should change 'Distribute Charges Based On'","Total {0} pentru toate articolele este zero, poate fi ar trebui să schimbați „Distribuirea cheltuielilor pe baza“",
Total(Amt),Total (Amt),
Total(Qty),Total (Cantitate),
Traceability,Trasabilitate,
Track Leads by Lead Source.,Urmărește Oportunități după Sursă Oportunitate,
Transaction,Tranzacţie,
Transaction Date,Data tranzacției,
Transaction Type,tipul tranzacției,
Transaction currency must be same as Payment Gateway currency,Moneda de tranzacție trebuie să fie aceeași ca și de plată Gateway monedă,
Transaction not allowed against stopped Work Order {0},Tranzacția nu este permisă împotriva comenzii de lucru oprita {0},
Transaction reference no {0} dated {1},de referință al tranzacției nu {0} {1} din,
Transactions,tranzacţii,
Transactions can only be deleted by the creator of the Company,Tranzacții pot fi șterse doar de către creatorul Companiei,
Transfer,Transfer,
Transfer Material,Material de transfer,
Transfer Type,Tip de transfer,
Transfer an asset from one warehouse to another,Se transferă un activ de la un depozit la altul,
Transfered,transferat,
Transferred Quantity,Cantitate transferată,
Transport Receipt Date,Data primirii transportului,
Transport Receipt No,Primirea transportului nr,
Transportation,Transport,
Transporter ID,ID-ul transportatorului,
Transporter Name,Transporter Nume,
Travel Expenses,Cheltuieli de calatorie,
Tree Type,Arbore Tip,
Tree of Bill of Materials,Arborele de Bill de materiale,
Tree of Item Groups.,Arborele de Postul grupuri.,
Tree of Procedures,Arborele procedurilor,
Tree of Quality Procedures.,Arborele procedurilor de calitate.,
Tree of financial Cost Centers.,Tree of centre de cost financiare.,
Tree of financial accounts.,Arborescentă conturilor financiare.,
Treshold {0}% appears more than once,Treshold {0}% apare mai mult decât o dată,
Trial Period End Date Cannot be before Trial Period Start Date,Perioada de încheiere a perioadei de încercare nu poate fi înainte de data începerii perioadei de încercare,
Trialling,experimentării,
Type of Business,Tip de afacere,
Types of activities for Time Logs,Tipuri de activități pentru busteni Timp,
UOM,UOM,
UOM Conversion factor is required in row {0},Factor UOM de conversie este necesară în rândul {0},
UOM coversion factor required for UOM: {0} in Item: {1},Factor coversion UOM UOM necesare pentru: {0} in articol: {1},
URL,URL-ul,
Unable to find exchange rate for {0} to {1} for key date {2}. Please create a Currency Exchange record manually,Imposibil de găsit rata de schimb pentru {0} până la {1} pentru data cheie {2}. Creați manual un registru de schimb valutar,
Unable to find score starting at {0}. You need to have standing scores covering 0 to 100,Nu se poate găsi scorul începând cu {0}. Trebuie să aveți scoruri în picioare care acoperă între 0 și 100,
Unable to find variable: ,Imposibil de găsit variabila:,
Unblock Invoice,Deblocați factura,
Uncheck all,Deselecteaza tot,
Unclosed Fiscal Years Profit / Loss (Credit),Unclosed fiscal Ani de Profit / Pierdere (credit),
Unit,Unitate,
Unit of Measure,Unitate de măsură,
Unit of Measure {0} has been entered more than once in Conversion Factor Table,Unitate de măsură {0} a fost introdus mai mult de o dată în Factor de conversie Tabelul,
Unknown,Necunoscut,
Unpaid,Neachitat,
Unsecured Loans,Creditele negarantate,
Unsubscribe from this Email Digest,Dezabona de la acest e-mail Digest,
Unsubscribed,Nesubscrise,
Until,Până la,
Unverified Webhook Data,Datele Webhook neconfirmate,
Update Account Name / Number,Actualizați numele / numărul contului,
Update Account Number / Name,Actualizați numărul / numele contului,
Update Cost,Actualizare Cost,
Update Items,Actualizați elementele,
Update Print Format,Actualizare Format Print,
Update bank payment dates with journals.,Actualizați datele de plată bancar cu reviste.,
Update in progress. It might take a while.,Actualizare în curs. Ar putea dura ceva timp.,
Update rate as per last purchase,Rata de actualizare ca pe ultima achiziție,
Update stock must be enable for the purchase invoice {0},Actualizați stocul trebuie să fie activat pentru factura de achiziție {0},
Updating Variants...,Actualizarea variantelor ...,
Upload your letter head and logo. (you can edit them later).,Încărcați capul scrisoare și logo-ul. (Le puteți edita mai târziu).,
Upper Income,Venituri de sus,
Use Sandbox,utilizare Sandbox,
User,Utilizator,
User ID,ID-ul de utilizator,
User ID not set for Employee {0},ID-ul de utilizator nu este setat pentru Angajat {0},
User Remark,Observație utilizator,
User has not applied rule on the invoice {0},Utilizatorul nu a aplicat o regulă pentru factură {0},
User {0} already exists,Utilizatorul {0} există deja,
User {0} created,Utilizatorul {0} a fost creat,
User {0} does not exist,Utilizatorul {0} nu există,
User {0} doesn't have any default POS Profile. Check Default at Row {1} for this User.,Utilizatorul {0} nu are niciun POS profil implicit. Verificați implicit la Rând {1} pentru acest utilizator.,
User {0} is already assigned to Employee {1},Utilizatorul {0} este deja alocat Angajat {1},
User {0} is already assigned to Healthcare Practitioner {1},Utilizatorul {0} este deja însărcinat cu medicul de îngrijire medicală {1},
Users,Utilizatori,
Utility Expenses,Cheltuieli de utilitate,
Valid From Date must be lesser than Valid Upto Date.,Valabil din data trebuie să fie mai mică decât valabil până la data.,
Valid Till,Valabil până la,
Valid from and valid upto fields are mandatory for the cumulative,Câmpurile valabile și valabile până la acestea sunt obligatorii pentru cumul,
Valid from date must be less than valid upto date,Valabil de la data trebuie să fie mai mic decât valabil până la data actuală,
Valid till date cannot be before transaction date,Valabil până la data nu poate fi înainte de data tranzacției,
Validity,Valabilitate,
Validity period of this quotation has ended.,Perioada de valabilitate a acestui citat sa încheiat.,
Valuation Rate,Rata de evaluare,
Valuation Rate is mandatory if Opening Stock entered,Evaluarea Rata este obligatorie în cazul în care a intrat Deschiderea stoc,
Valuation type charges can not marked as Inclusive,Taxele de tip evaluare nu poate marcate ca Inclusive,
Value Or Qty,Valoare sau Cantitate,
Value Proposition,Propunere de valoare,
Value for Attribute {0} must be within the range of {1} to {2} in the increments of {3} for Item {4},Valoare pentru atributul {0} trebuie să fie în intervalul de {1} la {2} în trepte de {3} pentru postul {4},
Value must be between {0} and {1},Valoarea trebuie să fie între {0} și {1},
"Values of exempt, nil rated and non-GST inward supplies","Valorile livrărilor interne scutite, nule și fără GST",
Variance,variație,
Variance ({}),Varianță ({}),
Variant,Variantă,
Variant Attributes,Atribute Variant,
Variant Based On cannot be changed,Varianta bazată pe nu poate fi modificată,
Variant Details Report,Varianta Detalii raport,
Variant creation has been queued.,Crearea de variante a fost în coada de așteptare.,
Vehicle Expenses,Cheltuielile pentru vehicule,
Vehicle No,Vehicul Nici,
Vehicle Type,Tip de vehicul,
Vehicle/Bus Number,Numărul vehiculului / autobuzului,
Venture Capital,Capital de risc,
View Chart of Accounts,Vezi Diagramă de Conturi,
View Fees Records,Vizualizați înregistrările de taxe,
View Form,Formular de vizualizare,
View Lab Tests,Vizualizați testele de laborator,
View Leads,Vezi Piste,
View Ledger,Vezi Registru Contabil,
View Now,Vizualizează acum,
View a list of all the help videos,Vizualizați o listă cu toate filmele de ajutor,
View in Cart,Vizualizare Coș,
Visit report for maintenance call.,Vizitați raport pentru apel de mentenanță.,
Visit the forums,Vizitați forumurile,
Vital Signs,Semnele vitale,
Volunteer,Voluntar,
Volunteer Type information.,Informații de tip Voluntar.,
Volunteer information.,Informații despre voluntari.,
Voucher #,Voucher #,
Voucher No,Voletul nr,
Voucher Type,Tip Voucher,
WIP Warehouse,WIP Depozit,
Warehouse can not be deleted as stock ledger entry exists for this warehouse.,Depozitul nu poate fi șters deoarece există intrări in registru contabil stocuri pentru acest depozit.,
Warehouse cannot be changed for Serial No.,Depozit nu poate fi schimbat pentru Serial No.,
Warehouse is mandatory,Depozitul este obligatoriu,
Warehouse is mandatory for stock Item {0} in row {1},Depozitul este obligatoriu pentru articol stoc {0} în rândul {1},
Warehouse not found in the system,Depozit nu a fost găsit în sistemul,
"Warehouse required at Row No {0}, please set default warehouse for the item {1} for the company {2}","Depozitul necesar la rândul nr. {0}, vă rugăm să setați un depozit implicit pentru elementul {1} pentru companie {2}",
Warehouse required for stock Item {0},Depozit necesar pentru stoc articol {0},
Warehouse {0} can not be deleted as quantity exists for Item {1},Depozit {0} nu poate fi ștearsă ca exista cantitate pentru postul {1},
Warehouse {0} does not belong to company {1},Depozit {0} nu aparține companiei {1},
Warehouse {0} does not exist,Depozitul {0} nu există,
"Warehouse {0} is not linked to any account, please mention the account in  the warehouse record or set default inventory account in company {1}.","Warehouse {0} nu este conectat la niciun cont, menționați contul din înregistrarea din depozit sau setați contul de inventar implicit din compania {1}.",
Warehouses with child nodes cannot be converted to ledger,Depozitele cu noduri copil nu pot fi convertite în registru contabil,
Warehouses with existing transaction can not be converted to group.,Depozite tranzacție existente nu pot fi convertite în grup.,
Warehouses with existing transaction can not be converted to ledger.,Depozitele cu tranzacții existente nu pot fi convertite în registru contabil.,
Warning,Avertisment,
Warning: Another {0} # {1} exists against stock entry {2},Atenție: Un alt {0} # {1} există împotriva intrării stoc {2},
Warning: Invalid SSL certificate on attachment {0},Atenție: certificat SSL invalid pe atașament {0},
Warning: Invalid attachment {0},Atenție: Attachment invalid {0},
Warning: Material Requested Qty is less than Minimum Order Qty,Atenție: Materialul solicitat Cant este mai mică decât minima pentru comanda Cantitate,
Warning: Sales Order {0} already exists against Customer's Purchase Order {1},Atenție: comandă de vânzări {0} există deja împotriva Ordinului de Procurare clientului {1},
Warning: System will not check overbilling since amount for Item {0} in {1} is zero,Atenție: Sistemul nu va verifica supraîncărcată din sumă pentru postul {0} din {1} este zero,
Warranty,garanţie,
Warranty Claim,Garanție revendicarea,
Warranty Claim against Serial No.,Garantie revendicarea împotriva Serial No.,
Website,Site web,
Website Image should be a public file or website URL,Site-ul Image ar trebui să fie un fișier public sau site-ul URL-ul,
Website Image {0} attached to Item {1} cannot be found,Site-ul Image {0} atașat la postul {1} nu poate fi găsit,
Website Manager,Site-ul Manager de,
Website Settings,Setarile site-ului,
Wednesday,Miercuri,
Week,Săptămână,
Weekly,Săptămânal,
Welcome email sent,E-mailul de bun venit a fost trimis,
Welcome to ERPNext,Bine ati venit la ERPNext,
What do you need help with?,La ce ai nevoie de ajutor?,
What does it do?,Ce face?,
Where manufacturing operations are carried.,În cazul în care operațiunile de fabricație sunt efectuate.,
White,alb,
Wire Transfer,Transfer,
WooCommerce Products,Produse WooCommerce,
Work In Progress,Lucrări în curs,
Work Order,Comandă de lucru,
Work Order already created for all items with BOM,Ordin de lucru deja creat pentru toate articolele cu BOM,
Work Order cannot be raised against a Item Template,Ordinul de lucru nu poate fi ridicat împotriva unui șablon de element,
Work Order has been {0},Ordinul de lucru a fost {0},
Work Order not created,Ordinul de lucru nu a fost creat,
Work Order {0} must be cancelled before cancelling this Sales Order,Ordinul de lucru {0} trebuie anulat înainte de a anula acest ordin de vânzări,
Work Order {0} must be submitted,Ordinul de lucru {0} trebuie trimis,
Work Orders Created: {0},Comenzi de lucru create: {0},
Work-in-Progress Warehouse is required before Submit,De lucru-in-Progress Warehouse este necesară înainte Trimite,
Working,De lucru,
Working Hours,Ore de lucru,
Workstation,Stație de lucru,
Workstation is closed on the following dates as per Holiday List: {0},Workstation este închis la următoarele date ca pe lista de vacanta: {0},
Wrapping up,Înfășurați-vă,
Wrong Password,Parola gresita,
Year start date or end date is overlapping with {0}. To avoid please set company,Anul Data de începere sau de încheiere este suprapunerea cu {0}. Pentru a evita vă rugăm să setați companie,
You are not authorized to add or update entries before {0},Nu ești autorizat să adăugi sau să actualizezi intrări înainte de {0},
You are not authorized to set Frozen value,Nu esti autorizat pentru a configura valoarea Congelat,
You can not change rate if BOM mentioned agianst any item,Nu puteți schimba rata dacă BOM menționat agianst orice element,
You can not enter current voucher in 'Against Journal Entry' column,"Nu puteți introduce voucher curent în ""Împotriva Jurnalul intrare"" coloană",
You can only have Plans with the same billing cycle in a Subscription,Puteți avea numai planuri cu același ciclu de facturare într-un abonament,
You can only redeem max {0} points in this order.,Puteți răscumpăra maxim {0} puncte în această ordine.,
You can only renew if your membership expires within 30 days,Puteți reînnoi numai dacă expirați în termen de 30 de zile,
You can only select a maximum of one option from the list of check boxes.,Puteți selecta numai o singură opțiune din lista de casete de selectare.,
You can't redeem Loyalty Points having more value than the Grand Total.,Nu puteți valorifica punctele de loialitate cu valoare mai mare decât suma totală.,
You cannot credit and debit same account at the same time,"Nu puteți credit și de debit același cont, în același timp,",
You cannot delete Fiscal Year {0}. Fiscal Year {0} is set as default in Global Settings,Nu puteți șterge Anul fiscal {0}. Anul fiscal {0} este setat ca implicit în Setări globale,
You cannot delete Project Type 'External',Nu puteți șterge tipul de proiect &quot;extern&quot;,
You cannot edit root node.,Nu puteți edita nodul rădăcină.,
You cannot restart a Subscription that is not cancelled.,Nu puteți reporni o abonament care nu este anulat.,
You don't have enough Loyalty Points to redeem,Nu aveți puncte de loialitate pentru a răscumpăra,
You have already assessed for the assessment criteria {}.,Ați evaluat deja criteriile de evaluare {}.,
You have already selected items from {0} {1},Ați selectat deja un produs de la {0} {1},
You have been invited to collaborate on the project: {0},Ați fost invitat să colaboreze la proiect: {0},
You have entered duplicate items. Please rectify and try again.,Ați introdus elemente cu dubluri. Vă rugăm să rectifice și să încercați din nou.,
You need to be a user other than Administrator with System Manager and Item Manager roles to register on Marketplace.,Trebuie să fii alt utilizator decât Administrator cu rolul managerului de sistem și al Managerului de articole pentru a te înregistra pe Marketplace.,
You need to be a user with System Manager and Item Manager roles to add users to Marketplace.,Trebuie să fii un utilizator cu roluri de manager de sistem și manager de articole pentru a adăuga utilizatori la Marketplace.,
You need to be a user with System Manager and Item Manager roles to register on Marketplace.,Trebuie să fiți utilizator cu funcții Manager Manager și Manager de posturi pentru a vă înregistra pe Marketplace.,
You need to enable Shopping Cart,Trebuie să activați Coșul de cumpărături,
You will lose records of previously generated invoices. Are you sure you want to restart this subscription?,Veți pierde înregistrări ale facturilor generate anterior. Sigur doriți să reporniți acest abonament?,
Your Organization,Organizația dumneavoastră,
Your cart is Empty,Coșul dvs. este gol,
Your email address...,Adresa ta de email...,
Your order is out for delivery!,Comanda dvs. este livrată!,
Your tickets,Biletele tale,
ZIP Code,Cod postal,
[Error],[Eroare],
[{0}](#Form/Item/{0}) is out of stock,[{0}] (# Forma / Postul / {0}) este din stoc,
`Freeze Stocks Older Than` should be smaller than %d days.,'Blochează stocuri mai vechi decât' ar trebui să fie mai mic de %d zile.,
based_on,bazat pe,
cannot be greater than 100,nu poate fi mai mare de 100,
disabled user,utilizator dezactivat,
"e.g. ""Build tools for builders""","de exemplu ""Construi instrumente de constructori """,
"e.g. ""Primary School"" or ""University""","de exemplu, &quot;Școala primară&quot; sau &quot;Universitatea&quot;",
"e.g. Bank, Cash, Credit Card","de exemplu, bancar, Cash, Card de credit",
hidden,ascuns,
modified,modificată,
old_parent,old_parent,
on,Pornit,
{0} '{1}' is disabled,{0} '{1}' este dezactivat,
{0} '{1}' not in Fiscal Year {2},{0} '{1}' nu există în anul fiscal {2},
{0} ({1}) cannot be greater than planned quantity ({2}) in Work Order {3},{0} ({1}) nu poate fi mai mare decât cantitatea planificată ({2}) din Ordinul de Lucru {3},
{0} - {1} is inactive student,{0} - {1} este elev inactiv,
{0} - {1} is not enrolled in the Batch {2},{0} - {1} nu este înscris în lotul {2},
{0} - {1} is not enrolled in the Course {2},{0} - {1} nu este înscris la Cursul {2},
{0} Budget for Account {1} against {2} {3} is {4}. It will exceed by {5},Bugetul {0} pentru Contul {1} față de {2} {3} este {4}. Acesta este depășit cu {5},
{0} Digest,{0} Digest,
{0} Request for {1},{0} Cerere pentru {1},
{0} Result submittted,{0} Rezultat transmis,
{0} Serial Numbers required for Item {1}. You have provided {2}.,{0} numere de serie necesare pentru postul {1}. Ați furnizat {2}.,
{0} Student Groups created.,{0} Grupurile de elevi au fost create.,
{0} Students have been enrolled,{0} Elevii au fost înscriși,
{0} against Bill {1} dated {2},{0} comparativ cu factura {1} din data de {2},
{0} against Purchase Order {1},{0} comparativ cu comanda de cumpărare {1},
{0} against Sales Invoice {1},{0} comparativ cu factura de vânzări {1},
{0} against Sales Order {1},{0} comparativ cu comanda de vânzări {1},
{0} asset cannot be transferred,{0} activul nu poate fi transferat,
{0} can not be negative,{0} nu poate fi negativ,
{0} created,{0} creat,
"{0} currently has a {1} Supplier Scorecard standing, and Purchase Orders to this supplier should be issued with caution.","{0} are în prezent {1} Scor de Furnizor, iar comenzile de achiziție catre acest furnizor ar trebui emise cu prudență.",
"{0} currently has a {1} Supplier Scorecard standing, and RFQs to this supplier should be issued with caution.","{0} are în prezent {1} Scor de Furnizor, iar cererile de oferta către acest furnizor ar trebui emise cu prudență.",
{0} does not belong to Company {1},{0} nu aparține Companiei {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner master,{0} nu are un program de practicieni în domeniul sănătății. Adăugați-o la medicul de masterat în domeniul sănătății,
{0} entered twice in Item Tax,{0} a fost introdus de două ori în taxa articolului,
{0} for {1},{0} pentru {1},
{0} has been submitted successfully,{0} a fost trimis cu succes,
{0} has fee validity till {1},{0} are valabilitate până la data de {1},
{0} hours,{0} ore,
{0} in row {1},{0} în rândul {1},
{0} is blocked so this transaction cannot proceed,"{0} este blocat, astfel încât această tranzacție nu poate continua",
{0} is mandatory,{0} este obligatoriu,
{0} is mandatory for Item {1},{0} este obligatoriu pentru articolul {1},
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2}.,{0} este obligatoriu. Este posibil ca înregistrarea schimbului valutar nu este creată pentru {1} până la {2}.,
{0} is not a stock Item,{0} nu este un articol de stoc,
{0} is not a valid Batch Number for Item {1},{0} nu este un număr de lot valid aferent articolului {1},
{0} is not added in the table,{0} nu este adăugat în tabel,
{0} is now the default Fiscal Year. Please refresh your browser for the change to take effect.,{0} este acum anul fiscal implicit. Vă rugăm să reîmprospătați browser-ul dvs. pentru ca modificarea să aibă efect.,
{0} is on hold till {1},{0} este în așteptare până la {1},
{0} item found.,{0} element găsit.,
{0} items found.,{0} articole găsite.,
{0} items in progress,{0} elemente în curs,
{0} items produced,{0} articole produse,
{0} must appear only once,{0} trebuie să apară doar o singură dată,
{0} must be negative in return document,{0} trebuie să fie negativ în documentul de retur,
{0} not allowed to transact with {1}. Please change the Company.,{0} nu este permis să efectueze tranzacții cu {1}. Vă rugăm să schimbați compania selectată.,
{0} not found for item {1},{0} nu a fost găsit pentru articolul {1},
{0} parameter is invalid,Parametrul {0} este nevalid,
{0} payment entries can not be filtered by {1},{0} înregistrări de plată nu pot fi filtrate de {1},
{0} should be a value between 0 and 100,{0} ar trebui să fie o valoare cuprinsă între 0 și 100,
{0} units of [{1}](#Form/Item/{1}) found in [{2}](#Form/Warehouse/{2}),{0} unități de [{1}] (# Forma / Postul / {1}) găsit în [{2}] (# Forma / Depozit / {2}),
{0} units of {1} needed in {2} on {3} {4} for {5} to complete this transaction.,{0} unități de {1} necesare în {2} pe {3} {4} pentru {5} pentru a finaliza această tranzacție.,
{0} units of {1} needed in {2} to complete this transaction.,{0} unități de {1} necesare în {2} pentru a finaliza această tranzacție.,
{0} valid serial nos for Item {1},{0} numere de serie valabile pentru articolul {1},
{0} variants created.,{0} variante create.,
{0} {1} created,{0} {1} creat,
{0} {1} does not exist,{0} {1} nu există,
{0} {1} has been modified. Please refresh.,{0} {1} a fost modificat. Vă rugăm să reîmprospătați.,
{0} {1} has not been submitted so the action cannot be completed,"{0} {1} nu a fost transmis, astfel încât acțiunea nu poate fi finalizată",
"{0} {1} is associated with {2}, but Party Account is {3}","{0} {1} este asociat cu {2}, dar contul de partid este {3}",
{0} {1} is cancelled or closed,{0} {1} este anulat sau închis,
{0} {1} is cancelled or stopped,{0} {1} este anulată sau oprită,
{0} {1} is cancelled so the action cannot be completed,"{0} {1} este anulată, astfel încât acțiunea nu poate fi terminată",
{0} {1} is closed,{0} {1} este închis,
{0} {1} is disabled,{0} {1} este dezactivat,
{0} {1} is frozen,{0} {1} este blocat,
{0} {1} is fully billed,{0} {1} este complet facturat,
{0} {1} is not active,{0} {1} nu este activ,
{0} {1} is not associated with {2} {3},{0} {1} nu este asociat cu {2} {3},
{0} {1} is not present in the parent company,{0} {1} nu este prezentă în compania mamă,
{0} {1} is not submitted,{0} {1} nu este introdus,
{0} {1} is {2},{0} {1} este {2},
{0} {1} must be submitted,{0} {1} trebuie să fie introdus,
{0} {1} not in any active Fiscal Year.,{0} {1} nu se gaseste in niciun an fiscal activ.,
{0} {1} status is {2},{0} {1} statusul este {2},
{0} {1}: 'Profit and Loss' type account {2} not allowed in Opening Entry,{0} {1}: &quot;profit și pierdere&quot; cont de tip {2} nu este permisă în orificiul de intrare,
{0} {1}: Account {2} does not belong to Company {3},{0} {1}: Cont {2} nu aparține Companiei {3},
{0} {1}: Account {2} is inactive,{0} {1}: Cont {2} este inactiv,
{0} {1}: Accounting Entry for {2} can only be made in currency: {3},{0} {1}: Intrarea contabila {2} poate fi făcută numai în moneda: {3},
{0} {1}: Cost Center is mandatory for Item {2},{0} {1}: 아이템 {2} 는 Cost Center가  필수임,
{0} {1}: Cost Center is required for 'Profit and Loss' account {2}. Please set up a default Cost Center for the Company.,{0} {1}: Centru de cost este necesară pentru &quot;profit și pierdere&quot; cont de {2}. Vă rugăm să configurați un centru de cost implicit pentru companie.,
{0} {1}: Cost Center {2} does not belong to Company {3},{0} {1}: Cost Center {2} nu aparține Companiei {3},
{0} {1}: Customer is required against Receivable account {2},{0} {1}: Clientul este necesară împotriva contului Receivable {2},
{0} {1}: Either debit or credit amount is required for {2},{0} {1}: Fie valoarea creditului de debit sau creditul sunt necesare pentru {2},
{0} {1}: Supplier is required against Payable account {2},{0} {1}: Furnizorul este necesar pentru Contul de plăți {2},
{0}% Billed,{0}% facturat,
{0}% Delivered,{0}% livrat,
{0}: From {1},{0}: De la {1},
{0}: {1} does not exists,{0}: {1} nu există,
{0}: {1} not found in Invoice Details table,{0}: {1} nu a fost găsit în tabelul Detalii factură,
{} of {},{} de {},
Assigned To,Atribuit pentru,
Chat,Chat,
Completed By,Completat De,
Day of Week,Zi a săptămânii,
"Dear System Manager,","Dragă System Manager,",
Default Value,Valoare implicită,
Email Group,E-mail grup,
Email Settings,Setări e-mail,
Email not sent to {0} (unsubscribed / disabled),Nu e-mail trimis la {0} (nesubscrise / dezactivat),
Error Message,Mesaj de eroare,
Fieldtype,Tip câmp,
Help Articles,Articole de ajutor,
ID,ID-ul,
Import,Importarea,
Language,Limba,
Likes,Au apreciat,
Merge with existing,Merge cu existente,
Orientation,Orientare,
Parent,Mamă,
Payment Failed,Plata esuata,
Personal,Trader,
Post,Publică,
Postal Code,Cod poștal,
Provider,Furnizor de,
Read Only,Doar Citire,
Recipient,Destinatar,
Reviews,opinii,
Sender,Expeditor,
There were errors while sending email. Please try again.,Au fost erori în timp ce trimiterea de e-mail. Încercaţi din nou.,
Values Changed,valori schimbată,
or,sau,
Ageing Range 4,Intervalul de îmbătrânire 4,
Allocated amount cannot be greater than unadjusted amount,Suma alocată nu poate fi mai mare decât suma nejustificată,
Allocated amount cannot be negative,Suma alocată nu poate fi negativă,
"Difference Account must be a Asset/Liability type account, since this Stock Entry is an Opening Entry","Contul de diferență trebuie să fie un cont de tip Active / Răspundere, deoarece această intrare de stoc este o intrare de deschidere",
Import Successful,Import de succes,
Please save first,Vă rugăm să salvați mai întâi,
Price not found for item {0} in price list {1},Preț care nu a fost găsit pentru articolul {0} din lista de prețuri {1},
Warehouse Type,Tip depozit,
'Date' is required,„Data” este necesară,
Budgets,Bugete,
Bundle Qty,Cantitate de pachet,
Company GSTIN,Compania GSTIN,
Company field is required,Câmpul companiei este obligatoriu,
Creating Dimensions...,Crearea dimensiunilor ...,
Duplicate entry against the item code {0} and manufacturer {1},Duplică intrarea în codul articolului {0} și producătorul {1},
Invalid GSTIN! The input you've entered doesn't match the GSTIN format for UIN Holders or Non-Resident OIDAR Service Providers,GSTIN nevalid! Intrarea introdusă nu se potrivește cu formatul GSTIN pentru deținătorii de UIN sau furnizorii de servicii OIDAR nerezidenți,
Invoice Grand Total,Total factură mare,
Last carbon check date cannot be a future date,Ultima dată de verificare a carbonului nu poate fi o dată viitoare,
Make Stock Entry,Faceți intrarea în stoc,
Quality Feedback,Feedback de calitate,
Quality Feedback Template,Șablon de feedback de calitate,
Rules for applying different promotional schemes.,Reguli pentru aplicarea diferitelor scheme promoționale.,
Show {0},Afișați {0},
Target Details,Detalii despre țintă,
{0} already has a Parent Procedure {1}.,{0} are deja o procedură părinte {1}.,
API,API-ul,
Annual,Anual,
Change,Schimbă,
Contact Email,Email Persoana de Contact,
From Date,Din data,
Group By,A se grupa cu,
Invalid URL,URL invalid,
Landscape,Peisaj,
Naming Series,Naming Series,
No data to export,Nu există date de exportat,
Portrait,Portret,
Print Heading,Imprimare Titlu,
Scheduler Inactive,Planificator inactiv,
Scheduler is inactive. Cannot import data.,Planificatorul este inactiv. Nu se pot importa date.,
Show Document,Afișează documentul,
Show Traceback,Afișare Traceback,
Video,Video,
% Of Grand Total,% Din totalul mare,
<b>Company</b> is a mandatory filter.,<b>Compania</b> este un filtru obligatoriu.,
<b>From Date</b> is a mandatory filter.,<b>De la Date</b> este un filtru obligatoriu.,
<b>From Time</b> cannot be later than <b>To Time</b> for {0},<b>From Time</b> nu poate fi mai târziu decât <b>To Time</b> pentru {0},
<b>To Date</b> is a mandatory filter.,<b>Până în prezent</b> este un filtru obligatoriu.,
A new appointment has been created for you with {0},O nouă programare a fost creată pentru dvs. cu {0},
Account Value,Valoarea contului,
Account is mandatory to get payment entries,Contul este obligatoriu pentru a obține înregistrări de plată,
Account is not set for the dashboard chart {0},Contul nu este setat pentru graficul de bord {0},
Account {0} does not exists in the dashboard chart {1},Contul {0} nu există în graficul de bord {1},
Account: <b>{0}</b> is capital Work in progress and can not be updated by Journal Entry,Cont: <b>{0}</b> este capital de lucru în desfășurare și nu poate fi actualizat de jurnalul de intrare,
Account: {0} is not permitted under Payment Entry,Cont: {0} nu este permis în baza intrării de plată,
Accounting Dimension <b>{0}</b> is required for 'Balance Sheet' account {1}.,Dimensiunea contabilității <b>{0}</b> este necesară pentru contul „bilanț” {1}.,
Accounting Dimension <b>{0}</b> is required for 'Profit and Loss' account {1}.,Dimensiunea contabilității <b>{0}</b> este necesară pentru contul „Profit și pierdere” {1}.,
Accounting Masters,Maeștri contabili,
Accounting Period overlaps with {0},Perioada de contabilitate se suprapune cu {0},
Activity,Activitate,
Add / Manage Email Accounts.,Adăugați / gestionați conturi de e-mail.,
Add Child,Adăugă Copil,
Add Multiple,Adăugați mai multe,
Add Participants,Adăugă Participanți,
Add to Featured Item,Adăugați la elementele prezentate,
Add your review,Adăugați-vă recenzia,
Add/Edit Coupon Conditions,Adăugați / Editați Condițiile cuponului,
Added to Featured Items,Adăugat la Elementele prezentate,
Added {0} ({1}),Adăugat {0} ({1}),
Address Line 1,Adresă Linie 1,
Addresses,Adrese,
Admission End Date should be greater than Admission Start Date.,Data de încheiere a admisiei ar trebui să fie mai mare decât data de începere a admiterii.,
All,Toate,
All bank transactions have been created,Toate tranzacțiile bancare au fost create,
All the depreciations has been booked,Toate amortizările au fost înregistrate,
Allow Resetting Service Level Agreement from Support Settings.,Permiteți resetarea acordului de nivel de serviciu din setările de asistență,
Amount of {0} is required for Loan closure,Suma de {0} este necesară pentru închiderea împrumutului,
Applied Coupon Code,Codul cuponului aplicat,
Apply Coupon Code,Aplicați codul promoțional,
Appointment Booking,Rezervare rezervare,
"As there are existing transactions against item {0}, you can not change the value of {1}","Deoarece există tranzacții existente la postul {0}, nu puteți modifica valoarea {1}",
Asset Id,ID material,
Asset Value,Valoarea activului,
Asset Value Adjustment cannot be posted before Asset's purchase date <b>{0}</b>.,Reglarea valorii activelor nu poate fi înregistrată înainte de data achiziției activelor <b>{0}</b> .,
Asset {0} does not belongs to the custodian {1},Activul {0} nu aparține custodului {1},
Asset {0} does not belongs to the location {1},Activele {0} nu aparțin locației {1},
At least one of the Applicable Modules should be selected,Trebuie selectat cel puțin unul dintre modulele aplicabile,
Atleast one asset has to be selected.,Cel puțin un activ trebuie să fie selectat.,
Authentication Failed,Autentificare esuata,
Automatic Reconciliation,Reconciliere automată,
Available For Use Date,Disponibil pentru data de utilizare,
Available Stock,Stoc disponibil,
"Available quantity is {0}, you need {1}","Cantitatea disponibilă este {0}, aveți nevoie de {1}",
BOM 1,BOM 1,
BOM 2,BOM 2,
BOM Comparison Tool,Instrument de comparare BOM,
BOM recursion: {0} cannot be child of {1},Recurs recurs BOM: {0} nu poate fi copil de {1},
BOM recursion: {0} cannot be parent or child of {1},Recurs din BOM: {0} nu poate fi părinte sau copil de {1},
Back to Messages,Înapoi la mesaje,
Bank Data mapper doesn't exist,Mapper Data Bank nu există,
Bank Details,Detalii bancare,
Bank account '{0}' has been synchronized,Contul bancar „{0}” a fost sincronizat,
Bank account {0} already exists and could not be created again,Contul bancar {0} există deja și nu a mai putut fi creat din nou,
Bank accounts added,S-au adăugat conturi bancare,
Batch no is required for batched item {0},Numărul lot nu este necesar pentru articol lot {0},
Billing Date,Data de facturare,
Billing Interval Count cannot be less than 1,Numărul de intervale de facturare nu poate fi mai mic de 1,
Blue,Albastru,
Book,Carte,
Book Appointment,Numire carte,
Brand,Marca,
Browse,Parcurgere,
Call Connected,Apel conectat,
Call Disconnected,Apel deconectat,
Call Missed,Sună dor,
Call Summary,Rezumatul apelului,
Call Summary Saved,Rezumat apel salvat,
Cancelled,Anulat,
Cannot Calculate Arrival Time as Driver Address is Missing.,Nu se poate calcula ora de sosire deoarece adresa șoferului lipsește.,
Cannot Optimize Route as Driver Address is Missing.,Nu se poate optimiza ruta deoarece adresa șoferului lipsește.,
Cannot complete task {0} as its dependant task {1} are not ccompleted / cancelled.,Nu se poate finaliza sarcina {0} ca sarcină dependentă {1} nu sunt completate / anulate.,
Cannot find a matching Item. Please select some other value for {0}.,Nu pot găsi o potrivire articol. Vă rugăm să selectați o altă valoare pentru {0}.,
"Cannot overbill for Item {0} in row {1} more than {2}. To allow over-billing, please set allowance in Accounts Settings","Nu se poate depăși pentru articolul {0} din rândul {1} mai mult decât {2}. Pentru a permite supra-facturarea, vă rugăm să setați alocația în Setările conturilor",
"Capacity Planning Error, planned start time can not be same as end time","Eroare de planificare a capacității, ora de pornire planificată nu poate fi aceeași cu ora finală",
Categories,Categorii,
Changes in {0},Modificări în {0},
Chart,Diagramă,
Choose a corresponding payment,Alegeți o plată corespunzătoare,
Click on the link below to verify your email and confirm the appointment,Faceți clic pe linkul de mai jos pentru a vă confirma e-mailul și pentru a confirma programarea,
Close,Închideți,
Communication,Comunicare,
Compact Item Print,Compact Postul de imprimare,
Company,Compania,
Company of asset {0} and purchase document {1} doesn't matches.,Compania de activ {0} și documentul de achiziție {1} nu se potrivesc.,
Compare BOMs for changes in Raw Materials and Operations,Comparați OM-urile pentru modificările materiilor prime și operațiunilor,
Compare List function takes on list arguments,Comparați funcția Listă ia argumentele listei,
Complete,Complet,
Completed,Finalizat,
Completed Quantity,Cantitate completată,
Connect your Exotel Account to ERPNext and track call logs,Conectați contul dvs. Exotel la ERPNext și urmăriți jurnalele de apeluri,
Connect your bank accounts to ERPNext,Conectați-vă conturile bancare la ERPNext,
Contact Seller,Contacteaza vanzatorul,
Continue,Continua,
Cost Center: {0} does not exist,Centrul de costuri: {0} nu există,
Couldn't Set Service Level Agreement {0}.,Nu s-a putut stabili acordul de nivel de serviciu {0}.,
Country,Ţară,
Country Code in File does not match with country code set up in the system,Codul de țară din fișier nu se potrivește cu codul de țară configurat în sistem,
Create New Contact,Creați un nou contact,
Create New Lead,Creați noul plumb,
Create Pick List,Creați lista de alegeri,
Create Quality Inspection for Item {0},Creați inspecție de calitate pentru articol {0},
Creating Accounts...,Crearea de conturi ...,
Creating bank entries...,Crearea intrărilor bancare ...,
Credit limit is already defined for the Company {0},Limita de credit este deja definită pentru companie {0},
Ctrl + Enter to submit,Ctrl + Enter pentru a trimite,
Ctrl+Enter to submit,Ctrl + Enter pentru a trimite,
Currency,Valută,
Current Status,Starea curentă a armatei,
Customer PO,PO de client,
Daily,Zilnic,
Date,Dată,
Date of Birth cannot be greater than Joining Date.,Data nașterii nu poate fi mai mare decât data de aderare.,
Dear,Dragă,
Default,Implicit,
Define coupon codes.,Definiți codurile cuponului.,
Delayed Days,Zile amânate,
Delete,Șterge,
Delivered Quantity,Cantitate livrată,
Delivery Notes,Note de livrare,
Depreciated Amount,Suma depreciată,
Description,Descriere,
Designation,Destinatie,
Difference Value,Valoarea diferenței,
Dimension Filter,Filtrul de dimensiuni,
Disabled,Dezactivat,
Disbursement and Repayment,Plată și rambursare,
Distance cannot be greater than 4000 kms,Distanța nu poate fi mai mare de 4000 km,
Do you want to submit the material request,Doriți să trimiteți solicitarea materialului,
Doctype,doctype,
Document {0} successfully uncleared,Documentul {0} nu a fost clar necunoscut,
Download Template,Descărcați Sablon,
Dr,Dr,
Due Date,Data Limita,
Duplicate,Duplicat,
Duplicate Project with Tasks,Duplică proiect cu sarcini,
Duplicate project has been created,Proiectul duplicat a fost creat,
E-Way Bill JSON can only be generated from a submitted document,e-Way Bill JSON poate fi generat numai dintr-un document trimis,
E-Way Bill JSON can only be generated from submitted document,E-Way Bill JSON poate fi generat numai din documentul trimis,
E-Way Bill JSON cannot be generated for Sales Return as of now,E-Way Bill JSON nu poate fi generat pentru Returnarea vânzărilor de acum,
ERPNext could not find any matching payment entry,ERPNext nu a găsit nicio intrare de plată potrivită,
Earliest Age,Cea mai timpurie vârstă,
Edit Details,Editează detaliile,
Either GST Transporter ID or Vehicle No is required if Mode of Transport is Road,"Fie ID-ul transportatorului GST, fie numărul vehiculului nu este necesar dacă modul de transport este rutier",
Email,E-mail,
Email Campaigns,Campanii prin e-mail,
Employee ID is linked with another instructor,ID-ul angajaților este legat de un alt instructor,
Employee Tax and Benefits,Impozitul și beneficiile angajaților,
Employee is required while issuing Asset {0},Angajatul este necesar la emiterea de activ {0},
Employee {0} does not belongs to the company {1},Angajatul {0} nu aparține companiei {1},
Enable Auto Re-Order,Activați re-comanda automată,
End Date of Agreement can't be less than today.,Data de încheiere a acordului nu poate fi mai mică decât astăzi.,
End Time,End Time,
Energy Point Leaderboard,Tabloul de bord al punctelor energetice,
Enter API key in Google Settings.,Introduceți cheia API în Setări Google.,
Enter Supplier,Introduceți furnizorul,
Enter Value,Introduceți valoarea,
Entity Type,Tip de entitate,
Error,Eroare,
Error in Exotel incoming call,Eroare în apelul primit la Exotel,
Error: {0} is mandatory field,Eroare: {0} este câmp obligatoriu,
Exception occurred while reconciling {0},Excepție a avut loc în timp ce s-a reconciliat {0},
Expected and Discharge dates cannot be less than Admission Schedule date,Datele preconizate și descărcarea de gestiune nu pot fi mai mici decât Data planificării de admitere,
Expired,Expirat,
Export,Exportă,
Export not allowed. You need {0} role to export.,Export nu este permisă. Ai nevoie de {0} rolul de a exporta.,
Failed to add Domain,Nu a putut adăuga Domeniul,
Fetch Items from Warehouse,Obține obiecte de la Depozit,
Fetching...,... Fetching,
Field,Camp,
Filters,Filtre,
Finding linked payments,Găsirea plăților legate,
Fleet Management,Conducerea flotei,
Following fields are mandatory to create address:,Următoarele câmpuri sunt obligatorii pentru a crea adresa:,
For Month,Pentru luna,
"For item {0} at row {1}, count of serial numbers does not match with the picked quantity","Pentru articolul {0} din rândul {1}, numărul de serii nu se potrivește cu cantitatea aleasă",
For operation {0}: Quantity ({1}) can not be greter than pending quantity({2}),Pentru operare {0}: cantitatea ({1}) nu poate fi mai mare decât cantitatea în curs ({2}),
For quantity {0} should not be greater than work order quantity {1},Pentru cantitatea {0} nu trebuie să fie mai mare decât cantitatea de comandă de lucru {1},
Free item not set in the pricing rule {0},Element gratuit care nu este setat în regula prețurilor {0},
From Date and To Date are Mandatory,De la data și până la data sunt obligatorii,
From employee is required while receiving Asset {0} to a target location,De la angajat este necesar în timp ce primiți Active {0} către o locație țintă,
Future Payment Amount,Suma viitoare de plată,
Future Payment Ref,Plată viitoare Ref,
Future Payments,Plăți viitoare,
GST HSN Code does not exist for one or more items,Codul GST HSN nu există pentru unul sau mai multe articole,
Generate E-Way Bill JSON,Generați JSON Bill e-Way,
Get Items,Obtine Articole,
Get Outstanding Documents,Obțineți documente de excepție,
Goal,Obiectiv,
Greater Than Amount,Mai mare decât suma,
Green,Verde,
Group,Grup,
Group By Customer,Grup după client,
Group By Supplier,Grup după furnizor,
Group Node,Nod Group,
Group Warehouses cannot be used in transactions. Please change the value of {0},Depozitele de grup nu pot fi utilizate în tranzacții. Vă rugăm să schimbați valoarea {0},
Help,Ajutor,
Help Article,articol de ajutor,
"Helps you keep tracks of Contracts based on Supplier, Customer and Employee","Te ajută să ții evidența contractelor bazate pe furnizor, client și angajat",
Helps you manage appointments with your leads,Vă ajută să gestionați programările cu clienții dvs.,
Home,Acasă,
IBAN is not valid,IBAN nu este valid,
Import Data from CSV / Excel files.,Importați date din fișiere CSV / Excel.,
In Progress,In progres,
Incoming call from {0},Apel primit de la {0},
Incorrect Warehouse,Depozit incorect,
Invalid Barcode. There is no Item attached to this barcode.,Cod de bare nevalid. Nu există niciun articol atașat acestui cod de bare.,
Invalid credentials,Credențe nevalide,
Issue Priority.,Prioritate de emisiune.,
Issue Type.,Tipul problemei.,
"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Se pare că există o problemă cu configurația benzii serverului. În caz de eșec, suma va fi rambursată în cont.",
Item Reported,Articol raportat,
Item listing removed,Elementul de articol a fost eliminat,
Item taxes updated,Impozitele pe articol au fost actualizate,
Item {0}: {1} qty produced. ,Articol {0}: {1} cantitate produsă.,
Joining Date can not be greater than Leaving Date,Data de înscriere nu poate fi mai mare decât Data de plecare,
Lab Test Item {0} already exist,Elementul testului de laborator {0} există deja,
Last Issue,Ultima problemă,
Latest Age,Etapă tarzie,
Leaves Taken,Frunze luate,
Less Than Amount,Mai puțin decât suma,
Liabilities,pasive,
Loading...,Se încarcă...,
Loan Applications from customers and employees.,Aplicații de împrumut de la clienți și angajați.,
Loan Processes,Procese de împrumut,
Loan Type for interest and penalty rates,Tip de împrumut pentru dobânzi și rate de penalizare,
Loans,Credite,
Loans provided to customers and employees.,Împrumuturi acordate clienților și angajaților.,
Location,Închiriere,
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Se pare că cineva te-a trimis la o adresă URL incompletă. Vă rugăm să cereți-le să se uite în ea.,
Make Journal Entry,Asigurați Jurnal intrare,
Make Purchase Invoice,Realizeaza Factura de Cumparare,
Manufactured,Fabricat,
Mark Work From Home,Marcați munca de acasă,
Master,Master,
Max strength cannot be less than zero.,Rezistența maximă nu poate fi mai mică de zero.,
Maximum attempts for this quiz reached!,Încercări maxime pentru acest test au fost atinse!,
Message,Mesaj,
Missing Values Required,Valorile lipsă necesare,
Mobile No,Numar de mobil,
Mobile Number,Numar de mobil,
Month,Lună,
Name,Nume,
Near you,Lângă tine,
Net Profit/Loss,Profit / Pierdere Netă,
New Expense,Cheltuieli noi,
New Invoice,Factură nouă,
New Payment,Nouă plată,
New release date should be in the future,Noua dată a lansării ar trebui să fie în viitor,
No Account matched these filters: {},Niciun cont nu se potrivește cu aceste filtre: {},
No communication found.,Nu a fost găsită nicio comunicare.,
No correct answer is set for {0},Nu este setat un răspuns corect pentru {0},
No description,fără descriere,
No issue has been raised by the caller.,Apelantul nu a pus nicio problemă.,
No items to publish,Nu există articole de publicat,
No outstanding invoices found,Nu s-au găsit facturi restante,
No outstanding invoices found for the {0} {1} which qualify the filters you have specified.,Nu s-au găsit facturi restante pentru {0} {1} care califică filtrele pe care le-ați specificat.,
No outstanding invoices require exchange rate revaluation,Fără facturi restante nu necesită reevaluarea cursului de schimb,
No reviews yet,Niciun comentariu încă,
No views yet,Nu există încă vizionări,
Non stock items,Articole care nu sunt pe stoc,
Not Allowed,Nu permise,
Not allowed to create accounting dimension for {0},Nu este permisă crearea unei dimensiuni contabile pentru {0},
Not permitted. Please disable the Lab Test Template,Nu sunt acceptate. Vă rugăm să dezactivați șablonul de testare,
Note,Notă,
Notes: ,Observații:,
On Converting Opportunity,La convertirea oportunității,
On Purchase Order Submission,La trimiterea comenzii de cumpărare,
On Sales Order Submission,La trimiterea comenzii de vânzare,
On Task Completion,La finalizarea sarcinii,
On {0} Creation,La {0} Creație,
Only .csv and .xlsx files are supported currently,"În prezent, numai fișierele .csv și .xlsx sunt acceptate",
Open,Deschide,
Open Contact,Deschideți contactul,
Open Lead,Deschideți plumb,
Opening and Closing,Deschiderea și închiderea,
Operating Cost as per Work Order / BOM,Costul de operare conform ordinului de lucru / BOM,
Order Amount,Cantitatea comenzii,
Page {0} of {1},Pagină {0} din {1},
Paid amount cannot be less than {0},Suma plătită nu poate fi mai mică de {0},
Parent Company must be a group company,Compania-mamă trebuie să fie o companie de grup,
Passing Score value should be between 0 and 100,Valoarea punctajului de trecere ar trebui să fie între 0 și 100,
Patient History,Istoricul pacientului,
Pause,Pauză,
Pay,Plăti,
Payment Document Type,Tip de document de plată,
Payment Name,Numele de plată,
Pending,În așteptarea,
Performance,Performanţă,
Period based On,Perioada bazată pe,
Perpetual inventory required for the company {0} to view this report.,Inventar perpetuu necesar companiei {0} pentru a vedea acest raport.,
Phone,Telefon,
Pick List,Lista de alegeri,
Plaid authentication error,Eroare de autentificare plaidă,
Plaid public token error,Eroare a simbolului public cu plaid,
Plaid transactions sync error,Eroare de sincronizare a tranzacțiilor plasate,
Please check the error log for details about the import errors,Verificați jurnalul de erori pentru detalii despre erorile de import,
Please create <b>DATEV Settings</b> for Company <b>{}</b>.,Vă rugăm să creați <b>DATEV Setări</b> pentru companie <b>{}</b> .,
Please create adjustment Journal Entry for amount {0} ,Vă rugăm să creați ajustarea Intrare în jurnal pentru suma {0},
Please do not create more than 500 items at a time,Vă rugăm să nu creați mai mult de 500 de articole simultan,
Please enter <b>Difference Account</b> or set default <b>Stock Adjustment Account</b> for company {0},Vă rugăm să introduceți <b>contul de diferență</b> sau să setați <b>contul de ajustare a stocului</b> implicit pentru compania {0},
Please enter GSTIN and state for the Company Address {0},Vă rugăm să introduceți GSTIN și să indicați adresa companiei {0},
Please enter Item Code to get item taxes,Vă rugăm să introduceți Codul articolului pentru a obține impozite pe articol,
Please enter Warehouse and Date,Vă rugăm să introduceți Depozitul și data,
Please login as a Marketplace User to edit this item.,Vă rugăm să vă autentificați ca utilizator de piață pentru a edita acest articol.,
Please login as a Marketplace User to report this item.,Vă rugăm să vă autentificați ca utilizator de piață pentru a raporta acest articol.,
Please select <b>Template Type</b> to download template,Vă rugăm să selectați <b>Tip de șablon</b> pentru a descărca șablonul,
Please select Customer first,Vă rugăm să selectați Clientul mai întâi,
Please select Item Code first,Vă rugăm să selectați mai întâi Codul articolului,
Please select a Delivery Note,Vă rugăm să selectați o notă de livrare,
Please select a Sales Person for item: {0},Vă rugăm să selectați o persoană de vânzări pentru articol: {0},
Please select another payment method. Stripe does not support transactions in currency '{0}',Selectați o altă metodă de plată. Stripe nu acceptă tranzacțiile în valută &quot;{0}&quot;,
Please select the customer.,Vă rugăm să selectați clientul.,
Please set a Supplier against the Items to be considered in the Purchase Order.,Vă rugăm să setați un furnizor împotriva articolelor care trebuie luate în considerare în comanda de achiziție.,
Please set account heads in GST Settings for Compnay {0},Vă rugăm să setați capetele de cont în Setările GST pentru Compnay {0},
Please set an email id for the Lead {0},Vă rugăm să setați un cod de e-mail pentru Lead {0},
Please set default UOM in Stock Settings,Vă rugăm să setați UOM implicit în Setări stoc,
Please set filter based on Item or Warehouse due to a large amount of entries.,Vă rugăm să setați filtrul în funcție de articol sau depozit datorită unei cantități mari de înregistrări.,
Please set up the Campaign Schedule in the Campaign {0},Vă rugăm să configurați Planificarea Campaniei în Campania {0},
Please set valid GSTIN No. in Company Address for company {0},Vă rugăm să setați numărul GSTIN valid în adresa companiei pentru compania {0},
Please set {0},Vă rugăm să setați {0},customer
Please setup a default bank account for company {0},Vă rugăm să configurați un cont bancar implicit pentru companie {0},
Please specify,Vă rugăm să specificați,
Please specify a {0},Vă rugăm să specificați un {0},lead
Priority,Prioritate,
Priority has been changed to {0}.,Prioritatea a fost modificată la {0}.,
Priority {0} has been repeated.,Prioritatea {0} a fost repetată.,
Processing XML Files,Procesarea fișierelor XML,
Profitability,Rentabilitatea,
Project,Proiect,
Provide the academic year and set the starting and ending date.,Furnizați anul universitar și stabiliți data de început și de încheiere.,
Public token is missing for this bank,Jurnalul public lipsește pentru această bancă,
Publish 1 Item,Publicați 1 articol,
Publish Items,Publica articole,
Publish More Items,Publicați mai multe articole,
Publish Your First Items,Publicați primele dvs. articole,
Publish {0} Items,Publicați {0} articole,
Published Items,Articole publicate,
Purchase Invoice cannot be made against an existing asset {0},Factura de cumpărare nu poate fi făcută cu un activ existent {0},
Purchase Invoices,Facturi de cumpărare,
Purchase Orders,Ordine de achiziție,
Purchase Receipt doesn't have any Item for which Retain Sample is enabled.,Încasarea de cumpărare nu are niciun articol pentru care este activat eșantionul de păstrare.,
Purchase Return,Înapoi cumpărare,
Qty of Finished Goods Item,Cantitatea articolului de produse finite,
Quality Inspection required for Item {0} to submit,Inspecția de calitate necesară pentru trimiterea articolului {0},
Quantity to Manufacture,Cantitate de fabricare,
Quantity to Manufacture can not be zero for the operation {0},Cantitatea de fabricație nu poate fi zero pentru operațiune {0},
Quarterly,Trimestrial,
Queued,Coada de așteptare,
Quick Entry,Intrarea rapidă,
Quiz {0} does not exist,Chestionarul {0} nu există,
Quotation Amount,Suma ofertei,
Rate or Discount is required for the price discount.,Tariful sau Reducerea este necesară pentru reducerea prețului.,
Reason,Motiv,
Reconcile Entries,Reconciliați intrările,
Reconcile this account,Reconciliați acest cont,
Reconciled,reconciliat,
Recruitment,Recrutare,
Red,Roșu,
Release date must be in the future,Data lansării trebuie să fie în viitor,
Relieving Date must be greater than or equal to Date of Joining,Data scutirii trebuie să fie mai mare sau egală cu data aderării,
Rename,Redenumire,
Rename Not Allowed,Redenumirea nu este permisă,
Report Item,Raport articol,
Report this Item,Raportați acest articol,
Reserved Qty for Subcontract: Raw materials quantity to make subcontracted items.,Cantitate rezervată pentru subcontract: cantitate de materii prime pentru a face obiecte subcontractate.,
Reset,Resetează,
Reset Service Level Agreement,Resetați Acordul privind nivelul serviciilor,
Resetting Service Level Agreement.,Resetarea Acordului privind nivelul serviciilor.,
Return amount cannot be greater unclaimed amount,Suma returnată nu poate fi o sumă nereclamată mai mare,
Review,Revizuire,
Room,Cameră,
Room Type,Tip Cameră,
Row # ,Rând #,
Row #{0}: Accepted Warehouse and Supplier Warehouse cannot be same,Rândul # {0}: depozitul acceptat și depozitul furnizorului nu pot fi aceleași,
Row #{0}: Cannot delete item {1} which has already been billed.,Rândul # {0}: Nu se poate șterge elementul {1} care a fost deja facturat.,
Row #{0}: Cannot delete item {1} which has already been delivered,Rândul # {0}: Nu se poate șterge articolul {1} care a fost deja livrat,
Row #{0}: Cannot delete item {1} which has already been received,Rândul # {0}: Nu se poate șterge elementul {1} care a fost deja primit,
Row #{0}: Cannot delete item {1} which has work order assigned to it.,Rândul # {0}: Nu se poate șterge elementul {1} care i-a fost atribuită o ordine de lucru.,
Row #{0}: Cannot delete item {1} which is assigned to customer's purchase order.,Rândul # {0}: Nu se poate șterge articolul {1} care este atribuit comenzii de cumpărare a clientului.,
Row #{0}: Cannot select Supplier Warehouse while suppling raw materials to subcontractor,Rândul # {0}: Nu se poate selecta Furnizorul în timp ce furnizează materii prime subcontractantului,
Row #{0}: Cost Center {1} does not belong to company {2},Rândul {{0}: Centrul de costuri {1} nu aparține companiei {2},
Row #{0}: Operation {1} is not completed for {2} qty of finished goods in Work Order {3}. Please update operation status via Job Card {4}.,Rândul # {0}: Operația {1} nu este finalizată pentru {2} cantitate de mărfuri finite în Ordinul de lucru {3}. Vă rugăm să actualizați starea operației prin intermediul cărții de lucru {4}.,
Row #{0}: Payment document is required to complete the transaction,Rândul # {0}: documentul de plată este necesar pentru a finaliza tranzacția,
Row #{0}: Quantity for Item {1} cannot be zero.,Rândul # {0}: Cantitatea articolului {1} nu poate fi zero.,
Row #{0}: Serial No {1} does not belong to Batch {2},Rândul # {0}: nr. De serie {1} nu aparține lotului {2},
Row #{0}: Service End Date cannot be before Invoice Posting Date,Rândul # {0}: Data de încheiere a serviciului nu poate fi înainte de Data de înregistrare a facturii,
Row #{0}: Service Start Date cannot be greater than Service End Date,Rândul # {0}: Data de începere a serviciului nu poate fi mai mare decât Data de încheiere a serviciului,
Row #{0}: Service Start and End Date is required for deferred accounting,Rândul # {0}: Data de început și de încheiere a serviciului este necesară pentru contabilitate amânată,
Row {0}: Invalid Item Tax Template for item {1},Rândul {0}: șablonul de impozit pe articol nevalid pentru articolul {1},
Row {0}: Quantity not available for {4} in warehouse {1} at posting time of the entry ({2} {3}),Rândul {0}: cantitatea nu este disponibilă pentru {4} în depozit {1} la momentul înregistrării la intrare ({2} {3}),
Row {0}: user has not applied the rule {1} on the item {2},Rândul {0}: utilizatorul nu a aplicat regula {1} pe articolul {2},
Row {0}:Sibling Date of Birth cannot be greater than today.,Rândul {0}: Data nașterii în materie nu poate fi mai mare decât astăzi.,
Row({0}): {1} is already discounted in {2},Rândul ({0}): {1} este deja actualizat în {2},
Rows Added in {0},Rânduri adăugate în {0},
Rows Removed in {0},Rândurile eliminate în {0},
Save,Salvează,
Save Item,Salvare articol,
Saved Items,Articole salvate,
Search Items ...,Caută articole ...,
Search for a payment,Căutați o plată,
Search for anything ...,Căutați orice ...,
Search results for,cauta rezultate pentru,
Select Difference Account,Selectați Cont de diferență,
Select a Default Priority.,Selectați o prioritate implicită.,
Select a company,Selectați o companie,
Select finance book for the item {0} at row {1},Selectați cartea de finanțe pentru articolul {0} din rândul {1},
Select only one Priority as Default.,Selectați doar o prioritate ca implicită.,
Seller Information,Informatiile vanzatorului,
Send,Trimiteți,
Send a message,Trimite un mesaj,
Sending,Trimitere,
Sends Mails to lead or contact based on a Campaign schedule,Trimite e-mailuri pentru a conduce sau a contacta pe baza unui program de campanie,
Serial Number Created,Număr de serie creat,
Serial Numbers Created,Numere de serie create,
Serial no(s) required for serialized item {0},Numărul (numerele) de serie necesare pentru articolul serializat {0},
Series,Serii,
Server Error,Eroare de server,
Service Level Agreement has been changed to {0}.,Acordul privind nivelul serviciilor a fost modificat în {0}.,
Service Level Agreement was reset.,Acordul privind nivelul serviciilor a fost resetat.,
Service Level Agreement with Entity Type {0} and Entity {1} already exists.,Acordul privind nivelul serviciului cu tipul de entitate {0} și entitatea {1} există deja.,
Set Meta Tags,Setați etichete meta,
Set {0} in company {1},Setați {0} în companie {1},
Setup,Configurare,
Shift Management,Managementul schimbării,
Show Future Payments,Afișați plăți viitoare,
Show Linked Delivery Notes,Afișare Note de livrare conexe,
Show Sales Person,Afișați persoana de vânzări,
Show Stock Ageing Data,Afișează date de îmbătrânire a stocurilor,
Show Warehouse-wise Stock,Afișați stocul înțelept,
Size,Dimensiune,
Something went wrong while evaluating the quiz.,Ceva nu a mers în timp ce evaluați testul.,
Sr,sr,
Start,Început(Pornire),
Start Date cannot be before the current date,Data de început nu poate fi înainte de data curentă,
Start Time,Ora de începere,
Status,Status,
Status must be Cancelled or Completed,Starea trebuie anulată sau completată,
Stock Balance Report,Raportul soldului stocurilor,
Stock Entry has been already created against this Pick List,Intrarea pe stoc a fost deja creată pe baza acestei liste de alegeri,
Stock Ledger ID,ID evidență stoc,
Stock Value ({0}) and Account Balance ({1}) are out of sync for account {2} and it's linked warehouses.,Valoarea stocului ({0}) și soldul contului ({1}) nu sunt sincronizate pentru contul {2} și sunt depozite legate.,
Stores - {0},Magazine - {0},
Student with email {0} does not exist,Studentul cu e-mail {0} nu există,
Submit Review,Trimite recenzie,
Submitted,Inscrisa,
Supplier Addresses And Contacts,Adrese furnizorului și de Contacte,
Synchronize this account,Sincronizați acest cont,
Tag,Etichetă,
Target Location is required while receiving Asset {0} from an employee,Locația țintă este necesară în timp ce primiți activ {0} de la un angajat,
Target Location is required while transferring Asset {0},Locația țintă este necesară în timpul transferului de active {0},
Target Location or To Employee is required while receiving Asset {0},Locația țintei sau către angajat este necesară în timp ce primiți activ {0},
Task's {0} End Date cannot be after Project's End Date.,Data de încheiere a sarcinii {0} nu poate fi după data de încheiere a proiectului.,
Task's {0} Start Date cannot be after Project's End Date.,Data de început a sarcinii {0} nu poate fi după data de încheiere a proiectului.,
Tax Account not specified for Shopify Tax {0},Contul fiscal nu este specificat pentru Shopify Tax {0},
Tax Total,Total impozit,
Template,Șablon,
The Campaign '{0}' already exists for the {1} '{2}',Campania „{0}” există deja pentru {1} &#39;{2}&#39;,
The difference between from time and To Time must be a multiple of Appointment,Diferența dintre timp și To Time trebuie să fie multiplu de numire,
The field Asset Account cannot be blank,Câmpul Contul de active nu poate fi gol,
The field Equity/Liability Account cannot be blank,Câmpul Contul de capitaluri proprii / pasiv nu poate fi necompletat,
The following serial numbers were created: <br><br> {0},Au fost create următoarele numere de serie: <br><br> {0},
The parent account {0} does not exists in the uploaded template,Contul părinte {0} nu există în șablonul încărcat,
The question cannot be duplicate,Întrebarea nu poate fi duplicată,
The selected payment entry should be linked with a creditor bank transaction,Intrarea de plată selectată trebuie să fie legată de o tranzacție bancară cu creditor,
The selected payment entry should be linked with a debtor bank transaction,Intrarea de plată selectată trebuie să fie legată de o tranzacție bancară cu debitori,
The total allocated amount ({0}) is greated than the paid amount ({1}).,Suma totală alocată ({0}) este majorată decât suma plătită ({1}).,
This Service Level Agreement is specific to Customer {0},Acest Acord de nivel de serviciu este specific Clientului {0},
This action will unlink this account from any external service integrating ERPNext with your bank accounts. It cannot be undone. Are you certain ?,Această acțiune va deconecta acest cont de orice serviciu extern care integrează ERPNext cu conturile dvs. bancare. Nu poate fi anulată. Esti sigur ?,
This bank account is already synchronized,Acest cont bancar este deja sincronizat,
This bank transaction is already fully reconciled,Această tranzacție bancară este deja complet reconciliată,
This page keeps track of items you want to buy from sellers.,Această pagină ține evidența articolelor pe care doriți să le cumpărați de la vânzători.,
This page keeps track of your items in which buyers have showed some interest.,Această pagină ține evidența articolelor dvs. pentru care cumpărătorii au arătat interes.,
Thursday,Joi,
Title,Titlu,
"To allow over billing, update ""Over Billing Allowance"" in Accounts Settings or the Item.","Pentru a permite facturarea excesivă, actualizați „Indemnizație de facturare” în Setări conturi sau element.",
"To allow over receipt / delivery, update ""Over Receipt/Delivery Allowance"" in Stock Settings or the Item.","Pentru a permite primirea / livrarea, actualizați „Indemnizația de primire / livrare” în Setări de stoc sau articol.",
Total,Total,
Total Payment Request amount cannot be greater than {0} amount,Suma totală a solicitării de plată nu poate fi mai mare decât {0},
Total payments amount can't be greater than {},Valoarea totală a plăților nu poate fi mai mare de {},
Totals,Totaluri,
Transactions already retreived from the statement,Tranzacțiile au fost retrase din extras,
Transfer Material to Supplier,Transfer de material la furnizor,
Transport Receipt No and Date are mandatory for your chosen Mode of Transport,Numărul de recepție și data de transport nu sunt obligatorii pentru modul de transport ales,
Tuesday,Marți,
Type,Tip,
Unable to find the time slot in the next {0} days for the operation {1}.,Nu se poate găsi intervalul orar în următoarele {0} zile pentru operația {1}.,
Unable to update remote activity,Imposibil de actualizat activitatea de la distanță,
Unknown Caller,Apelant necunoscut,
Unlink external integrations,Deconectați integrările externe,
Unpublish Item,Publicarea articolului,
Unreconciled,nereconciliat,
Unsupported GST Category for E-Way Bill JSON generation,Categorie GST neacceptată pentru generarea JSON Bill E-Way,
Update,Actualizare,
Update Taxes for Items,Actualizați impozitele pentru articole,
"Upload a bank statement, link or reconcile a bank account","Încărcați un extras bancar, conectați sau reconciliați un cont bancar",
Upload a statement,Încărcați o declarație,
Use a name that is different from previous project name,Utilizați un nume diferit de numele proiectului anterior,
User {0} is disabled,Utilizatorul {0} este dezactivat,
Users and Permissions,Utilizatori și permisiuni,
Valuation Rate required for Item {0} at row {1},Rata de evaluare necesară pentru articolul {0} la rândul {1},
Values Out Of Sync,Valori ieșite din sincronizare,
Vehicle Type is required if Mode of Transport is Road,Tip de vehicul este necesar dacă modul de transport este rutier,
Vendor Name,Numele vânzătorului,
Verify Email,Verificați e-mail,
View,Vedere,
View all issues from {0},Vedeți toate problemele din {0},
View call log,Vizualizați jurnalul de apeluri,
Warehouse,Depozit,
Warehouse not found against the account {0},Depozitul nu a fost găsit în contul {0},
Welcome to {0},Bine ai venit la {0},
Why do think this Item should be removed?,De ce credeți că acest articol ar trebui eliminat?,
Work Order {0}: Job Card not found for the operation {1},Comandă de lucru {0}: cartea de muncă nu a fost găsită pentru operație {1},
Workday {0} has been repeated.,Ziua lucrătoare {0} a fost repetată.,
XML Files Processed,Fișiere XML procesate,
Year,An,
Yearly,Anual,
You are not allowed to enroll for this course,Nu aveți voie să vă înscrieți la acest curs,
You are not enrolled in program {0},Nu sunteți înscris în programul {0},
You can Feature upto 8 items.,Puteți prezenta până la 8 articole.,
You can also copy-paste this link in your browser,"De asemenea, puteți să copiați-paste această legătură în browser-ul dvs.",
You can publish upto 200 items.,Puteți publica până la 200 de articole.,
You have to enable auto re-order in Stock Settings to maintain re-order levels.,Trebuie să activați re-comanda auto în Setări stoc pentru a menține nivelurile de re-comandă.,
You must be a registered supplier to generate e-Way Bill,Pentru a genera Bill e-Way trebuie să fiți un furnizor înregistrat,
You need to login as a Marketplace User before you can add any reviews.,Trebuie să vă autentificați ca utilizator de piață înainte de a putea adăuga recenzii.,
Your Featured Items,Articolele dvs. recomandate,
Your Items,Articolele dvs.,
Your Profile,Profilul tau,
Your rating:,Rating-ul tău:,
and,și,
e-Way Bill already exists for this document,e-Way Bill există deja pentru acest document,
woocommerce - {0},woocommerce - {0},
{0} Coupon used are {1}. Allowed quantity is exhausted,{0} Cuponul utilizat este {1}. Cantitatea admisă este epuizată,
{0} Operations: {1},{0} Operații: {1},
{0} bank transaction(s) created,{0} tranzacțiile bancare create,
{0} bank transaction(s) created and {1} errors,{0} tranzacțiile bancare create și {1} erori,
{0} can not be greater than {1},{0} nu poate fi mai mare de {1},
{0} conversations,{0} conversații,
{0} is not a company bank account,{0} nu este un cont bancar al companiei,
{0} is not a group node. Please select a group node as parent cost center,{0} nu este un nod de grup. Vă rugăm să selectați un nod de grup ca centru de costuri parentale,
{0} is not the default supplier for any items.,{0} nu este furnizorul prestabilit pentru niciun articol.,
{0} is required,{0} este necesar,
{0}: {1} must be less than {2},{0}: {1} trebuie să fie mai mic decât {2},
{} is required to generate E-Way Bill JSON,{} este necesar pentru a genera Bill JSON E-Way,
"Invalid lost reason {0}, please create a new lost reason","Motiv pierdut nevalabil {0}, vă rugăm să creați un motiv nou pierdut",
Profit This Year,Profit anul acesta,
Total Expense,Cheltuieli totale,
Total Expense This Year,Cheltuieli totale în acest an,
Total Income,Venit total,
Total Income This Year,Venit total în acest an,
Barcode,coduri de bare,
Clear,clar,
Comments,Comentarii,
DocType,DocType,
Download,Descarca,
Left,Stânga,
Link,Legătură,
New,Nou,
Print,Imprimare,
Reference Name,nume de referinta,
Refresh,Actualizare,
Success,Succes,
Time,Timp,
Value,Valoare,
Actual,Real,
Add to Cart,Adăugaţi în Coş,
Days Since Last Order,Zile de la ultima comandă,
In Stock,In stoc,
Mode Of Payment,Modul de plată,
No students Found,Nu au fost găsiți studenți,
Not in Stock,Nu este în stoc,
Please select a Customer,Selectați un client,
Received From,Primit de la,
Sales Person,Persoană de vânzări,
To date cannot be before From date,Până în prezent nu poate fi înainte de data,
Write Off,Achita,
{0} Created,{0} a fost creat,
Email Id,ID-ul de e-mail,
No,Nu,
Reference Doctype,DocType referință,
Yes,da,
Actual ,Efectiv,
Add to cart,Adăugaţi în Coş,
Budget,Buget,
Chart of Accounts,Grafic de conturi,
Customer database.,Baza de date pentru clienți.,
Days Since Last order,Zile de la ultima comandă,
Download as JSON,Descărcați ca JSON,
End date can not be less than start date,Data de Incheiere nu poate fi anterioara Datei de Incepere,
For Default Supplier (Optional),Pentru furnizor implicit (opțional),
From date cannot be greater than To date,De la data nu poate fi mai mare decât la data,
Group by,Grupul De,
In stock,In stoc,
Item name,Denumire Articol,
Minimum Qty,Cantitatea minimă,
More details,Mai multe detalii,
Nature of Supplies,Natura aprovizionării,
No Items found.,Nu au fost gasite articolele.,
No students found,Nu există elevi găsit,
Not in stock,Nu este în stoc,
Not permitted,Nu sunt acceptate,
Open Issues ,Probleme deschise,
Open Projects ,Deschide Proiecte,
Open To Do ,Deschideți To Do,
Operation Id,Operațiunea ID,
Partially ordered,Comandat parțial,
Please select company first,Selectați prima companie,
Please select patient,Selectați pacientul,
Printed On ,Tipărit pe,
Projected qty,Numărul estimat,
Sales person,Persoană de vânzări,
Serial No {0} Created,Serial Nu {0} a creat,
Source Location is required for the Asset {0},Sursa Locația este necesară pentru elementul {0},
Tax Id,Cod de identificare fiscală,
To Time,La timp,
To date cannot be before from date,Până în prezent nu poate fi înainte de De la dată,
Total Taxable value,Valoarea impozabilă totală,
Upcoming Calendar Events ,Evenimente viitoare Calendar,
Value or Qty,Valoare sau cantitate,
Variance ,variație,
Variant of,Varianta de,
Write off,Achita,
hours,ore,
received from,primit de la,
to,Până la data,
Cards,Carduri,
Percentage,Procent,
Failed to setup defaults for country {0}. Please contact support@erpnext.com,Eroare la configurarea valorilor prestabilite pentru țară {0}. Vă rugăm să contactați support@erpnext.com,
Row #{0}: Item {1} is not a Serialized/Batched Item. It cannot have a Serial No/Batch No against it.,Rândul # {0}: Elementul {1} nu este un articol serializat / batat. Nu poate avea un număr de serie / nr.,
Please set {0},Vă rugăm să setați {0},
Please set {0},Vă rugăm să setați {0},supplier
Draft,Proiect,"docstatus,=,0"
Cancelled,Anulat,"docstatus,=,2"
Please setup Instructor Naming System in Education > Education Settings,Vă rugăm să configurați sistemul de numire a instructorului în educație&gt; Setări educație,
Please set Naming Series for {0} via Setup > Settings > Naming Series,Vă rugăm să setați Naming Series pentru {0} prin Setare&gt; Setări&gt; Serie pentru denumire,
UOM Conversion factor ({0} -> {1}) not found for item: {2},Factorul de conversie UOM ({0} -&gt; {1}) nu a fost găsit pentru articol: {2},
Item Code > Item Group > Brand,Cod articol&gt; Grup de articole&gt; Marcă,
Customer > Customer Group > Territory,Client&gt; Grup de clienți&gt; Teritoriul,
Supplier > Supplier Type,Furnizor&gt; Tip furnizor,
The value of {0} differs between Items {1} and {2},Valoarea {0} diferă între elementele {1} și {2},
Auto Fetch,Preluare automată,
Fetch Serial Numbers based on FIFO,Obțineți numerele de serie pe baza FIFO,
"Outward taxable supplies(other than zero rated, nil rated and exempted)","Consumabile impozabile (altele decât zero, zero și scutite)",
"To allow different rates, disable the {0} checkbox in {1}.","Pentru a permite tarife diferite, dezactivați caseta de selectare {0} din {1}.",
Asset{} {assets_link} created for {},Element {} {assets_link} creat pentru {},
Row {}: Asset Naming Series is mandatory for the auto creation for item {},Rând {}: Seria de denumire a activelor este obligatorie pentru crearea automată a articolului {},
Assets not created for {0}. You will have to create asset manually.,Elemente care nu au fost create pentru {0}. Va trebui să creați manual activul.,
{0} {1} has accounting entries in currency {2} for company {3}. Please select a receivable or payable account with currency {2}.,{0} {1} are înregistrări contabile în valută {2} pentru companie {3}. Vă rugăm să selectați un cont de primit sau de plătit cu moneda {2}.,
Invalid Account,Cont invalid,
Purchase Order Required,Comandă de aprovizionare necesare,
Purchase Receipt Required,Cumpărare de primire Obligatoriu,
Account Missing,Cont lipsă,
Requested,Solicitată,
Partially Paid,Parțial plătit,
Invalid Account Currency,Moneda contului este nevalidă,
"Row {0}: The item {1}, quantity must be positive number","Rândul {0}: elementul {1}, cantitatea trebuie să fie un număr pozitiv",
"Please set {0} for Batched Item {1}, which is used to set {2} on Submit.","Vă rugăm să setați {0} pentru articolul lot {1}, care este utilizat pentru a seta {2} la Trimitere.",
Expiry Date Mandatory,Data de expirare Obligatorie,
Variant Item,Variant Item,
BOM 1 {0} and BOM 2 {1} should not be same,BOM 1 {0} și BOM 2 {1} nu ar trebui să fie aceleași,
Note: Item {0} added multiple times,Notă: articolul {0} a fost adăugat de mai multe ori,
YouTube,YouTube,
Vimeo,Vimeo,
Publish Date,Data publicării,
Duration,Durată,
Advanced Settings,Setari avansate,
Path,cale,
Components,Componente,
Verified By,Verificate de,
Invalid naming series (. missing) for {0},Serii de denumiri nevalide (. Lipsesc) pentru {0},
Filter Based On,Filtrare bazată pe,
Reqd by date,Reqd după dată,
Manufacturer Part Number <b>{0}</b> is invalid,Numărul de piesă al producătorului <b>{0}</b> este nevalid,
Invalid Part Number,Număr de piesă nevalid,
Select atleast one Social Media from Share on.,Selectați cel puțin o rețea socială din Partajare pe.,
Invalid Scheduled Time,Ora programată nevalidă,
Length Must be less than 280.,Lungimea trebuie să fie mai mică de 280.,
Error while POSTING {0},Eroare la POSTARE {0},
"Session not valid, Do you want to login?","Sesiunea nu este validă, doriți să vă autentificați?",
Session Active,Sesiune activă,
Session Not Active. Save doc to login.,Sesiunea nu este activă. Salvați documentul pentru autentificare.,
Error! Failed to get request token.,Eroare! Nu s-a obținut indicativul de solicitare,
Invalid {0} or {1},{0} sau {1} nevalid,
Error! Failed to get access token.,Eroare! Nu s-a obținut jetonul de acces.,
Invalid Consumer Key or Consumer Secret Key,Cheie consumator nevalidă sau cheie secretă consumator,
Your Session will be expire in ,Sesiunea dvs. va expira în,
 days.,zile.,
Session is expired. Save doc to login.,Sesiunea a expirat. Salvați documentul pentru autentificare.,
Error While Uploading Image,Eroare la încărcarea imaginii,
You Didn't have permission to access this API,Nu ați avut permisiunea de a accesa acest API,
Valid Upto date cannot be before Valid From date,Valid Upto date nu poate fi înainte de Valid From date,
Valid From date not in Fiscal Year {0},Valabil de la data care nu se află în anul fiscal {0},
Valid Upto date not in Fiscal Year {0},Data actualizată valabilă nu în anul fiscal {0},
Group Roll No,Rola grupului nr,
Maintain Same Rate Throughout Sales Cycle,Menține Aceeași Rată in Cursul Ciclului de Vânzări,
"Row {1}: Quantity ({0}) cannot be a fraction. To allow this, disable '{2}' in UOM {3}.","Rândul {1}: Cantitatea ({0}) nu poate fi o fracțiune. Pentru a permite acest lucru, dezactivați „{2}” în UOM {3}.",
Must be Whole Number,Trebuie să fie Număr întreg,
Please setup Razorpay Plan ID,Configurați ID-ul planului Razorpay,
Contact Creation Failed,Crearea contactului nu a reușit,
Leaves Expired,Frunzele au expirat,
Row #{}: {} of {} should be {}. Please modify the account or select a different account.,Rândul # {}: {} din {} ar trebui să fie {}. Vă rugăm să modificați contul sau să selectați un alt cont.,
Row #{}: Please asign task to a member.,Rândul # {}: atribuiți sarcina unui membru.,
Process Failed,Procesul nu a reușit,
Tally Migration Error,Eroare de migrare Tally,
Please set Warehouse in Woocommerce Settings,Vă rugăm să setați Depozitul în Setările Woocommerce,
Row {0}: Delivery Warehouse ({1}) and Customer Warehouse ({2}) can not be same,Rândul {0}: Depozitul de livrare ({1}) și Depozitul pentru clienți ({2}) nu pot fi identice,
Row {0}: Due Date in the Payment Terms table cannot be before Posting Date,Rândul {0}: Data scadenței din tabelul Condiții de plată nu poate fi înainte de Data înregistrării,
Cannot find {} for item {}. Please set the same in Item Master or Stock Settings.,Nu se poate găsi {} pentru articol {}. Vă rugăm să setați același lucru în Setări articol principal sau stoc,
Row #{0}: The batch {1} has already expired.,Rândul # {0}: lotul {1} a expirat deja.,
Start Year and End Year are mandatory,Anul de început și anul de sfârșit sunt obligatorii,
GL Entry,Intrari GL,
Cannot allocate more than {0} against payment term {1},Nu se pot aloca mai mult de {0} contra termenului de plată {1},
The root account {0} must be a group,Contul rădăcină {0} trebuie să fie un grup,
Shipping rule not applicable for country {0} in Shipping Address,Regula de expediere nu se aplică pentru țara {0} din adresa de expediere,
Get Payments from,Primiți plăți de la,
Set Shipping Address or Billing Address,Setați adresa de expediere sau adresa de facturare,
Consultation Setup,Configurarea consultării,
Fee Validity,Valabilitate taxă,
Laboratory Setup,Configurarea laboratorului,
Dosage Form,Formă de dozare,
Records and History,Înregistrări și istorie,
Patient Medical Record,Dosarul medical al pacientului,
Rehabilitation,Reabilitare,
Exercise Type,Tipul de exercițiu,
Exercise Difficulty Level,Nivelul de dificultate al exercițiului,
Therapy Type,Tip de terapie,
Therapy Plan,Planul de terapie,
Therapy Session,Sesiune de terapie,
Motor Assessment Scale,Scara de evaluare motorie,
[Important] [ERPNext] Auto Reorder Errors,[Important] [ERPNext] Erori de reordonare automată,
"Regards,","Salutari,",
The following {0} were created: {1},Au fost create următoarele {0}: {1},
Work Orders,comenzi de lucru,
The {0} {1} created sucessfully,{0} {1} a fost creat cu succes,
Work Order cannot be created for following reason: <br> {0},Ordinea de lucru nu poate fi creată din următorul motiv:<br> {0},
Add items in the Item Locations table,Adăugați elemente în tabelul Locații element,
Update Current Stock,Actualizați stocul curent,
"{0} Retain Sample is based on batch, please check Has Batch No to retain sample of item","{0} Păstrarea eșantionului se bazează pe lot, vă rugăm să bifați Are Batch No pentru a păstra eșantionul articolului",
Empty,Gol,
Currently no stock available in any warehouse,În prezent nu există stoc disponibil în niciun depozit,
BOM Qty,Cantitatea BOM,
Time logs are required for {0} {1},Jurnalele de timp sunt necesare pentru {0} {1},
Total Completed Qty,Cantitatea totală completată,
Qty to Manufacture,Cantitate pentru fabricare,
Social Media Campaigns,Campanii de socializare,
From Date can not be greater than To Date,From Date nu poate fi mai mare decât To Date,
Please set a Customer linked to the Patient,Vă rugăm să setați un client legat de pacient,
Customer Not Found,Clientul nu a fost găsit,
Please Configure Clinical Procedure Consumable Item in ,Vă rugăm să configurați articolul consumabil pentru procedura clinică în,
Missing Configuration,Configurare lipsă,
Out Patient Consulting Charge Item,Aflați articolul de taxare pentru consultanță pentru pacient,
Inpatient Visit Charge Item,Taxă pentru vizitarea pacientului,
OP Consulting Charge,OP Taxă de consultanță,
Inpatient Visit Charge,Taxă pentru vizitarea bolnavului,
Appointment Status,Starea numirii,
Test: ,Test:,
Collection Details: ,Detalii colecție:,
{0} out of {1},{0} din {1},
Select Therapy Type,Selectați Tip de terapie,
{0} sessions completed,{0} sesiuni finalizate,
{0} session completed,{0} sesiune finalizată,
 out of {0},din {0},
Therapy Sessions,Ședințe de terapie,
Add Exercise Step,Adăugați Pasul de exerciții,
Edit Exercise Step,Editați Pasul de exerciții,
Patient Appointments,Programări pentru pacienți,
Item with Item Code {0} already exists,Elementul cu codul articolului {0} există deja,
Registration Fee cannot be negative or zero,Taxa de înregistrare nu poate fi negativă sau zero,
Configure a service Item for {0},Configurați un articol de serviciu pentru {0},
Temperature: ,Temperatura:,
Pulse: ,Puls:,
Respiratory Rate: ,Rata respiratorie:,
BP: ,BP:,
BMI: ,IMC:,
Note: ,Notă:,
Check Availability,Verifică Disponibilitate,
Please select Patient first,Vă rugăm să selectați mai întâi Pacient,
Please select a Mode of Payment first,Vă rugăm să selectați mai întâi un mod de plată,
Please set the Paid Amount first,Vă rugăm să setați mai întâi suma plătită,
Not Therapies Prescribed,Nu terapii prescrise,
There are no Therapies prescribed for Patient {0},Nu există terapii prescrise pentru pacient {0},
Appointment date and Healthcare Practitioner are Mandatory,Data numirii și medicul sunt obligatorii,
No Prescribed Procedures found for the selected Patient,Nu s-au găsit proceduri prescrise pentru pacientul selectat,
Please select a Patient first,Vă rugăm să selectați mai întâi un pacient,
There are no procedure prescribed for ,Nu există o procedură prescrisă pentru,
Prescribed Therapies,Terapii prescrise,
Appointment overlaps with ,Programarea se suprapune cu,
{0} has appointment scheduled with {1} at {2} having {3} minute(s) duration.,{0} are programată o întâlnire cu {1} la {2} cu o durată de {3} minute.,
Appointments Overlapping,Programări care se suprapun,
Consulting Charges: {0},Taxe de consultanță: {0},
Appointment Cancelled. Please review and cancel the invoice {0},Programare anulată. Examinați și anulați factura {0},
Appointment Cancelled.,Programare anulată.,
Fee Validity {0} updated.,Valabilitatea taxei {0} actualizată.,
Practitioner Schedule Not Found,Programul practicantului nu a fost găsit,
{0} is on a Half day Leave on {1},{0} este într-un concediu de jumătate de zi pe {1},
{0} is on Leave on {1},{0} este în concediu pe {1},
{0} does not have a Healthcare Practitioner Schedule. Add it in Healthcare Practitioner,{0} nu are un program de asistență medicală. Adăugați-l în Healthcare Practitioner,
Healthcare Service Units,Unități de servicii medicale,
Complete and Consume,Completează și consumă,
Complete {0} and Consume Stock?,Completați {0} și consumați stoc?,
Complete {0}?,Completați {0}?,
Stock quantity to start the Procedure is not available in the Warehouse {0}. Do you want to record a Stock Entry?,Cantitatea de stoc pentru a începe procedura nu este disponibilă în depozit {0}. Doriți să înregistrați o înregistrare de stoc?,
{0} as on {1},{0} ca pe {1},
Clinical Procedure ({0}):,Procedură clinică ({0}):,
Please set Customer in Patient {0},Vă rugăm să setați Clientul în Pacient {0},
Item {0} is not active,Elementul {0} nu este activ,
Therapy Plan {0} created successfully.,Planul de terapie {0} a fost creat cu succes.,
Symptoms: ,Simptome:,
No Symptoms,Fără simptome,
Diagnosis: ,Diagnostic:,
No Diagnosis,Fără diagnostic,
Drug(s) Prescribed.,Medicament (e) prescris (e).,
Test(s) Prescribed.,Test (e) prescris (e).,
Procedure(s) Prescribed.,Procedură (proceduri) prescrise.,
Counts Completed: {0},Număruri finalizate: {0},
Patient Assessment,Evaluarea pacientului,
Assessments,Evaluări,
Heads (or groups) against which Accounting Entries are made and balances are maintained.,Heads (sau grupuri) față de care înregistrările contabile sunt făcute și soldurile sunt menținute.,
Account Name,Numele Contului,
Inter Company Account,Contul Companiei Inter,
Parent Account,Contul părinte,
Setting Account Type helps in selecting this Account in transactions.,Setarea Tipul de cont ajută în selectarea acest cont în tranzacții.,
Chargeable,Taxabil/a,
Rate at which this tax is applied,Rata la care se aplică acest impozit,
Frozen,Blocat,
"If the account is frozen, entries are allowed to restricted users.","În cazul în care contul este blocat, intrările sunt permite utilizatorilor restricționati.",
Balance must be,Bilanţul trebuie să fie,
Lft,Lft,
Rgt,Rgt,
Old Parent,Vechi mamă,
Include in gross,Includeți în brut,
Auditor,Auditor,
Accounting Dimension,Dimensiunea contabilității,
Dimension Name,Numele dimensiunii,
Dimension Defaults,Valorile implicite ale dimensiunii,
Accounting Dimension Detail,Detalii privind dimensiunea contabilității,
Default Dimension,Dimensiunea implicită,
Mandatory For Balance Sheet,Obligatoriu pentru bilanț,
Mandatory For Profit and Loss Account,Obligatoriu pentru contul de profit și pierdere,
Accounting Period,Perioadă Contabilă,
Period Name,Numele perioadei,
Closed Documents,Documente închise,
Accounts Settings,Setări Conturi,
Settings for Accounts,Setări pentru conturi,
Make Accounting Entry For Every Stock Movement,Realizeaza Intrare de Contabilitate Pentru Fiecare Modificare a Stocului,
Users with this role are allowed to set frozen accounts and create / modify accounting entries against frozen accounts,Utilizatorii cu acest rol li se permite să stabilească în conturile înghețate și de a crea / modifica intrări contabile împotriva conturile înghețate,
Determine Address Tax Category From,Determinați categoria de impozitare pe adresa de la,
Over Billing Allowance (%),Indemnizație de facturare peste (%),
Credit Controller,Controler de Credit,
Check Supplier Invoice Number Uniqueness,Cec Furnizor Numărul facturii Unicitatea,
Make Payment via Journal Entry,Efectuați o plată prin Jurnalul de intrare,
Unlink Payment on Cancellation of Invoice,Plata unlink privind anularea facturii,
Book Asset Depreciation Entry Automatically,Încărcarea automată a amortizării activelor din cont,
Automatically Add Taxes and Charges from Item Tax Template,Adaugă automat impozite și taxe din șablonul de impozit pe articole,
Automatically Fetch Payment Terms,Obțineți automat Termenii de plată,
Show Payment Schedule in Print,Afișați programul de plată în Tipărire,
Currency Exchange Settings,Setările de schimb valutar,
Allow Stale Exchange Rates,Permiteți rate de schimb stale,
Stale Days,Zilele stale,
Report Settings,Setările raportului,
Use Custom Cash Flow Format,Utilizați formatul fluxului de numerar personalizat,
Allowed To Transact With,Permis pentru a tranzacționa cu,
SWIFT number,Număr rapid,
Branch Code,Codul filialei,
Address and Contact,Adresa și Contact,
Address HTML,Adresă HTML,
Contact HTML,HTML Persoana de Contact,
Data Import Configuration,Configurarea importului de date,
Bank Transaction Mapping,Maparea tranzacțiilor bancare,
Plaid Access Token,Token de acces la carouri,
Company Account,Contul companiei,
Account Subtype,Subtipul contului,
Is Default Account,Este contul implicit,
Is Company Account,Este un cont de companie,
Party Details,Party Detalii,
Account Details,Detalii cont,
IBAN,IBAN,
Bank Account No,Contul bancar nr,
Integration Details,Detalii de integrare,
Integration ID,ID de integrare,
Last Integration Date,Ultima dată de integrare,
Change this date manually to setup the next synchronization start date,Modificați această dată manual pentru a configura următoarea dată de început a sincronizării,
Mask,Masca,
Bank Account Subtype,Subtipul contului bancar,
Bank Account Type,Tipul contului bancar,
Bank Guarantee,Garantie bancara,
Bank Guarantee Type,Tip de garanție bancară,
Receiving,primire,
Providing,Furnizarea,
Reference Document Name,Numele documentului de referință,
Validity in Days,Valabilitate în Zile,
Bank Account Info,Informații despre contul bancar,
Clauses and Conditions,Clauze și Condiții,
Other Details,Alte detalii,
Bank Guarantee Number,Numărul de garanție bancară,
Name of Beneficiary,Numele beneficiarului,
Margin Money,Marja de bani,
Charges Incurred,Taxele incasate,
Fixed Deposit Number,Numărul depozitului fix,
Account Currency,Moneda cont,
Select the Bank Account to reconcile.,Selectați contul bancar pentru a vă reconcilia.,
Include Reconciled Entries,Includ intrările împăcat,
Get Payment Entries,Participările de plată,
Payment Entries,Intrările de plată,
Update Clearance Date,Actualizare Clearance Data,
Bank Reconciliation Detail,Detaliu reconciliere bancară,
Cheque Number,Număr Cec,
Cheque Date,Dată Cec,
Statement Header Mapping,Afișarea antetului de rutare,
Statement Headers,Antetele declarațiilor,
Transaction Data Mapping,Transaction Data Mapping,
Mapped Items,Elemente cartografiate,
Bank Statement Settings Item,Elementul pentru setările declarației bancare,
Mapped Header,Antet Cartografiat,
Bank Header,Antetul băncii,
Bank Statement Transaction Entry,Intrare tranzacție la declarația bancară,
Bank Transaction Entries,Intrările de tranzacții bancare,
New Transactions,Noi tranzacții,
Match Transaction to Invoices,Tranzacționați tranzacția la facturi,
Create New Payment/Journal Entry,Creați o nouă plată / intrare în jurnal,
Submit/Reconcile Payments,Trimiteți / Recondiționați plățile,
Matching Invoices,Facturi de potrivire,
Payment Invoice Items,Elemente de factură de plată,
Reconciled Transactions,Tranzacții Reconciliate,
Bank Statement Transaction Invoice Item,Tranzacție de poziție bancară,
Payment Description,Descrierea plății,
Invoice Date,Data facturii,
invoice,factura fiscala,
Bank Statement Transaction Payment Item,Tranzacție de plată a tranzacției,
outstanding_amount,suma restanta,
Payment Reference,Referință de plată,
Bank Statement Transaction Settings Item,Element pentru setările tranzacției din contul bancar,
Bank Data,Date bancare,
Mapped Data Type,Mapat tipul de date,
Mapped Data,Date Cartografiate,
Bank Transaction,Tranzacție bancară,
ACC-BTN-.YYYY.-,ACC-BTN-.YYYY.-,
Transaction ID,ID-ul de tranzacție,
Unallocated Amount,Suma nealocată,
Field in Bank Transaction,Câmp în tranzacția bancară,
Column in Bank File,Coloana în fișierul bancar,
Bank Transaction Payments,Plăți de tranzacții bancare,
Control Action,Acțiune de control,
Applicable on Material Request,Aplicabil la solicitarea materialului,
Action if Annual Budget Exceeded on MR,Acțiune în cazul depășirii bugetului anual pe MR,
Warn,Avertiza,
Ignore,Ignora,
Action if Accumulated Monthly Budget Exceeded on MR,Acțiune dacă bugetul lunar acumulat este depășit cu MR,
Applicable on Purchase Order,Aplicabil pe comanda de aprovizionare,
Action if Annual Budget Exceeded on PO,Acțiune în cazul în care bugetul anual depășește PO,
Action if Accumulated Monthly Budget Exceeded on PO,Acțiune în cazul în care bugetul lunar acumulat este depășit cu PO,
Applicable on booking actual expenses,Se aplică la rezervarea cheltuielilor reale,
Action if Annual Budget Exceeded on Actual,Acțiune în cazul în care bugetul anual depășește suma actuală,
Action if Accumulated Monthly Budget Exceeded on Actual,Acțiune în cazul în care bugetul lunar acumulat depășește valoarea reală,
Budget Accounts,Conturile bugetare,
Budget Account,Contul bugetar,
Budget Amount,Buget Sumă,
C-Form,Formular-C,
ACC-CF-.YYYY.-,ACC-CF-.YYYY.-,
C-Form No,Nr. formular-C,
Received Date,Data primit,
Quarter,Trimestru,
I,eu,
II,II,
III,III,
IV,IV,
C-Form Invoice Detail,Detaliu factură formular-C,
Invoice No,Nr Factura,
Cash Flow Mapper,Cash Flow Mapper,
Section Name,Numele secțiunii,
Section Header,Secțiunea Header,
Section Leader,Liderul secțiunii,
e.g Adjustments for:,de ex. ajustări pentru:,
Section Subtotal,Secțiunea Subtotal,
Section Footer,Secțiunea Footer,
Cash Flow Mapping,Fluxul de numerar,
Select Maximum Of 1,Selectați maxim de 1,
Is Finance Cost,Este costul de finanțare,
Is Working Capital,Este capitalul de lucru,
Is Finance Cost Adjustment,Este ajustarea costurilor financiare,
Is Income Tax Liability,Răspunderea pentru impozitul pe venit,
Is Income Tax Expense,Cheltuielile cu impozitul pe venit,
Cash Flow Mapping Accounts,Conturi de cartografiere a fluxurilor de numerar,
account,Cont,
Cash Flow Mapping Template,Formatul de cartografiere a fluxului de numerar,
Cash Flow Mapping Template Details,Detaliile șablonului pentru fluxul de numerar,
POS-CLO-,POS-CLO-,
Custody,Custodie,
Net Amount,Cantitate netă,
Cashier Closing Payments,Plățile de închidere a caselor,
Chart of Accounts Importer,Importatorul planului de conturi,
Import Chart of Accounts from a csv file,Importați Graficul de conturi dintr-un fișier csv,
Attach custom Chart of Accounts file,Atașați fișierul personalizat al graficului conturilor,
Chart Preview,Previzualizare grafic,
Chart Tree,Arbore grafic,
Cheque Print Template,Format Imprimare Cec,
Has Print Format,Are Format imprimare,
Primary Settings,Setări primare,
Cheque Size,Dimensiune  Cec,
Regular,Regulat,
Starting position from top edge,Poziția de la muchia superioară de pornire,
Cheque Width,Lățime Cec,
Cheque Height,Cheque Inaltime,
Scanned Cheque,scanate cecului,
Is Account Payable,Este cont de plati,
Distance from top edge,Distanța de la marginea de sus,
Distance from left edge,Distanța de la marginea din stânga,
Message to show,Mesaj pentru a arăta,
Date Settings,Setări Dată,
Starting location from left edge,Punctul de plecare de la marginea din stânga,
Payer Settings,Setări plătitorilor,
Width of amount in word,Lățimea de cuvânt în sumă,
Line spacing for amount in words,distanța dintre rânduri pentru suma în cuvinte,
Amount In Figure,Suma în Figura,
Signatory Position,Poziție semnatar,
Closed Document,Document închis,
Track separate Income and Expense for product verticals or divisions.,Urmăriți Venituri separat și cheltuieli verticale produse sau divizii.,
Cost Center Name,Nume Centrul de Cost,
Parent Cost Center,Părinte Cost Center,
lft,LFT,
rgt,RGT,
Coupon Code,Codul promoțional,
Coupon Name,Numele cuponului,
"e.g. ""Summer Holiday 2019 Offer 20""",de ex. „Oferta de vacanță de vară 2019 20”,
Coupon Type,Tip cupon,
Promotional,promoționale,
Gift Card,Card cadou,
unique e.g. SAVE20  To be used to get discount,"unic, de exemplu, SAVE20 Pentru a fi utilizat pentru a obține reducere",
Validity and Usage,Valabilitate și utilizare,
Valid From,Valabil din,
Valid Upto,Valid pana la,
Maximum Use,Utilizare maximă,
Used,Folosit,
Coupon Description,Descrierea cuponului,
Discounted Invoice,Factură redusă,
Debit to,Debit la,
Exchange Rate Revaluation,Reevaluarea cursului de schimb,
Get Entries,Obțineți intrări,
Exchange Rate Revaluation Account,Contul de reevaluare a cursului de schimb,
Total Gain/Loss,Total câștig / pierdere,
Balance In Account Currency,Soldul în moneda contului,
Current Exchange Rate,Cursul de schimb curent,
Balance In Base Currency,Soldul în moneda de bază,
New Exchange Rate,Noul curs de schimb valutar,
New Balance In Base Currency,Noul echilibru în moneda de bază,
Gain/Loss,Gain / Pierdere,
**Fiscal Year** represents a Financial Year. All accounting entries and other major transactions are tracked against **Fiscal Year**.,**Anul fiscal** reprezintă un an financiar. Toate intrările contabile și alte tranzacții majore sunt monitorizate comparativ cu ** Anul fiscal **.,
Year Name,An Denumire,
"For e.g. 2012, 2012-13","De exemplu, 2012, 2012-13",
Year Start Date,An Data începerii,
Year End Date,Anul Data de încheiere,
Companies,Companii,
Auto Created,Crearea automată,
Stock User,Stoc de utilizare,
Fiscal Year Company,Anul fiscal companie,
Debit Amount,Sumă Debit,
Credit Amount,Suma de credit,
Debit Amount in Account Currency,Sumă Debit în Monedă Cont,
Credit Amount in Account Currency,Suma de credit în cont valutar,
Voucher Detail No,Detaliu voucher Nu,
Is Opening,Se deschide,
Is Advance,Este Advance,
To Rename,Pentru a redenumi,
GST Account,Contul GST,
CGST Account,Contul CGST,
SGST Account,Contul SGST,
IGST Account,Cont IGST,
CESS Account,Cont CESS,
Loan Start Date,Data de început a împrumutului,
Loan Period (Days),Perioada de împrumut (zile),
Loan End Date,Data de încheiere a împrumutului,
Bank Charges,Taxe bancare,
Short Term Loan Account,Cont de împrumut pe termen scurt,
Bank Charges Account,Cont de taxe bancare,
Accounts Receivable Credit Account,Conturi de credit de primit,
Accounts Receivable Discounted Account,Conturi de primit cu reducere,
Accounts Receivable Unpaid Account,Conturi de primit un cont neplătit,
Item Tax Template,Șablon fiscal de articol,
Tax Rates,Taxe de impozitare,
Item Tax Template Detail,Detaliu de șablon fiscal,
Entry Type,Tipul de intrare,
Inter Company Journal Entry,Intrarea în Jurnalul Inter companiei,
Bank Entry,Intrare bancară,
Cash Entry,Cash intrare,
Credit Card Entry,Card de credit intrare,
Contra Entry,Contra intrare,
Excise Entry,Intrare accize,
Write Off Entry,Amortizare intrare,
Opening Entry,Deschiderea de intrare,
ACC-JV-.YYYY.-,ACC-JV-.YYYY.-,
Accounting Entries,Înregistrări contabile,
Total Debit,Total debit,
Total Credit,Total credit,
Difference (Dr - Cr),Diferența (Dr - Cr),
Make Difference Entry,Realizeaza Intrare de Diferenta,
Total Amount Currency,Suma totală Moneda,
Total Amount in Words,Suma totală în cuvinte,
Remark,Remarcă,
Paid Loan,Imprumut platit,
Inter Company Journal Entry Reference,Întreprindere de referință pentru intrarea în jurnal,
Write Off Based On,Scrie Off bazat pe,
Get Outstanding Invoices,Obtine Facturi Neachitate,
Write Off Amount,Anulați suma,
Printing Settings,Setări de imprimare,
Pay To / Recd From,Pentru a plăti / Recd de la,
Payment Order,Ordin de plată,
Subscription Section,Secțiunea de abonamente,
Journal Entry Account,Jurnal de cont intrare,
Account Balance,Soldul contului,
Party Balance,Balanța Party,
Accounting Dimensions,Dimensiuni contabile,
If Income or Expense,In cazul Veniturilor sau Cheltuielilor,
Exchange Rate,Rata de schimb,
Debit in Company Currency,Debit în Monedă Companie,
Credit in Company Currency,Credit în companie valutar,
Payroll Entry,Salarizare intrare,
Employee Advance,Angajat Advance,
Reference Due Date,Data de referință pentru referință,
Loyalty Program Tier,Program de loialitate,
Redeem Against,Răscumpărați împotriva,
Expiry Date,Data expirării,
Loyalty Point Entry Redemption,Punctul de răscumpărare a punctelor de loialitate,
Redemption Date,Data de răscumpărare,
Redeemed Points,Răscumpărate Puncte,
Loyalty Program Name,Nume program de loialitate,
Loyalty Program Type,Tip de program de loialitate,
Single Tier Program,Program unic de nivel,
Multiple Tier Program,Program multiplu,
Customer Territory,Teritoriul clientului,
Auto Opt In (For all customers),Oprire automată (pentru toți clienții),
Collection Tier,Colecția Tier,
Collection Rules,Regulile de colectare,
Redemption,Răscumpărare,
Conversion Factor,Factor de conversie,
1 Loyalty Points = How much base currency?,1 Puncte de loialitate = Cât de multă monedă de bază?,
Expiry Duration (in days),Termenul de expirare (în zile),
Help Section,Secțiunea Ajutor,
Loyalty Program Help,Programul de ajutor pentru loialitate,
Loyalty Program Collection,Colecția de programe de loialitate,
Tier Name,Denumirea nivelului,
Minimum Total Spent,Suma totală cheltuită,
Collection Factor (=1 LP),Factor de colectare (= 1 LP),
For how much spent = 1 Loyalty Point,Pentru cât de mult a fost cheltuit = 1 punct de loialitate,
Mode of Payment Account,Modul de cont de plăți,
Default Account,Cont Implicit,
Default account will be automatically updated in POS Invoice when this mode is selected.,Contul implicit va fi actualizat automat în factură POS când este selectat acest mod.,
**Monthly Distribution** helps you distribute the Budget/Target across months if you have seasonality in your business.,** Lunar Distribuție ** vă ajută să distribuie bugetul / Target peste luni dacă aveți sezonier în afacerea dumneavoastră.,
Distribution Name,Denumire Distribuție,
Name of the Monthly Distribution,Numele de Distributie lunar,
Monthly Distribution Percentages,Procente de distribuție lunare,
Monthly Distribution Percentage,Lunar Procentaj Distribuție,
Percentage Allocation,Alocarea procent,
Create Missing Party,Creați Parte Lipsă,
Create missing customer or supplier.,Creați client sau furnizor lipsă.,
Opening Invoice Creation Tool Item,Deschiderea elementului instrumentului de creare a facturilor,
Temporary Opening Account,Contul de deschidere temporar,
Party Account,Party Account,
Type of Payment,Tipul de plată,
ACC-PAY-.YYYY.-,ACC-PAY-.YYYY.-,
Receive,Primește,
Internal Transfer,Transfer intern,
Payment Order Status,Starea comenzii de plată,
Payment Ordered,Plata a fost comandată,
Payment From / To,Plata De la / la,
Company Bank Account,Cont bancar al companiei,
Party Bank Account,Cont bancar de partid,
Account Paid From,Contul plătit De la,
Account Paid To,Contul Plătite,
Paid Amount (Company Currency),Plătit Suma (Compania de valuta),
Received Amount,Sumă Primită,
Received Amount (Company Currency),Suma primită (Moneda Companiei),
Get Outstanding Invoice,Obțineți o factură excepțională,
Payment References,Referințe de plată,
Writeoff,Achita,
Total Allocated Amount,Suma totală alocată,
Total Allocated Amount (Company Currency),Suma totală alocată (Companie Moneda),
Set Exchange Gain / Loss,Set Exchange Gain / Pierdere,
Difference Amount (Company Currency),Diferența Sumă (Companie Moneda),
Write Off Difference Amount,Diferență Sumă Piertdute,
Deductions or Loss,Deduceri sau Pierderi,
Payment Deductions or Loss,Deducerile de plată sau pierdere,
Cheque/Reference Date,Cec/Dată de Referință,
Payment Entry Deduction,Plată Deducerea intrare,
Payment Entry Reference,Plată intrare de referință,
Allocated,Alocat,
Payment Gateway Account,Plata cont Gateway,
Payment Account,Cont de plăți,
Default Payment Request Message,Implicit solicita plata mesaj,
PMO-,PMO-,
Payment Order Type,Tipul ordinului de plată,
Payment Order Reference,Instrucțiuni de plată,
Bank Account Details,Detaliile contului bancar,
Payment Reconciliation,Reconcilierea plată,
Receivable / Payable Account,De încasat de cont / de plătit,
Bank / Cash Account,Cont bancă / numerar,
From Invoice Date,De la data facturii,
To Invoice Date,Pentru a facturii Data,
Minimum Invoice Amount,Factură cantitate minimă,
Maximum Invoice Amount,Suma maxima Factură,
System will fetch all the entries if limit value is zero.,Sistemul va prelua toate intrările dacă valoarea limită este zero.,
Get Unreconciled Entries,Ia nereconciliate Entries,
Unreconciled Payment Details,Nereconciliate Detalii de plată,
Invoice/Journal Entry Details,Factura / Jurnalul Detalii intrari,
Payment Reconciliation Invoice,Reconcilierea plata facturii,
Invoice Number,Numar factura,
Payment Reconciliation Payment,Reconciliere de plata,
Reference Row,rândul de referință,
Allocated amount,Suma alocată,
Payment Request Type,Tip de solicitare de plată,
Outward,Exterior,
Inward,interior,
ACC-PRQ-.YYYY.-,ACC-PRQ-.YYYY.-,
Transaction Details,Detalii tranzacție,
Amount in customer's currency,Suma în moneda clientului,
Is a Subscription,Este un abonament,
Transaction Currency,Operațiuni valutare,
Subscription Plans,Planuri de abonament,
SWIFT Number,Număr rapid,
Recipient Message And Payment Details,Mesaj destinatar și Detalii de plată,
Make Sales Invoice,Faceți Factură de Vânzare,
Mute Email,Mute Email,
payment_url,payment_url,
Payment Gateway Details,Plata Gateway Detalii,
Payment Schedule,Planul de plăți,
Invoice Portion,Fracțiunea de facturi,
Payment Amount,Plata Suma,
Payment Term Name,Numele termenului de plată,
Due Date Based On,Data de bază bazată pe,
Day(s) after invoice date,Ziua (zilele) după data facturii,
Day(s) after the end of the invoice month,Ziua (zilele) de la sfârșitul lunii facturii,
Month(s) after the end of the invoice month,Luna (luni) după sfârșitul lunii facturii,
Credit Days,Zile de Credit,
Credit Months,Lunile de credit,
Allocate Payment Based On Payment Terms,Alocați plata în funcție de condițiile de plată,
"If this checkbox is checked, paid amount will be splitted and allocated as per the amounts in payment schedule against each payment term","Dacă această casetă de selectare este bifată, suma plătită va fi împărțită și alocată conform sumelor din programul de plată pentru fiecare termen de plată",
Payment Terms Template Detail,Plata detaliilor privind termenii de plată,
Closing Fiscal Year,Închiderea Anului Fiscal,
Closing Account Head,Închidere Cont Principal,
"The account head under Liability or Equity, in which Profit/Loss will be booked","Capul de cont sub răspunderea sau a capitalului propriu, în care Profit / Pierdere vor fi rezervate",
POS Customer Group,Grup Clienți POS,
POS Field,Câmpul POS,
POS Item Group,POS Articol Grupa,
Company Address,Adresă Companie,
Update Stock,Actualizare stock,
Ignore Pricing Rule,Ignora Regula Preturi,
Applicable for Users,Aplicabil pentru utilizatori,
Sales Invoice Payment,Vânzări factură de plată,
Item Groups,Grupuri articol,
Only show Items from these Item Groups,Afișați numai articole din aceste grupuri de articole,
Customer Groups,Grupuri de clienți,
Only show Customer of these Customer Groups,Afișați numai Clientul acestor grupuri de clienți,
Write Off Account,Scrie Off cont,
Write Off Cost Center,Scrie Off cost Center,
Account for Change Amount,Contul pentru Schimbare Sumă,
Taxes and Charges,Impozite și Taxe,
Apply Discount On,Aplicați Discount pentru,
POS Profile User,Utilizator de profil POS,
Apply On,Se aplică pe,
Price or Product Discount,Preț sau reducere produs,
Apply Rule On Item Code,Aplicați regula pe codul articolului,
Apply Rule On Item Group,Aplicați regula pe grupul de articole,
Apply Rule On Brand,Aplicați regula pe marcă,
Mixed Conditions,Condiții mixte,
Conditions will be applied on all the selected items combined. ,Condițiile se vor aplica pe toate elementele selectate combinate.,
Is Cumulative,Este cumulativ,
Coupon Code Based,Bazat pe codul cuponului,
Discount on Other Item,Reducere la alt articol,
Apply Rule On Other,Aplicați regula pe alte,
Party Information,Informații despre petreceri,
Quantity and Amount,Cantitate și sumă,
Min Qty,Min Cantitate,
Max Qty,Max Cantitate,
Min Amt,Amt min,
Max Amt,Max Amt,
Period Settings,Setări perioade,
Margin,Margin,
Margin Type,Tipul de marjă,
Margin Rate or Amount,Rata de marjă sau Sumă,
Price Discount Scheme,Schema de reducere a prețurilor,
Rate or Discount,Tarif sau Discount,
Discount Percentage,Procentul de Reducere,
Discount Amount,Reducere Suma,
For Price List,Pentru Lista de Preturi,
Product Discount Scheme,Schema de reducere a produsului,
Same Item,Același articol,
Free Item,Articol gratuit,
Threshold for Suggestion,Prag pentru sugestie,
System will notify to increase or decrease quantity or amount ,Sistemul va notifica să crească sau să scadă cantitatea sau cantitatea,
"Higher the number, higher the priority","Este mai mare numărul, mai mare prioritate",
Apply Multiple Pricing Rules,Aplicați mai multe reguli privind prețurile,
Apply Discount on Rate,Aplicați reducere la tarif,
Validate Applied Rule,Validați regula aplicată,
Rule Description,Descrierea regulii,
Pricing Rule Help,Regula de stabilire a prețurilor de ajutor,
Promotional Scheme Id,Codul promoțional ID,
Promotional Scheme,Schema promoțională,
Pricing Rule Brand,Marca de regulă a prețurilor,
Pricing Rule Detail,Detaliu privind regula prețurilor,
Child Docname,Numele documentului pentru copii,
Rule Applied,Regula aplicată,
Pricing Rule Item Code,Regula prețurilor Cod articol,
Pricing Rule Item Group,Grupul de articole din regula prețurilor,
Price Discount Slabs,Placi cu reducere de preț,
Promotional Scheme Price Discount,Schema promoțională Reducere de preț,
Product Discount Slabs,Placi cu reducere de produse,
Promotional Scheme Product Discount,Schema promoțională Reducere de produs,
Min Amount,Suma minima,
Max Amount,Suma maximă,
Discount Type,Tipul reducerii,
ACC-PINV-.YYYY.-,ACC-PINV-.YYYY.-,
Tax Withholding Category,Categoria de reținere fiscală,
Edit Posting Date and Time,Editare postare Data și ora,
Is Paid,Este platit,
Is Return (Debit Note),Este Return (Nota de debit),
Apply Tax Withholding Amount,Aplicați suma de reținere fiscală,
Accounting Dimensions ,Dimensiuni contabile,
Supplier Invoice Details,Furnizor Detalii factură,
Supplier Invoice Date,Furnizor Data facturii,
Return Against Purchase Invoice,Reveni Împotriva cumparare factură,
Select Supplier Address,Selectați Furnizor Adresă,
Contact Person,Persoană de contact,
Select Shipping Address,Selectați adresa de expediere,
Currency and Price List,Valută și lista de prețuri,
Price List Currency,Lista de pret Valuta,
Price List Exchange Rate,Lista de schimb valutar,
Set Accepted Warehouse,Set depozit acceptat,
Rejected Warehouse,Depozit Respins,
Warehouse where you are maintaining stock of rejected items,Depozit în cazul în care se menține stocul de articole respinse,
Raw Materials Supplied,Materii prime furnizate,
Supplier Warehouse,Furnizor Warehouse,
Pricing Rules,Reguli privind prețurile,
Supplied Items,Articole furnizate,
Total (Company Currency),Total (Company valutar),
Net Total (Company Currency),Net total (Compania de valuta),
Total Net Weight,Greutatea totală netă,
Shipping Rule,Regula de transport maritim,
Purchase Taxes and Charges Template,Achiziționa impozite și taxe Template,
Purchase Taxes and Charges,Taxele de cumpărare și Taxe,
Tax Breakup,Descărcarea de impozite,
Taxes and Charges Calculation,Impozite și Taxe Calcul,
Taxes and Charges Added (Company Currency),Impozite și Taxe adăugate (Compania de valuta),
Taxes and Charges Deducted (Company Currency),Impozite și taxe deduse (Compania de valuta),
Total Taxes and Charges (Company Currency),Total Impozite si Taxe (Compania valutar),
Taxes and Charges Added,Impozite și Taxe Added,
Taxes and Charges Deducted,Impozite și Taxe dedus,
Total Taxes and Charges,Total Impozite și Taxe,
Additional Discount,Discount suplimentar,
Apply Additional Discount On,Aplicați Discount suplimentare La,
Additional Discount Amount (Company Currency),Discount suplimentar Suma (companie de valuta),
Additional Discount Percentage,Procent de reducere suplimentară,
Additional Discount Amount,Suma de reducere suplimentară,
Grand Total (Company Currency),Total general (Valuta Companie),
Rounding Adjustment (Company Currency),Rotunjire ajustare (moneda companiei),
Rounded Total (Company Currency),Rotunjite total (Compania de valuta),
In Words (Company Currency),În cuvinte (Compania valutar),
Rounding Adjustment,Ajustare Rotunjire,
In Words,În cuvinte,
Total Advance,Total de Advance,
Disable Rounded Total,Dezactivati Totalul Rotunjit,
Cash/Bank Account,Numerar/Cont Bancar,
Write Off Amount (Company Currency),Scrie Off Suma (Compania de valuta),
Set Advances and Allocate (FIFO),Setați avansuri și alocați (FIFO),
Get Advances Paid,Obtine Avansurile Achitate,
Advances,Avansuri,
Terms,Termeni,
Terms and Conditions1,Termeni și Conditions1,
Group same items,Același grup de elemente,
Print Language,Limba de imprimare,
"Once set, this invoice will be on hold till the set date","Odată stabilită, această factură va fi reținută până la data stabilită",
Credit To,De Creditat catre,
Party Account Currency,Partidul cont valutar,
Against Expense Account,Comparativ contului de cheltuieli,
Inter Company Invoice Reference,Interfața de referință pentru interfața companiei,
Is Internal Supplier,Este furnizor intern,
Start date of current invoice's period,Data perioadei de factura de curent începem,
End date of current invoice's period,Data de încheiere a perioadei facturii curente,
Update Auto Repeat Reference,Actualizați referința de repetare automată,
Purchase Invoice Advance,Factura de cumpărare în avans,
Purchase Invoice Item,Factura de cumpărare Postul,
Quantity and Rate,Cantitatea și rata,
Received Qty,Cantitate primita,
Accepted Qty,Cantitate acceptată,
Rejected Qty,Cant. Respinsă,
UOM Conversion Factor,Factorul de conversie UOM,
Discount on Price List Rate (%),Reducere la Lista de preturi Rate (%),
Price List Rate (Company Currency),Lista de prețuri Rate (Compania de valuta),
Rate (Company Currency),Rata de (Compania de valuta),
Amount (Company Currency),Sumă (monedă companie),
Is Free Item,Este articol gratuit,
Net Rate,Rata netă,
Net Rate (Company Currency),Rata netă (companie de valuta),
Net Amount (Company Currency),Suma netă (companie de valuta),
Item Tax Amount Included in Value,Suma impozitului pe articol inclus în valoare,
Landed Cost Voucher Amount,Costul Landed Voucher Suma,
Raw Materials Supplied Cost,Costul materiilor prime livrate,
Accepted Warehouse,Depozit Acceptat,
Serial No,Nr. serie,
Rejected Serial No,Respins de ordine,
Expense Head,Beneficiar Cheltuiala,
Is Fixed Asset,Este activ fix,
Asset Location,Locația activelor,
Deferred Expense,Cheltuieli amânate,
Deferred Expense Account,Contul de cheltuieli amânate,
Service Stop Date,Data de începere a serviciului,
Enable Deferred Expense,Activați cheltuielile amânate,
Service Start Date,Data de începere a serviciului,
Service End Date,Data de încheiere a serviciului,
Allow Zero Valuation Rate,Permiteți ratei de evaluare zero,
Item Tax Rate,Rata de Impozitare Articol,
Tax detail table fetched from item master as a string and stored in this field.\nUsed for Taxes and Charges,Taxa detaliu tabel preluat de la maestru articol ca un șir și stocate în acest domeniu.\n Folosit pentru Impozite și Taxe,
Purchase Order Item,Comandă de aprovizionare Articol,
Purchase Receipt Detail,Detaliu de primire a achiziției,
Item Weight Details,Greutate Detalii articol,
Weight Per Unit,Greutate pe unitate,
Total Weight,Greutate totală,
Weight UOM,Greutate UOM,
Page Break,Page Break,
Consider Tax or Charge for,Considerare Taxa sau Cost pentru,
Valuation and Total,Evaluare și Total,
Valuation,Evaluare,
Add or Deduct,Adăugaţi sau deduceţi,
Deduct,Deduce,
On Previous Row Amount,La rândul precedent Suma,
On Previous Row Total,Inapoi la rândul Total,
On Item Quantity,Pe cantitatea articolului,
Reference Row #,Reference Row #,
Is this Tax included in Basic Rate?,Este acest fiscală inclusă în rata de bază?,
"If checked, the tax amount will be considered as already included in the Print Rate / Print Amount","In cazul in care se bifeaza, suma taxelor va fi considerată ca fiind deja inclusa în Rata de Imprimare / Suma de Imprimare",
Account Head,Titularul Contului,
Tax Amount After Discount Amount,Suma taxa După Discount Suma,
Item Wise Tax Detail ,Articolul Detaliu fiscal înțelept,
"Standard tax template that can be applied to all Purchase Transactions. This template can contain list of tax heads and also other expense heads like ""Shipping"", ""Insurance"", ""Handling"" etc.\n\n#### Note\n\nThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).\n9. Consider Tax or Charge for: In this section you can specify if the tax / charge is only for valuation (not a part of total) or only for total (does not add value to the item) or for both.\n10. Add or Deduct: Whether you want to add or deduct the tax.","Șablon de impozitare standard care pot fi aplicate la toate tranzacțiile de cumpărare. Acest model poate conține lista de capete fiscale și, de asemenea, mai multe capete de cheltuieli, cum ar fi ""de transport"", ""asigurare"", ""manipulare"" etc. \n\n #### Notă \n\n Rata de impozitare pe care o definiți aici va fi rata de impozitare standard pentru toate Articole ** **. Dacă există articole ** **, care au preturi diferite, acestea trebuie să fie adăugate în ** Impozitul Postul ** masă în ** ** postul comandantului.\n\n #### Descrierea de coloane \n\n 1. Calcul Tip: \n - Acest lucru poate fi pe ** net total ** (care este suma cuantum de bază).\n - ** La rândul precedent Raport / Suma ** (pentru impozite sau taxe cumulative). Dacă selectați această opțiune, impozitul va fi aplicat ca procent din rândul anterior (în tabelul de impozitare) suma totală sau.\n - ** ** Real (după cum sa menționat).\n 2. Șeful cont: Registrul cont în care acest impozit va fi rezervat \n 3. Cost Center: În cazul în care taxa / taxa este un venit (cum ar fi de transport maritim) sau cheltuieli trebuie să se rezervat împotriva unui centru de cost.\n 4. Descriere: Descriere a taxei (care vor fi tipărite în facturi / citate).\n 5. Notă: Rata de Profit Brut.\n 6. Suma: suma taxei.\n 7. Total: total cumulat la acest punct.\n 8. Introduceți Row: Dacă bazat pe ""Înapoi Row Total"", puteți selecta numărul rând care vor fi luate ca bază pentru acest calcul (implicit este rândul precedent).\n 9. Luați în considerare Brut sau Taxa pentru: În această secțiune puteți specifica dacă taxa / taxa este doar pentru evaluare (nu o parte din total) sau numai pe total (nu adaugă valoare elementul) sau pentru ambele.\n 10. Adăugați sau deduce: Fie că doriți să adăugați sau deduce taxa.",
ACC-SINV-.YYYY.-,ACC-SINV-.YYYY.-,
Include Payment (POS),Include de plată (POS),
Offline POS Name,Offline Numele POS,
Is Return (Credit Note),Este retur (nota de credit),
Return Against Sales Invoice,Reveni Împotriva Vânzări factură,
Update Billed Amount in Sales Order,Actualizați suma facturată în comandă de vânzări,
Customer PO Details,Detalii PO pentru clienți,
Customer's Purchase Order,Comandă clientului,
Customer's Purchase Order Date,Data Comanda de Aprovizionare Client,
Customer Address,Adresă Client,
Shipping Address Name,Transport Adresa Nume,
Company Address Name,Nume Companie,
Rate at which Customer Currency is converted to customer's base currency,Rata la care Clientul valuta este convertită în valuta de bază a clientului,
Rate at which Price list currency is converted to customer's base currency,Rata la care lista de prețuri moneda este convertit în valuta de bază a clientului,
Set Source Warehouse,Set sursă depozit,
Packing List,Lista de ambalare,
Packed Items,Articole pachet,
Product Bundle Help,Produs Bundle Ajutor,
Time Sheet List,Listă de timp Sheet,
Time Sheets,Foi de timp,
Total Billing Amount,Suma totală de facturare,
Sales Taxes and Charges Template,Impozite vânzări și șabloane Taxe,
Sales Taxes and Charges,Taxele de vânzări și Taxe,
Loyalty Points Redemption,Răscumpărarea punctelor de loialitate,
Redeem Loyalty Points,Răscumpărați punctele de loialitate,
Redemption Account,Cont de Răscumpărare,
Redemption Cost Center,Centrul de cost de răscumpărare,
In Words will be visible once you save the Sales Invoice.,În cuvinte va fi vizibil după salvarea facturii.,
Allocate Advances Automatically (FIFO),Alocați avansuri automat (FIFO),
Get Advances Received,Obtine Avansurile Primite,
Base Change Amount (Company Currency),De schimbare a bazei Suma (Companie Moneda),
Write Off Outstanding Amount,Scrie Off remarcabile Suma,
Terms and Conditions Details,Termeni și condiții Detalii,
Is Internal Customer,Este client intern,
Is Discounted,Este redus,
Unpaid and Discounted,Neplătit și redus,
Overdue and Discounted,Întârziat și redus,
Accounting Details,Detalii Contabilitate,
Debit To,Debit Pentru,
Is Opening Entry,Deschiderea este de intrare,
C-Form Applicable,Formular-C aplicabil,
Commission Rate (%),Rata de Comision (%),
Sales Team1,Vânzări TEAM1,
Against Income Account,Comparativ contului de venit,
Sales Invoice Advance,Factura Vanzare Advance,
Advance amount,Sumă în avans,
Sales Invoice Item,Factură de vânzări Postul,
Customer's Item Code,Cod Articol Client,
Brand Name,Denumire marcă,
Qty as per Stock UOM,Cantitate conform Stock UOM,
Discount and Margin,Reducere și marja de profit,
Rate With Margin,Rate cu marjă,
Discount (%) on Price List Rate with Margin,Reducere (%) la rata de listă cu marjă,
Rate With Margin (Company Currency),Rata cu marjă (moneda companiei),
Delivered By Supplier,Livrate de Furnizor,
Deferred Revenue,Venituri amânate,
Deferred Revenue Account,Contul de venituri amânate,
Enable Deferred Revenue,Activați venitul amânat,
Stock Details,Stoc Detalii,
Customer Warehouse (Optional),Depozit de client (opțional),
Available Batch Qty at Warehouse,Cantitate lot disponibilă în depozit,
Available Qty at Warehouse,Cantitate disponibilă în depozit,
Delivery Note Item,Articol de nota de Livrare,
Base Amount (Company Currency),Suma de bază (Companie Moneda),
Sales Invoice Timesheet,Vânzări factură Pontaj,
Time Sheet,Fișa de timp,
Billing Hours,Ore de facturare,
Timesheet Detail,Detalii pontaj,
Tax Amount After Discount Amount (Company Currency),Suma impozitului pe urma Discount Suma (companie de valuta),
Item Wise Tax Detail,Detaliu Taxa Avizata Articol,
Parenttype,ParentType,
"Standard tax template that can be applied to all Sales Transactions. This template can contain list of tax heads and also other expense / income heads like ""Shipping"", ""Insurance"", ""Handling"" etc.\n\n#### Note\n\nThe tax rate you define here will be the standard tax rate for all **Items**. If there are **Items** that have different rates, they must be added in the **Item Tax** table in the **Item** master.\n\n#### Description of Columns\n\n1. Calculation Type: \n    - This can be on **Net Total** (that is the sum of basic amount).\n    - **On Previous Row Total / Amount** (for cumulative taxes or charges). If you select this option, the tax will be applied as a percentage of the previous row (in the tax table) amount or total.\n    - **Actual** (as mentioned).\n2. Account Head: The Account ledger under which this tax will be booked\n3. Cost Center: If the tax / charge is an income (like shipping) or expense it needs to be booked against a Cost Center.\n4. Description: Description of the tax (that will be printed in invoices / quotes).\n5. Rate: Tax rate.\n6. Amount: Tax amount.\n7. Total: Cumulative total to this point.\n8. Enter Row: If based on ""Previous Row Total"" you can select the row number which will be taken as a base for this calculation (default is the previous row).\n9. Is this Tax included in Basic Rate?: If you check this, it means that this tax will not be shown below the item table, but will be included in the Basic Rate in your main item table. This is useful where you want give a flat price (inclusive of all taxes) price to customers.","Șablon de impozitare standard, care pot fi aplicate la toate tranzacțiile de vânzare. Acest model poate conține lista de capete fiscale și, de asemenea, mai multe capete de cheltuieli / venituri, cum ar fi ""de transport"", ""asigurare"", ""manipulare"" etc. \n\n #### Notă \n\n vă Rata de impozitare defini aici va fi cota de impozitare standard pentru toate Articole ** **. Dacă există articole ** **, care au preturi diferite, acestea trebuie să fie adăugate în ** Impozitul Postul ** masă în ** ** postul comandantului.\n\n #### Descrierea de coloane \n\n 1. Calcul Tip: \n - Acest lucru poate fi pe ** net total ** (care este suma cuantum de bază).\n - ** La rândul precedent Raport / Suma ** (pentru impozite sau taxe cumulative). Dacă selectați această opțiune, impozitul va fi aplicat ca procent din rândul anterior (în tabelul de impozitare) suma totală sau.\n - ** ** Real (după cum sa menționat).\n 2. Șeful cont: Registrul cont în care acest impozit va fi rezervat \n 3. Cost Center: În cazul în care taxa / taxa este un venit (cum ar fi de transport maritim) sau cheltuieli trebuie să se rezervat împotriva unui centru de cost.\n 4. Descriere: Descriere a taxei (care vor fi tipărite în facturi / citate).\n 5. Notă: Rata de Profit Brut.\n 6. Suma: suma taxei.\n 7. Total: total cumulat la acest punct.\n 8. Introduceți Row: Dacă bazat pe ""Înapoi Row Total"", puteți selecta numărul rând care vor fi luate ca bază pentru acest calcul (implicit este rândul precedent).\n 9. Este Brut inclus în rata de bază ?: Dacă verifica acest lucru, înseamnă că acest impozit nu va fi arătată tabelul de mai jos articol, dar vor fi incluse în rata de bază din tabelul punctul principal. Acest lucru este util în cazul în care doriți dau un preț plat (cu toate taxele incluse) preț pentru clienți.",
* Will be calculated in the transaction.,* Va fi calculat în cadrul tranzacției.,
From No,De la nr,
To No,Pentru a Nu,
Is Company,Este compania,
Current State,Starea curenta,
Purchased,Cumparate,
From Shareholder,De la acționar,
From Folio No,Din Folio nr,
To Shareholder,Pentru acționar,
To Folio No,Pentru Folio nr,
Equity/Liability Account,Contul de capitaluri proprii,
Asset Account,Cont de active,
(including),(inclusiv),
ACC-SH-.YYYY.-,ACC-SH-.YYYY.-,
Folio no.,Folio nr.,
Address and Contacts,Adresa și Contacte,
Contact List,Listă de contacte,
Hidden list maintaining the list of contacts linked to Shareholder,Lista ascunsă menținând lista contactelor legate de acționar,
Specify conditions to calculate shipping amount,Precizați condițiile de calcul cantitate de transport maritim,
Shipping Rule Label,Regula de transport maritim Label,
example: Next Day Shipping,exemplu: Next Day Shipping,
Shipping Rule Type,Tipul regulii de transport,
Shipping Account,Contul de transport maritim,
Calculate Based On,Calculaţi pe baza,
Fixed,Fix,
Net Weight,Greutate netă,
Shipping Amount,Suma de transport maritim,
Shipping Rule Conditions,Condiții Regula de transport maritim,
Restrict to Countries,Limitează la Țări,
Valid for Countries,Valabil pentru țările,
Shipping Rule Condition,Regula Condiții presetate,
A condition for a Shipping Rule,O condiție pentru o normă de transport,
From Value,Din Valoare,
To Value,La valoarea,
Shipping Rule Country,Regula de transport maritim Tara,
Subscription Period,Perioada de abonament,
Subscription Start Date,Data de începere a abonamentului,
Cancelation Date,Data Anulării,
Trial Period Start Date,Perioada de începere a perioadei de încercare,
Trial Period End Date,Data de încheiere a perioadei de încercare,
Current Invoice Start Date,Data de începere a facturii actuale,
Current Invoice End Date,Data de încheiere a facturii actuale,
Days Until Due,Zile Până la Termen,
Number of days that the subscriber has to pay invoices generated by this subscription,Numărul de zile în care abonatul trebuie să plătească facturile generate de acest abonament,
Cancel At End Of Period,Anulați la sfârșitul perioadei,
Generate Invoice At Beginning Of Period,Generați factura la începutul perioadei,
Plans,Planuri,
Discounts,reduceri,
Additional DIscount Percentage,Procent Discount Suplimentar,
Additional DIscount Amount,Valoare discount-ului suplimentar,
Subscription Invoice,Factura de abonament,
Subscription Plan,Planul de abonament,
Cost,Cost,
Billing Interval,Intervalul de facturare,
Billing Interval Count,Intervalul de facturare,
"Number of intervals for the interval field e.g if Interval is 'Days' and Billing Interval Count is 3, invoices will be generated every 3 days","Numărul de intervale pentru câmpul intervalului, de exemplu, dacă Intervalul este &quot;Zile&quot; și Numărul de intervale de facturare este de 3, facturile vor fi generate la fiecare 3 zile",
Payment Plan,Plan de plată,
Subscription Plan Detail,Detaliile planului de abonament,
Plan,Plan,
Subscription Settings,Setările pentru abonament,
Grace Period,Perioadă de grație,
Number of days after invoice date has elapsed before canceling subscription or marking subscription as unpaid,Numărul de zile după expirarea datei facturii înainte de a anula abonamentul sau marcarea abonamentului ca neplătit,
Prorate,Prorate,
Tax Rule,Regula de impozitare,
Tax Type,Tipul de impozitare,
Use for Shopping Cart,Utilizați pentru Cos de cumparaturi,
Billing City,Oraș de facturare,
Billing County,Județ facturare,
Billing State,Situatie facturare,
Billing Zipcode,Cod poștal de facturare,
Billing Country,Țara facturării,
Shipping City,Transport Oraș,
Shipping County,County transport maritim,
Shipping State,Stat de transport maritim,
Shipping Zipcode,Cod poștal de expediere,
Shipping Country,Transport Tara,
Tax Withholding Account,Contul de reținere fiscală,
Tax Withholding Rates,Ratele de reținere fiscală,
Rates,Tarife,
Tax Withholding Rate,Rata reținerii fiscale,
Single Transaction Threshold,Singurul prag de tranzacție,
Cumulative Transaction Threshold,Valoarea cumulată a tranzacției,
Agriculture Analysis Criteria,Criterii de analiză a agriculturii,
Linked Doctype,Legate de Doctype,
Water Analysis,Analiza apei,
Soil Analysis,Analiza solului,
Plant Analysis,Analiza plantelor,
Fertilizer,Îngrăşământ,
Soil Texture,Textura solului,
Weather,Vreme,
Agriculture Manager,Directorul Agriculturii,
Agriculture User,Utilizator agricol,
Agriculture Task,Agricultura,
Task Name,Sarcina Nume,
Start Day,Ziua de început,
End Day,Sfârșitul zilei,
Holiday Management,Gestionarea concediului,
Ignore holidays,Ignorați sărbătorile,
Previous Business Day,Ziua lucrătoare anterioară,
Next Business Day,Ziua următoare de lucru,
Urgent,De urgență,
Crop Name,Numele plantei,
Scientific Name,Nume stiintific,
"You can define all the tasks which need to carried out for this crop here. The day field is used to mention the day on which the task needs to be carried out, 1 being the 1st day, etc.. ","Puteți defini toate sarcinile care trebuie îndeplinite pentru această recoltă aici. Câmpul de zi este folosit pentru a menționa ziua în care sarcina trebuie efectuată, 1 fiind prima zi, etc.",
Crop Spacing,Decuparea culturii,
Crop Spacing UOM,Distanțarea culturii UOM,
Row Spacing,Spațierea rândului,
Row Spacing UOM,Rândul de spațiu UOM,
Perennial,peren,
Biennial,Bienal,
Planting UOM,Plantarea UOM,
Planting Area,Zona de plantare,
Yield UOM,Randamentul UOM,
Materials Required,Materiale necesare,
Produced Items,Articole produse,
Produce,Legume şi fructe,
Byproducts,produse secundare,
Linked Location,Locație conectată,
A link to all the Locations in which the Crop is growing,O legătură către toate locațiile în care cultura este în creștere,
This will be day 1 of the crop cycle,Aceasta va fi prima zi a ciclului de cultură,
ISO 8601 standard,Standardul ISO 8601,
Cycle Type,Tip ciclu,
Less than a year,Mai putin de un an,
The minimum length between each plant in the field for optimum growth,Lungimea minimă dintre fiecare plantă din câmp pentru creștere optimă,
The minimum distance between rows of plants for optimum growth,Distanța minimă dintre rânduri de plante pentru creștere optimă,
Detected Diseases,Au detectat bolile,
List of diseases detected on the field. When selected it'll automatically add a list of tasks to deal with the disease ,"Lista bolilor detectate pe teren. Când este selectată, va adăuga automat o listă de sarcini pentru a face față bolii",
Detected Disease,Boala detectată,
LInked Analysis,Analiza analizată,
Disease,boală,
Tasks Created,Sarcini create,
Common Name,Denumire Comună,
Treatment Task,Sarcina de tratament,
Treatment Period,Perioada de tratament,
Fertilizer Name,Denumirea îngrășămintelor,
Density (if liquid),Densitatea (dacă este lichidă),
Fertilizer Contents,Conținutul de îngrășăminte,
Fertilizer Content,Conținut de îngrășăminte,
Linked Plant Analysis,Analiza plantelor conectate,
Linked Soil Analysis,Analiza solului conectat,
Linked Soil Texture,Textură de sol conectată,
Collection Datetime,Data colecției,
Laboratory Testing Datetime,Timp de testare a laboratorului,
Result Datetime,Rezultat Datatime,
Plant Analysis Criterias,Condiții de analiză a plantelor,
Plant Analysis Criteria,Criterii de analiză a plantelor,
Minimum Permissible Value,Valoarea minimă admisă,
Maximum Permissible Value,Valoarea maximă admisă,
Ca/K,Ca / K,
Ca/Mg,Ca / Mg,
Mg/K,Mg / K,
(Ca+Mg)/K,(Ca + Mg) / K,
Ca/(K+Ca+Mg),Ca / (K + Ca + Mg),
Soil Analysis Criterias,Criterii de analiză a solului,
Soil Analysis Criteria,Criterii de analiză a solului,
Soil Type,Tipul de sol,
Loamy Sand,Nisip argilos,
Sandy Loam,Sandy Loam,
Loam,Lut,
Silt Loam,Silt Loam,
Sandy Clay Loam,Sandy Clay Loam,
Clay Loam,Argilos,
Silty Clay Loam,Silty Clay Loam,
Sandy Clay,Sandy Clay,
Silty Clay,Lut de râu,
Clay Composition (%),Compoziția de lut (%),
Sand Composition (%),Compoziția nisipului (%),
Silt Composition (%),Compoziția Silt (%),
Ternary Plot,Ternar Plot,
Soil Texture Criteria,Criterii de textură a solului,
Type of Sample,Tipul de eșantion,
Container,recipient,
Origin,Origine,
Collection Temperature ,Temperatura colecției,
Storage Temperature,Temperatura de depozitare,
Appearance,Aspect,
Person Responsible,Persoană responsabilă,
Water Analysis Criteria,Criterii de analiză a apei,
Weather Parameter,Parametrul vremii,
ACC-ASS-.YYYY.-,ACC-ASS-.YYYY.-,
Asset Owner,Proprietarul de proprietar,
Asset Owner Company,Societatea de proprietari de active,
Custodian,Custode,
Disposal Date,eliminare Data,
Journal Entry for Scrap,Intrare Jurnal pentru Deșeuri,
Available-for-use Date,Data disponibilă pentru utilizare,
Calculate Depreciation,Calculează Amortizare,
Allow Monthly Depreciation,Permite amortizarea lunară,
Number of Depreciations Booked,Numărul de Deprecieri rezervat,
Finance Books,Cărți de finanțare,
Straight Line,Linie dreapta,
Double Declining Balance,Dublu degresive,
Manual,Manual,
Value After Depreciation,Valoarea după amortizare,
Total Number of Depreciations,Număr total de Deprecieri,
Frequency of Depreciation (Months),Frecventa de amortizare (Luni),
Next Depreciation Date,Data următoarei amortizări,
Depreciation Schedule,Program de amortizare,
Depreciation Schedules,Orarele de amortizare,
Insurance details,Detalii de asigurare,
Policy number,Numărul politicii,
Insurer,Asiguratorul,
Insured value,Valoarea asigurată,
Insurance Start Date,Data de începere a asigurării,
Insurance End Date,Data de încheiere a asigurării,
Comprehensive Insurance,Asigurare completă,
Maintenance Required,Mentenanță Necesară,
Check if Asset requires Preventive Maintenance or Calibration,Verificați dacă activul necesită întreținere preventivă sau calibrare,
Booked Fixed Asset,Carte imobilizată rezervată,
Purchase Receipt Amount,Suma chitanței de cumpărare,
Default Finance Book,Cartea de finanțare implicită,
Quality Manager,Manager de calitate,
Asset Category Name,Nume activ Categorie,
Depreciation Options,Opțiunile de amortizare,
Enable Capital Work in Progress Accounting,Activați activitatea de capital în contabilitate în curs,
Finance Book Detail,Detaliile cărții de finanțe,
Asset Category Account,Cont activ Categorie,
Fixed Asset Account,Cont activ fix,
Accumulated Depreciation Account,Cont Amortizarea cumulată,
Depreciation Expense Account,Contul de amortizare de cheltuieli,
Capital Work In Progress Account,Activitatea de capital în curs de desfășurare,
Asset Finance Book,Cartea de finanțare a activelor,
Written Down Value,Valoarea scrise în jos,
Expected Value After Useful Life,Valoarea așteptată după viață utilă,
Rate of Depreciation,Rata de depreciere,
In Percentage,În procent,
Maintenance Team,Echipă de Mentenanță,
Maintenance Manager Name,Nume Manager Mentenanță,
Maintenance Tasks,Sarcini de Mentenanță,
Manufacturing User,Producție de utilizare,
Asset Maintenance Log,Jurnalul de întreținere a activelor,
ACC-AML-.YYYY.-,ACC-CSB-.YYYY.-,
Maintenance Type,Tip Mentenanta,
Maintenance Status,Stare Mentenanta,
Planned,Planificat,
Has Certificate ,Are certificat,
Certificate,Certificat,
Actions performed,Acțiuni efectuate,
Asset Maintenance Task,Activitatea de întreținere a activelor,
Maintenance Task,Activitate Mentenanță,
Preventive Maintenance,Mentenanță preventivă,
Calibration,Calibrare,
2 Yearly,2 Anual,
Certificate Required,Certificat necesar,
Assign to Name,Atribuiți la Nume,
Next Due Date,Data următoare,
Last Completion Date,Ultima dată de finalizare,
Asset Maintenance Team,Echipa de întreținere a activelor,
Maintenance Team Name,Nume Echipă de Mentenanță,
Maintenance Team Members,Membri Echipă de Mentenanță,
Purpose,Scopul,
Stock Manager,Stock Manager,
Asset Movement Item,Element de mișcare a activelor,
Source Location,Locația sursei,
From Employee,Din Angajat,
Target Location,Locația țintă,
To Employee,Pentru angajat,
Asset Repair,Repararea activelor,
ACC-ASR-.YYYY.-,ACC-ASR-.YYYY.-,
Failure Date,Dată de nerespectare,
Assign To Name,Alocați nume,
Repair Status,Stare de reparare,
Error Description,Descrierea erorii,
Downtime,downtime,
Repair Cost,Costul reparațiilor,
Manufacturing Manager,Manager de Producție,
Current Asset Value,Valoarea activului curent,
New Asset Value,Valoare nouă a activelor,
Make Depreciation Entry,Asigurați-vă Amortizarea Intrare,
Finance Book Id,Numărul cărții de credit,
Location Name,Numele locatiei,
Parent Location,Locația părintească,
Is Container,Este Container,
Check if it is a hydroponic unit,Verificați dacă este o unitate hidroponică,
Location Details,Detalii despre locație,
Latitude,Latitudine,
Longitude,Longitudine,
Area,Zonă,
Area UOM,Zona UOM,
Tree Details,copac Detalii,
Maintenance Team Member,Membru Echipă de Mentenanță,
Team Member,Membru al echipei,
Maintenance Role,Rol de Mentenanță,
Buying Settings,Configurări cumparare,
Settings for Buying Module,Setări pentru cumparare Modulul,
Supplier Naming By,Furnizor de denumire prin,
Default Supplier Group,Grupul prestabilit de furnizori,
Default Buying Price List,Lista de POrețuri de Cumparare Implicita,
Backflush Raw Materials of Subcontract Based On,Materiile de bază din substratul bazat pe,
Material Transferred for Subcontract,Material transferat pentru subcontractare,
Over Transfer Allowance (%),Indemnizație de transfer peste (%),
Percentage you are allowed to transfer more against the quantity ordered. For example: If you have ordered 100 units. and your Allowance is 10% then you are allowed to transfer 110 units.,"Procentaj pe care vi se permite să transferați mai mult în raport cu cantitatea comandată. De exemplu: Dacă ați comandat 100 de unități. iar alocația dvs. este de 10%, atunci vi se permite să transferați 110 unități.",
PUR-ORD-.YYYY.-,PUR-ORD-.YYYY.-,
Get Items from Open Material Requests,Obține elemente din materiale Cereri deschide,
Fetch items based on Default Supplier.,Obțineți articole pe baza furnizorului implicit.,
Required By,Cerute de,
Order Confirmation No,Confirmarea nr,
Order Confirmation Date,Data de confirmare a comenzii,
Customer Mobile No,Client Mobile Nu,
Customer Contact Email,Contact Email client,
Set Target Warehouse,Stabilește Depozitul țintă,
Sets 'Warehouse' in each row of the Items table.,Setează „Depozit” în fiecare rând al tabelului Elemente.,
Supply Raw Materials,Aprovizionarea cu materii prime,
Purchase Order Pricing Rule,Regula de preț a comenzii de achiziție,
Set Reserve Warehouse,Set Rezerva Depozit,
In Words will be visible once you save the Purchase Order.,În cuvinte va fi vizibil după ce a salva Ordinul de cumparare.,
Advance Paid,Avans plătit,
Tracking,Urmărirea,
% Billed,% Facurat,
% Received,% Primit,
Ref SQ,Ref SQ,
Inter Company Order Reference,Referință de comandă între companii,
Supplier Part Number,Furnizor Număr,
Billed Amt,Suma facturată,
Warehouse and Reference,Depozit și Referință,
To be delivered to customer,Pentru a fi livrat clientului,
Material Request Item,Material Cerere Articol,
Supplier Quotation Item,Furnizor ofertă Articol,
Against Blanket Order,Împotriva ordinului pătură,
Blanket Order,Ordinul de ștergere,
Blanket Order Rate,Rata de comandă a plicului,
Returned Qty,Cant. Returnată,
Purchase Order Item Supplied,Comandă de aprovizionare Articol Livrat,
BOM Detail No,Detaliu BOM nr.,
Stock Uom,Stoc UOM,
Raw Material Item Code,Cod Articol Materie Prima,
Supplied Qty,Furnizat Cantitate,
Purchase Receipt Item Supplied,Primirea de cumpărare Articol Livrat,
Current Stock,Stoc curent,
PUR-RFQ-.YYYY.-,PUR-RFQ-.YYYY.-,
For individual supplier,Pentru furnizor individual,
Link to Material Requests,Link către cereri de materiale,
Message for Supplier,Mesaj pentru Furnizor,
Request for Quotation Item,Articol Cerere de Oferta,
Required Date,Data de livrare ceruta,
Request for Quotation Supplier,Furnizor Cerere de Ofertă,
Send Email,Trimiteți-ne email,
Quote Status,Citat Stare,
Download PDF,descarcă PDF,
Supplier of Goods or Services.,Furnizor de bunuri sau servicii.,
Name and Type,Numele și tipul,
SUP-.YYYY.-,SUP-.YYYY.-,
Default Bank Account,Cont Bancar Implicit,
Is Transporter,Este Transporter,
Represents Company,Reprezintă Compania,
Supplier Type,Furnizor Tip,
Allow Purchase Invoice Creation Without Purchase Order,Permiteți crearea facturii de cumpărare fără comandă de achiziție,
Allow Purchase Invoice Creation Without Purchase Receipt,Permiteți crearea facturii de cumpărare fără chitanță de cumpărare,
Warn RFQs,Aflați RFQ-urile,
Warn POs,Avertizează PO-urile,
Prevent RFQs,Preveniți RFQ-urile,
Prevent POs,Preveniți PO-urile,
Billing Currency,Moneda de facturare,
Default Payment Terms Template,Șablonul Termenii de plată standard,
Block Supplier,Furnizorul de blocuri,
Hold Type,Tineți tip,
Leave blank if the Supplier is blocked indefinitely,Lăsați necompletat dacă Furnizorul este blocat pe o perioadă nedeterminată,
Default Payable Accounts,Implicit conturi de plătit,
Mention if non-standard payable account,Menționați dacă contul de plată non-standard,
Default Tax Withholding Config,Config,
Supplier Details,Detalii furnizor,
Statutory info and other general information about your Supplier,Info statutar și alte informații generale despre dvs. de Furnizor,
PUR-SQTN-.YYYY.-,PUR-SQTN-.YYYY.-,
Supplier Address,Furnizor Adresa,
Link to material requests,Link la cererile de materiale,
Rounding Adjustment (Company Currency,Rotunjire ajustare (moneda companiei,
Auto Repeat Section,Se repetă secțiunea Auto,
Is Subcontracted,Este subcontractată,
Lead Time in days,Timp Pistă în zile,
Supplier Score,Scorul furnizorului,
Indicator Color,Indicator Culoare,
Evaluation Period,Perioada de evaluare,
Per Week,Pe saptamana,
Per Month,Pe luna,
Per Year,Pe an,
Scoring Setup,Punctul de configurare,
Weighting Function,Funcție de ponderare,
"Scorecard variables can be used, as well as:\n{total_score} (the total score from that period),\n{period_number} (the number of periods to present day)\n","Variabilele caracterelor pot fi utilizate, precum și: {total_score} (scorul total din acea perioadă), {period_number} (numărul de perioade până în prezent)",
Scoring Standings,Puncte de scor,
Criteria Setup,Setarea criteriilor,
Load All Criteria,Încărcați toate criteriile,
Scoring Criteria,Criterii de evaluare,
Scorecard Actions,Caracteristicile Scorecard,
Warn for new Request for Quotations,Avertizare pentru o nouă solicitare de ofertă,
Warn for new Purchase Orders,Avertizați pentru comenzi noi de achiziție,
Notify Supplier,Notificați Furnizor,
Notify Employee,Notificați angajatul,
Supplier Scorecard Criteria,Criteriile Scorecard pentru furnizori,
Criteria Name,Numele de criterii,
Max Score,Scor maxim,
Criteria Formula,Criterii Formula,
Criteria Weight,Criterii Greutate,
Supplier Scorecard Period,Perioada de evaluare a furnizorului,
PU-SSP-.YYYY.-,PU-SSP-.YYYY.-,
Period Score,Scorul perioadei,
Calculations,Calculele,
Criteria,criterii,
Variables,variabile,
Supplier Scorecard Setup,Setarea Scorecard pentru furnizori,
Supplier Scorecard Scoring Criteria,Criteriile de evaluare a Scorecard-ului furnizorului,
Score,Scor,
Supplier Scorecard Scoring Standing,Scorecard pentru Scorecard furnizor,
Standing Name,Numele permanent,
Purple,Violet,
Yellow,Galben,
Orange,portocale,
Min Grade,Gradul minim,
Max Grade,Max Grad,
Warn Purchase Orders,Avertizați comenzile de cumpărare,
Prevent Purchase Orders,Împiedicați comenzile de achiziție,
Employee ,Angajat,
Supplier Scorecard Scoring Variable,Scorul variabil al scorului de performanță al furnizorului,
Variable Name,Numele variabil,
Parameter Name,Nume parametru,
Supplier Scorecard Standing,Graficul Scorecard pentru furnizori,
Notify Other,Notificați alta,
Supplier Scorecard Variable,Variabila tabelului de variabile pentru furnizori,
Call Log,Jurnal de Apel,
Received By,Primit de,
Caller Information,Informații despre apelant,
Contact Name,Nume Persoana de Contact,
Lead ,Conduce,
Lead Name,Nume Pistă,
Ringing,țiuit,
Missed,Pierdute,
Call Duration in seconds,Durata apelului în câteva secunde,
Recording URL,Înregistrare URL,
Communication Medium,Comunicare Mediu,
Communication Medium Type,Tip mediu de comunicare,
Voice,Voce,
Catch All,Prindele pe toate,
"If there is no assigned timeslot, then communication will be handled by this group","Dacă nu există un interval de timp alocat, comunicarea va fi gestionată de acest grup",
Timeslots,Intervale de timp,
Communication Medium Timeslot,Timeslot mediu de comunicare,
Employee Group,Grupul de angajați,
Appointment,Programare,
Scheduled Time,Timpul programat,
Unverified,neverificat,
Customer Details,Detalii Client,
Phone Number,Numar de telefon,
Skype ID,ID Skype,
Linked Documents,Documente legate,
Appointment With,Programare cu,
Calendar Event,Calendar Eveniment,
Appointment Booking Settings,Setări rezervare numire,
Enable Appointment Scheduling,Activați programarea programării,
Agent Details,Detalii agent,
Availability Of Slots,Disponibilitatea sloturilor,
Number of Concurrent Appointments,Numărul de întâlniri simultane,
Agents,agenţi,
Appointment Details,Detalii despre numire,
Appointment Duration (In Minutes),Durata numirii (în proces-verbal),
Notify Via Email,Notificați prin e-mail,
Notify customer and agent via email on the day of the appointment.,Notificați clientul și agentul prin e-mail în ziua programării.,
Number of days appointments can be booked in advance,Numărul de întâlniri de zile poate fi rezervat în avans,
Success Settings,Setări de succes,
Success Redirect URL,Adresa URL de redirecționare,
"Leave blank for home.\nThis is relative to site URL, for example ""about"" will redirect to ""https://yoursitename.com/about""","Lăsați gol pentru casă. Aceasta este relativă la adresa URL a site-ului, de exemplu „despre” se va redirecționa la „https://yoursitename.com/about”",
Appointment Booking Slots,Rezervare pentru sloturi de rezervare,
Day Of Week,Zi a Săptămânii,
From Time ,Din Time,
Campaign Email Schedule,Program de e-mail al campaniei,
Send After (days),Trimite După (zile),
Signed,Semnat,
Party User,Utilizator de petreceri,
Unsigned,Nesemnat,
Fulfilment Status,Starea de îndeplinire,
N/A,N / A,
Unfulfilled,neîmplinit,
Partially Fulfilled,Parțial îndeplinite,
Fulfilled,Fulfilled,
Lapsed,caducă,
Contract Period,Perioada contractuala,
Signee Details,Signee Detalii,
Signee,Signee,
Signed On,Signed On,
Contract Details,Detaliile contractului,
Contract Template,Model de contract,
Contract Terms,Termenii contractului,
Fulfilment Details,Detalii de execuție,
Requires Fulfilment,Necesită îndeplinirea,
Fulfilment Deadline,Termenul de îndeplinire,
Fulfilment Terms,Condiții de îndeplinire,
Contract Fulfilment Checklist,Lista de verificare a executării contului,
Requirement,Cerinţă,
Contract Terms and Conditions,Termeni și condiții contractuale,
Fulfilment Terms and Conditions,Condiții și condiții de îndeplinire,
Contract Template Fulfilment Terms,Termenii de îndeplinire a modelului de contract,
Email Campaign,Campania de e-mail,
Email Campaign For ,Campanie prin e-mail,
Lead is an Organization,Pista este o Organizație,
CRM-LEAD-.YYYY.-,CRM-LEAD-.YYYY.-,
Person Name,Nume persoană,
Lost Quotation,ofertă pierdută,
Interested,Interesat,
Converted,Transformat,
Do Not Contact,Nu contactati,
From Customer,De la Client,
Campaign Name,Denumire campanie,
Follow Up,Urmare,
Next Contact By,Următor Contact Prin,
Next Contact Date,Următor Contact Data,
Ends On,Se termină pe,
Address & Contact,Adresă și contact,
Mobile No.,Numar de mobil,
Lead Type,Tip Pistă,
Channel Partner,Partner Canal,
Consultant,Consultant,
Market Segment,Segmentul de piață,
Industry,Industrie,
Request Type,Tip Cerere,
Product Enquiry,Intrebare produs,
Request for Information,Cerere de informații,
Suggestions,Sugestii,
Blog Subscriber,Abonat blog,
LinkedIn Settings,Setări LinkedIn,
Company ID,ID-ul companiei,
OAuth Credentials,Acreditări OAuth,
Consumer Key,Cheia consumatorului,
Consumer Secret,Secretul consumatorului,
User Details,Detalii utilizator,
Person URN,Persoana URN,
Session Status,Starea sesiunii,
Lost Reason Detail,Detaliu ratiune pierduta,
Opportunity Lost Reason,Motivul pierdut din oportunitate,
Potential Sales Deal,Oferta potențiale Vânzări,
CRM-OPP-.YYYY.-,CRM-OPP-.YYYY.-,
Opportunity From,Oportunitate de la,
Customer / Lead Name,Client / Nume Principal,
Opportunity Type,Tip de oportunitate,
Converted By,Convertit de,
Sales Stage,Stadiu Vânzări,
Lost Reason,Motiv Pierdere,
Expected Closing Date,Data de închidere preconizată,
To Discuss,Pentru a discuta,
With Items,Cu articole,
Probability (%),Probabilitate (%),
Contact Info,Informaţii Persoana de Contact,
Customer / Lead Address,Client / Adresa principala,
Contact Mobile No,Nr. Mobil Persoana de Contact,
Enter name of campaign if source of enquiry is campaign,Introduceți numele de campanie dacă sursa de anchetă este campanie,
Opportunity Date,Oportunitate Data,
Opportunity Item,Oportunitate Articol,
Basic Rate,Rată elementară,
Stage Name,Nume de Scenă,
Social Media Post,Postare pe rețelele sociale,
Post Status,Stare postare,
Posted,Postat,
Share On,Distribuie pe,
Twitter,Stare de nervozitate,
LinkedIn,LinkedIn,
Twitter Post Id,Codul postării pe Twitter,
LinkedIn Post Id,Cod postare LinkedIn,
Tweet,Tweet,
Twitter Settings,Setări Twitter,
API Secret Key,Cheia secretă API,
Term Name,Nume termen,
Term Start Date,Termenul Data de începere,
Term End Date,Termenul Data de încheiere,
Academics User,Utilizator cadru pedagogic,
Academic Year Name,Nume An Universitar,
Article,Articol,
LMS User,Utilizator LMS,
Assessment Criteria Group,Grup de criterii de evaluare,
Assessment Group Name,Numele grupului de evaluare,
Parent Assessment Group,Grup părinte de evaluare,
Assessment Name,Nume evaluare,
Grading Scale,Scala de notare,
Examiner,Examinator,
Examiner Name,Nume examinator,
Supervisor,supraveghetor,
Supervisor Name,Nume supervizor,
Evaluate,A evalua,
Maximum Assessment Score,Scor maxim de evaluare,
Assessment Plan Criteria,Criterii Plan de evaluare,
Maximum Score,Scor maxim,
Grade,calitate,
Assessment Result Detail,Detalii rezultat evaluare,
Assessment Result Tool,Instrument de Evaluare Rezultat,
Result HTML,rezultat HTML,
Content Activity,Activitate de conținut,
Last Activity ,Ultima activitate,
Content Question,Întrebare de conținut,
Question Link,Link de întrebări,
Course Name,Numele cursului,
Topics,Subiecte,
Hero Image,Imaginea eroului,
Default Grading Scale,Scale Standard Standard folosit,
Education Manager,Director de educație,
Course Activity,Activitate de curs,
Course Enrollment,Înscriere la curs,
Activity Date,Data activității,
Course Assessment Criteria,Criterii de evaluare a cursului,
Weightage,Weightage,
Course Content,Conținutul cursului,
Quiz,chestionare,
Program Enrollment,programul de înscriere,
Enrollment Date,Data de inscriere,
Instructor Name,Nume instructor,
EDU-CSH-.YYYY.-,EDU-CSH-.YYYY.-,
Course Scheduling Tool,Instrument curs de programare,
Course Start Date,Data începerii cursului,
To TIme,La timp,
Course End Date,Desigur Data de încheiere,
Course Topic,Subiectul cursului,
Topic Name,Nume subiect,
Education Settings,Setări educaționale,
Current Academic Year,Anul academic curent,
Current Academic Term,Termen academic actual,
Attendance Freeze Date,Data de înghețare a prezenței,
Validate Batch for Students in Student Group,Validați lotul pentru elevii din grupul de studenți,
"For Batch based Student Group, the Student Batch will be validated for every Student from the Program Enrollment.","Pentru grupul de studenți bazat pe loturi, lotul student va fi validat pentru fiecare student din înscrierea în program.",
Validate Enrolled Course for Students in Student Group,Validați cursul înscris pentru elevii din grupul de studenți,
"For Course based Student Group, the Course will be validated for every Student from the enrolled Courses in Program Enrollment.","Pentru grupul de studenți bazat pe cursuri, cursul va fi validat pentru fiecare student din cursurile înscrise în înscrierea în program.",
Make Academic Term Mandatory,Asigurați-obligatoriu termenul academic,
"If enabled, field Academic Term will be Mandatory in Program Enrollment Tool.","Dacă este activată, domeniul Academic Term va fi obligatoriu în Instrumentul de înscriere în program.",
Skip User creation for new Student,Omiteți crearea utilizatorului pentru noul student,
"By default, a new User is created for every new Student. If enabled, no new User will be created when a new Student is created.","În mod implicit, este creat un nou utilizator pentru fiecare student nou. Dacă este activat, nu va fi creat niciun utilizator nou atunci când este creat un nou student.",
Instructor Records to be created by,Instructor de înregistrări care urmează să fie create de către,
Employee Number,Numar angajat,
Fee Category,Taxă Categorie,
Fee Component,Taxa de Component,
Fees Category,Taxele de Categoria,
Fee Schedule,Taxa de Program,
Fee Structure,Structura Taxa de,
EDU-FSH-.YYYY.-,EDU-FSH-.YYYY.-,
Fee Creation Status,Starea de creare a taxelor,
In Process,În procesul de,
Send Payment Request Email,Trimiteți e-mail de solicitare de plată,
Student Category,Categoria de student,
Fee Breakup for each student,Taxă pentru fiecare student,
Total Amount per Student,Suma totală pe student,
Institution,Instituţie,
Fee Schedule Program,Programul programului de plăți,
Student Batch,Lot de student,
Total Students,Total studenți,
Fee Schedule Student Group,Taxă Schedule Student Group,
EDU-FST-.YYYY.-,EDU-FST-.YYYY.-,
EDU-FEE-.YYYY.-,EDU-FEE-.YYYY.-,
Include Payment,Includeți plata,
Send Payment Request,Trimiteți Cerere de Plată,
Student Details,Detalii studențești,
Student Email,Student Email,
Grading Scale Name,Standard Nume Scala,
Grading Scale Intervals,Intervale de notare Scala,
Intervals,intervale,
Grading Scale Interval,Clasificarea Scala Interval,
Grade Code,Cod grad,
Threshold,Prag,
Grade Description,grad Descriere,
Guardian,gardian,
Guardian Name,Nume tutore,
Alternate Number,Număr alternativ,
Occupation,Ocupaţie,
Work Address,Adresa de,
Guardian Of ,Guardian Of,
Students,Elevi,
Guardian Interests,Guardian Interese,
Guardian Interest,Interes tutore,
Interest,Interes,
Guardian Student,Guardian Student,
EDU-INS-.YYYY.-,EDU-INS-.YYYY.-,
Instructor Log,Jurnalul instructorului,
Other details,Alte detalii,
Option,Opțiune,
Is Correct,Este corect,
Program Name,Numele programului,
Program Abbreviation,Abreviere de program,
Courses,cursuri,
Is Published,Este publicat,
Allow Self Enroll,Permiteți înscrierea de sine,
Is Featured,Este prezentat,
Intro Video,Introducere video,
Program Course,Curs Program,
School House,School House,
Boarding Student,Student de internare,
Check this if the Student is residing at the Institute's Hostel.,Verificați dacă studentul este rezident la Hostelul Institutului.,
Walking,mers,
Institute's Bus,Biblioteca Institutului,
Self-Driving Vehicle,Vehicul cu autovehicul,
Pick/Drop by Guardian,Pick / Drop de Guardian,
Enrolled courses,Cursuri înscrise,
Program Enrollment Course,Curs de înscriere la curs,
Program Enrollment Fee,Programul de înscriere Taxa,
Program Enrollment Tool,Programul Instrumentul de înscriere,
Get Students From,Elevii de la a lua,
Student Applicant,Solicitantul elev,
Get Students,Studenți primi,
Enrollment Details,Detalii de înscriere,
New Program,programul nou,
New Student Batch,Noul lot de studenți,
Enroll Students,Studenți Enroll,
New Academic Year,Anul universitar nou,
New Academic Term,Termen nou academic,
Program Enrollment Tool Student,Programul de înscriere Instrumentul Student,
Student Batch Name,Nume elev Lot,
Program Fee,Taxa de program,
Question,Întrebare,
Single Correct Answer,Un singur răspuns corect,
Multiple Correct Answer,Răspuns corect multiplu,
Quiz Configuration,Configurarea testului,
Passing Score,Scor de trecere,
Score out of 100,Scor din 100,
Max Attempts,Încercări maxime,
Enter 0 to waive limit,Introduceți 0 până la limita de renunțare,
Grading Basis,Bazele gradării,
Latest Highest Score,Cel mai mare scor,
Latest Attempt,Ultima încercare,
Quiz Activity,Activitate de testare,
Enrollment,înrolare,
Pass,Trece,
Quiz Question,Întrebare întrebare,
Quiz Result,Rezultatul testului,
Selected Option,Opțiunea selectată,
Correct,Corect,
Wrong,Gresit,
Room Name,Nume Cameră,
Room Number,Număr Cameră,
Seating Capacity,Numărul de locuri,
House Name,Numele casei,
EDU-STU-.YYYY.-,EDU-STU-.YYYY.-,
Student Mobile Number,Elev Număr mobil,
Blood Group,Grupă de sânge,
A+,A+,
A-,A-,
B+,B +,
B-,B-,
O+,O +,
O-,O-,
AB+,AB+,
AB-,AB-,
Nationality,Naţionalitate,
Home Address,Adresa de acasa,
Guardian Details,Detalii tutore,
Guardians,tutorii,
Sibling Details,Detalii sibling,
Siblings,siblings,
Exit,Iesire,
Date of Leaving,Data Părăsirii,
Leaving Certificate Number,Părăsirea Număr certificat,
Reason For Leaving,Motivul plecării,
Student Admission,Admiterea studenților,
Admission Start Date,Data de începere a Admiterii,
Admission End Date,Data de încheiere Admiterii,
Eligibility and Details,Eligibilitate și detalii,
Student Admission Program,Programul de Admitere în Studenți,
Minimum Age,Varsta minima,
Maximum Age,Vârsta maximă,
Application Fee,Taxă de aplicare,
Naming Series (for Student Applicant),Seria de denumire (pentru Student Solicitant),
LMS Only,Numai LMS,
EDU-APP-.YYYY.-,EDU-APP-.YYYY.-,
Application Date,Data aplicării,
Student Attendance Tool,Instrumentul de student Participarea,
Group Based On,Grup pe baza,
Students HTML,HTML studenții,
Group Based on,Grup bazat pe,
Student Group Name,Numele grupului studențesc,
Max Strength,Putere max,
Set 0 for no limit,0 pentru a seta nici o limită,
Instructors,instructorii,
Student Group Creation Tool,Instrumentul de creare a grupului de student,
Leave blank if you make students groups per year,Lăsați necompletat dacă faceți grupuri de elevi pe an,
Get Courses,Cursuri de a lua,
Separate course based Group for every Batch,Separați un grup bazat pe cursuri pentru fiecare lot,
Leave unchecked if you don't want to consider batch while making course based groups. ,Lăsați necontrolabil dacă nu doriți să luați în considerare lotul în timp ce faceți grupuri bazate pe curs.,
Student Group Creation Tool Course,Curs de grup studențesc instrument de creare,
Course Code,Codul cursului,
Student Group Instructor,Student Grup Instructor,
Student Group Student,Student Group Student,
Group Roll Number,Numărul rolurilor de grup,
Student Guardian,student la Guardian,
Relation,Relație,
Mother,Mamă,
Father,tată,
Student Language,Limba Student,
Student Leave Application,Aplicație elev Concediul,
Mark as Present,Marcați ca prezent,
Student Log,Jurnal de student,
Academic,Academic,
Achievement,Realizare,
Student Report Generation Tool,Instrumentul de generare a rapoartelor elevilor,
Include All Assessment Group,Includeți tot grupul de evaluare,
Show Marks,Afișați marcajele,
Add letterhead,Adăugă Antet,
Print Section,Imprimare secțiune,
Total Parents Teacher Meeting,Întâlnire între profesorii de părinți,
Attended by Parents,Participat de părinți,
Assessment Terms,Termeni de evaluare,
Student Sibling,elev Sibling,
Studying in Same Institute,Studiind în același Institut,
NO,NU,
YES,Da,
Student Siblings,Siblings Student,
Topic Content,Conținut subiect,
Amazon MWS Settings,Amazon MWS Settings,
ERPNext Integrations,Integrări ERPNext,
Enable Amazon,Activați Amazon,
MWS Credentials,Certificatele MWS,
Seller ID,ID-ul vânzătorului,
AWS Access Key ID,Codul AWS Access Key,
MWS Auth Token,MWS Auth Token,
Market Place ID,ID-ul pieței,
AE,AE,
AU,AU,
BR,BR,
CA,CA,
CN,CN,
DE,DE,
ES,ES,
FR,FR,
JP,JP,
IT,ACEASTA,
MX,MX,
UK,Regatul Unit,
US,S.U.A.,
Customer Type,tip de client,
Market Place Account Group,Grupul de cont de pe piață,
After Date,După data,
Amazon will synch data updated after this date,Amazon va sincroniza datele actualizate după această dată,
Sync Taxes and Charges,Sincronizați taxele și taxele,
Get financial breakup of Taxes and charges data by Amazon ,Obțineți despărțirea financiară a datelor fiscale și taxe de către Amazon,
Sync Products,Produse de sincronizare,
Always sync your products from Amazon MWS before synching the Orders details,Sincronizați întotdeauna produsele dvs. de la Amazon MWS înainte de a sincroniza detaliile comenzilor,
Sync Orders,Sincronizați comenzile,
Click this button to pull your Sales Order data from Amazon MWS.,Faceți clic pe acest buton pentru a vă trage datele de comandă de vânzări de la Amazon MWS.,
Enable Scheduled Sync,Activați sincronizarea programată,
Check this to enable a scheduled Daily synchronization routine via scheduler,Verificați acest lucru pentru a activa o rutină zilnică de sincronizare programată prin programator,
Max Retry Limit,Max Retry Limit,
Exotel Settings,Setări Exotel,
Account SID,Cont SID,
API Token,Token API,
GoCardless Mandate,GoCardless Mandate,
Mandate,Mandat,
GoCardless Customer,Clientul GoCardless,
GoCardless Settings,Setări GoCardless,
Webhooks Secret,Webhooks Secret,
Plaid Settings,Setări Plaid,
Synchronize all accounts every hour,Sincronizați toate conturile în fiecare oră,
Plaid Client ID,Cod client Plaid,
Plaid Secret,Plaid Secret,
Plaid Environment,Mediu plaid,
sandbox,Sandbox,
development,dezvoltare,
production,producție,
QuickBooks Migrator,QuickBooks Migrator,
Application Settings,Setările aplicației,
Token Endpoint,Token Endpoint,
Scope,domeniu,
Authorization Settings,Setările de autorizare,
Authorization Endpoint,Autorizație,
Authorization URL,Adresa de autorizare,
Quickbooks Company ID,Coduri de identificare rapidă a companiei,
Company Settings,Setări Company,
Default Shipping Account,Contul de transport implicit,
Default Warehouse,Depozit Implicit,
Default Cost Center,Centru Cost Implicit,
Undeposited Funds Account,Contul fondurilor nedeclarate,
Shopify Log,Magazinul de jurnal,
Shopify Settings,Rafinați setările,
status html,starea html,
Enable Shopify,Activați Shopify,
App Type,Tipul aplicației,
Last Sync Datetime,Ultima dată de sincronizare,
Shop URL,Adresa URL magazin,
eg: frappe.myshopify.com,de ex .: frappe.myshopify.com,
Shared secret,Secret împărtășit,
Webhooks Details,Detaliile Webhooks,
Webhooks,Webhooks,
Customer Settings,Setările clientului,
Default Customer,Client Implicit,
Customer Group will set to selected group while syncing customers from Shopify,Grupul de clienți va seta grupul selectat în timp ce va sincroniza clienții din Shopify,
For Company,Pentru Companie,
Cash Account will used for Sales Invoice creation,Contul de numerar va fi utilizat pentru crearea facturii de vânzări,
Update Price from Shopify To ERPNext Price List,Actualizați prețul de la Shopify la lista de prețuri ERP următoare,
Default Warehouse to to create Sales Order and Delivery Note,Warehouse implicit pentru a crea o comandă de vânzări și o notă de livrare,
Sales Order Series,Seria de comandă de vânzări,
Import Delivery Notes from Shopify on Shipment,Importă note de livrare de la Shopify la expediere,
Delivery Note Series,Seria de note de livrare,
Import Sales Invoice from Shopify if Payment is marked,Importă factura de vânzare din Shopify dacă este marcată plata,
Sales Invoice Series,Seria de facturi de vânzări,
Shopify Tax Account,Achiziționați contul fiscal,
Shopify Tax/Shipping Title,Achiziționați titlul fiscal / transport,
ERPNext Account,Contul ERPNext,
Shopify Webhook Detail,Bucurați-vă de detaliile Webhook,
Webhook ID,ID-ul Webhook,
Tally Migration,Migrația de tip Tally,
Master Data,Date Master,
"Data exported from Tally that consists of the Chart of Accounts, Customers, Suppliers, Addresses, Items and UOMs","Date exportate de la Tally care constă din Planul de conturi, clienți, furnizori, adrese, articole și UOM-uri",
Is Master Data Processed,Sunt prelucrate datele master,
Is Master Data Imported,Sunt importate datele de master,
Tally Creditors Account,Contul creditorilor Tally,
Creditors Account set in Tally,Contul creditorilor stabilit în Tally,
Tally Debtors Account,Contul debitorilor,
Debtors Account set in Tally,Contul debitorilor stabilit în Tally,
Tally Company,Tally Company,
Company Name as per Imported Tally Data,Numele companiei conform datelor importate Tally,
Default UOM,UOM implicit,
UOM in case unspecified in imported data,UOM în cazul nespecificat în datele importate,
ERPNext Company,Compania ERPNext,
Your Company set in ERPNext,Compania dvs. a fost setată în ERPNext,
Processed Files,Fișiere procesate,
Parties,Petreceri,
UOMs,UOMs,
Vouchers,Bonuri,
Round Off Account,Rotunji cont,
Day Book Data,Date despre cartea de zi,
Day Book Data exported from Tally that consists of all historic transactions,"Date din agenda de zi exportate din Tally, care constă în toate tranzacțiile istorice",
Is Day Book Data Processed,Sunt prelucrate datele despre cartea de zi,
Is Day Book Data Imported,Sunt importate datele despre cartea de zi,
Woocommerce Settings,Setări Woocommerce,
Enable Sync,Activați sincronizarea,
Woocommerce Server URL,Adresa URL a serverului Woocommerce,
Secret,Secret,
API consumer key,Cheia pentru consumatori API,
API consumer secret,Secretul consumatorului API,
Tax Account,Contul fiscal,
Freight and Forwarding Account,Contul de expediere și de expediere,
Creation User,Utilizator creație,
"The user that will be used to create Customers, Items and Sales Orders. This user should have the relevant permissions.","Utilizatorul care va fi utilizat pentru a crea clienți, articole și comenzi de vânzare. Acest utilizator ar trebui să aibă permisiunile relevante.",
"This warehouse will be used to create Sales Orders. The fallback warehouse is ""Stores"".",Acest depozit va fi folosit pentru a crea comenzi de vânzare. Depozitul în retragere este „Magazine”.,
"The fallback series is ""SO-WOO-"".",Seria Fallback este „SO-WOO-”.,
This company will be used to create Sales Orders.,Această companie va fi folosită pentru a crea comenzi de vânzare.,
Delivery After (Days),Livrare după (zile),
This is the default offset (days) for the Delivery Date in Sales Orders. The fallback offset is 7 days from the order placement date.,Aceasta este compensarea implicită (zile) pentru data livrării în comenzile de vânzare. Decalarea compensării este de 7 zile de la data plasării comenzii.,
"This is the default UOM used for items and Sales orders. The fallback UOM is ""Nos"".",Acesta este UOM-ul implicit utilizat pentru articole și comenzi de vânzări. UOM-ul în rezervă este „Nos”.,
Endpoints,Endpoints,
Endpoint,Punct final,
Antibiotic Name,Numele antibioticului,
Healthcare Administrator,Administrator de asistență medicală,
Laboratory User,Utilizator de laborator,
Is Inpatient,Este internat,
Default Duration (In Minutes),Durata implicită (în minute),
Body Part,Parte a corpului,
Body Part Link,Legătura părții corpului,
HLC-CPR-.YYYY.-,HLC-CPR-.YYYY.-,
Procedure Template,Șablon de procedură,
Procedure Prescription,Procedura de prescriere,
Service Unit,Unitate de service,
Consumables,Consumabile,
Consume Stock,Consumați stocul,
Invoice Consumables Separately,Consumabile facturate separat,
Consumption Invoiced,Consum facturat,
Consumable Total Amount,Suma totală consumabilă,
Consumption Details,Detalii despre consum,
Nursing User,Utilizator Nursing,
Clinical Procedure Item,Articol de procedură clinică,
Invoice Separately as Consumables,Factureaza distinct ca si consumabile,
Transfer Qty,Cantitate transfer,
Actual Qty (at source/target),Cant. efectivă (la sursă/destinaţie),
Is Billable,Este facturabil,
Allow Stock Consumption,Permiteți consumul de stoc,
Sample UOM,Exemplu UOM,
Collection Details,Detaliile colecției,
Change In Item,Modificare element,
Codification Table,Tabelul de codificare,
Complaints,Reclamații,
Dosage Strength,Dozabilitate,
Strength,Putere,
Drug Prescription,Droguri de prescripție,
Drug Name / Description,Denumirea / descrierea medicamentului,
Dosage,Dozare,
Dosage by Time Interval,Dozaj după intervalul de timp,
Interval,Interval,
Interval UOM,Interval UOM,
Hour,Oră,
Update Schedule,Actualizați programul,
Exercise,Exercițiu,
Difficulty Level,Nivel de dificultate,
Counts Target,Numără ținta,
Counts Completed,Număruri finalizate,
Assistance Level,Nivelul de asistență,
Active Assist,Asistență activă,
Exercise Name,Numele exercițiului,
Body Parts,Parti ale corpului,
Exercise Instructions,Instrucțiuni de exerciții,
Exercise Video,Video de exerciții,
Exercise Steps,Pași de exerciții,
Steps Table,Tabelul Pașilor,
Exercise Type Step,Tipul exercițiului Pas,
Max number of visit,Numărul maxim de vizite,
Visited yet,Vizitată încă,
Reference Appointments,Programări de referință,
Valid till,Valabil până la,
Fee Validity Reference,Referința valabilității taxei,
Basic Details,Detalii de bază,
HLC-PRAC-.YYYY.-,HLC-PRAC-.YYYY.-,
Mobile,Mobil,
Phone (R),Telefon (R),
Phone (Office),Telefon (Office),
Employee and User Details,Detalii despre angajat și utilizator,
Hospital,Spital,
Appointments,Programari,
Practitioner Schedules,Practitioner Schedules,
Charges,Taxe,
Out Patient Consulting Charge,Taxă de consultanță pentru pacienți,
Default Currency,Monedă Implicită,
Healthcare Schedule Time Slot,Programul de îngrijire a sănătății Time Slot,
Parent Service Unit,Serviciul pentru părinți,
Service Unit Type,Tip de unitate de service,
Allow Appointments,Permiteți întâlnirilor,
Allow Overlap,Permiteți suprapunerea,
Inpatient Occupancy,Ocuparea locului de muncă,
Occupancy Status,Starea ocupației,
Vacant,Vacant,
Occupied,Ocupat,
Item Details,Detalii despre articol,
UOM Conversion in Hours,Conversie UOM în ore,
Rate / UOM,Rata / UOM,
Change in Item,Modificați articolul,
Out Patient Settings,Setări pentru pacient,
Patient Name By,Nume pacient,
Patient Name,Numele pacientului,
Link Customer to Patient,Conectați clientul la pacient,
"If checked, a customer will be created, mapped to Patient.\nPatient Invoices will be created against this Customer. You can also select existing Customer while creating Patient.","Dacă este bifată, va fi creat un client, cartografiat pacientului. Facturile de pacienți vor fi create împotriva acestui Client. De asemenea, puteți selecta Clientul existent în timp ce creați pacientul.",
Default Medical Code Standard,Standardul medical standard standard,
Collect Fee for Patient Registration,Colectați taxa pentru înregistrarea pacientului,
Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.,Verificând acest lucru se vor crea noi pacienți cu starea Dezactivat în mod implicit și vor fi activate numai după facturarea Taxei de înregistrare.,
Registration Fee,Taxă de Înregistrare,
Automate Appointment Invoicing,Automatizați facturarea programării,
Manage Appointment Invoice submit and cancel automatically for Patient Encounter,Gestionați trimiterea și anularea facturii de întâlnire în mod automat pentru întâlnirea cu pacienții,
Enable Free Follow-ups,Activați urmăriri gratuite,
Number of Patient Encounters in Valid Days,Numărul de întâlniri cu pacienți în zilele valabile,
The number of free follow ups (Patient Encounters in valid days) allowed,Numărul de urmăriri gratuite (întâlniri cu pacienții în zile valide) permis,
Valid Number of Days,Număr valid de zile,
Time period (Valid number of days) for free consultations,Perioada de timp (număr valid de zile) pentru consultări gratuite,
Default Healthcare Service Items,Articole prestabilite pentru serviciile medicale,
"You can configure default Items for billing consultation charges, procedure consumption items and inpatient visits","Puteți configura articole implicite pentru facturarea taxelor de consultare, a articolelor de consum procedură și a vizitelor internate",
Clinical Procedure Consumable Item,Procedura clinică Consumabile,
Default Accounts,Conturi implicite,
Default income accounts to be used if not set in Healthcare Practitioner to book Appointment charges.,Conturile de venit implicite care trebuie utilizate dacă nu sunt stabilite în practicienii din domeniul sănătății pentru a rezerva taxele de numire.,
Default receivable accounts to be used to book Appointment charges.,Conturi de creanță implicite care urmează să fie utilizate pentru rezervarea cheltuielilor pentru programare.,
Out Patient SMS Alerts,Alerte SMS ale pacientului,
Patient Registration,Inregistrarea pacientului,
Registration Message,Mesaj de înregistrare,
Confirmation Message,Mesaj de confirmare,
Avoid Confirmation,Evitați confirmarea,
Do not confirm if appointment is created for the same day,Nu confirmați dacă se creează o întâlnire pentru aceeași zi,
Appointment Reminder,Memento pentru numire,
Reminder Message,Mesaj Memento,
Laboratory Settings,Setări de laborator,
Create Lab Test(s) on Sales Invoice Submission,Creați teste de laborator la trimiterea facturilor de vânzări,
Checking this will create Lab Test(s) specified in the Sales Invoice on submission.,Verificând acest lucru se vor crea teste de laborator specificate în factura de vânzare la trimitere.,
Create Sample Collection document for Lab Test,Creați un document de colectare a probelor pentru testul de laborator,
Checking this will create a Sample Collection document  every time you create a Lab Test,"Verificând acest lucru, veți crea un document de colectare a probelor de fiecare dată când creați un test de laborator",
Employee name and designation in print,Numele și denumirea angajatului în imprimat,
Check this if you want the Name and Designation of the Employee associated with the User who submits the document to be printed in the Lab Test Report.,Bifați acest lucru dacă doriți ca numele și denumirea angajatului asociate cu utilizatorul care trimite documentul să fie tipărite în raportul de testare de laborator.,
Do not print or email Lab Tests without Approval,Nu imprimați sau trimiteți prin e-mail testele de laborator fără aprobare,
Checking this will restrict printing and emailing of Lab Test documents unless they have the status as Approved.,"Verificarea acestui lucru va restricționa imprimarea și trimiterea prin e-mail a documentelor de test de laborator, cu excepția cazului în care acestea au statutul de Aprobat.",
Custom Signature in Print,Semnătură personalizată în imprimare,
Laboratory SMS Alerts,Alerte SMS de laborator,
Result Printed Message,Rezultat Mesaj tipărit,
Result Emailed Message,Rezultat Mesaj prin e-mail,
Check In,Verifica,
Check Out,Verifică,
HLC-INP-.YYYY.-,HLC-INP-.YYYY.-,
A Positive,A Pozitive,
A Negative,Un negativ,
AB Positive,AB pozitiv,
AB Negative,AB Negativ,
B Positive,B pozitiv,
B Negative,B Negativ,
O Positive,O pozitiv,
O Negative,O Negativ,
Date of birth,Data Nașterii,
Admission Scheduled,Admiterea programată,
Discharge Scheduled,Descărcarea programată,
Discharged,evacuate,
Admission Schedule Date,Data calendarului de admitere,
Admitted Datetime,Timpul admis,
Expected Discharge,Descărcarea anticipată,
Discharge Date,Data descărcării,
Lab Prescription,Lab prescription,
Lab Test Name,Numele testului de laborator,
Test Created,Testul a fost creat,
Submitted Date,Data transmisă,
Approved Date,Data aprobarii,
Sample ID,ID-ul probelor,
Lab Technician,Tehnician de laborator,
Report Preference,Raportați raportul,
Test Name,Numele testului,
Test Template,Șablon de testare,
Test Group,Grupul de testare,
Custom Result,Rezultate personalizate,
LabTest Approver,LabTest Approver,
Add Test,Adăugați test,
Normal Range,Interval normal,
Result Format,Formatul rezultatelor,
Single,Celibatar,
Compound,Compus,
Descriptive,Descriptiv,
Grouped,grupate,
No Result,Nici un rezultat,
This value is updated in the Default Sales Price List.,Această valoare este actualizată în lista prestabilită a prețurilor de vânzare.,
Lab Routine,Laboratorul de rutină,
Result Value,Valoare Rezultat,
Require Result Value,Necesita valoarea rezultatului,
Normal Test Template,Șablonul de test normal,
Patient Demographics,Demografia pacientului,
HLC-PAT-.YYYY.-,HLC-PAT-.YYYY.-,
Middle Name (optional),Prenume (opțional),
Inpatient Status,Starea staționarului,
"If ""Link Customer to Patient"" is checked in Healthcare Settings and an existing Customer is not selected then, a Customer will be created for this Patient for recording transactions in Accounts module.","Dacă „Link Client to Pacient” este bifat în Setările asistenței medicale și un Client existent nu este selectat, atunci va fi creat un Client pentru acest Pacient pentru înregistrarea tranzacțiilor în modulul Conturi.",
Personal and Social History,Istoria personală și socială,
Marital Status,Stare civilă,
Married,Căsătorit,
Divorced,Divorțat/a,
Widow,Văduvă,
Patient Relation,Relația pacientului,
"Allergies, Medical and Surgical History","Alergii, Istorie medicală și chirurgicală",
Allergies,Alergii,
Medication,Medicament,
Medical History,Istoricul medical,
Surgical History,Istorie chirurgicală,
Risk Factors,Factori de Risc,
Occupational Hazards and Environmental Factors,Riscuri Ocupaționale și Factori de Mediu,
Other Risk Factors,Alți factori de risc,
Patient Details,Detalii pacient,
Additional information regarding the patient,Informații suplimentare privind pacientul,
HLC-APP-.YYYY.-,HLC-APP-.YYYY.-,
Patient Age,Vârsta pacientului,
Get Prescribed Clinical Procedures,Obțineți proceduri clinice prescrise,
Therapy,Terapie,
Get Prescribed Therapies,Obțineți terapii prescrise,
Appointment Datetime,Data programării,
Duration (In Minutes),Durata (în minute),
Reference Sales Invoice,Factură de vânzare de referință,
More Info,Mai multe informatii,
Referring Practitioner,Practicant referitor,
HLC-PA-.YYYY.-,HLC-PA-.YYYY.-,
Assessment Template,Șablon de evaluare,
Assessment Datetime,Evaluare Datetime,
Assessment Description,Evaluare Descriere,
Assessment Sheet,Fișa de evaluare,
Total Score Obtained,Scorul total obținut,
Scale Min,Scală Min,
Scale Max,Scală Max,
Patient Assessment Detail,Detaliu evaluare pacient,
Assessment Parameter,Parametru de evaluare,
Patient Assessment Parameter,Parametrul de evaluare a pacientului,
Patient Assessment Sheet,Fișa de evaluare a pacientului,
Patient Assessment Template,Șablon de evaluare a pacientului,
Assessment Parameters,Parametrii de evaluare,
Parameters,Parametrii,
Assessment Scale,Scara de evaluare,
Scale Minimum,Scala minimă,
Scale Maximum,Scală maximă,
HLC-ENC-.YYYY.-,HLC-ENC-.YYYY.-,
Encounter Date,Data întâlnirii,
Encounter Time,Întâlniți timpul,
Encounter Impression,Întâlniți impresiile,
Symptoms,Simptome,
In print,În imprimare,
Medical Coding,Codificarea medicală,
Procedures,Proceduri,
Therapies,Terapii,
Review Details,Detalii de examinare,
Patient Encounter Diagnosis,Diagnosticul întâlnirii pacientului,
Patient Encounter Symptom,Simptomul întâlnirii pacientului,
HLC-PMR-.YYYY.-,HLC-PMR-.YYYY.-,
Attach Medical Record,Atașați fișa medicală,
Spouse,soț,
Family,Familie,
Schedule Details,Detalii program,
Schedule Name,Numele programului,
Time Slots,Intervale de timp,
Practitioner Service Unit Schedule,Unitatea Serviciului de Practician,
Procedure Name,Numele procedurii,
Appointment Booked,Numirea rezervată,
Procedure Created,Procedura creată,
HLC-SC-.YYYY.-,HLC-SC-.YYYY.-,
Collected By,Colectată de,
Particulars,Particularități,
Result Component,Componenta Rezultat,
HLC-THP-.YYYY.-,HLC-THP-.YYYY.-,
Therapy Plan Details,Detalii despre planul de terapie,
Total Sessions,Total sesiuni,
Total Sessions Completed,Total sesiuni finalizate,
Therapy Plan Detail,Detaliu plan de terapie,
No of Sessions,Nr de sesiuni,
Sessions Completed,Sesiuni finalizate,
Tele,Tele,
Exercises,Exerciții,
Therapy For,Terapie pt,
Add Exercises,Adăugați exerciții,
Body Temperature,Temperatura corpului,
Presence of a fever (temp &gt; 38.5 °C/101.3 °F or sustained temp &gt; 38 °C/100.4 °F),"Prezența febrei (temperatură&gt; 38,5 ° C sau temperatură susținută&gt; 38 ° C / 100,4 ° F)",
Heart Rate / Pulse,Ritm cardiac / puls,
Adults' pulse rate is anywhere between 50 and 80 beats per minute.,Rata pulsului adulților este între 50 și 80 de bătăi pe minut.,
Respiratory rate,Rata respiratorie,
Normal reference range for an adult is 16–20 breaths/minute (RCP 2012),Intervalul normal de referință pentru un adult este de 16-20 respirații / minut (RCP 2012),
Tongue,Limbă,
Coated,Acoperit,
Very Coated,Foarte acoperit,
Normal,Normal,
Furry,Cu blană,
Cuts,Bucăți,
Abdomen,Abdomen,
Bloated,Umflat,
Fluid,Fluid,
Constipated,Constipat,
Reflexes,reflexe,
Hyper,Hyper,
Very Hyper,Foarte Hyper,
One Sided,O singură față,
Blood Pressure (systolic),Tensiunea arterială (sistolică),
Blood Pressure (diastolic),Tensiunea arterială (diastolică),
Blood Pressure,Tensiune arteriala,
"Normal resting blood pressure in an adult is approximately 120 mmHg systolic, and 80 mmHg diastolic, abbreviated ""120/80 mmHg""","Tensiunea arterială normală de repaus la un adult este de aproximativ 120 mmHg sistolică și 80 mmHg diastolică, abreviată &quot;120/80 mmHg&quot;",
Nutrition Values,Valorile nutriției,
Height (In Meter),Înălțime (în metri),
Weight (In Kilogram),Greutate (în kilograme),
BMI,IMC,
Hotel Room,Cameră de hotel,
Hotel Room Type,Tip camera de hotel,
Capacity,Capacitate,
Extra Bed Capacity,Capacitatea patului suplimentar,
Hotel Manager,Hotel Manager,
Hotel Room Amenity,Hotel Amenity Room,
Billable,Facturabil,
Hotel Room Package,Pachetul de camere hotel,
Amenities,dotări,
Hotel Room Pricing,Pretul camerei hotelului,
Hotel Room Pricing Item,Hotel Pricing Room Item,
Hotel Room Pricing Package,Pachetul pentru tarifarea camerei hotelului,
Hotel Room Reservation,Rezervarea camerelor hotelului,
Guest Name,Numele oaspetelui,
Late Checkin,Încearcă târziu,
Booked,rezervat,
Hotel Reservation User,Utilizator rezervare hotel,
Hotel Room Reservation Item,Rezervare cameră cameră,
Hotel Settings,Setările hotelului,
Default Taxes and Charges,Impozite și taxe prestabilite,
Default Invoice Naming Series,Seria implicită de numire a facturilor,
HR,HR,
Date on which this component is applied,Data la care se aplică această componentă,
Salary Slip,Salariul Slip,
HR User,Utilizator HR,
Job Applicant,Solicitant loc de muncă,
Body,Corp,
Appraisal Template,Model expertiză,
Parent Department,Departamentul părinților,
Leave Block List,Lista Concedii Blocate,
Days for which Holidays are blocked for this department.,Zile pentru care Sărbătorile sunt blocate pentru acest departament.,
Leave Approver,Aprobator Concediu,
Expense Approver,Aprobator Cheltuieli,
Required Skills,Aptitudini necesare,
Skills,Aptitudini,
Driver,Conducător auto,
HR-DRI-.YYYY.-,HR-DRI-.YYYY.-,
Suspended,Suspendat,
Transporter,Transporter,
Applicable for external driver,Aplicabil pentru driverul extern,
Cellphone Number,Număr de Telefon Mobil,
License Details,Detalii privind licența,
License Number,Numărul de licență,
Issuing Date,Data emiterii,
Driving License Categories,Categorii de licență de conducere,
Driving License Category,Categoria permiselor de conducere,
Fleet Manager,Manager de flotă,
Driver licence class,Clasa permisului de conducere,
HR-EMP-,HR-vorba sunt,
Employment Type,Tip angajare,
Emergency Contact,Contact de Urgență,
Emergency Contact Name,Nume de contact de urgență,
Emergency Phone,Telefon de Urgență,
ERPNext User,Utilizator ERPNext,
"System User (login) ID. If set, it will become default for all HR forms.","ID Utilizator Sistem (conectare). Dacă este setat, va deveni implicit pentru toate formularele de resurse umane.",
Create User Permission,Creați permisiunea utilizatorului,
This will restrict user access to other employee records,Acest lucru va restricționa accesul utilizatorilor la alte înregistrări ale angajaților,
Joining Details,Detalii Angajare,
Offer Date,Oferta Date,
Confirmation Date,Data de Confirmare,
Contract End Date,Data de Incheiere Contract,
Notice (days),Preaviz (zile),
Date Of Retirement,Data Pensionării,
Department and Grade,Departamentul și Gradul,
Reports to,Rapoartează către,
Attendance and Leave Details,Detalii de participare și concediu,
Attendance Device ID (Biometric/RF tag ID),Prezentarea dispozitivului de identificare (biometric / RF tag tag),
Applicable Holiday List,Listă de concedii aplicabile,
Default Shift,Schimbare implicită,
Salary Mode,Mod de salariu,
Bank A/C No.,Bancă A/C nr.,
Health Insurance,Asigurare de sanatate,
Health Insurance Provider,Asigurari de sanatate,
Health Insurance No,Asigurări de sănătate nr,
Prefered Email,E-mail Preferam,
Personal Email,Personal de e-mail,
Permanent Address Is,Adresa permanentă este,
Rented,Închiriate,
Owned,Deținut,
Permanent Address,Permanent Adresa,
Prefered Contact Email,Contact Email Preferam,
Company Email,E-mail Companie,
Provide Email Address registered in company,Furnizarea Adresa de email inregistrata in companie,
Current Address Is,Adresa Actuală Este,
Current Address,Adresa actuală,
Personal Bio,Personal Bio,
Bio / Cover Letter,Bio / Cover Letter,
Short biography for website and other publications.,Scurta biografie pentru site-ul web și alte publicații.,
Passport Number,Numărul de pașaport,
Date of Issue,Data Problemei,
Place of Issue,Locul eliberării,
Widowed,Văduvit,
Family Background,Context familial,
"Here you can maintain family details like name and occupation of parent, spouse and children","Aici puteți stoca detalii despre familie, cum ar fi numele și ocupația parintelui, sotului/sotiei și copiilor",
Health Details,Detalii Sănătate,
"Here you can maintain height, weight, allergies, medical concerns etc","Aici puteți stoca informatii despre inaltime, greutate, alergii, probleme medicale etc",
Educational Qualification,Detalii Calificare de Învățământ,
Previous Work Experience,Anterior Work Experience,
External Work History,Istoricul lucrului externă,
History In Company,Istoric In Companie,
Internal Work History,Istoria interne de lucru,
Resignation Letter Date,Dată Scrisoare de Demisie,
Relieving Date,Alinarea Data,
Reason for Leaving,Motiv pentru plecare,
Leave Encashed?,Concediu Incasat ?,
Encashment Date,Data plata in Numerar,
New Workplace,Nou loc de muncă,
Returned Amount,Suma restituită,
Advance Account,Advance Account,
Benefits Applied,Beneficii aplicate,
Benefit Type and Amount,Tip de prestație și sumă,
Task Weight,sarcina Greutate,
Employee Education,Educație Angajat,
School/University,Școlar / universitar,
Graduate,Absolvent,
Post Graduate,Postuniversitar,
Under Graduate,Sub Absolvent,
Year of Passing,Ani de la promovarea,
Class / Percentage,Clasă / Procent,
Major/Optional Subjects,Subiecte Majore / Opționale,
Employee External Work History,Istoric Extern Locuri de Munca Angajat,
Total Experience,Experiența totală,
Default Leave Policy,Implicit Politica de plecare,
Employee Group Table,Tabelul grupului de angajați,
ERPNext User ID,ID utilizator ERPNext,
Employee Internal Work History,Istoric Intern Locuri de Munca Angajat,
Activities,Activități,
Employee Onboarding Activity,Activitatea de angajare a angajaților,
Employee Promotion Detail,Detaliile de promovare a angajaților,
Employee Transfer Property,Angajamentul transferului de proprietate,
Unclaimed amount,Sumă nerevendicată,
Holiday List Name,Denumire Lista de Vacanță,
Total Holidays,Total sărbători,
Add Weekly Holidays,Adăugă Sărbători Săptămânale,
Weekly Off,Săptămânal Off,
Add to Holidays,Adăugă la Sărbători,
Holidays,Concedii,
Clear Table,Sterge Masa,
Retirement Age,Vârsta de pensionare,
Enter retirement age in years,Introdu o vârsta de pensionare în anii,
Stop Birthday Reminders,De oprire de naștere Memento,
Leave Settings,Lăsați Setările,
Accepted,Acceptat,
Printing Details,Imprimare Detalii,
Job Title,Denumire Post,
Allocation,Alocare,
Select Employees,Selectați angajati,
Allocate,Alocaţi,
Max Leaves Allowed,Frunzele maxime sunt permise,
Maximum Continuous Days Applicable,Zilele maxime continue sunt aplicabile,
Select Payroll Period,Perioada de selectare Salarizare,
Abbr,Presc,
Condition and Formula,Condiție și formulă,
Total Working Hours,Numărul total de ore de lucru,
Hour Rate,Rata Oră,
Bank Account No.,Cont bancar nr.,
Earning & Deduction,Câștig Salarial si Deducere,
Loan repayment,Rambursare a creditului,
Employee Loan,angajat de împrumut,
Total Principal Amount,Sumă totală principală,
Total Interest Amount,Suma totală a dobânzii,
Total Loan Repayment,Rambursarea totală a creditului,
net pay info,info net pay,
Gross Pay - Total Deduction - Loan Repayment,Plata brută - Deducerea totală - rambursare a creditului,
Net Pay (in words) will be visible once you save the Salary Slip.,Pay net (în cuvinte) vor fi vizibile după ce salvați fluturasul de salariu.,
Staffing Plan Details,Detaliile planului de personal,
Optional,facultativ,
Costing,Cost,
Vehicle,Vehicul,
License Plate,Înmatriculare,
Odometer Value (Last),Valoarea contorului de parcurs (Ultimul),
Acquisition Date,Data achiziției,
Chassis No,Nr. Șasiu,
Vehicle Value,Valoarea vehiculului,
Insurance Details,Detalii de asigurare,
Insurance Company,Companie de asigurari,
Policy No,Politica nr,
Additional Details,Detalii suplimentare,
Fuel Type,Tipul combustibilului,
Petrol,Benzină,
Diesel,Diesel,
Natural Gas,Gaz natural,
Electric,Electric,
Fuel UOM,combustibil UOM,
Last Carbon Check,Ultima Verificare carbon,
Wheels,roţi,
Doors,Usi,
last Odometer Value ,ultima valoare Odometru,
Service Detail,Detaliu serviciu,
Hub Tracked Item,Articol urmărit,
Hub Node,Hub Node,
Image List,Listă de imagini,
Item Manager,Postul de manager,
Hub User,Utilizator Hub,
Hub Password,Parola Hub,
Hub Users,Hub utilizatori,
Marketplace Settings,Setări pentru piață,
Disable Marketplace,Dezactivați Marketplace,
Marketplace URL (to hide and update label),Adresa URL de pe piață (pentru ascunderea și actualizarea etichetei),
Registered,Înregistrat,
Sync in Progress,Sincronizați în curs,
Hub Seller Name,Numele vânzătorului Hub,
Custom Data,Date personalizate,
Repay From Salary,Rambursa din salariu,
Regular Payment,Plată regulată,
Loan Closure,Închiderea împrumutului,
Rate of Interest (%) Yearly,Rata Dobânzii (%) Anual,
MAT-MSH-.YYYY.-,MAT-MSH-.YYYY.-,
Generate Schedule,Generează orar,
Schedules,Orarele,
Maintenance Schedule Detail,Detalii Program Mentenanta,
Scheduled Date,Data programată,
Actual Date,Data efectiva,
Maintenance Schedule Item,Articol Program Mentenanță,
Random,aleatoriu,
No of Visits,Nu de vizite,
MAT-MVS-.YYYY.-,MAT-MVS-.YYYY.-,
Maintenance Date,Dată Mentenanță,
Maintenance Time,Timp Mentenanta,
Completion Status,Stare Finalizare,
Partially Completed,Parțial finalizate,
Fully Completed,Finalizat,
Unscheduled,Neprogramat,
Breakdown,Avarie,
Purposes,Scopuri,
Customer Feedback,Feedback Client,
Maintenance Visit Purpose,Scop Vizită Mentenanță,
Work Done,Activitatea desfășurată,
Against Document No,Împotriva documentul nr,
Against Document Detail No,Comparativ detaliilor documentului nr.,
MFG-BLR-.YYYY.-,MFG-BLR-.YYYY.-,
Order Type,Tip comandă,
Blanket Order Item,Articol de comandă pentru plicuri,
Ordered Quantity,Ordonat Cantitate,
Item to be manufactured or repacked,Articol care urmează să fie fabricat sau reambalat,
Quantity of item obtained after manufacturing / repacking from given quantities of raw materials,Cantitatea de produs obținut după fabricarea / reambalare de la cantități date de materii prime,
Set rate of sub-assembly item based on BOM,Viteza setată a elementului subansamblu bazat pe BOM,
Allow Alternative Item,Permiteți un element alternativ,
Item UOM,Articol FDM,
Conversion Rate,Rata de conversie,
Rate Of Materials Based On,Rate de materiale bazate pe,
With Operations,Cu Operațiuni,
Manage cost of operations,Gestionează costul operațiunilor,
Transfer Material Against,Transfer material contra,
Routing,Rutare,
Materials,Materiale,
Quality Inspection Required,Inspecție de calitate necesară,
Quality Inspection Template,Model de inspecție a calității,
Scrap,Resturi,
Scrap Items,resturi Articole,
Operating Cost,Costul de operare,
Raw Material Cost,Cost Materie Primă,
Scrap Material Cost,Cost resturi de materiale,
Operating Cost (Company Currency),Costul de operare (Companie Moneda),
Raw Material Cost (Company Currency),Costul materiei prime (moneda companiei),
Scrap Material Cost(Company Currency),Cost resturi de material (companie Moneda),
Total Cost,Cost total,
Total Cost (Company Currency),Cost total (moneda companiei),
Materials Required (Exploded),Materiale necesare (explodat),
Exploded Items,Articole explozibile,
Show in Website,Afișați pe site,
Item Image (if not slideshow),Imagine Articol (dacă nu exista prezentare),
Thumbnail,Miniatură,
Website Specifications,Site-ul Specificații,
Show Items,Afișare articole,
Show Operations,Afișați Operații,
Website Description,Site-ul Descriere,
BOM Explosion Item,Explozie articol BOM,
Qty Consumed Per Unit,Cantitate consumata pe unitatea,
Include Item In Manufacturing,Includeți articole în fabricație,
BOM Item,Articol BOM,
Item operation,Operarea elementului,
Rate & Amount,Rata și suma,
Basic Rate (Company Currency),Rată elementară (moneda companiei),
Scrap %,Resturi%,
Original Item,Articolul original,
BOM Operation,Operațiune BOM,
Operation Time ,Timpul de funcționare,
In minutes,În câteva minute,
Batch Size,Mărimea lotului,
Base Hour Rate(Company Currency),Rata de bază ore (companie Moneda),
Operating Cost(Company Currency),Costul de operare (Companie Moneda),
BOM Scrap Item,BOM Resturi Postul,
Basic Amount (Company Currency),Suma de bază (Companie Moneda),
BOM Update Tool,Instrument Actualizare BOM,
"Replace a particular BOM in all other BOMs where it is used. It will replace the old BOM link, update cost and regenerate ""BOM Explosion Item"" table as per new BOM.\nIt also updates latest price in all the BOMs.","Înlocuiți un BOM particular în toate celelalte BOM unde este utilizat. Acesta va înlocui vechiul link BOM, va actualiza costul și va regenera tabelul &quot;BOM Explosion Item&quot; ca pe noul BOM. Actualizează, de asemenea, ultimul preț în toate BOM-urile.",
Replace BOM,Înlocuiește BOM,
Current BOM,FDM curent,
The BOM which will be replaced,BOM care va fi înlocuit,
The new BOM after replacement,Noul BOM după înlocuirea,
Replace,Înlocuiește,
Update latest price in all BOMs,Actualizați cel mai recent preț în toate BOM-urile,
BOM Website Item,Site-ul BOM Articol,
BOM Website Operation,Site-ul BOM Funcționare,
Operation Time,Funcționare Ora,
PO-JOB.#####,PO-JOB. #####,
Timing Detail,Detalii detaliate,
Time Logs,Timp Busteni,
Total Time in Mins,Timp total în mină,
Operation ID,ID operațiune,
Transferred Qty,Transferat Cantitate,
Job Started,Job a început,
Started Time,Timpul început,
Current Time,Ora curentă,
Job Card Item,Cartelă de posturi,
Job Card Time Log,Jurnalul de timp al cărții de lucru,
Time In Mins,Timpul în min,
Completed Qty,Cantitate Finalizata,
Manufacturing Settings,Setări de Fabricație,
Raw Materials Consumption,Consumul de materii prime,
Allow Multiple Material Consumption,Permiteți consumul mai multor materiale,
Backflush Raw Materials Based On,Backflush Materii Prime bazat pe,
Material Transferred for Manufacture,Material Transferat pentru fabricarea,
Capacity Planning,Planificarea capacității,
Disable Capacity Planning,Dezactivează planificarea capacității,
Allow Overtime,Permiteți ore suplimentare,
Allow Production on Holidays,Permiteţi operaţii de producție pe durata sărbătorilor,
Capacity Planning For (Days),Planificarea capacitate de (zile),
Default Warehouses for Production,Depozite implicite pentru producție,
Default Work In Progress Warehouse,Implicit Lucrări în depozit Progress,
Default Finished Goods Warehouse,Implicite terminat Marfuri Warehouse,
Default Scrap Warehouse,Depozitul de resturi implicit,
Overproduction Percentage For Sales Order,Procentaj de supraproducție pentru comandă de vânzări,
Overproduction Percentage For Work Order,Procentul de supraproducție pentru comanda de lucru,
Other Settings,alte setări,
Update BOM Cost Automatically,Actualizați costul BOM automat,
Material Request Plan Item,Material Cerere plan plan,
Material Request Type,Material Cerere tip,
Material Issue,Problema de material,
Customer Provided,Client oferit,
Minimum Order Quantity,Cantitatea minima pentru comanda,
Default Workstation,Implicit Workstation,
Production Plan,Plan de productie,
MFG-PP-.YYYY.-,MFG-PP-.YYYY.-,
Get Items From,Obține elemente din,
Get Sales Orders,Obține comenzile de vânzări,
Material Request Detail,Detalii privind solicitarea materialului,
Get Material Request,Material Cerere obțineți,
Material Requests,Cereri de materiale,
Get Items For Work Order,Obțineți comenzi pentru lucru,
Material Request Planning,Planificarea solicitărilor materiale,
Include Non Stock Items,Includeți articole din stoc,
Include Subcontracted Items,Includeți articole subcontractate,
Ignore Existing Projected Quantity,Ignorați cantitatea proiectată existentă,
"To know more about projected quantity, <a href=""https://erpnext.com/docs/user/manual/en/stock/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">click here</a>.","Pentru a afla mai multe despre cantitatea proiectată, <a href=""https://erpnext.com/docs/user/manual/en/stock/projected-quantity"" style=""text-decoration: underline;"" target=""_blank"">faceți clic aici</a> .",
Download Required Materials,Descărcați materialele necesare,
Get Raw Materials For Production,Obțineți materii prime pentru producție,
Total Planned Qty,Cantitatea totală planificată,
Total Produced Qty,Cantitate total produsă,
Material Requested,Material solicitat,
Production Plan Item,Planul de producție Articol,
Make Work Order for Sub Assembly Items,Realizați comanda de lucru pentru articolele de subansamblare,
"If enabled, system will create the work order for the exploded items against which BOM is available.","Dacă este activat, sistemul va crea ordinea de lucru pentru elementele explodate pentru care este disponibilă BOM.",
Planned Start Date,Start data planificată,
Quantity and Description,Cantitate și descriere,
material_request_item,material_request_item,
Product Bundle Item,Produs Bundle Postul,
Production Plan Material Request,Producția Plan de material Cerere,
Production Plan Sales Order,Planul de producție comandă de vânzări,
Sales Order Date,Comandă de vânzări Data,
Routing Name,Numele de rutare,
MFG-WO-.YYYY.-,MFG-WO-.YYYY.-,
Item To Manufacture,Articol pentru Fabricare,
Material Transferred for Manufacturing,Materii Transferate pentru fabricarea,
Manufactured Qty,Cantitate Produsă,
Use Multi-Level BOM,Utilizarea Multi-Level BOM,
Plan material for sub-assemblies,Material Plan de subansambluri,
Skip Material Transfer to WIP Warehouse,Treceți transferul de materiale la WIP Warehouse,
Check if material transfer entry is not required,Verificați dacă nu este necesară introducerea transferului de materiale,
Backflush Raw Materials From Work-in-Progress Warehouse,Materii prime de tip backflush din depozitul &quot;work-in-progress&quot;,
Update Consumed Material Cost In Project,Actualizați costurile materialelor consumate în proiect,
Warehouses,Depozite,
This is a location where raw materials are available.,Acesta este un loc unde materiile prime sunt disponibile.,
Work-in-Progress Warehouse,Depozit Lucru-în-Progres,
This is a location where operations are executed.,Aceasta este o locație în care se execută operațiuni.,
This is a location where final product stored.,Aceasta este o locație în care este depozitat produsul final.,
Scrap Warehouse,Depozit fier vechi,
This is a location where scraped materials are stored.,Aceasta este o locație în care sunt depozitate materiale razuite.,
Required Items,Articole cerute,
Actual Start Date,Dată Efectivă de Început,
Planned End Date,Planificate Data de încheiere,
Actual End Date,Data efectiva de finalizare,
Operation Cost,Funcționare cost,
Planned Operating Cost,Planificate cost de operare,
Actual Operating Cost,Cost efectiv de operare,
Additional Operating Cost,Costuri de operare adiţionale,
Total Operating Cost,Cost total de operare,
Manufacture against Material Request,Fabricare împotriva Cerere Material,
Work Order Item,Postul de comandă de lucru,
Available Qty at Source Warehouse,Cantitate disponibilă la Warehouse sursă,
Available Qty at WIP Warehouse,Cantitate disponibilă la WIP Warehouse,
Work Order Operation,Comandă de comandă de lucru,
Operation Description,Operație Descriere,
Operation completed for how many finished goods?,Funcționare completat de cât de multe bunuri finite?,
Work in Progress,Lucrări în curs,
Estimated Time and Cost,Timpul estimat și cost,
Planned Start Time,Planificate Ora de începere,
Planned End Time,Planificate End Time,
in Minutes,In cateva minute,
Actual Time and Cost,Timp și cost efective,
Actual Start Time,Timpul efectiv de începere,
Actual End Time,Timp efectiv de sfârşit,
Updated via 'Time Log',"Actualizat prin ""Ora Log""",
Actual Operation Time,Timp efectiv de funcționare,
in Minutes\nUpdated via 'Time Log',"în procesul-verbal \n Actualizat prin ""Ora Log""",
(Hour Rate / 60) * Actual Operation Time,(Tarif orar / 60) * Timp efectiv de operare,
Workstation Name,Stație de lucru Nume,
Production Capacity,Capacitatea de producție,
Operating Costs,Costuri de operare,
Electricity Cost,Cost energie electrică,
per hour,pe oră,
Consumable Cost,Cost Consumabile,
Rent Cost,Cost Chirie,
Wages,Salarizare,
Wages per hour,Salarii pe oră,
Net Hour Rate,Net Rata de ore,
Workstation Working Hour,Statie de lucru de ore de lucru,
Certification Application,Cerere de certificare,
Name of Applicant,Numele aplicantului,
Certification Status,Stare Certificare,
Yet to appear,"Totuși, să apară",
Certified,Certificat,
Not Certified,Nu este certificată,
USD,USD,
INR,INR,
Certified Consultant,Consultant Certificat,
Name of Consultant,Numele consultantului,
Certification Validity,Valabilitatea Certificare,
Discuss ID,Discutați ID-ul,
GitHub ID,ID-ul GitHub,
Non Profit Manager,Manager non-profit,
Chapter Head,Capitolul Cap,
Meetup Embed HTML,Meetup Embed HTML,
chapters/chapter_name\nleave blank automatically set after saving chapter.,capitole / nume_capitale lasă setul automat să fie setat automat după salvarea capitolului.,
Chapter Members,Capitolul Membri,
Members,Membrii,
Chapter Member,Membru de capitol,
Website URL,Website URL,
Leave Reason,Lăsați rațiunea,
Donor Name,Numele donatorului,
Donor Type,Tipul donatorului,
Withdrawn,retrasă,
Grant Application Details ,Detalii privind cererile de finanțare,
Grant Description,Descrierea granturilor,
Requested Amount,Suma solicitată,
Has any past Grant Record,Are vreun dosar Grant trecut,
Show on Website,Afișați pe site,
Assessment  Mark (Out of 10),Marca de evaluare (din 10),
Assessment  Manager,Manager de evaluare,
Email Notification Sent,Trimiterea notificării prin e-mail,
NPO-MEM-.YYYY.-,NPO-MEM-.YYYY.-,
Membership Expiry Date,Data expirării membrilor,
Razorpay Details,Detalii Razorpay,
Subscription ID,ID-ul abonamentului,
Customer ID,Număr de înregistrare client,
Subscription Activated,Abonament activat,
Subscription Start ,Începere abonament,
Subscription End,Încheierea abonamentului,
Non Profit Member,Membru non-profit,
Membership Status,Statutul de membru,
Member Since,Membru din,
Payment ID,ID de plată,
Membership Settings,Setări de membru,
Enable RazorPay For Memberships,Activați RazorPay pentru calitatea de membru,
RazorPay Settings,Setări RazorPay,
Billing Cycle,Ciclu de facturare,
Billing Frequency,Frecvența de facturare,
"The number of billing cycles for which the customer should be charged. For example, if a customer is buying a 1-year membership that should be billed on a monthly basis, this value should be 12.","Numărul de cicluri de facturare pentru care ar trebui să fie taxat clientul. De exemplu, dacă un client cumpără un abonament de 1 an care ar trebui să fie facturat lunar, această valoare ar trebui să fie 12.",
Razorpay Plan ID,ID-ul planului Razorpay,
Volunteer Name,Nume de voluntar,
Volunteer Type,Tipul de voluntari,
Availability and Skills,Disponibilitate și abilități,
Availability,Disponibilitate,
Weekends,Weekend-uri,
Availability Timeslot,Disponibilitatea Timeslot,
Morning,Dimineaţă,
Afternoon,Dupa amiaza,
Evening,Seară,
Anytime,Oricând,
Volunteer Skills,Abilități de voluntariat,
Volunteer Skill,Abilități de voluntariat,
Homepage,Pagina Principală,
Hero Section Based On,Secția Eroilor Bazată pe,
Homepage Section,Secțiunea Prima pagină,
Hero Section,Secția Eroilor,
Tag Line,Eticheta linie,
Company Tagline for website homepage,Firma Tagline pentru pagina de start site,
Company Description for website homepage,Descriere companie pentru pagina de start site,
Homepage Slideshow,Prezentare Slideshow a paginii de start,
"URL for ""All Products""",URL-ul pentru &quot;Toate produsele&quot;,
Products to be shown on website homepage,Produsele care urmează să fie afișate pe pagina de pornire site,
Homepage Featured Product,Pagina de intrare de produse recomandate,
route,traseu,
Section Based On,Secțiune bazată pe,
Section Cards,Cărți de secțiune,
Number of Columns,Numar de coloane,
Number of columns for this section. 3 cards will be shown per row if you select 3 columns.,Numărul de coloane pentru această secțiune. 3 cărți vor fi afișate pe rând dacă selectați 3 coloane.,
Section HTML,Secțiunea HTML,
Use this field to render any custom HTML in the section.,Utilizați acest câmp pentru a reda orice HTML personalizat în secțiune.,
Section Order,Comanda secțiunii,
"Order in which sections should appear. 0 is first, 1 is second and so on.","Ordinea în care ar trebui să apară secțiunile. 0 este primul, 1 este al doilea și așa mai departe.",
Homepage Section Card,Pagina de secțiune Card de secțiune,
Subtitle,Subtitlu,
Products Settings,produse Setări,
Home Page is Products,Pagina Principală este Produse,
"If checked, the Home page will be the default Item Group for the website","Dacă este bifată, pagina de pornire va fi implicit postul Grupului pentru site-ul web",
Show Availability Status,Afișați starea de disponibilitate,
Product Page,Pagina produsului,
Products per Page,Produse pe Pagină,
Enable Field Filters,Activați filtrele de câmp,
Item Fields,Câmpurile articolului,
Enable Attribute Filters,Activați filtrele de atribute,
Attributes,Atribute,
Hide Variants,Ascundeți variantele,
Website Attribute,Atribut site web,
Attribute,Atribute,
Website Filter Field,Câmpul de filtrare a site-ului web,
Activity Cost,Cost activitate,
Billing Rate,Tarif de facturare,
Costing Rate,Costing Rate,
title,titlu,
Projects User,Utilizator Proiecte,
Default Costing Rate,Rată Cost Implicit,
Default Billing Rate,Tarif de Facturare Implicit,
Dependent Task,Sarcina dependent,
Project Type,Tip de proiect,
% Complete Method,% Metoda completă,
Task Completion,sarcina Finalizarea,
Task Progress,Progresul sarcină,
% Completed,% Finalizat,
From Template,Din șablon,
Project will be accessible on the website to these users,Proiectul va fi accesibil pe site-ul acestor utilizatori,
Copied From,Copiat de la,
Start and End Dates,Începere și de încheiere Date,
Actual Time in Hours (via Timesheet),Ora reală (în ore),
Costing and Billing,Calculație a cheltuielilor și veniturilor,
Total Costing Amount (via Timesheet),Suma totală a costurilor (prin intermediul foilor de pontaj),
Total Expense Claim (via Expense Claim),Revendicarea Total cheltuieli (prin formularele de decont),
Total Purchase Cost (via Purchase Invoice),Cost total de achiziție (prin cumparare factură),
Total Sales Amount (via Sales Order),Suma totală a vânzărilor (prin comandă de vânzări),
Total Billable Amount (via Timesheet),Sumă totală facturată (prin intermediul foilor de pontaj),
Total Billed Amount (via Sales Invoice),Suma facturată totală (prin facturi de vânzare),
Total Consumed Material Cost (via Stock Entry),Costul total al materialelor consumate (prin intrarea în stoc),
Gross Margin,Marja Brută,
Gross Margin %,Marja Bruta%,
Monitor Progress,Monitorizați progresul,
Collect Progress,Collect Progress,
Frequency To Collect Progress,Frecventa de colectare a progresului,
Twice Daily,De doua ori pe zi,
First Email,Primul e-mail,
Second Email,Al doilea e-mail,
Time to send,Este timpul să trimiteți,
Day to Send,Zi de Trimis,
Message will be sent to the users to get their status on the Project,Mesajul va fi trimis utilizatorilor pentru a obține starea lor în Proiect,
Projects Manager,Manager Proiecte,
Project Template,Model de proiect,
Project Template Task,Sarcina șablonului de proiect,
Begin On (Days),Începeți (zile),
Duration (Days),Durata (zile),
Project Update,Actualizarea proiectului,
Project User,utilizator proiect,
View attachments,Vizualizați atașamentele,
Projects Settings,Setări pentru proiecte,
Ignore Workstation Time Overlap,Ignorați suprapunerea timpului de lucru al stației,
Ignore User Time Overlap,Ignorați timpul suprapunerii utilizatorului,
Ignore Employee Time Overlap,Ignorați suprapunerea timpului angajatului,
Weight,Greutate,
Parent Task,Activitatea părintească,
Timeline,Cronologie,
Expected Time (in hours),Timp de așteptat (în ore),
% Progress,% Progres,
Is Milestone,Este Milestone,
Task Description,Descrierea sarcinii,
Dependencies,dependenţe,
Dependent Tasks,Sarcini dependente,
Depends on Tasks,Depinde de Sarcini,
Actual Start Date (via Timesheet),Data Efectiva de Început (prin Pontaj),
Actual Time in Hours (via Timesheet),Timpul efectiv (în ore),
Actual End Date (via Timesheet),Dată de Încheiere Efectivă (prin Pontaj),
Total Costing Amount (via Time Sheet),Suma totală de calculație a costurilor (prin timp Sheet),
Total Expense Claim (via Expense Claim),Revendicarea Total cheltuieli (prin cheltuieli revendicarea),
Total Billing Amount (via Time Sheet),Suma totală de facturare (prin timp Sheet),
Review Date,Data Comentariului,
Closing Date,Data de Inchidere,
Task Depends On,Sarcina Depinde,
Task Type,Tipul sarcinii,
TS-.YYYY.-,TS-.YYYY.-,
Employee Detail,Detaliu angajat,
Billing Details,Detalii de facturare,
Total Billable Hours,Numărul total de ore facturabile,
Total Billed Hours,Numărul total de ore facturate,
Total Costing Amount,Suma totală Costing,
Total Billable Amount,Suma totală Taxabil,
Total Billed Amount,Suma totală Billed,
% Amount Billed,% Suma facturata,
Hrs,ore,
Costing Amount,Costing Suma,
Corrective/Preventive,Corectivă / preventivă,
Corrective,corectiv,
Preventive,Preventiv,
Resolution,Rezoluție,
Resolutions,rezoluţiile,
Quality Action Resolution,Rezolvare acțiuni de calitate,
Quality Feedback Parameter,Parametru de feedback al calității,
Quality Feedback Template Parameter,Parametrul șablonului de feedback al calității,
Quality Goal,Obiectivul de calitate,
Monitoring Frequency,Frecvența de monitorizare,
Weekday,zi de lucru,
Objectives,Obiective,
Quality Goal Objective,Obiectivul calității,
Objective,Obiectiv,
Agenda,Agendă,
Minutes,Minute,
Quality Meeting Agenda,Agenda întâlnirii de calitate,
Quality Meeting Minutes,Proces-verbal de calitate al întâlnirii,
Minute,Minut,
Parent Procedure,Procedura părinților,
Processes,procese,
Quality Procedure Process,Procesul procedurii de calitate,
Process Description,Descrierea procesului,
Link existing Quality Procedure.,Conectați procedura de calitate existentă.,
Additional Information,informatii suplimentare,
Quality Review Objective,Obiectivul revizuirii calității,
DATEV Settings,Setări DATEV,
Regional,Regional,
Consultant ID,ID-ul consultantului,
GST HSN Code,Codul GST HSN,
HSN Code,Codul HSN,
GST Settings,Setări GST,
GST Summary,Rezumatul GST,
GSTIN Email Sent On,GSTIN Email trimis pe,
GST Accounts,Conturi GST,
B2C Limit,Limita B2C,
Set Invoice Value for B2C. B2CL and B2CS calculated based on this invoice value.,Setați valoarea facturii pentru B2C. B2CL și B2CS calculate pe baza acestei valori de facturare.,
GSTR 3B Report,Raportul GSTR 3B,
January,ianuarie,
February,februarie,
March,Martie,
April,Aprilie,
August,August,
September,Septembrie,
October,octombrie,
November,noiembrie,
December,decembrie,
JSON Output,Ieșire JSON,
Invoices with no Place Of Supply,Facturi fără loc de furnizare,
Import Supplier Invoice,Import factură furnizor,
Invoice Series,Seria facturilor,
Upload XML Invoices,Încărcați facturile XML,
Zip File,Fișier Zip,
Import Invoices,Importul facturilor,
Click on Import Invoices button once the zip file has been attached to the document. Any errors related to processing will be shown in the Error Log.,Faceți clic pe butonul Import facturi după ce fișierul zip a fost atașat la document. Orice erori legate de procesare vor fi afișate în Jurnalul de erori.,
Lower Deduction Certificate,Certificat de deducere inferior,
Certificate Details,Detalii certificat,
194A,194A,
194C,194C,
194D,194D,
194H,194H,
194I,194I,
194J,194J,
194LA,194LA,
194LBB,194LBB,
194LBC,194LBC,
Certificate No,număr de certificat,
Deductee Details,Detalii despre deducere,
PAN No,PAN nr,
Validity Details,Detalii de valabilitate,
Rate Of TDS As Per Certificate,Rata TDS conform certificatului,
Certificate Limit,Limita certificatului,
Invoice Series Prefix,Prefixul seriei de facturi,
Active Menu,Meniul activ,
Restaurant Menu,Meniu Restaurant,
Price List (Auto created),Listă Prețuri (creată automat),
Restaurant Manager,Manager Restaurant,
Restaurant Menu Item,Articol Meniu Restaurant,
Restaurant Order Entry,Intrare comandă de restaurant,
Restaurant Table,Masă Restaurant,
Click Enter To Add,Faceți clic pe Enter to Add,
Last Sales Invoice,Ultima factură de vânzare,
Current Order,Comanda actuală,
Restaurant Order Entry Item,Articol de intrare pentru comandă pentru restaurant,
Served,servit,
Restaurant Reservation,Rezervare la restaurant,
Waitlisted,waitlisted,
No Show,Neprezentare,
No of People,Nr de oameni,
Reservation Time,Timp de rezervare,
Reservation End Time,Timp de terminare a rezervării,
No of Seats,Numărul de scaune,
Minimum Seating,Scaunele minime,
"Keep Track of Sales Campaigns. Keep track of Leads, Quotations, Sales Order etc from Campaigns to gauge Return on Investment. ","Păstra Tractor de campanii de vanzari. Țineți evidența de afaceri, Cotațiile, comandă de vânzări, etc de la Campanii pentru a evalua Return on Investment.",
SAL-CAM-.YYYY.-,SAL-CAM-.YYYY.-,
Campaign Schedules,Programele campaniei,
Buyer of Goods and Services.,Cumpărător de produse și servicii.,
CUST-.YYYY.-,CUST-.YYYY.-,
Default Company Bank Account,Cont bancar al companiei implicite,
From Lead,Din Pistă,
Account Manager,Manager Conturi,
Allow Sales Invoice Creation Without Sales Order,Permiteți crearea facturilor de vânzare fără comandă de vânzare,
Allow Sales Invoice Creation Without Delivery Note,Permiteți crearea facturilor de vânzare fără notă de livrare,
Default Price List,Lista de Prețuri Implicita,
Primary Address and Contact Detail,Adresa principală și detaliile de contact,
"Select, to make the customer searchable with these fields","Selectați, pentru a face ca clientul să poată fi căutat în aceste câmpuri",
Customer Primary Contact,Contact primar client,
"Reselect, if the chosen contact is edited after save",Resetați dacă contactul ales este editat după salvare,
Customer Primary Address,Adresa primară a clientului,
"Reselect, if the chosen address is edited after save",Resetați dacă adresa editată este editată după salvare,
Primary Address,adresa primara,
Mention if non-standard receivable account,Mentionati daca non-standard cont de primit,
Credit Limit and Payment Terms,Limita de credit și termenii de plată,
Additional information regarding the customer.,Informații suplimentare cu privire la client.,
Sales Partner and Commission,Partener de vânzări și a Comisiei,
Commission Rate,Rata de Comision,
Sales Team Details,Detalii de vânzări Echipa,
Customer POS id,ID POS client,
Customer Credit Limit,Limita de creditare a clienților,
Bypass Credit Limit Check at Sales Order,Treceți la verificarea limită de credit la Comandă de vânzări,
Industry Type,Industrie Tip,
MAT-INS-.YYYY.-,MAT-INS-.YYYY.-,
Installation Date,Data de instalare,
Installation Time,Timp de instalare,
Installation Note Item,Instalare Notă Postul,
Installed Qty,Instalat Cantitate,
Lead Source,Sursa de plumb,
Period Start Date,Data de începere a perioadei,
Period End Date,Perioada de sfârșit a perioadei,
Cashier,Casier,
Difference,Diferență,
Modes of Payment,Moduri de plată,
Linked Invoices,Linked Factures,
POS Closing Voucher Details,Detalii Voucher de închidere POS,
Collected Amount,Suma colectată,
Expected Amount,Suma așteptată,
POS Closing Voucher Invoices,Facturi pentru voucherele de închidere de la POS,
Quantity of Items,Cantitatea de articole,
"Aggregate group of **Items** into another **Item**. This is useful if you are bundling a certain **Items** into a package and you maintain stock of the packed **Items** and not the aggregate **Item**. \n\nThe package **Item** will have ""Is Stock Item"" as ""No"" and ""Is Sales Item"" as ""Yes"".\n\nFor Example: If you are selling Laptops and Backpacks separately and have a special price if the customer buys both, then the Laptop + Backpack will be a new Product Bundle Item.\n\nNote: BOM = Bill of Materials","Grup agregat de articole ** ** în alt articol ** **. Acest lucru este util dacă gruparea de anumite elemente ** ** într-un pachet și să mențină un bilanț al ambalate ** ** Elemente și nu agregate ** Postul **. Pachetul ** Postul ** va avea &quot;Este Piesa&quot; ca &quot;No&quot; și &quot;Este punctul de vânzare&quot;, ca &quot;Da&quot;. De exemplu: dacă sunteți de vânzare Laptop-uri și Rucsacuri separat și au un preț special dacă clientul cumpără atât, atunci laptop + rucsac va fi un nou Bundle produs Postul. Notă: BOM = Bill de materiale",
Parent Item,Părinte Articol,
List items that form the package.,Listeaza articole care formează pachetul.,
SAL-QTN-.YYYY.-,SAL-QTN-.YYYY.-,
Quotation To,Ofertă Pentru a,
Rate at which customer's currency is converted to company's base currency,Rata la care moneda clientului este convertită în valuta de bază a companiei,
Rate at which Price list currency is converted to company's base currency,Rata la care lista de prețuri moneda este convertit în moneda de bază a companiei,
Additional Discount and Coupon Code,Cod suplimentar de reducere și cupon,
Referral Sales Partner,Partener de vânzări de recomandări,
In Words will be visible once you save the Quotation.,În cuvinte va fi vizibil după ce salvați citat.,
Term Details,Detalii pe termen,
Quotation Item,Ofertă Articol,
Against Doctype,Comparativ tipului documentului,
Against Docname,Comparativ denumirii documentului,
Additional Notes,Note Aditionale,
SAL-ORD-.YYYY.-,SAL-ORD-.YYYY.-,
Skip Delivery Note,Salt nota de livrare,
In Words will be visible once you save the Sales Order.,În cuvinte va fi vizibil după ce a salva comanda de vânzări.,
Track this Sales Order against any Project,Urmareste acest Ordin de vânzări față de orice proiect,
Billing and Delivery Status,Facturare și stare livrare,
Not Delivered,Nu Pronunțată,
Fully Delivered,Livrat complet,
Partly Delivered,Parțial livrate,
Not Applicable,Nu se aplică,
%  Delivered,% Livrat,
% of materials delivered against this Sales Order,% de materiale livrate versus aceasta Comanda,
% of materials billed against this Sales Order,% de materiale facturate versus această Comandă de Vânzări,
Not Billed,Nu Taxat,
Fully Billed,Complet Taxat,
Partly Billed,Parțial Taxat,
Ensure Delivery Based on Produced Serial No,Asigurați livrarea pe baza numărului de serie produs,
Supplier delivers to Customer,Furnizor livrează la client,
Delivery Warehouse,Depozit de livrare,
Planned Quantity,Planificate Cantitate,
For Production,Pentru Producție,
Work Order Qty,Numărul comenzilor de lucru,
Produced Quantity,Produs Cantitate,
Used for Production Plan,Folosit pentru Planul de producție,
Sales Partner Type,Tip de partener de vânzări,
Contact No.,Nr. Persoana de Contact,
Contribution (%),Contribuție (%),
Contribution to Net Total,Contribuție la Total Net,
Selling Settings,Setări Vânzare,
Settings for Selling Module,Setări pentru vânzare Modulul,
Customer Naming By,Numire Client de catre,
Campaign Naming By,Campanie denumita de,
Default Customer Group,Grup Clienți Implicit,
Default Territory,Teritoriu Implicit,
Close Opportunity After Days,Închide oportunitate După zile,
Default Quotation Validity Days,Valabilitatea zilnică a cotațiilor,
Sales Update Frequency,Frecventa actualizarii vanzarilor,
Each Transaction,Fiecare tranzacție,
SMS Center,SMS Center,
Send To,Trimite la,
All Contact,Toate contactele,
All Customer Contact,Toate contactele clienților,
All Supplier Contact,Toate contactele furnizorului,
All Sales Partner Contact,Toate contactele partenerului de vânzări,
All Lead (Open),Toate Pistele (Deschise),
All Employee (Active),Toți angajații (activi),
All Sales Person,Toate persoanele de vânzăril,
Create Receiver List,Creare Lista Recipienti,
Receiver List,Receptor Lista,
Messages greater than 160 characters will be split into multiple messages,Mesaje mai mari de 160 de caractere vor fi împărțite în mai multe mesaje,
Total Characters,Total de caractere,
Total Message(s),Total mesaj(e),
Authorization Control,Control de autorizare,
Authorization Rule,Regulă de autorizare,
Average Discount,Discount mediiu,
Customerwise Discount,Reducere Client,
Itemwise Discount,Reducere Articol-Avizat,
Customer or Item,Client sau un element,
Customer / Item Name,Client / Denumire articol,
Authorized Value,Valoarea autorizată,
Applicable To (Role),Aplicabil pentru (rol),
Applicable To (Employee),Aplicabil pentru (angajat),
Applicable To (User),Aplicabil pentru (utilizator),
Applicable To (Designation),Aplicabil pentru (destinaţie),
Approving Role (above authorized value),Aprobarea Rol (mai mare decât valoarea autorizată),
Approving User  (above authorized value),Aprobarea utilizator (mai mare decât valoarea autorizată),
Brand Defaults,Valorile implicite ale mărcii,
Legal Entity / Subsidiary with a separate Chart of Accounts belonging to the Organization.,Entitate Juridică / Filială cu o Diagramă de Conturi separată aparținând Organizației.,
Change Abbreviation,Schimbă Abreviere,
Parent Company,Compania mamă,
Default Values,Valori implicite,
Default Holiday List,Implicit Listă de vacanță,
Default Selling Terms,Condiții de vânzare implicite,
Default Buying Terms,Condiții de cumpărare implicite,
Create Chart Of Accounts Based On,"Creează Diagramă de Conturi, Bazată pe",
Standard Template,Format standard,
Existing Company,Companie existentă,
Chart Of Accounts Template,Diagramă de Șablon Conturi,
Existing Company ,companie existentă,
Date of Establishment,Data Înființării,
Sales Settings,Setări de vânzări,
Monthly Sales Target,Vânzări lunare,
Sales Monthly History,Istoric Lunar de Vânzări,
Transactions Annual History,Istoricul tranzacțiilor anuale,
Total Monthly Sales,Vânzări totale lunare,
Default Cash Account,Cont de Numerar Implicit,
Default Receivable Account,Implicit cont de încasat,
Round Off Cost Center,Rotunji cost Center,
Discount Allowed Account,Cont permis de reducere,
Discount Received Account,Reducerea contului primit,
Exchange Gain / Loss Account,Cont Cheltuiala / Venit din diferente de curs valutar,
Unrealized Exchange Gain/Loss Account,Contul de câștig / pierdere din contul nerealizat,
Allow Account Creation Against Child Company,Permite crearea de cont împotriva companiei pentru copii,
Default Payable Account,Implicit cont furnizori,
Default Employee Advance Account,Implicit Cont Advance Advance Employee,
Default Cost of Goods Sold Account,Cont Implicit Cost Bunuri Vândute,
Default Income Account,Contul Venituri Implicit,
Default Deferred Revenue Account,Implicit Contul cu venituri amânate,
Default Deferred Expense Account,Implicit contul amânat de cheltuieli,
Default Payroll Payable Account,Implicit Salarizare cont de plati,
Default Expense Claim Payable Account,Cont Predefinit Solicitare Cheltuială Achitată,
Stock Settings,Setări stoc,
Enable Perpetual Inventory,Activați inventarul perpetuu,
Default Inventory Account,Contul de inventar implicit,
Stock Adjustment Account,Cont Ajustarea stoc,
Fixed Asset Depreciation Settings,Setări de amortizare fixă Activ,
Series for Asset Depreciation Entry (Journal Entry),Seria pentru intrarea în amortizarea activelor (intrare în jurnal),
Gain/Loss Account on Asset Disposal,Cont câștig / Pierdere de eliminare a activelor,
Asset Depreciation Cost Center,Centru de cost Amortizare Activ,
Budget Detail,Detaliu buget,
Exception Budget Approver Role,Rolul de abordare a bugetului de excepție,
Company Info,Informaţii Companie,
For reference only.,Numai Pentru referință.,
Company Logo,Logoul companiei,
Date of Incorporation,Data Încorporării,
Date of Commencement,Data începerii,
Phone No,Nu telefon,
Company Description,Descrierea Companiei,
Registration Details,Detalii de Înregistrare,
Company registration numbers for your reference. Tax numbers etc.,Numerele de înregistrare companie pentru referință. Numerele fiscale etc,
Delete Company Transactions,Ștergeți Tranzacții de Firma,
Currency Exchange,Curs Valutar,
Specify Exchange Rate to convert one currency into another,Precizați Rata de schimb a converti o monedă în alta,
From Currency,Din moneda,
To Currency,Pentru a valutar,
For Buying,Pentru cumparare,
For Selling,Pentru vânzări,
Customer Group Name,Nume Group Client,
Parent Customer Group,Părinte Grup Clienți,
Only leaf nodes are allowed in transaction,Numai noduri frunze sunt permise în tranzacție,
Mention if non-standard receivable account applicable,Menționa dacă non-standard de cont primit aplicabil,
Credit Limits,Limitele de credit,
Email Digest,Email Digest,
Send regular summary reports via Email.,Trimite rapoarte de sinteză periodice prin e-mail.,
Email Digest Settings,Setari Email Digest,
How frequently?,Cât de frecvent?,
Next email will be sent on:,Următorul email va fi trimis la:,
Note: Email will not be sent to disabled users,Notă: Adresa de email nu va fi trimis la utilizatorii cu handicap,
Profit & Loss,Pierderea profitului,
New Income,noul venit,
New Expenses,Cheltuieli noi,
Annual Income,Venit anual,
Annual Expenses,Cheltuielile anuale,
Bank Balance,Banca Balance,
Bank Credit Balance,Soldul creditului bancar,
Receivables,Creanțe,
Payables,Datorii,
Sales Orders to Bill,Comenzi de vânzare către Bill,
Purchase Orders to Bill,Achiziționați comenzi către Bill,
New Sales Orders,Noi comenzi de vânzări,
New Purchase Orders,Noi comenzi de aprovizionare,
Sales Orders to Deliver,Comenzi de livrare pentru livrare,
Purchase Orders to Receive,Comenzi de cumpărare pentru a primi,
New Purchase Invoice,Factură de achiziție nouă,
New Quotations,Noi Oferte,
Open Quotations,Oferte deschise,
Open Issues,Probleme deschise,
Open Projects,Proiecte deschise,
Purchase Orders Items Overdue,Elementele comenzilor de cumpărare sunt restante,
Upcoming Calendar Events,Evenimente calendaristice viitoare,
Open To Do,Deschis de făcut,
Add Quote,Adaugă Citat,
Global Defaults,Valori Implicite Globale,
Default Company,Companie Implicită,
Current Fiscal Year,An Fiscal Curent,
Default Distance Unit,Unitatea de distanță standard,
Hide Currency Symbol,Ascunde simbol moneda,
Do not show any symbol like $ etc next to currencies.,Nu afisa nici un simbol de genul $ etc alături de valute.,
"If disable, 'Rounded Total' field will not be visible in any transaction","Dacă este dezactivat, câmpul 'Total Rotunjit' nu va fi vizibil in nici o tranzacție",
Disable In Words,Nu fi de acord în cuvinte,
"If disable, 'In Words' field will not be visible in any transaction","În cazul în care dezactivați, &quot;în cuvinte&quot; câmp nu vor fi vizibile în orice tranzacție",
Item Classification,Postul Clasificare,
General Settings,Setări generale,
Item Group Name,Denumire Grup Articol,
Parent Item Group,Părinte Grupa de articole,
Item Group Defaults,Setări implicite pentru grupul de articole,
Item Tax,Taxa Articol,
Check this if you want to show in website,Bifati dacă doriți să fie afisat în site,
Show this slideshow at the top of the page,Arată această prezentare în partea de sus a paginii,
HTML / Banner that will show on the top of product list.,"HTML / Banner, care va arăta pe partea de sus a listei de produse.",
Set prefix for numbering series on your transactions,Set prefix pentru seria de numerotare pe tranzacțiile dvs.,
Setup Series,Seria de configurare,
Update Series,Actualizare Series,
Change the starting / current sequence number of an existing series.,Schimbați secventa de numar de inceput / curent a unei serii existente.,
Quotation Lost Reason,Ofertă pierdut rațiunea,
A third party distributor / dealer / commission agent / affiliate / reseller who sells the companies products for a commission.,Un distribuitor terță parte / dealer / agent comisionar / afiliat / re-vânzător care vinde produsele companiei pentru un comision.,
Sales Partner Name,Numele Partner Sales,
Partner Type,Tip partener,
Address & Contacts,Adresă şi contacte,
Address Desc,Adresă Desc,
Contact Desc,Persoana de Contact Desc,
Sales Partner Target,Vânzări Partner țintă,
Targets,Obiective,
Show In Website,Arata pe site-ul,
Referral Code,Codul de recomandare,
To Track inbound purchase,Pentru a urmări achiziția de intrare,
Logo,Logo,
Partner website,site-ul partenerului,
All Sales Transactions can be tagged against multiple **Sales Persons** so that you can set and monitor targets.,Toate tranzacțiile de vânzări pot fi etichetate comparativ mai multor **Persoane de vânzări** pentru ca dvs. sa puteţi configura și monitoriza obiective.,
Name and Employee ID,Nume și ID angajat,
Sales Person Name,Sales Person Nume,
Parent Sales Person,Mamă Sales Person,
Select company name first.,Selectați numele companiei în primul rând.,
Sales Person Targets,Ținte Persoane Vânzări,
Set targets Item Group-wise for this Sales Person.,Stabilească obiective Articol Grupa-înțelept pentru această persoană de vânzări.,
Supplier Group Name,Numele grupului de furnizori,
Parent Supplier Group,Grupul furnizorilor-mamă,
Target Detail,Țintă Detaliu,
Target Qty,Țintă Cantitate,
Target  Amount,Suma țintă,
Target Distribution,Țintă Distribuție,
"Standard Terms and Conditions that can be added to Sales and Purchases.\n\nExamples:\n\n1. Validity of the offer.\n1. Payment Terms (In Advance, On Credit, part advance etc).\n1. What is extra (or payable by the Customer).\n1. Safety / usage warning.\n1. Warranty if any.\n1. Returns Policy.\n1. Terms of shipping, if applicable.\n1. Ways of addressing disputes, indemnity, liability, etc.\n1. Address and Contact of your Company.","Termeni și Condiții care pot fi adăugate la vânzările și achizițiile standard.\n\n Exemple: \n\n 1. Perioada de valabilitate a ofertei.\n 1. Conditii de plata (in avans, pe credit, parte în avans etc.).\n 1. Ce este în plus (sau de plătit de către Client).\n 1. Siguranța / avertizare utilizare.\n 1. Garantie dacă este cazul.\n 1. Politica de Returnare.\n 1. Condiții de transport maritim, dacă este cazul.\n 1. Modalitati de litigii de adresare, indemnizație, răspunderea, etc. \n 1. Adresa și de contact ale companiei.",
Applicable Modules,Module aplicabile,
Terms and Conditions Help,Termeni și Condiții Ajutor,
Classification of Customers by region,Clasificarea clienți în funcție de regiune,
Territory Name,Teritoriului Denumire,
Parent Territory,Teritoriul părinte,
Territory Manager,Teritoriu Director,
For reference,Pentru referință,
Territory Targets,Obiective Territory,
Set Item Group-wise budgets on this Territory. You can also include seasonality by setting the Distribution.,"Set bugetelor Grupa înțelept Articol de pe acest teritoriu. Puteți include, de asemenea, sezonier prin setarea distribuție.",
UOM Name,Numele UOM,
Check this to disallow fractions. (for Nos),Bifati pentru a nu permite fracțiuni. (Pentru Nos),
Website Item Group,Site-ul Grupa de articole,
Cross Listing of Item in multiple groups,Crucea Listarea de punctul în mai multe grupuri,
Default settings for Shopping Cart,Setările implicite pentru Cosul de cumparaturi,
Enable Shopping Cart,Activați cosul de cumparaturi,
Display Settings,Display Settings,
Show Public Attachments,Afișați atașamentele publice,
Show Price,Afișați prețul,
Show Stock Availability,Afișați disponibilitatea stocului,
Show Contact Us Button,Afișați butonul de contactare,
Show Stock Quantity,Afișați cantitatea stocului,
Show Apply Coupon Code,Afișați Aplicați codul de cupon,
Allow items not in stock to be added to cart,Permiteți adăugarea în coș a articolelor care nu sunt în stoc,
Prices will not be shown if Price List is not set,Prețurile nu vor fi afișate în cazul în care Prețul de listă nu este setat,
Quotation Series,Ofertă Series,
Checkout Settings,setările checkout pentru,
Enable Checkout,activaţi Checkout,
Payment Success Url,Plată de succes URL,
After payment completion redirect user to selected page.,După finalizarea plății redirecționați utilizatorul la pagina selectată.,
Batch Details,Detalii lot,
Batch ID,ID-ul lotului,
image,imagine,
Parent Batch,Lotul părinte,
Manufacturing Date,Data Fabricației,
Batch Quantity,Cantitatea lotului,
Batch UOM,Lot UOM,
Source Document Type,Tipul documentului sursă,
Source Document Name,Numele sursei de document,
Batch Description,Descriere lot,
Bin,Coş,
Reserved Quantity,Cantitate rezervata,
Actual Quantity,Cantitate Efectivă,
Requested Quantity,Cantitate Solicitată,
Reserved Qty for sub contract,Cantitate rezervată pentru subcontract,
Moving Average Rate,Rata medie mobilă,
FCFS Rate,Rata FCFS,
Customs Tariff Number,Tariful vamal Număr,
Tariff Number,Tarif Număr,
Delivery To,De Livrare la,
MAT-DN-.YYYY.-,MAT-DN-.YYYY.-,
Is Return,Este de returnare,
Issue Credit Note,Eliberați nota de credit,
Return Against Delivery Note,Reveni Împotriva livrare Nota,
Customer's Purchase Order No,Nr. Comanda de Aprovizionare Client,
Billing Address Name,Numele din adresa de facturare,
Required only for sample item.,Necesar numai pentru articolul de probă.,
"If you have created a standard template in Sales Taxes and Charges Template, select one and click on the button below.","Dacă ați creat un model standard la taxele de vânzare și taxe Format, selectați una și faceți clic pe butonul de mai jos.",
In Words will be visible once you save the Delivery Note.,În cuvinte va fi vizibil după ce a salva de livrare Nota.,
In Words (Export) will be visible once you save the Delivery Note.,În cuvinte (de export) va fi vizibil după ce a salva de livrare Nota.,
Transporter Info,Info Transporter,
Driver Name,Numele șoferului,
Track this Delivery Note against any Project,Urmareste acest Livrare Note împotriva oricărui proiect,
Inter Company Reference,Referință între companii,
Print Without Amount,Imprima Fără Suma,
% Installed,% Instalat,
% of materials delivered against this Delivery Note,% de materiale livrate versus acest Aviz de Expeditie,
Installation Status,Starea de instalare,
Excise Page Number,Numărul paginii accize,
Instructions,Instrucţiuni,
From Warehouse,Din Depozit,
Against Sales Order,Contra comenzii de vânzări,
Against Sales Order Item,Contra articolului comenzii de vânzări,
Against Sales Invoice,Comparativ facturii de vânzări,
Against Sales Invoice Item,Comparativ articolului facturii de vânzări,
Available Batch Qty at From Warehouse,Disponibil lot Cantitate puțin din Warehouse,
Available Qty at From Warehouse,Cantitate Disponibil la Depozitul,
Delivery Settings,Setări de livrare,
Dispatch Settings,Dispecerat Setări,
Dispatch Notification Template,Șablonul de notificare pentru expediere,
Dispatch Notification Attachment,Expedierea notificării atașament,
Leave blank to use the standard Delivery Note format,Lăsați necompletat pentru a utiliza formatul standard de livrare,
Send with Attachment,Trimiteți cu atașament,
Delay between Delivery Stops,Întârziere între opririle de livrare,
Delivery Stop,Livrare Stop,
Lock,Lacăt,
Visited,Vizitat,
Order Information,Informații despre comandă,
Contact Information,Informatii de contact,
Email sent to,Email trimis catre,
Dispatch Information,Informații despre expediere,
Estimated Arrival,Sosirea estimată,
MAT-DT-.YYYY.-,MAT-DT-.YYYY.-,
Initial Email Notification Sent,Notificarea inițială de e-mail trimisă,
Delivery Details,Detalii Livrare,
Driver Email,E-mail șofer,
Driver Address,Adresa șoferului,
Total Estimated Distance,Distanța totală estimată,
Distance UOM,Distanță UOM,
Departure Time,Timp de plecare,
Delivery Stops,Livrarea se oprește,
Calculate Estimated Arrival Times,Calculează Timp de Sosire Estimat,
Use Google Maps Direction API to calculate estimated arrival times,Utilizați Google Maps Direction API pentru a calcula orele de sosire estimate,
Optimize Route,Optimizați ruta,
Use Google Maps Direction API to optimize route,Utilizați Google Maps Direction API pentru a optimiza ruta,
In Transit,În trecere,
Fulfillment User,Utilizator de încredere,
"A Product or a Service that is bought, sold or kept in stock.","Un produs sau un serviciu care este cumpărat, vândut sau păstrat în stoc.",
STO-ITEM-.YYYY.-,STO-ELEMENT-.YYYY.-,
Variant Of,Varianta de,
"If item is a variant of another item then description, image, pricing, taxes etc will be set from the template unless explicitly specified","Dacă elementul este o variantă de un alt element atunci descriere, imagine, de stabilire a prețurilor, impozite etc vor fi stabilite de șablon dacă nu se specifică în mod explicit",
Is Item from Hub,Este element din Hub,
Default Unit of Measure,Unitatea de Măsură Implicita,
Maintain Stock,Articol Stocabil,
Standard Selling Rate,Standard de vânzare Rata,
Auto Create Assets on Purchase,Creați active automate la achiziție,
Asset Naming Series,Serie de denumire a activelor,
Over Delivery/Receipt Allowance (%),Indemnizație de livrare / primire (%),
Barcodes,Coduri de bare,
Shelf Life In Days,Perioada de valabilitate în zile,
End of Life,Sfârsitul vieții,
Default Material Request Type,Implicit Material Tip de solicitare,
Valuation Method,Metoda de evaluare,
FIFO,FIFO,
Moving Average,Mutarea medie,
Warranty Period (in days),Perioada de garanție (în zile),
Auto re-order,Re-comandă automată,
Reorder level based on Warehouse,Nivel pentru re-comanda bazat pe Magazie,
Will also apply for variants unless overridden,Se va aplica și pentru variantele cu excepția cazului în overridden,
Units of Measure,Unitati de masura,
Will also apply for variants,"Va aplică, de asemenea pentru variante",
Serial Nos and Batches,Numere și loturi seriale,
Has Batch No,Are nr. de Lot,
Automatically Create New Batch,Creare automată Lot nou,
Batch Number Series,Seria numerelor serii,
"Example: ABCD.#####. If series is set and Batch No is not mentioned in transactions, then automatic batch number will be created based on this series. If you always want to explicitly mention Batch No for this item, leave this blank. Note: this setting will take priority over the Naming Series Prefix in Stock Settings.","Exemplu: ABCD. #####. Dacă seria este setată și numărul lotului nu este menționat în tranzacții, atunci numărul lotului automat va fi creat pe baza acestei serii. Dacă doriți întotdeauna să menționați în mod explicit numărul lotului pentru acest articol, lăsați acest lucru necompletat. Notă: această setare va avea prioritate față de Prefixul Seriei de Nomenclatoare din Setările de stoc.",
Has Expiry Date,Are data de expirare,
Retain Sample,Păstrați eșantionul,
Max Sample Quantity,Cantitate maximă de probă,
Maximum sample quantity that can be retained,Cantitatea maximă de mostră care poate fi reținută,
Has Serial No,Are nr. de serie,
Serial Number Series,Serial Number Series,
"Example: ABCD.#####\nIf 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.","Exemplu:. ABCD ##### \n Dacă seria este setat și nu de serie nu este menționat în tranzacții, numărul de atunci automat de serie va fi creat pe baza acestei serii. Dacă întotdeauna doriți să se menționeze explicit Serial nr de acest articol. părăsi acest gol.",
Variants,Variante,
Has Variants,Are variante,
"If this item has variants, then it cannot be selected in sales orders etc.","Dacă acest element are variante, atunci nu poate fi selectat în comenzile de vânzări, etc.",
Variant Based On,Varianta Bazat pe,
Item Attribute,Postul Atribut,
"Sales, Purchase, Accounting Defaults","Vânzări, Cumpărare, Definiții de contabilitate",
Item Defaults,Elemente prestabilite,
"Purchase, Replenishment Details","Detalii de achiziție, reconstituire",
Is Purchase Item,Este de cumparare Articol,
Default Purchase Unit of Measure,Unitatea de măsură prestabilită a măsurii,
Minimum Order Qty,Comanda minima Cantitate,
Minimum quantity should be as per Stock UOM,Cantitatea minimă ar trebui să fie conform UOM-ului de stoc,
Average time taken by the supplier to deliver,Timpul mediu luate de către furnizor de a livra,
Is Customer Provided Item,Este articol furnizat de client,
Delivered by Supplier (Drop Ship),Livrate de Furnizor (Drop navelor),
Supplier Items,Furnizor Articole,
Foreign Trade Details,Detalii Comerț Exterior,
Country of Origin,Tara de origine,
Sales Details,Detalii Vânzări,
Default Sales Unit of Measure,Unitatea de vânzare standard de măsură,
Is Sales Item,Este produs de vânzări,
Max Discount (%),Max Discount (%),
No of Months,Numărul de luni,
Customer Items,Articole clientului,
Inspection Criteria,Criteriile de inspecție,
Inspection Required before Purchase,Necesar de inspecție înainte de achiziționare,
Inspection Required before Delivery,Necesar de inspecție înainte de livrare,
Default BOM,FDM Implicit,
Supply Raw Materials for Purchase,Materii prime de alimentare pentru cumparare,
If subcontracted to a vendor,Dacă subcontractat la un furnizor,
Customer Code,Cod client,
Default Item Manufacturer,Producător de articole implicit,
Default Manufacturer Part No,Cod producător implicit,
Show in Website (Variant),Afișați în site-ul (Variant),
Items with higher weightage will be shown higher,Articole cu weightage mare va fi afișat mai mare,
Show a slideshow at the top of the page,Arata un slideshow din partea de sus a paginii,
Website Image,Imagine Web,
Website Warehouse,Website Depozit,
"Show ""In Stock"" or ""Not in Stock"" based on stock available in this warehouse.","Arata ""Pe stoc"" sau ""nu este pe stoc"", bazat pe stoc disponibil în acest depozit.",
Website Item Groups,Site-ul Articol Grupuri,
List this Item in multiple groups on the website.,Listeaza acest articol in grupuri multiple de pe site-ul.\,
Copy From Item Group,Copiere din Grupul de Articole,
Website Content,Conținutul site-ului web,
You can use any valid Bootstrap 4 markup in this field. It will be shown on your Item Page.,Puteți utiliza orice marcaj Bootstrap 4 valabil în acest câmp. Acesta va fi afișat pe pagina dvs. de articole.,
Total Projected Qty,Cantitate totală prevăzută,
Hub Publishing Details,Detalii privind publicarea Hubului,
Publish in Hub,Publica in Hub,
Publish Item to hub.erpnext.com,Publica Postul de hub.erpnext.com,
Hub Category to Publish,Categorie Hub pentru publicare,
Hub Warehouse,Hub Depozit,
"Publish ""In Stock"" or ""Not in Stock"" on Hub based on stock available in this warehouse.","Publicați &quot;În stoc&quot; sau &quot;Nu este în stoc&quot; pe Hub, pe baza stocurilor disponibile în acest depozit.",
Synced With Hub,Sincronizat cu Hub,
Item Alternative,Alternativă la element,
Alternative Item Code,Codul elementului alternativ,
Two-way,Două căi,
Alternative Item Name,Numele elementului alternativ,
Attribute Name,Denumire atribut,
Numeric Values,Valori numerice,
From Range,Din gama,
Increment,Creștere,
To Range,La gama,
Item Attribute Values,Valori Postul Atribut,
Item Attribute Value,Postul caracteristicii Valoarea,
Attribute Value,Valoare Atribut,
Abbreviation,Abreviere,
"This will be appended to the Item Code of the variant. For example, if your abbreviation is ""SM"", and the item code is ""T-SHIRT"", the item code of the variant will be ""T-SHIRT-SM""","Acest lucru va fi adăugat la Codul punctul de varianta. De exemplu, în cazul în care abrevierea este ""SM"", iar codul produs face ""T-SHIRT"", codul punctul de varianta va fi ""T-SHIRT-SM""",
Item Barcode,Element de coduri de bare,
Barcode Type,Tip de cod de bare,
EAN,EAN,
UPC-A,UPC-A,
Item Customer Detail,Detaliu Articol Client,
"For the convenience of customers, these codes can be used in print formats like Invoices and Delivery Notes","Pentru comoditatea clienților, aceste coduri pot fi utilizate în formate de imprimare cum ar fi Facturi și Note de Livrare",
Ref Code,Cod de Ref,
Item Default,Element Implicit,
Purchase Defaults,Valori implicite pentru achiziții,
Default Buying Cost Center,Centru de Cost Cumparare Implicit,
Default Supplier,Furnizor Implicit,
Default Expense Account,Cont de Cheltuieli Implicit,
Sales Defaults,Setări prestabilite pentru vânzări,
Default Selling Cost Center,Centru de Cost Vanzare Implicit,
Item Manufacturer,Postul Producator,
Item Price,Preț Articol,
Packing Unit,Unitate de ambalare,
Quantity  that must be bought or sold per UOM,Cantitatea care trebuie cumpărată sau vândută pe UOM,
Item Quality Inspection Parameter,Parametru Inspecție de Calitate Articol,
Acceptance Criteria,Criteriile de receptie,
Item Reorder,Reordonare Articol,
Check in (group),Check-in (grup),
Request for,Cerere pentru,
Re-order Level,Nivelul de re-comandă,
Re-order Qty,Re-comanda Cantitate,
Item Supplier,Furnizor Articol,
Item Variant,Postul Varianta,
Item Variant Attribute,Varianta element Atribut,
Do not update variants on save,Nu actualizați variantele de salvare,
Fields will be copied over only at time of creation.,Câmpurile vor fi copiate numai în momentul creării.,
Allow Rename Attribute Value,Permiteți redenumirea valorii atributului,
Rename Attribute Value in Item Attribute.,Redenumiți valoarea atributului în atributul de element.,
Copy Fields to Variant,Copiați câmpurile în varianta,
Item Website Specification,Specificație Site Articol,
Table for Item that will be shown in Web Site,Tabelul pentru postul care va fi afișat în site-ul,
Landed Cost Item,Cost Final Articol,
Receipt Document Type,Primire Tip de document,
Receipt Document,Documentul de primire,
Applicable Charges,Taxe aplicabile,
Purchase Receipt Item,Primirea de cumpărare Postul,
Landed Cost Purchase Receipt,Chitanta de Cumparare aferent Costului Final,
Landed Cost Taxes and Charges,Impozite cost debarcate și Taxe,
Landed Cost Voucher,Voucher Cost Landed,
MAT-LCV-.YYYY.-,MAT-LCV-.YYYY.-,
Purchase Receipts,Încasări de cumparare,
Purchase Receipt Items,Primirea de cumpărare Articole,
Get Items From Purchase Receipts,Obține elemente din achiziție Încasări,
Distribute Charges Based On,Împărțiți taxelor pe baza,
Landed Cost Help,Costul Ajutor Landed,
Manufacturers used in Items,Producători utilizați în Articole,
Limited to 12 characters,Limitată la 12 de caractere,
MAT-MR-.YYYY.-,MAT-MR-.YYYY.-,
Partially Ordered,Parțial comandat,
Transferred,transferat,
% Ordered,% Comandat,
Terms and Conditions Content,Termeni și condiții de conținut,
Quantity and Warehouse,Cantitatea și Warehouse,
Lead Time Date,Data Timp Conducere,
Min Order Qty,Min Ordine Cantitate,
Packed Item,Articol ambalate,
To Warehouse (Optional),La Depozit (opțional),
Actual Batch Quantity,Cantitatea actuală de lot,
Prevdoc DocType,Prevdoc Doctype,
Parent Detail docname,Părinte Detaliu docname,
"Generate packing slips for packages to be delivered. Used to notify package number, package contents and its weight.","Generarea de ambalare slip pentru pachetele de a fi livrate. Folosit pentru a notifica numărul pachet, conținutul pachetului și greutatea sa.",
Indicates that the package is a part of this delivery (Only Draft),Indică faptul că pachetul este o parte din această livrare (Proiect de numai),
MAT-PAC-.YYYY.-,MAT-PAC-.YYYY.-,
From Package No.,Din Pachetul Nr.,
Identification of the package for the delivery (for print),Identificarea pachetului pentru livrare (pentru imprimare),
To Package No.,La pachetul Nr,
If more than one package of the same type (for print),În cazul în care mai mult de un pachet de același tip (pentru imprimare),
Package Weight Details,Pachetul Greutate Detalii,
The net weight of this package. (calculated automatically as sum of net weight of items),Greutatea netă a acestui pachet. (Calculat automat ca suma de greutate netă de produs),
Net Weight UOM,Greutate neta UOM,
Gross Weight,Greutate brută,
The gross weight of the package. Usually net weight + packaging material weight. (for print),"Greutatea brută a pachetului. Greutate + ambalare, de obicei, greutate netă de material. (Pentru imprimare)",
Gross Weight UOM,Greutate Brută UOM,
Packing Slip Item,Bonul Articol,
DN Detail,Detaliu DN,
STO-PICK-.YYYY.-,STO-PICK-.YYYY.-,
Material Transfer for Manufacture,Transfer de materii pentru fabricarea,
Qty of raw materials will be decided based on the qty of the Finished Goods Item,Cantitatea de materii prime va fi decisă pe baza cantității articolului de produse finite,
Parent Warehouse,Depozit Părinte,
Items under this warehouse will be suggested,Articolele din acest depozit vor fi sugerate,
Get Item Locations,Obțineți locații de articole,
Item Locations,Locații articol,
Pick List Item,Alegeți articolul din listă,
Picked Qty,Cules Qty,
Price List Master,Lista de preturi Masterat,
Price List Name,Lista de prețuri Nume,
Price Not UOM Dependent,Pretul nu este dependent de UOM,
Applicable for Countries,Aplicabile pentru țările,
Price List Country,Lista de preturi Țară,
MAT-PRE-.YYYY.-,MAT-PRE-.YYYY.-,
Supplier Delivery Note,Nota de livrare a furnizorului,
Time at which materials were received,Timp în care s-au primit materiale,
Return Against Purchase Receipt,Reveni cu confirmare de primire cumparare,
Rate at which supplier's currency is converted to company's base currency,Rata la care moneda furnizorului este convertit în moneda de bază a companiei,
Sets 'Accepted Warehouse' in each row of the items table.,Setează „Depozit acceptat” în fiecare rând al tabelului cu articole.,
Sets 'Rejected Warehouse' in each row of the items table.,Setează „Depozit respins” în fiecare rând al tabelului cu articole.,
Raw Materials Consumed,Materii prime consumate,
Get Current Stock,Obține stocul curent,
Consumed Items,Articole consumate,
Add / Edit Taxes and Charges,Adaugaţi / editaţi taxe și cheltuieli,
Auto Repeat Detail,Repeatarea detaliilor automate,
Transporter Details,Detalii Transporter,
Vehicle Number,Numărul de vehicule,
Vehicle Date,Vehicul Data,
Received and Accepted,Primit și Acceptat,
Accepted Quantity,Cantitatea Acceptata,
Rejected Quantity,Cantitate Respinsă,
Accepted Qty as per Stock UOM,Cantitate acceptată conform stocului UOM,
Sample Quantity,Cantitate de probă,
Rate and Amount,Rata și volumul,
MAT-QA-.YYYY.-,MAT-QA-.YYYY.-,
Report Date,Data raportului,
Inspection Type,Inspecție Tip,
Item Serial No,Nr. de Serie Articol,
Sample Size,Eșantionul de dimensiune,
Inspected By,Inspectat de,
Readings,Lecturi,
Quality Inspection Reading,Inspecție de calitate Reading,
Reading 1,Lectura 1,
Reading 2,Lectura 2,
Reading 3,Lectura 3,
Reading 4,Lectura 4,
Reading 5,Lectura 5,
Reading 6,Lectura 6,
Reading 7,Lectură 7,
Reading 8,Lectură 8,
Reading 9,Lectură 9,
Reading 10,Lectura 10,
Quality Inspection Template Name,Numele de șablon de inspecție a calității,
Quick Stock Balance,Soldul rapid al stocurilor,
Available Quantity,Cantitate Disponibilă,
Distinct unit of an Item,Unitate distinctă de Postul,
Warehouse can only be changed via Stock Entry / Delivery Note / Purchase Receipt,Depozit poate fi modificat numai prin Bursa de primire de intrare / livrare Nota / cumparare,
Purchase / Manufacture Details,Detalii de cumpărare / Fabricarea,
Creation Document Type,Tip de document creație,
Creation Document No,Creare Document Nr.,
Creation Date,Data creării,
Creation Time,Timp de creare,
Asset Details,Detalii privind activul,
Asset Status,Starea activelor,
Delivery Document Type,Tipul documentului de Livrare,
Delivery Document No,Nr. de document de Livrare,
Delivery Time,Timp de Livrare,
Invoice Details,Detaliile facturii,
Warranty / AMC Details,Garanție / AMC Detalii,
Warranty Expiry Date,Garanție Data expirării,
AMC Expiry Date,Dată expirare AMC,
Under Warranty,În garanție,
Out of Warranty,Ieșit din garanție,
Under AMC,Sub AMC,
Out of AMC,Din AMC,
Warranty Period (Days),Perioada de garanție (zile),
Serial No Details,Serial Nu Detalii,
MAT-STE-.YYYY.-,MAT-STE-.YYYY.-,
Stock Entry Type,Tip intrare stoc,
Stock Entry (Outward GIT),Intrare pe stoc (GIT exterior),
Material Consumption for Manufacture,Consumul de materiale pentru fabricare,
Repack,Reambalați,
Send to Subcontractor,Trimiteți către subcontractant,
Delivery Note No,Nr. Nota de Livrare,
Sales Invoice No,Nr. Factură de Vânzări,
Purchase Receipt No,Primirea de cumpărare Nu,
Inspection Required,Inspecție obligatorii,
From BOM,De la BOM,
For Quantity,Pentru Cantitate,
As per Stock UOM,Ca şi pentru stoc UOM,
Including items for sub assemblies,Inclusiv articole pentru subansambluri,
Default Source Warehouse,Depozit Sursa Implicit,
Source Warehouse Address,Adresă Depozit Sursă,
Default Target Warehouse,Depozit Tinta Implicit,
Target Warehouse Address,Adresa de destinație a depozitului,
Update Rate and Availability,Actualizarea Rata și disponibilitatea,
Total Incoming Value,Valoarea totală a sosi,
Total Outgoing Value,Valoarea totală de ieșire,
Total Value Difference (Out - In),Diferența Valoarea totală (Out - In),
Additional Costs,Costuri suplimentare,
Total Additional Costs,Costuri totale suplimentare,
Customer or Supplier Details,Client sau furnizor Detalii,
Per Transferred,Per transferat,
Stock Entry Detail,Stoc de intrare Detaliu,
Basic Rate (as per Stock UOM),Rata de bază (conform Stock UOM),
Basic Amount,Suma de bază,
Additional Cost,Cost aditional,
Serial No / Batch,Serial No / lot,
BOM No. for a Finished Good Item,Nr. BOM pentru un articol tip produs finalizat,
Material Request used to make this Stock Entry,Cerere de material utilizat pentru a face acest stoc de intrare,
Subcontracted Item,Subcontractat element,
Against Stock Entry,Împotriva intrării pe stoc,
Stock Entry Child,Copil de intrare în stoc,
PO Supplied Item,PO Articol furnizat,
Reference Purchase Receipt,Recepție de achiziție de achiziție,
Stock Ledger Entry,Registru Contabil Intrări,
Outgoing Rate,Rata de ieșire,
Actual Qty After Transaction,Cant. efectivă după tranzacție,
Stock Value Difference,Valoarea Stock Diferența,
Stock Queue (FIFO),Stoc Queue (FIFO),
Is Cancelled,Este anulat,
Stock Reconciliation,Stoc Reconciliere,
This tool helps you to update or fix the quantity and valuation of stock in the system. It is typically used to synchronise the system values and what actually exists in your warehouses.,Acest instrument vă ajută să actualizați sau stabili cantitatea și evaluarea stocului in sistem. Acesta este de obicei folosit pentru a sincroniza valorile de sistem și ceea ce există de fapt în depozite tale.,
MAT-RECO-.YYYY.-,MAT-RECO-.YYYY.-,
Reconciliation JSON,Reconciliere JSON,
Stock Reconciliation Item,Stock reconciliere Articol,
Before reconciliation,Premergător reconcilierii,
Current Serial No,Serial curent nr,
Current Valuation Rate,Rata de evaluare curentă,
Current Amount,Suma curentă,
Quantity Difference,cantitate diferenţă,
Amount Difference,suma diferenţă,
Item Naming By,Denumire Articol Prin,
Default Item Group,Group Articol Implicit,
Default Stock UOM,Stoc UOM Implicit,
Sample Retention Warehouse,Exemplu de reținere depozit,
Default Valuation Method,Metoda de Evaluare Implicită,
Show Barcode Field,Afișează coduri de bare Câmp,
Convert Item Description to Clean HTML,Conversia elementului de articol pentru a curăța codul HTML,
Allow Negative Stock,Permiteţi stoc negativ,
Automatically Set Serial Nos based on FIFO,Setat automat Serial nr bazat pe FIFO,
Auto Material Request,Cerere automată de material,
Inter Warehouse Transfer Settings,Setări de transfer între depozite,
Freeze Stock Entries,Blocheaza Intrarile in Stoc,
Stock Frozen Upto,Stoc Frozen Până la,
Batch Identification,Identificarea lotului,
Use Naming Series,Utilizați seria de numire,
Naming Series Prefix,Denumirea prefixului seriei,
UOM Category,Categoria UOM,
UOM Conversion Detail,Detaliu UOM de conversie,
Variant Field,Varianta câmpului,
A logical Warehouse against which stock entries are made.,Un depozit logic față de care se efectuează înregistrări de stoc.,
Warehouse Detail,Detaliu Depozit,
Warehouse Name,Denumire Depozit,
Warehouse Contact Info,Date de contact depozit,
PIN,PIN,
ISS-.YYYY.-,ISS-.YYYY.-,
Raised By (Email),Ridicat de (E-mail),
Issue Type,Tipul problemei,
Issue Split From,Problemă Split From,
Service Level,Nivel de servicii,
Response By,Răspuns de,
Response By Variance,Răspuns după variație,
Ongoing,În curs de desfășurare,
Resolution By,Rezolvare de,
Resolution By Variance,Rezolutie prin variatie,
Service Level Agreement Creation,Crearea contractului de nivel de serviciu,
First Responded On,Primul Răspuns la,
Resolution Details,Detalii Rezoluție,
Opening Date,Data deschiderii,
Opening Time,Timp de deschidere,
Resolution Date,Dată Rezoluție,
Via Customer Portal,Prin portalul de clienți,
Support Team,Echipa de Suport,
Issue Priority,Prioritate de emisiune,
Service Day,Ziua serviciului,
Workday,Zi de lucru,
Default Priority,Prioritate implicită,
Priorities,priorităţi,
Support Hours,Ore de sprijin,
Support and Resolution,Suport și rezoluție,
Default Service Level Agreement,Acordul implicit privind nivelul serviciilor,
Entity,Entitate,
Agreement Details,Detalii despre acord,
Response and Resolution Time,Timp de răspuns și rezolvare,
Service Level Priority,Prioritate la nivel de serviciu,
Resolution Time,Timp de rezoluție,
Support Search Source,Sprijiniți sursa de căutare,
Source Type,Tipul sursei,
Query Route String,Query String Rout,
Search Term Param Name,Termenul de căutare Param Name,
Response Options,Opțiuni de Răspuns,
Response Result Key Path,Răspuns Rezultat Cale cheie,
Post Route String,Postați șirul de rută,
Post Route Key List,Afișați lista cheilor de rutare,
Post Title Key,Titlul mesajului cheie,
Post Description Key,Post Descriere cheie,
Link Options,Link Opțiuni,
Source DocType,Sursa DocType,
Result Title Field,Câmp rezultat titlu,
Result Preview Field,Câmp de examinare a rezultatelor,
Result Route Field,Câmp de rutare rezultat,
Service Level Agreements,Acorduri privind nivelul serviciilor,
Track Service Level Agreement,Urmăriți acordul privind nivelul serviciilor,
Allow Resetting Service Level Agreement,Permiteți resetarea contractului de nivel de serviciu,
Close Issue After Days,Închide Problemă După Zile,
Auto close Issue after 7 days,Închidere automată Problemă după 7 zile,
Support Portal,Portal de suport,
Get Started Sections,Începeți secțiunile,
Show Latest Forum Posts,Arată ultimele postări pe forum,
Forum Posts,Mesaje pe forum,
Forum URL,Adresa URL a forumului,
Get Latest Query,Obțineți ultima interogare,
Response Key List,Listă cu chei de răspuns,
Post Route Key,Introduceți cheia de rutare,
Search APIs,API-uri de căutare,
SER-WRN-.YYYY.-,SER-WRN-.YYYY.-,
Issue Date,Data emiterii,
Item and Warranty Details,Postul și garanție Detalii,
Warranty / AMC Status,Garanție / AMC Starea,
Resolved By,Rezolvat prin,
Service Address,Adresa serviciu,
If different than customer address,Dacă diferă de adresa client,
Raised By,Ridicat De,
From Company,De la Compania,
Rename Tool,Instrument Redenumire,
Utilities,Utilitați,
Type of document to rename.,Tip de document pentru a redenumi.,
File to Rename,Fișier de Redenumiți,
"Attach .csv file with two columns, one for the old name and one for the new name","Atașați fișier .csv cu două coloane, una pentru denumirea veche și una pentru denumirea nouă",
Rename Log,Redenumi Conectare,
SMS Log,SMS Conectare,
Sender Name,Sender Name,
Sent On,A trimis pe,
No of Requested SMS,Nu de SMS solicitat,
Requested Numbers,Numere solicitate,
No of Sent SMS,Nu de SMS-uri trimise,
Sent To,Trimis La,
Absent Student Report,Raport elev absent,
Assessment Plan Status,Starea planului de evaluare,
Asset Depreciation Ledger,Registru Amortizatre Active,
Asset Depreciations and Balances,Amortizari si Balante Active,
Available Stock for Packing Items,Stoc disponibil pentru articole destinate împachetării,
Bank Clearance Summary,Sumar aprobare bancă,
Batch Item Expiry Status,Lot Articol Stare de expirare,
Batch-Wise Balance History,Istoricul balanţei principale aferente lotului,
BOM Explorer,BOM Explorer,
BOM Search,BOM Căutare,
BOM Stock Calculated,BOM Stocul calculat,
BOM Variance Report,BOM Raport de variație,
Campaign Efficiency,Eficiența campaniei,
Cash Flow,Fluxul de numerar,
Completed Work Orders,Ordine de lucru finalizate,
To Produce,Pentru a produce,
Produced,Produs,
Consolidated Financial Statement,Situație financiară consolidată,
Course wise Assessment Report,Raport de evaluare în curs,
Customer Acquisition and Loyalty,Achiziționare și Loialitate Client,
Customer Credit Balance,Balanța Clienți credit,
Customer Ledger Summary,Rezumatul evidenței clienților,
Customer-wise Item Price,Prețul articolului pentru clienți,
Customers Without Any Sales Transactions,Clienții fără tranzacții de vânzare,
Daily Timesheet Summary,Rezumat Pontaj Zilnic,
DATEV,DATEV,
Delayed Item Report,Raportul întârziat al articolului,
Delayed Order Report,Raportul de comandă întârziat,
Delivered Items To Be Billed,Produse Livrate Pentru a fi Facturate,
Delivery Note Trends,Tendințe Nota de Livrare,
Electronic Invoice Register,Registrul electronic al facturilor,
Employee Billing Summary,Rezumatul facturării angajaților,
Employee Birthday,Zi de naștere angajat,
Employee Information,Informații angajat,
Employee Leave Balance,Bilant Concediu Angajat,
Employee Leave Balance Summary,Rezumatul soldului concediilor angajaților,
Eway Bill,Eway Bill,
Expiring Memberships,Expirarea calității de membru,
Fichier des Ecritures Comptables [FEC],Fichier des Ecritures Comptabile [FEC],
Final Assessment Grades,Evaluări finale,
Fixed Asset Register,Registrul activelor fixe,
Gross and Net Profit Report,Raport de profit brut și net,
GST Itemised Purchase Register,GST Registrul achiziționărilor detaliate,
GST Itemised Sales Register,Registrul de vânzări detaliat GST,
GST Purchase Register,Registrul achizițiilor GST,
GST Sales Register,Registrul vânzărilor GST,
GSTR-1,GSTR-1,
GSTR-2,GSTR-2,
Hotel Room Occupancy,Hotel Ocuparea camerei,
HSN-wise-summary of outward supplies,Rezumatul HSN pentru rezervele exterioare,
Inactive Customers,Clienții inactive,
Inactive Sales Items,Articole de vânzare inactive,
IRS 1099,IRS 1099,
Issued Items Against Work Order,Articole emise împotriva comenzii de lucru,
Projected Quantity as Source,Cantitatea ca sursă proiectată,
Item Balance (Simple),Balanța postului (simplă),
Item Price Stock,Preț Stoc Articol,
Item Prices,Preturi Articol,
Item Shortage Report,Raport Articole Lipsa,
Item Variant Details,Element Variant Details,
Item-wise Price List Rate,Rata Lista de Pret Articol-Avizat,
Item-wise Purchase History,Istoric Achizitii Articol-Avizat,
Item-wise Purchase Register,Registru Achizitii Articol-Avizat,
Item-wise Sales History,Istoric Vanzari Articol-Avizat,
Item-wise Sales Register,Registru Vanzari Articol-Avizat,
Items To Be Requested,Articole care vor fi solicitate,
Reserved,Rezervat,
Itemwise Recommended Reorder Level,Nivel de Reordonare Recomandat al Articolului-Awesome,
Lead Details,Detalii Pistă,
Lead Owner Efficiency,Lead Efficiency Owner,
Lost Opportunity,Oportunitate pierdută,
Maintenance Schedules,Program de Mentenanta,
Material Requests for which Supplier Quotations are not created,Cererile de materiale pentru care nu sunt create Cotațiile Furnizor,
Open Work Orders,Deschideți comenzile de lucru,
Qty to Deliver,Cantitate pentru a oferi,
Patient Appointment Analytics,Analiza programării pacientului,
Payment Period Based On Invoice Date,Perioada de plată Bazat pe Data facturii,
Pending SO Items For Purchase Request,Până la SO articole pentru cerere de oferta,
Procurement Tracker,Urmărirea achizițiilor,
Product Bundle Balance,Soldul pachetului de produse,
Production Analytics,Google Analytics de producție,
Profit and Loss Statement,Profit și pierdere,
Profitability Analysis,Analiza profitabilității,
Project Billing Summary,Rezumatul facturării proiectului,
Project wise Stock Tracking,Urmărirea proiectului în funcție de stoc,
Project wise Stock Tracking ,Proiect înțelept Tracking Stock,
Prospects Engaged But Not Converted,Perspective implicate dar nu convertite,
Purchase Analytics,Analytics de cumpărare,
Purchase Invoice Trends,Cumpărare Tendințe factură,
Qty to Receive,Cantitate de a primi,
Received Qty Amount,Suma de cantitate primită,
Billed Qty,Qty facturat,
Purchase Order Trends,Comandă de aprovizionare Tendințe,
Purchase Receipt Trends,Tendințe Primirea de cumpărare,
Purchase Register,Cumpărare Inregistrare,
Quotation Trends,Cotație Tendințe,
Received Items To Be Billed,Articole primite Pentru a fi facturat,
Qty to Order,Cantitate pentru comandă,
Requested Items To Be Transferred,Articole solicitate de transferat,
Qty to Transfer,Cantitate de a transfera,
Sales Analytics,Analitice de vânzare,
Sales Invoice Trends,Vânzări Tendințe factură,
Sales Order Trends,Vânzări Ordine Tendințe,
Sales Partner Commission Summary,Rezumatul Comisiei partenere de vânzări,
Sales Partner Target Variance based on Item Group,Varianța de țintă a partenerilor de vânzări bazată pe grupul de articole,
Sales Partner Transaction Summary,Rezumat tranzacție partener vânzări,
Sales Partners Commission,Comision Agenţi Vânzări,
Invoiced Amount (Exclusive Tax),Suma facturată (taxă exclusivă),
Average Commission Rate,Rată de comision medie,
Sales Payment Summary,Rezumatul plăților pentru vânzări,
Sales Person Commission Summary,Persoana de vânzări Rezumat al Comisiei,
Sales Person Target Variance Based On Item Group,Vânzarea persoanei de vânzare Varianța bazată pe grupul de articole,
Sales Person-wise Transaction Summary,Persoana de vânzări-înțelept Rezumat Transaction,
Sales Register,Vânzări Inregistrare,
Serial No Service Contract Expiry,Serial Nu Service Contract de expirare,
Serial No Status,Serial Nu Statut,
Serial No Warranty Expiry,Serial Nu Garantie pana,
Stock Ageing,Stoc Îmbătrânirea,
Stock and Account Value Comparison,Comparația valorilor stocurilor și conturilor,
Stock Projected Qty,Stoc proiectată Cantitate,
Student and Guardian Contact Details,Student și Guardian Detalii de contact,
Student Batch-Wise Attendance,Lot-înțelept elev Participarea,
Student Fee Collection,Taxa de student Colectia,
Student Monthly Attendance Sheet,Elev foaia de prezență lunară,
Subcontracted Item To Be Received,Articol subcontractat care trebuie primit,
Subcontracted Raw Materials To Be Transferred,Materii prime subcontractate care trebuie transferate,
Supplier Ledger Summary,Rezumat evidență furnizor,
Supplier-Wise Sales Analytics,Furnizor înțelept Vânzări Analytics,
Support Hour Distribution,Distribuția orelor de distribuție,
TDS Computation Summary,Rezumatul TDS de calcul,
TDS Payable Monthly,TDS plătibil lunar,
Territory Target Variance Based On Item Group,Varianța țintă de teritoriu pe baza grupului de articole,
Territory-wise Sales,Vânzări înțelese teritoriul,
Total Stock Summary,Rezumatul Total al Stocului,
Trial Balance,Balanta,
Trial Balance (Simple),Soldul de încercare (simplu),
Trial Balance for Party,Trial Balance pentru Party,
Warehouse wise Item Balance Age and Value,Warehouse wise Item Balance Age și Value,
Work Order Stock Report,Raport de stoc pentru comanda de lucru,
Work Orders in Progress,Ordine de lucru în curs,
Automatically Process Deferred Accounting Entry,Procesați automat intrarea contabilă amânată,
Bank Clearance,Clearance bancar,
Bank Clearance Detail,Detaliu de lichidare bancară,
Update Cost Center Name / Number,Actualizați numele / numărul centrului de costuri,
Journal Entry Template,Șablon de intrare în jurnal,
Template Title,Titlul șablonului,
Journal Entry Type,Tipul intrării în jurnal,
Journal Entry Template Account,Cont șablon de intrare în jurnal,
Process Deferred Accounting,Procesul de contabilitate amânată,
Manual entry cannot be created! Disable automatic entry for deferred accounting in accounts settings and try again,Intrarea manuală nu poate fi creată! Dezactivați intrarea automată pentru contabilitatea amânată în setările conturilor și încercați din nou,
End date cannot be before start date,Data de încheiere nu poate fi înainte de data de începere,
Total Counts Targeted,Numărul total vizat,
Total Counts Completed,Numărul total finalizat,
Counts Targeted: {0},Număruri vizate: {0},
Material Request Warehouse,Depozit cerere material,
Select warehouse for material requests,Selectați depozitul pentru solicitări de materiale,
Transfer Materials For Warehouse {0},Transfer de materiale pentru depozit {0},
Production Plan Material Request Warehouse,Plan de producție Cerere de materiale Depozit,
Sets 'Source Warehouse' in each row of the items table.,Setează „Depozit sursă” în fiecare rând al tabelului cu articole.,
Sets 'Target Warehouse' in each row of the items table.,Setează „Depozit țintă” în fiecare rând al tabelului cu articole.,
Show Cancelled Entries,Afișați intrările anulate,
Backdated Stock Entry,Intrare de stoc actualizată,
Row #{}: Currency of {} - {} doesn't matches company currency.,Rândul # {}: moneda {} - {} nu se potrivește cu moneda companiei.,
{} Assets created for {},{} Active create pentru {},
{0} Number {1} is already used in {2} {3},{0} Numărul {1} este deja utilizat în {2} {3},
Update Bank Clearance Dates,Actualizați datele de compensare bancară,
Healthcare Practitioner: ,Practician medical:,
Lab Test Conducted: ,Test de laborator efectuat:,
Lab Test Event: ,Eveniment de test de laborator:,
Lab Test Result: ,Rezultatul testului de laborator:,
Clinical Procedure conducted: ,Procedura clinică efectuată:,
Therapy Session Charges: {0},Taxe pentru sesiunea de terapie: {0},
Therapy: ,Terapie:,
Therapy Plan: ,Planul de terapie:,
Total Counts Targeted: ,Număruri totale vizate:,
Total Counts Completed: ,Numărul total finalizat:,
Is Mandatory,Este obligatoriu,
Service Received But Not Billed,"Serviciu primit, dar nu facturat",
Deferred Accounting Settings,Setări de contabilitate amânate,
Book Deferred Entries Based On,Rezervați intrări amânate pe baza,
Days,Zile,
Months,Luni,
Book Deferred Entries Via Journal Entry,Rezervați intrări amânate prin intrarea în jurnal,
Submit Journal Entries,Trimiteți intrări în jurnal,
If this is unchecked Journal Entries will be saved in a Draft state and will have to be submitted manually,"Dacă aceasta nu este bifată, jurnalele vor fi salvate într-o stare de schiță și vor trebui trimise manual",
Enable Distributed Cost Center,Activați Centrul de cost distribuit,
Distributed Cost Center,Centrul de cost distribuit,
Dunning,Poftă,
DUNN-.MM.-.YY.-,DUNN-.MM .-. YY.-,
Overdue Days,Zile restante,
Dunning Type,Tipul Dunning,
Dunning Fee,Taxă Dunning,
Dunning Amount,Suma Dunning,
Resolved,S-a rezolvat,
Unresolved,Nerezolvat,
Printing Setting,Setare imprimare,
Body Text,Corpul textului,
Closing Text,Text de închidere,
Resolve,Rezolva,
Dunning Letter Text,Text scrisoare Dunning,
Is Default Language,Este limba implicită,
Letter or Email Body Text,Text pentru corp scrisoare sau e-mail,
Letter or Email Closing Text,Text de închidere prin scrisoare sau e-mail,
Body and Closing Text Help,Ajutor pentru corp și text de închidere,
Overdue Interval,Interval întârziat,
Dunning Letter,Scrisoare Dunning,
"This section allows the user to set the Body and Closing text of the Dunning Letter for the Dunning Type based on language, which can be used in Print.","Această secțiune permite utilizatorului să seteze corpul și textul de închidere al Scrisorii Dunning pentru tipul Dunning în funcție de limbă, care poate fi utilizat în Tipărire.",
Reference Detail No,Nr. Detalii referință,
Custom Remarks,Observații personalizate,
Please select a Company first.,Vă rugăm să selectați mai întâi o companie.,
"Row #{0}: Reference Document Type must be one of Sales Order, Sales Invoice, Journal Entry or Dunning","Rândul # {0}: tipul documentului de referință trebuie să fie unul dintre Comanda de vânzări, Factura de vânzări, Înregistrarea jurnalului sau Sarcina",
POS Closing Entry,Intrare de închidere POS,
POS Opening Entry,Intrare de deschidere POS,
POS Transactions,Tranzacții POS,
POS Closing Entry Detail,Detaliu intrare închidere POS,
Opening Amount,Suma de deschidere,
Closing Amount,Suma de închidere,
POS Closing Entry Taxes,Taxe de intrare POS închidere,
POS Invoice,Factură POS,
ACC-PSINV-.YYYY.-,ACC-PSINV-.YYYY.-,
Consolidated Sales Invoice,Factură de vânzări consolidată,
Return Against POS Invoice,Reveniți împotriva facturii POS,
Consolidated,Consolidat,
POS Invoice Item,Articol factură POS,
POS Invoice Merge Log,Jurnal de îmbinare a facturilor POS,
POS Invoices,Facturi POS,
Consolidated Credit Note,Nota de credit consolidată,
POS Invoice Reference,Referință factură POS,
Set Posting Date,Setați data de înregistrare,
Opening Balance Details,Detalii sold deschidere,
POS Opening Entry Detail,Detaliu intrare deschidere POS,
POS Payment Method,Metoda de plată POS,
Payment Methods,Metode de plata,
Process Statement Of Accounts,Procesul de situație a conturilor,
General Ledger Filters,Filtre majore,
Customers,Clienți,
Select Customers By,Selectați Clienți după,
Fetch Customers,Aduceți clienții,
Send To Primary Contact,Trimiteți la contactul principal,
Print Preferences,Preferințe de imprimare,
Include Ageing Summary,Includeți rezumatul îmbătrânirii,
Enable Auto Email,Activați e-mailul automat,
Filter Duration (Months),Durata filtrului (luni),
CC To,CC To,
Help Text,Text de ajutor,
Emails Queued,E-mailuri la coadă,
Process Statement Of Accounts Customer,Procesul extras de cont client,
Billing Email,E-mail de facturare,
Primary Contact Email,E-mail de contact principal,
PSOA Cost Center,Centrul de cost PSOA,
PSOA Project,Proiectul PSOA,
ACC-PINV-RET-.YYYY.-,ACC-PINV-RET-.YYYY.-,
Supplier GSTIN,Furnizor GSTIN,
Place of Supply,Locul aprovizionării,
Select Billing Address,Selectați Adresa de facturare,
GST Details,Detalii GST,
GST Category,Categoria GST,
Registered Regular,Înregistrat regulat,
Registered Composition,Compoziție înregistrată,
Unregistered,Neînregistrat,
SEZ,SEZ,
Overseas,De peste mări,
UIN Holders,Titulari UIN,
With Payment of Tax,Cu plata impozitului,
Without Payment of Tax,Fără plata impozitului,
Invoice Copy,Copie factură,
Original for Recipient,Original pentru Destinatar,
Duplicate for Transporter,Duplicat pentru Transporter,
Duplicate for Supplier,Duplicat pentru furnizor,
Triplicate for Supplier,Triplicat pentru furnizor,
Reverse Charge,Taxare inversă,
Y,Da,
N,N,
E-commerce GSTIN,Comerț electronic GSTIN,
Reason For Issuing document,Motivul eliberării documentului,
01-Sales Return,01-Returnarea vânzărilor,
02-Post Sale Discount,02-Reducere după vânzare,
03-Deficiency in services,03-Deficiența serviciilor,
04-Correction in Invoice,04-Corecție în factură,
05-Change in POS,05-Modificare POS,
06-Finalization of Provisional assessment,06-Finalizarea evaluării provizorii,
07-Others,07-Altele,
Eligibility For ITC,Eligibilitate pentru ITC,
Input Service Distributor,Distribuitor de servicii de intrare,
Import Of Service,Importul serviciului,
Import Of Capital Goods,Importul de bunuri de capital,
Ineligible,Neeligibil,
All Other ITC,Toate celelalte ITC,
Availed ITC Integrated Tax,Taxă integrată ITC disponibilă,
Availed ITC Central Tax,Taxă centrală ITC disponibilă,
Availed ITC State/UT Tax,Impozit ITC de stat / UT disponibil,
Availed ITC Cess,Cess ITC disponibil,
Is Nil Rated or Exempted,Este evaluat zero sau scutit,
Is Non GST,Nu este GST,
ACC-SINV-RET-.YYYY.-,ACC-SINV-RET-.YYYY.-,
E-Way Bill No.,E-Way Bill nr.,
Is Consolidated,Este consolidat,
Billing Address GSTIN,Adresa de facturare GSTIN,
Customer GSTIN,Client GSTIN,
GST Transporter ID,ID GST Transporter,
Distance (in km),Distanță (în km),
Road,drum,
Air,Aer,
Rail,Feroviar,
Ship,Navă,
GST Vehicle Type,Tipul vehiculului GST,
Over Dimensional Cargo (ODC),Marfă supradimensională (ODC),
Consumer,Consumator,
Deemed Export,Export estimat,
Port Code,Cod port,
 Shipping Bill Number,Numărul facturii de expediere,
Shipping Bill Date,Data facturii de expediere,
Subscription End Date,Data de încheiere a abonamentului,
Follow Calendar Months,Urmăriți lunile calendaristice,
If this is checked subsequent new invoices will be created on calendar  month and quarter start dates irrespective of current invoice start date,"Dacă se verifică acest lucru, vor fi create noi facturi ulterioare în lunile calendaristice și în datele de începere a trimestrului, indiferent de data curentă de începere a facturii",
Generate New Invoices Past Due Date,Generați facturi noi la scadență,
New invoices will be generated as per schedule even if current invoices are unpaid or past due date,"Facturile noi vor fi generate conform programului, chiar dacă facturile curente sunt neplătite sau sunt scadente",
Document Type ,Tipul documentului,
Subscription Price Based On,Prețul abonamentului pe baza,
Fixed Rate,Rata fixa,
Based On Price List,Pe baza listei de prețuri,
Monthly Rate,Rată lunară,
Cancel Subscription After Grace Period,Anulați abonamentul după perioada de grație,
Source State,Statul sursă,
Is Inter State,Este statul Inter,
Purchase Details,Detalii achiziție,
Depreciation Posting Date,Data înregistrării amortizării,
"By default, the Supplier Name is set as per the Supplier Name entered. If you want Suppliers to be named by a  ","În mod implicit, numele furnizorului este setat conform numelui furnizorului introdus. Dacă doriți ca Furnizorii să fie numiți de către un",
 choose the 'Naming Series' option.,alegeți opțiunea „Denumirea seriei”.,
Configure the default Price List when creating a new Purchase transaction. Item prices will be fetched from this Price List.,Configurați lista de prețuri implicită atunci când creați o nouă tranzacție de cumpărare. Prețurile articolelor vor fi preluate din această listă de prețuri.,
"If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice or Receipt without creating a Purchase Order first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Order' checkbox in the Supplier master.","Dacă această opțiune este configurată „Da”, ERPNext vă va împiedica să creați o factură de achiziție sau o chitanță fără a crea mai întâi o comandă de cumpărare. Această configurație poate fi anulată pentru un anumit furnizor activând caseta de selectare „Permite crearea facturii de cumpărare fără comandă de cumpărare” din masterul furnizorului.",
"If this option is configured 'Yes', ERPNext will prevent you from creating a Purchase Invoice without creating a Purchase Receipt first. This configuration can be overridden for a particular supplier by enabling the 'Allow Purchase Invoice Creation Without Purchase Receipt' checkbox in the Supplier master.","Dacă această opțiune este configurată „Da”, ERPNext vă va împiedica să creați o factură de cumpărare fără a crea mai întâi o chitanță de cumpărare. Această configurație poate fi suprascrisă pentru un anumit furnizor activând caseta de selectare „Permite crearea facturii de cumpărare fără chitanță de cumpărare” din masterul furnizorului.",
Quantity & Stock,Cantitate și stoc,
Call Details,Detalii apel,
Authorised By,Autorizat de,
Signee (Company),Destinatar (companie),
Signed By (Company),Semnat de (Companie),
First Response Time,Timpul primului răspuns,
Request For Quotation,Cerere de ofertă,
Opportunity Lost Reason Detail,Detaliu despre motivul pierdut al oportunității,
Access Token Secret,Accesează Token Secret,
Add to Topics,Adăugați la subiecte,
...Adding Article to Topics,... Adăugarea articolului la subiecte,
Add Article to Topics,Adăugați un articol la subiecte,
This article is already added to the existing topics,Acest articol este deja adăugat la subiectele existente,
Add to Programs,Adăugați la Programe,
Programs,Programe,
...Adding Course to Programs,... Adăugarea cursului la programe,
Add Course to Programs,Adăugați cursul la programe,
This course is already added to the existing programs,Acest curs este deja adăugat la programele existente,
Learning Management System Settings,Setările sistemului de management al învățării,
Enable Learning Management System,Activați sistemul de gestionare a învățării,
Learning Management System Title,Titlul sistemului de management al învățării,
...Adding Quiz to Topics,... Adăugarea testului la subiecte,
Add Quiz to Topics,Adăugați test la subiecte,
This quiz is already added to the existing topics,Acest test este deja adăugat la subiectele existente,
Enable Admission Application,Activați cererea de admitere,
EDU-ATT-.YYYY.-,EDU-ATT-.YYYY.-,
Marking attendance,Marcarea prezenței,
Add Guardians to Email Group,Adăugați Gardieni în grupul de e-mail,
Attendance Based On,Prezență bazată pe,
Check this to mark the student as present in case the student is not attending the institute to participate or represent the institute in any event.\n\n,Bifați acest lucru pentru a marca studentul ca prezent în cazul în care studentul nu participă la institut pentru a participa sau pentru a reprezenta institutul în orice caz.,
Add to Courses,Adăugați la Cursuri,
...Adding Topic to Courses,... Adăugarea subiectului la cursuri,
Add Topic to Courses,Adăugați subiect la cursuri,
This topic is already added to the existing courses,Acest subiect este deja adăugat la cursurile existente,
"If Shopify does not have a customer in the order, then while syncing the orders, the system will consider the default customer for the order","Dacă Shopify nu are un client în comandă, atunci în timp ce sincronizează comenzile, sistemul va lua în considerare clientul implicit pentru comandă",
The accounts are set by the system automatically but do confirm these defaults,"Conturile sunt setate automat de sistem, dar confirmă aceste valori implicite",
Default Round Off Account,Cont implicit rotunjit,
Failed Import Log,Jurnal de importare eșuat,
Fixed Error Log,S-a remediat jurnalul de erori,
Company {0} already exists. Continuing will overwrite the Company and Chart of Accounts,Compania {0} există deja. Continuarea va suprascrie compania și planul de conturi,
Meta Data,Meta Date,
Unresolve,Nerezolvat,
Create Document,Creați document,
Mark as unresolved,Marcați ca nerezolvat,
TaxJar Settings,Setări TaxJar,
Sandbox Mode,Mod Sandbox,
Enable Tax Calculation,Activați calculul impozitului,
Create TaxJar Transaction,Creați tranzacția TaxJar,
Credentials,Acreditări,
Live API Key,Cheie API live,
Sandbox API Key,Cheia API Sandbox,
Configuration,Configurare,
Tax Account Head,Șef cont fiscal,
Shipping Account Head,Șef cont de expediere,
Practitioner Name,Numele practicianului,
Enter a name for the Clinical Procedure Template,Introduceți un nume pentru șablonul de procedură clinică,
Set the Item Code which will be used for billing the Clinical Procedure.,Setați codul articolului care va fi utilizat pentru facturarea procedurii clinice.,
Select an Item Group for the Clinical Procedure Item.,Selectați un grup de articole pentru articolul de procedură clinică.,
Clinical Procedure Rate,Rata procedurii clinice,
Check this if the Clinical Procedure is billable and also set the rate.,"Verificați acest lucru dacă procedura clinică este facturabilă și, de asemenea, setați rata.",
Check this if the Clinical Procedure utilises consumables. Click ,Verificați acest lucru dacă procedura clinică utilizează consumabile. Clic,
 to know more,să afle mai multe,
"You can also set the Medical Department for the template. After saving the document, an Item will automatically be created for billing this Clinical Procedure. You can then use this template while creating Clinical Procedures for Patients. Templates save you from filling up redundant data every single time. You can also create templates for other operations like Lab Tests, Therapy Sessions, etc.","De asemenea, puteți seta Departamentul medical pentru șablon. După salvarea documentului, un articol va fi creat automat pentru facturarea acestei proceduri clinice. Puteți utiliza apoi acest șablon în timp ce creați proceduri clinice pentru pacienți. Șabloanele vă scutesc de la completarea datelor redundante de fiecare dată. De asemenea, puteți crea șabloane pentru alte operații precum teste de laborator, sesiuni de terapie etc.",
Descriptive Test Result,Rezultatul testului descriptiv,
Allow Blank,Permiteți golul,
Descriptive Test Template,Șablon de test descriptiv,
"If you want to track Payroll and other HRMS operations for a Practitoner, create an Employee and link it here.","Dacă doriți să urmăriți salarizarea și alte operațiuni HRMS pentru un practician, creați un angajat și conectați-l aici.",
Set the Practitioner Schedule you just created. This will be used while booking appointments.,Setați programul de practicanți pe care tocmai l-ați creat. Aceasta va fi utilizată la rezervarea programărilor.,
Create a service item for Out Patient Consulting.,Creați un element de serviciu pentru consultarea externă a pacienților.,
"If this Healthcare Practitioner works for the In-Patient Department, create a service item for Inpatient Visits.","Dacă acest profesionist din domeniul sănătății lucrează pentru departamentul internat, creați un articol de servicii pentru vizitele internate.",
Set the Out Patient Consulting Charge for this Practitioner.,Stabiliți taxa pentru consultarea pacientului pentru acest practicant.,
"If this Healthcare Practitioner also works for the In-Patient Department, set the inpatient visit charge for this Practitioner.","În cazul în care acest profesionist din domeniul sănătății lucrează și pentru secția de internare, stabiliți taxa de vizitare pentru acest practician.",
"If checked, a customer will be created for every Patient. Patient Invoices will be created against this Customer. You can also select existing Customer while creating a Patient. This field is checked by default.","Dacă este bifat, va fi creat un client pentru fiecare pacient. Facturile pacientului vor fi create împotriva acestui client. De asemenea, puteți selecta clientul existent în timp ce creați un pacient. Acest câmp este bifat implicit.",
Collect Registration Fee,Încasează taxa de înregistrare,
"If your Healthcare facility bills registrations of Patients, you can check this and set the Registration Fee in the field below. Checking this will create new Patients with a Disabled status by default and will only be enabled after invoicing the Registration Fee.","Dacă unitatea medicală facturează înregistrările pacienților, puteți verifica acest lucru și puteți stabili taxa de înregistrare în câmpul de mai jos. Verificând acest lucru se vor crea noi pacienți cu starea Dezactivat în mod implicit și vor fi activate numai după facturarea Taxei de înregistrare.",
Checking this will automatically create a Sales Invoice whenever an appointment is booked for a Patient.,Verificarea acestui lucru va crea automat o factură de vânzare ori de câte ori este rezervată o întâlnire pentru un pacient.,
Healthcare Service Items,Produse pentru servicii medicale,
"You can create a service item for Inpatient Visit Charge and set it here. Similarly, you can set up other Healthcare Service Items for billing in this section. Click ","Puteți crea un articol de serviciu pentru taxa de vizită internată și setați-l aici. În mod similar, puteți configura alte elemente de servicii medicale pentru facturare în această secțiune. Clic",
Set up default Accounts for the Healthcare Facility,Configurați conturi implicite pentru unitatea medicală,
"If you wish to override default accounts settings and configure the Income and Receivable accounts for Healthcare, you can do so here.","Dacă doriți să înlocuiți setările implicite ale conturilor și să configurați conturile de venituri și creanțe pentru asistență medicală, puteți face acest lucru aici.",
Out Patient SMS alerts,Alerte SMS pentru pacienți,
"If you want to send SMS alert on Patient Registration, you can enable this option. Similary, you can set up Out Patient SMS alerts for other functionalities in this section. Click ","Dacă doriți să trimiteți alertă SMS la înregistrarea pacientului, puteți activa această opțiune. În mod similar, puteți configura alerte SMS pentru pacient pentru alte funcționalități în această secțiune. Clic",
Admission Order Details,Detalii comandă de admitere,
Admission Ordered For,Admiterea comandată pentru,
Expected Length of Stay,Durata de ședere preconizată,
Admission Service Unit Type,Tipul unității de servicii de admitere,
Healthcare Practitioner (Primary),Practician medical (primar),
Healthcare Practitioner (Secondary),Practician medical (secundar),
Admission Instruction,Instrucțiuni de admitere,
Chief Complaint,Plângere șefă,
Medications,Medicamente,
Investigations,Investigații,
Discharge Detials,Detalii de descărcare,
Discharge Ordered Date,Data comandării descărcării,
Discharge Instructions,Instrucțiuni de descărcare de gestiune,
Follow Up Date,Data de urmărire,
Discharge Notes,Note de descărcare de gestiune,
Processing Inpatient Discharge,Procesarea externării internate,
Processing Patient Admission,Procesarea admiterii pacientului,
Check-in time cannot be greater than the current time,Ora de check-in nu poate fi mai mare decât ora curentă,
Process Transfer,Transfer de proces,
HLC-LAB-.YYYY.-,HLC-LAB-.YYYY.-,
Expected Result Date,Data rezultatului așteptat,
Expected Result Time,Timp de rezultat așteptat,
Printed on,Tipărit pe,
Requesting Practitioner,Practician solicitant,
Requesting Department,Departamentul solicitant,
Employee (Lab Technician),Angajat (tehnician de laborator),
Lab Technician Name,Numele tehnicianului de laborator,
Lab Technician Designation,Desemnarea tehnicianului de laborator,
Compound Test Result,Rezultatul testului compus,
Organism Test Result,Rezultatul testului de organism,
Sensitivity Test Result,Rezultatul testului de sensibilitate,
Worksheet Print,Imprimare foaie de lucru,
Worksheet Instructions,Instrucțiuni pentru foaia de lucru,
Result Legend Print,Imprimare legendă rezultat,
Print Position,Poziția de imprimare,
Both,Ambii,
Result Legend,Legenda rezultatului,
Lab Tests,Teste de laborator,
No Lab Tests found for the Patient {0},Nu s-au găsit teste de laborator pentru pacient {0},
"Did not send SMS, missing patient mobile number or message content.","Nu am trimis SMS-uri, lipsă numărul de mobil al pacientului sau conținutul mesajului.",
No Lab Tests created,Nu au fost create teste de laborator,
Creating Lab Tests...,Se creează teste de laborator ...,
Lab Test Group Template,Șablon de grup de test de laborator,
Add New Line,Adăugați o linie nouă,
Secondary UOM,UOM secundar,
"<b>Single</b>: Results which require only a single input.\n<br>\n<b>Compound</b>: Results which require multiple event inputs.\n<br>\n<b>Descriptive</b>: Tests which have multiple result components with manual result entry.\n<br>\n<b>Grouped</b>: Test templates which are a group of other test templates.\n<br>\n<b>No Result</b>: Tests with no results, can be ordered and billed but no Lab Test will be created. e.g.. Sub Tests for Grouped results","<b>Single</b> : Rezultate care necesită o singură intrare.<br> <b>Compus</b> : Rezultate care necesită mai multe intrări de evenimente.<br> <b>Descriptiv</b> : teste care au mai multe componente ale rezultatelor cu introducerea manuală a rezultatelor.<br> <b>Grupate</b> : șabloane de testare care sunt un grup de alte șabloane de testare.<br> <b>Niciun rezultat</b> : testele fără rezultate, pot fi comandate și facturate, dar nu va fi creat niciun test de laborator. de exemplu. Subteste pentru rezultate grupate",
"If unchecked, the item will not be available in Sales Invoices for billing but can be used in group test creation. ","Dacă nu este bifat, articolul nu va fi disponibil în facturile de vânzare pentru facturare, dar poate fi utilizat la crearea testului de grup.",
Description ,Descriere,
Descriptive Test,Test descriptiv,
Group Tests,Teste de grup,
Instructions to be printed on the worksheet,Instrucțiuni care trebuie tipărite pe foaia de lucru,
"Information to help easily interpret the test report, will be printed as part of the Lab Test result.",Informațiile care vor ajuta la interpretarea cu ușurință a raportului de testare vor fi tipărite ca parte a rezultatului testului de laborator.,
Normal Test Result,Rezultat normal al testului,
Secondary UOM Result,Rezultatul UOM secundar,
Italic,Cursiv,
Underline,Subliniați,
Organism,Organism,
Organism Test Item,Element de testare a organismului,
Colony Population,Populația coloniei,
Colony UOM,Colonia UOM,
Tobacco Consumption (Past),Consumul de tutun (trecut),
Tobacco Consumption (Present),Consumul de tutun (Prezent),
Alcohol Consumption (Past),Consumul de alcool (trecut),
Alcohol Consumption (Present),Consumul de alcool (prezent),
Billing Item,Articol de facturare,
Medical Codes,Coduri medicale,
Clinical Procedures,Proceduri clinice,
Order Admission,Admiterea comenzii,
Scheduling Patient Admission,Programarea admiterii pacientului,
Order Discharge,Descărcare comandă,
Sample Details,Detalii mostre,
Collected On,Colectat pe,
No. of prints,Nr. De amprente,
Number of prints required for labelling the samples,Numărul de tipăriri necesare pentru etichetarea probelor,
HLC-VTS-.YYYY.-,HLC-VTS-.YYYY.-,
Payroll Cost Center,Centru de salarizare,
Approvers,Aprobatori,
The first Approver in the list will be set as the default Approver.,Primul aprobator din listă va fi setat ca aprobator implicit.,
Shift Request Approver,Aprobarea cererii de schimbare,
Provident Fund Account,Contul Fondului Provident,
MICR Code,Cod MICR,
Repay unclaimed amount from salary,Rambursați suma nepreluată din salariu,
Deduction from salary,Deducerea din salariu,
If this is not checked the loan by default will be considered as a Demand Loan,"Dacă acest lucru nu este verificat, împrumutul implicit va fi considerat un împrumut la cerere",
This account is used for booking loan repayments from the borrower and also disbursing loans to the borrower,"Acest cont este utilizat pentru rezervarea rambursărilor de împrumut de la împrumutat și, de asemenea, pentru a plăti împrumuturi către împrumutat",
This account is capital account which is used to allocate capital for loan disbursal account ,Acest cont este un cont de capital care este utilizat pentru alocarea de capital pentru contul de debursare a împrumutului,
This account will be used for booking loan interest accruals,Acest cont va fi utilizat pentru rezervarea dobânzilor la dobândă de împrumut,
This account will be used for booking penalties levied due to delayed repayments,Acest cont va fi utilizat pentru rezervarea penalităților percepute din cauza rambursărilor întârziate,
Variant BOM,Varianta DOM,
Template Item,Articol șablon,
Select template item,Selectați elementul șablon,
Select variant item code for the template item {0},Selectați varianta codului articolului pentru elementul șablon {0},
Downtime Entry,Intrare în timp de inactivitate,
DT-,DT-,
Workstation / Machine,Stație de lucru / Mașină,
Operator,Operator,
In Mins,În minele,
Downtime Reason,Motivul opririi,
Stop Reason,Stop Reason,
Excessive machine set up time,Timp excesiv de configurare a mașinii,
Unplanned machine maintenance,Întreținerea neplanificată a mașinii,
On-machine press checks,Verificări de presă la mașină,
Machine operator errors,Erori operator operator,
Machine malfunction,Funcționarea defectuoasă a mașinii,
Electricity down,Electricitate scăzută,
Operation Row Number,Număr rând operațiune,
Operation {0} added multiple times in the work order {1},Operația {0} adăugată de mai multe ori în ordinea de lucru {1},
"If ticked, multiple materials can be used for a single Work Order. This is useful if one or more time consuming products are being manufactured.","Dacă este bifat, mai multe materiale pot fi utilizate pentru o singură comandă de lucru. Acest lucru este util dacă sunt fabricate unul sau mai multe produse consumatoare de timp.",
Backflush Raw Materials,Materii prime Backflush,
"The Stock Entry of type 'Manufacture' is known as backflush. Raw materials being consumed to manufacture finished goods is known as backflushing. <br><br> When creating Manufacture Entry, raw-material items are backflushed based on BOM of production item. If you want raw-material items to be backflushed based on Material Transfer entry made against that Work Order instead, then you can set it under this field.","Intrarea în stoc a tipului „Fabricare” este cunoscută sub numele de backflush. Materiile prime consumate pentru fabricarea produselor finite sunt cunoscute sub numele de backflushing.<br><br> La crearea intrării în fabricație, articolele din materie primă sunt revocate pe baza BOM a articolului de producție. Dacă doriți ca elementele din materie primă să fie revocate în funcție de intrarea de transfer de materiale efectuată împotriva respectivei comenzi de lucru, atunci o puteți seta în acest câmp.",
Work In Progress Warehouse,Depozit Work In Progress,
This Warehouse will be auto-updated in the Work In Progress Warehouse field of Work Orders.,Acest depozit va fi actualizat automat în câmpul Depozit de lucru în curs al comenzilor de lucru.,
Finished Goods Warehouse,Depozit de produse finite,
This Warehouse will be auto-updated in the Target Warehouse field of Work Order.,Acest depozit va fi actualizat automat în câmpul Depozit țintă din Ordinul de lucru.,
"If ticked, the BOM cost will be automatically updated based on Valuation Rate / Price List Rate / last purchase rate of raw materials.","Dacă este bifat, costul BOM va fi actualizat automat în funcție de rata de evaluare / rata de listă de prețuri / ultima rată de achiziție a materiilor prime.",
Source Warehouses (Optional),Depozite sursă (opțional),
"System will pickup the materials from the selected warehouses. If not specified, system will create material request for purchase.","Sistemul va prelua materialele din depozitele selectate. Dacă nu este specificat, sistemul va crea o cerere materială pentru cumpărare.",
Lead Time,Perioada de grație,
PAN Details,Detalii PAN,
Create Customer,Creați client,
Invoicing,Facturare,
Enable Auto Invoicing,Activați facturarea automată,
Send Membership Acknowledgement,Trimiteți confirmarea de membru,
Send Invoice with Email,Trimiteți factura prin e-mail,
Membership Print Format,Formatul de tipărire a calității de membru,
Invoice Print Format,Format de imprimare factură,
Revoke <Key></Key>,Revoca&lt;Key&gt;&lt;/Key&gt;,
You can learn more about memberships in the manual. ,Puteți afla mai multe despre abonamente în manual.,
ERPNext Docs,Documente ERPNext,
Regenerate Webhook Secret,Regenerați secretul Webhook,
Generate Webhook Secret,Generați Webhook Secret,
Copy Webhook URL,Copiați adresa URL Webhook,
Linked Item,Element conectat,
Feedback By,Feedback de,
Manufacturing Section,Secțiunea de fabricație,
"By default, the Customer Name is set as per the Full Name entered. If you want Customers to be named by a ","În mod implicit, Numele clientului este setat conform Numelui complet introdus. Dacă doriți ca clienții să fie numiți de un",
Configure the default Price List when creating a new Sales transaction. Item prices will be fetched from this Price List.,Configurați lista de prețuri implicită atunci când creați o nouă tranzacție de vânzări. Prețurile articolelor vor fi preluate din această listă de prețuri.,
"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice or Delivery Note without creating a Sales Order first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Sales Order' checkbox in the Customer master.","Dacă această opțiune este configurată „Da”, ERPNext vă va împiedica să creați o factură de vânzare sau o notă de livrare fără a crea mai întâi o comandă de vânzare. Această configurație poate fi anulată pentru un anumit Client activând caseta de selectare „Permite crearea facturii de vânzare fără comandă de vânzare” din masterul Clientului.",
"If this option is configured 'Yes', ERPNext will prevent you from creating a Sales Invoice without creating a Delivery Note first. This configuration can be overridden for a particular Customer by enabling the 'Allow Sales Invoice Creation Without Delivery Note' checkbox in the Customer master.","Dacă această opțiune este configurată „Da”, ERPNext vă va împiedica să creați o factură de vânzare fără a crea mai întâi o notă de livrare. Această configurație poate fi suprascrisă pentru un anumit Client activând caseta de selectare „Permite crearea facturilor de vânzare fără notă de livrare” din masterul Clientului.",
Default Warehouse for Sales Return,Depozit implicit pentru returnarea vânzărilor,
Default In Transit Warehouse,Implicit în Depozitul de tranzit,
Enable Perpetual Inventory For Non Stock Items,Activați inventarul perpetuu pentru articolele fără stoc,
HRA Settings,Setări HRA,
Basic Component,Componenta de bază,
HRA Component,Componenta HRA,
Arrear Component,Componenta Arrear,
Please enter the company name to confirm,Vă rugăm să introduceți numele companiei pentru a confirma,
Quotation Lost Reason Detail,Citat Detaliu motiv pierdut,
Enable Variants,Activați variantele,
Save Quotations as Draft,Salvați ofertele ca schiță,
MAT-DN-RET-.YYYY.-,MAT-DN-RET-.YYYY.-,
Please Select a Customer,Vă rugăm să selectați un client,
Against Delivery Note Item,Împotriva articolului Note de livrare,
Is Non GST ,Nu este GST,
Image Description,Descrierea imaginii,
Transfer Status,Stare transfer,
MAT-PR-RET-.YYYY.-,MAT-PR-RET-.YYYY.-,
Track this Purchase Receipt against any Project,Urmăriți această chitanță de cumpărare împotriva oricărui proiect,
Please Select a Supplier,Vă rugăm să selectați un furnizor,
Add to Transit,Adăugați la tranzit,
Set Basic Rate Manually,Setați manual rata de bază,
"By default, the Item Name is set as per the Item Code entered. If you want Items to be named by a ","În mod implicit, numele articolului este setat conform codului articolului introdus. Dacă doriți ca elementele să fie denumite de un",
Set a Default Warehouse for Inventory Transactions. This will be fetched into the Default Warehouse in the Item master.,Setați un depozit implicit pentru tranzacțiile de inventar. Acest lucru va fi preluat în Depozitul implicit din elementul master.,
"This will allow stock items to be displayed in negative values. Using this option depends on your use case. With this option unchecked, the system warns before obstructing a transaction that is causing negative stock.","Acest lucru va permite afișarea articolelor stoc în valori negative. Utilizarea acestei opțiuni depinde de cazul dvs. de utilizare. Cu această opțiune bifată, sistemul avertizează înainte de a obstrucționa o tranzacție care cauzează stoc negativ.",
Choose between FIFO and Moving Average Valuation Methods. Click ,Alegeți între FIFO și metodele de evaluare medie mobile. Clic,
 to know more about them.,să afle mai multe despre ele.,
Show 'Scan Barcode' field above every child table to insert Items with ease.,Afișați câmpul „Scanare cod de bare” deasupra fiecărui tabel copil pentru a insera articole cu ușurință.,
"Serial numbers for stock will be set automatically based on the Items entered based on first in first out in transactions like Purchase/Sales Invoices, Delivery Notes, etc.","Numerele de serie pentru stoc vor fi setate automat pe baza articolelor introduse pe baza primelor în primele ieșiri din tranzacții precum facturi de cumpărare / vânzare, note de livrare etc.",
"If blank, parent Warehouse Account or company default will be considered in transactions","Dacă este necompletat, contul de depozit părinte sau prestabilitatea companiei vor fi luate în considerare în tranzacții",
Service Level Agreement Details,Detalii acord nivel de serviciu,
Service Level Agreement Status,Starea Acordului la nivel de serviciu,
On Hold Since,În așteptare de când,
Total Hold Time,Timp total de așteptare,
Response Details,Detalii de răspuns,
Average Response Time,Timpul mediu de răspuns,
User Resolution Time,Ora de rezoluție a utilizatorului,
SLA is on hold since {0},SLA este în așteptare de la {0},
Pause SLA On Status,Întrerupeți SLA On Status,
Pause SLA On,Întrerupeți SLA Activat,
Greetings Section,Secțiunea Salutări,
Greeting Title,Titlu de salut,
Greeting Subtitle,Subtitrare de salut,
Youtube ID,ID YouTube,
Youtube Statistics,Statistici Youtube,
Views,Vizualizări,
Dislikes,Nu-mi place,
Video Settings,Setari video,
Enable YouTube Tracking,Activați urmărirea YouTube,
30 mins,30 de minute,
1 hr,1 oră,
6 hrs,6 ore,
Patient Progress,Progresul pacientului,
Targetted,Țintit,
Score Obtained,Scor obținut,
Sessions,Sesiuni,
Average Score,Scor mediu,
Select Assessment Template,Selectați Șablon de evaluare,
 out of ,din,
Select Assessment Parameter,Selectați Parametru de evaluare,
Gender: ,Gen:,
Contact: ,A lua legatura:,
Total Therapy Sessions: ,Total sesiuni de terapie:,
Monthly Therapy Sessions: ,Sesiuni lunare de terapie:,
Patient Profile,Profilul pacientului,
Point Of Sale,Punct de vânzare,
Email sent successfully.,Email-ul a fost trimis cu succes.,
Search by invoice id or customer name,Căutați după ID-ul facturii sau numele clientului,
Invoice Status,Starea facturii,
Filter by invoice status,Filtrează după starea facturii,
Select item group,Selectați grupul de articole,
No items found. Scan barcode again.,Nu au fost gasite articolele. Scanați din nou codul de bare.,
"Search by customer name, phone, email.","Căutare după numele clientului, telefon, e-mail.",
Enter discount percentage.,Introduceți procentul de reducere.,
Discount cannot be greater than 100%,Reducerea nu poate fi mai mare de 100%,
Enter customer's email,Introduceți adresa de e-mail a clientului,
Enter customer's phone number,Introduceți numărul de telefon al clientului,
Customer contact updated successfully.,Contactul clientului a fost actualizat cu succes.,
Item will be removed since no serial / batch no selected.,Elementul va fi eliminat deoarece nu este selectat niciun serial / lot.,
Discount (%),Reducere (%),
You cannot submit the order without payment.,Nu puteți trimite comanda fără plată.,
You cannot submit empty order.,Nu puteți trimite o comandă goală.,
To Be Paid,A fi platit,
Create POS Opening Entry,Creați o intrare de deschidere POS,
Please add Mode of payments and opening balance details.,Vă rugăm să adăugați detalii despre modul de plată și soldul de deschidere.,
Toggle Recent Orders,Comutați comenzile recente,
Save as Draft,Salvează ca ciornă,
You must add atleast one item to save it as draft.,Trebuie să adăugați cel puțin un articol pentru al salva ca schiță.,
There was an error saving the document.,A apărut o eroare la salvarea documentului.,
You must select a customer before adding an item.,Trebuie să selectați un client înainte de a adăuga un articol.,
Please Select a Company,Vă rugăm să selectați o companie,
Active Leads,Oportunități active,
Please Select a Company.,Vă rugăm să selectați o companie.,
BOM Operations Time,Timp operații BOM,
BOM ID,ID-ul BOM,
BOM Item Code,Cod articol BOM,
Time (In Mins),Timp (în minute),
Sub-assembly BOM Count,Numărul BOM al subansamblului,
View Type,Tipul de vizualizare,
Total Delivered Amount,Suma totală livrată,
Downtime Analysis,Analiza timpului de oprire,
Machine,Mașinărie,
Downtime (In Hours),Timp de inactivitate (în ore),
Employee Analytics,Analiza angajaților,
"""From date"" can not be greater than or equal to ""To date""",„De la dată” nu poate fi mai mare sau egal cu „Până în prezent”,
Exponential Smoothing Forecasting,Previziune de netezire exponențială,
First Response Time for Issues,Primul timp de răspuns pentru probleme,
First Response Time for Opportunity,Primul timp de răspuns pentru oportunitate,
Depreciatied Amount,Suma depreciată,
Period Based On,Perioada bazată pe,
Date Based On,Data bazată pe,
{0} and {1} are mandatory,{0} și {1} sunt obligatorii,
Consider Accounting Dimensions,Luați în considerare dimensiunile contabile,
Reserved Quantity for Production,Cantitate rezervată pentru producție,
Projected Quantity,Cantitatea proiectată,
 Total Sales Amount,Suma totală a vânzărilor,
Job Card Summary,Rezumatul fișei de muncă,
Id,Id,
Time Required (In Mins),Timp necesar (în minute),
From Posting Date,De la data înregistrării,
To Posting Date,Până la data de înregistrare,
No records found,Nu au fost găsite,
Customer/Lead Name,Numele clientului / clientului,
Production Planning Report,Raport de planificare a producției,
Order Qty,Comandați cantitatea,
Raw Material Code,Codul materiei prime,
Raw Material Name,Numele materiei prime,
Allotted Qty,Cantitate alocată,
Expected Arrival Date,Data de sosire preconizată,
Arrival Quantity,Cantitatea de sosire,
Raw Material Warehouse,Depozit de materii prime,
Order By,Comandați după,
Include Sub-assembly Raw Materials,Includeți subansamblarea materiilor prime,
Program wise Fee Collection,Colectarea taxelor în funcție de program,
Fees Collected,Taxe colectate,
Project Summary,Sumarul proiectului,
Total Tasks,Total sarcini,
Tasks Completed,Sarcini finalizate,
Tasks Overdue,Sarcini restante,
Completion,Completare,
Purchase Order Analysis,Analiza comenzii de cumpărare,
From and To Dates are required.,De la și până la date sunt necesare.,
To Date cannot be before From Date.,To Date nu poate fi înainte de From Date.,
Qty to Bill,Cantitate pentru Bill,
Group by Purchase Order,Grupați după ordinul de cumpărare,
 Purchase Value,Valoare de cumpărare,
Total Received Amount,Suma totală primită,
Quality Inspection Summary,Rezumatul inspecției calității,
 Quoted Amount,Suma citată,
Lead Time (Days),Timp de plumb (zile),
Include Expired,Includeți Expirat,
Requested Items to Order and Receive,Articolele solicitate la comandă și primire,
Sales Order Analysis,Analiza comenzilor de vânzare,
Amount Delivered,Suma livrată,
Delay (in Days),Întârziere (în zile),
Group by Sales Order,Grupați după comanda de vânzare,
 Sales Value,Valoarea vânzărilor,
Stock Qty vs Serial No Count,Cantitate stoc vs număr fără serie,
Serial No Count,Număr de serie,
Work Order Summary,Rezumatul comenzii de lucru,
Produce Qty,Produceți cantitatea,
Lead Time (in mins),Durata de livrare (în minute),
Charts Based On,Diagramele bazate pe,
YouTube Interactions,Interacțiuni YouTube,
Published Date,Data publicării,
Barnch,Barnch,
Select a Company,Selectați o companie,
Opportunity {0} created,Oportunitate {0} creată,
Kindly select the company first,Vă rugăm să selectați mai întâi compania,
Please enter From Date and To Date to generate JSON,Vă rugăm să introduceți De la dată și până la data pentru a genera JSON,
Download DATEV File,Descărcați fișierul DATEV,
Numero has not set in the XML file,Numero nu a fost setat în fișierul XML,
Inward Supplies(liable to reverse charge),Consumabile interne (susceptibile de a inversa taxa),
This is based on the course schedules of this Instructor,Aceasta se bazează pe programele de curs ale acestui instructor,
Course and Assessment,Curs și evaluare,
Course {0} has been added to all the selected programs successfully.,Cursul {0} a fost adăugat cu succes la toate programele selectate.,
Programs updated,Programe actualizate,
Program and Course,Program și curs,
{0} or {1} is mandatory,{0} sau {1} este obligatoriu,
Mandatory Fields,Câmpuri obligatorii,
Student {0}: {1} does not belong to Student Group {2},Student {0}: {1} nu aparține grupului de studenți {2},
Student Attendance record {0} already exists against the Student {1},Înregistrarea prezenței studenților {0} există deja împotriva studentului {1},
Course and Fee,Curs și Taxă,
Not eligible for the admission in this program as per Date Of Birth,Nu este eligibil pentru admiterea în acest program conform datei nașterii,
Topic {0} has been added to all the selected courses successfully.,Subiectul {0} a fost adăugat cu succes la toate cursurile selectate.,
Courses updated,Cursuri actualizate,
{0} {1} has been added to all the selected topics successfully.,{0} {1} a fost adăugat cu succes la toate subiectele selectate.,
Topics updated,Subiecte actualizate,
Academic Term and Program,Termen academic și program,
Please remove this item and try to submit again or update the posting time.,Eliminați acest articol și încercați să trimiteți din nou sau să actualizați ora de postare.,
Failed to Authenticate the API key.,Autentificarea cheii API nu a reușit.,
Invalid Credentials,Acreditări nevalide,
URL can only be a string,Adresa URL poate fi doar un șir,
"Here is your webhook secret, this will be shown to you only once.","Iată secretul tău webhook, acesta îți va fi afișat o singură dată.",
The payment for this membership is not paid. To generate invoice fill the payment details,Plata pentru acest membru nu este plătită. Pentru a genera factura completați detaliile de plată,
An invoice is already linked to this document,O factură este deja legată de acest document,
No customer linked to member {},Niciun client legat de membru {},
You need to set <b>Debit Account</b> in Membership Settings,Trebuie să setați <b>Cont de debit</b> în Setări de membru,
You need to set <b>Default Company</b> for invoicing in Membership Settings,Trebuie să setați <b>Compania implicită</b> pentru facturare în Setări de membru,
You need to enable <b>Send Acknowledge Email</b> in Membership Settings,Trebuie să activați <b>Trimitere e-mail de confirmare</b> în setările de membru,
Error creating membership entry for {0},Eroare la crearea intrării de membru pentru {0},
A customer is already linked to this Member,Un client este deja legat de acest membru,
End Date must not be lesser than Start Date,Data de încheiere nu trebuie să fie mai mică decât Data de începere,
Employee {0} already has Active Shift {1}: {2},Angajatul {0} are deja Active Shift {1}: {2},
 from {0},de la {0},
 to {0},către {0},
Please set {0} for the Employee or for Department: {1},Vă rugăm să setați {0} pentru angajat sau pentru departament: {1},
Employee Onboarding: {0} is already for Job Applicant: {1},Integrarea angajaților: {0} este deja pentru solicitantul de post: {1},
Asset Value Analytics,Analiza valorii activelor,
Category-wise Asset Value,Valoarea activelor în funcție de categorie,
Total Assets,Total active,
New Assets (This Year),Active noi (anul acesta),
Row #{}: Depreciation Posting Date should not be equal to Available for Use Date.,Rândul {{}: Data de înregistrare a amortizării nu trebuie să fie egală cu Disponibil pentru data de utilizare.,
Incorrect Date,Data incorectă,
Invalid Gross Purchase Amount,Suma brută de achiziție nevalidă,
There are active maintenance or repairs against the asset. You must complete all of them before cancelling the asset.,Există activități de întreținere sau reparații active asupra activului. Trebuie să le completați pe toate înainte de a anula activul.,
% Complete,% Complet,
Back to Course,Înapoi la curs,
Finish Topic,Finalizați subiectul,
Mins,Min,
by,de,
Back to,Înapoi la,
Enrolling...,Se înscrie ...,
You have successfully enrolled for the program ,V-ați înscris cu succes la program,
Enrolled,Înscris,
Watch Intro,Urmăriți Introducere,
We're here to help!,Suntem aici pentru a vă ajuta!,
Frequently Read Articles,Citiți frecvent articole,
Please set a default company address,Vă rugăm să setați o adresă implicită a companiei,
{0} is not a valid state! Check for typos or enter the ISO code for your state.,{0} nu este o stare validă! Verificați dacă există greșeli sau introduceți codul ISO pentru starea dvs.,
Error occured while parsing Chart of Accounts: Please make sure that no two accounts have the same name,A apărut o eroare la analizarea planului de conturi: asigurați-vă că niciun cont nu are același nume,
Plaid invalid request error,Eroare solicitare invalidă în carouri,
Please check your Plaid client ID and secret values,Vă rugăm să verificați ID-ul dvs. de client Plaid și valorile secrete,
Bank transaction creation error,Eroare la crearea tranzacțiilor bancare,
Unit of Measurement,Unitate de măsură,
Fiscal Year {0} Does Not Exist,Anul fiscal {0} nu există,
Row # {0}: Returned Item {1} does not exist in {2} {3},Rândul # {0}: articolul returnat {1} nu există în {2} {3},
Valuation type charges can not be marked as Inclusive,Taxele de tip de evaluare nu pot fi marcate ca Incluse,
You do not have permissions to {} items in a {}.,Nu aveți permisiuni pentru {} articole dintr-un {}.,
Insufficient Permissions,Permisiuni insuficiente,
You are not allowed to update as per the conditions set in {} Workflow.,Nu aveți permisiunea de a actualiza conform condițiilor stabilite în {} Workflow.,
Expense Account Missing,Cont de cheltuieli lipsește,
{0} is not a valid Value for Attribute {1} of Item {2}.,{0} nu este o valoare validă pentru atributul {1} al articolului {2}.,
Invalid Value,Valoare invalida,
The value {0} is already assigned to an existing Item {1}.,Valoarea {0} este deja alocată unui articol existent {1}.,
"To still proceed with editing this Attribute Value, enable {0} in Item Variant Settings.","Pentru a continua să editați această valoare a atributului, activați {0} în Setări pentru varianta articolului.",
Edit Not Allowed,Editarea nu este permisă,
Row #{0}: Item {1} is already fully received in Purchase Order {2},Rândul nr. {0}: Articolul {1} este deja complet primit în Comanda de cumpărare {2},
You cannot create or cancel any accounting entries with in the closed Accounting Period {0},Nu puteți crea sau anula nicio înregistrare contabilă în perioada de contabilitate închisă {0},
POS Invoice should have {} field checked.,Factura POS ar trebui să aibă selectat câmpul {}.,
Invalid Item,Element nevalid,
Row #{}: You cannot add postive quantities in a return invoice. Please remove item {} to complete the return.,Rândul # {}: nu puteți adăuga cantități postive într-o factură de returnare. Eliminați articolul {} pentru a finaliza returnarea.,
The selected change account {} doesn't belongs to Company {}.,Contul de modificare selectat {} nu aparține companiei {}.,
Atleast one invoice has to be selected.,Trebuie selectată cel puțin o factură.,
Payment methods are mandatory. Please add at least one payment method.,Metodele de plată sunt obligatorii. Vă rugăm să adăugați cel puțin o metodă de plată.,
Please select a default mode of payment,Vă rugăm să selectați un mod de plată implicit,
You can only select one mode of payment as default,Puteți selecta doar un mod de plată ca prestabilit,
Missing Account,Cont lipsă,
Customers not selected.,Clienții nu sunt selectați.,
Statement of Accounts,Declarație de conturi,
Ageing Report Based On ,Raport de îmbătrânire bazat pe,
Please enter distributed cost center,Vă rugăm să introduceți centrul de cost distribuit,
Total percentage allocation for distributed cost center should be equal to 100,Alocarea procentuală totală pentru centrul de cost distribuit ar trebui să fie egală cu 100,
Cannot enable Distributed Cost Center for a Cost Center already allocated in another Distributed Cost Center,Nu se poate activa Centrul de costuri distribuite pentru un centru de costuri deja alocat într-un alt centru de costuri distribuite,
Parent Cost Center cannot be added in Distributed Cost Center,Centrul de costuri părinte nu poate fi adăugat în Centrul de costuri distribuite,
A Distributed Cost Center cannot be added in the Distributed Cost Center allocation table.,Un centru de costuri distribuite nu poate fi adăugat în tabelul de alocare a centrului de costuri distribuite.,
Cost Center with enabled distributed cost center can not be converted to group,Centrul de costuri cu centrul de costuri distribuite activat nu poate fi convertit în grup,
Cost Center Already Allocated in a Distributed Cost Center cannot be converted to group,Centrul de cost deja alocat într-un centru de cost distribuit nu poate fi convertit în grup,
Trial Period Start date cannot be after Subscription Start Date,Perioada de încercare Data de începere nu poate fi ulterioară datei de începere a abonamentului,
Subscription End Date must be after {0} as per the subscription plan,Data de încheiere a abonamentului trebuie să fie după {0} conform planului de abonament,
Subscription End Date is mandatory to follow calendar months,Data de încheiere a abonamentului este obligatorie pentru a urma lunile calendaristice,
Row #{}: POS Invoice {} is not against customer {},Rândul # {}: factura POS {} nu este împotriva clientului {},
Row #{}: POS Invoice {} is not submitted yet,Rândul # {}: factura POS {} nu a fost încă trimisă,
Row #{}: POS Invoice {} has been {},Rândul # {}: factura POS {} a fost {},
No Supplier found for Inter Company Transactions which represents company {0},Nu a fost găsit niciun furnizor pentru tranzacțiile între companii care să reprezinte compania {0},
No Customer found for Inter Company Transactions which represents company {0},Nu a fost găsit niciun client pentru tranzacțiile între companii care reprezintă compania {0},
Invalid Period,Perioadă nevalidă,
Selected POS Opening Entry should be open.,Intrarea selectată de deschidere POS ar trebui să fie deschisă.,
Invalid Opening Entry,Intrare de deschidere nevalidă,
Please set a Company,Vă rugăm să setați o companie,
"Sorry, this coupon code's validity has not started","Ne pare rău, valabilitatea acestui cod cupon nu a început",
"Sorry, this coupon code's validity has expired","Ne pare rău, valabilitatea acestui cod de cupon a expirat",
"Sorry, this coupon code is no longer valid","Ne pare rău, acest cod de cupon nu mai este valid",
For the 'Apply Rule On Other' condition the field {0} is mandatory,"Pentru condiția „Aplică regula la altele”, câmpul {0} este obligatoriu",
{1} Not in Stock,{1} Nu este în stoc,
Only {0} in Stock for item {1},Numai {0} în stoc pentru articolul {1},
Please enter a coupon code,Vă rugăm să introduceți un cod de cupon,
Please enter a valid coupon code,Vă rugăm să introduceți un cod de cupon valid,
Invalid Child Procedure,Procedură copil nevalidă,
Import Italian Supplier Invoice.,Importați factura furnizorului italian.,
"Valuation Rate for the Item {0}, is required to do accounting entries for {1} {2}.","Rata de evaluare pentru articolul {0}, este necesară pentru a face înregistrări contabile pentru {1} {2}.",
 Here are the options to proceed:,Iată opțiunile pentru a continua:,
"If the item is transacting as a Zero Valuation Rate item in this entry, please enable 'Allow Zero Valuation Rate' in the {0} Item table.","Dacă articolul tranzacționează ca articol cu o rată de evaluare zero în această intrare, activați „Permiteți o rată de evaluare zero” în tabelul {0} Articol.",
"If not, you can Cancel / Submit this entry ","Dacă nu, puteți anula / trimite această intrare",
 performing either one below:,efectuând una dintre cele de mai jos:,
Create an incoming stock transaction for the Item.,Creați o tranzacție de stoc primită pentru articol.,
Mention Valuation Rate in the Item master.,Menționați rata de evaluare în elementul master.,
Valuation Rate Missing,Rata de evaluare lipsește,
Serial Nos Required,Numere de serie necesare,
Quantity Mismatch,Cantitate necorespunzătoare,
"Please Restock Items and Update the Pick List to continue. To discontinue, cancel the Pick List.","Vă rugăm să reporniți articolele și să actualizați lista de alegeri pentru a continua. Pentru a întrerupe, anulați lista de alegeri.",
Out of Stock,Stoc epuizat,
{0} units of Item {1} is not available.,{0} unități de articol {1} nu sunt disponibile.,
Item for row {0} does not match Material Request,Elementul pentru rândul {0} nu se potrivește cu Cererea de material,
Warehouse for row {0} does not match Material Request,Depozitul pentru rândul {0} nu se potrivește cu Cererea de material,
Accounting Entry for Service,Intrare contabilă pentru service,
All items have already been Invoiced/Returned,Toate articolele au fost deja facturate / returnate,
All these items have already been Invoiced/Returned,Toate aceste articole au fost deja facturate / returnate,
Stock Reconciliations,Reconcilieri stocuri,
Merge not allowed,Îmbinarea nu este permisă,
The following deleted attributes exist in Variants but not in the Template. You can either delete the Variants or keep the attribute(s) in template.,"Următoarele atribute șterse există în variante, dar nu în șablon. Puteți șterge variantele sau puteți păstra atributele în șablon.",
Variant Items,Elemente variante,
Variant Attribute Error,Eroare a atributului variantei,
The serial no {0} does not belong to item {1},Numărul de serie {0} nu aparține articolului {1},
There is no batch found against the {0}: {1},Nu există niciun lot găsit împotriva {0}: {1},
Completed Operation,Operațiune finalizată,
Work Order Analysis,Analiza comenzii de lucru,
Quality Inspection Analysis,Analiza inspecției calității,
Pending Work Order,Ordin de lucru în așteptare,
Last Month Downtime Analysis,Analiza timpului de nefuncționare de luna trecută,
Work Order Qty Analysis,Analiza cantității comenzii de lucru,
Job Card Analysis,Analiza fișei de muncă,
Monthly Total Work Orders,Comenzi lunare totale de lucru,
Monthly Completed Work Orders,Comenzi de lucru finalizate lunar,
Ongoing Job Cards,Carduri de muncă în curs,
Monthly Quality Inspections,Inspecții lunare de calitate,
(Forecast),(Prognoza),
Total Demand (Past Data),Cerere totală (date anterioare),
Total Forecast (Past Data),Prognoză totală (date anterioare),
Total Forecast (Future Data),Prognoză totală (date viitoare),
Based On Document,Pe baza documentului,
Based On Data ( in years ),Pe baza datelor (în ani),
Smoothing Constant,Netezire constantă,
Please fill the Sales Orders table,Vă rugăm să completați tabelul Comenzi de vânzare,
Sales Orders Required,Sunt necesare comenzi de vânzare,
Please fill the Material Requests table,Vă rugăm să completați tabelul Cereri de materiale,
Material Requests Required,Cereri materiale necesare,
Items to Manufacture are required to pull the Raw Materials associated with it.,Articolele de fabricație sunt necesare pentru a extrage materiile prime asociate acestuia.,
Items Required,Elemente necesare,
Operation {0} does not belong to the work order {1},Operația {0} nu aparține comenzii de lucru {1},
Print UOM after Quantity,Imprimați UOM după Cantitate,
Set default {0} account for perpetual inventory for non stock items,Setați contul {0} implicit pentru inventarul perpetuu pentru articolele care nu sunt în stoc,
Row #{0}: Child Item should not be a Product Bundle. Please remove Item {1} and Save,Rândul # {0}: articolul secundar nu trebuie să fie un pachet de produse. Eliminați articolul {1} și Salvați,
Credit limit reached for customer {0},Limita de credit atinsă pentru clientul {0},
Could not auto create Customer due to the following missing mandatory field(s):,Nu s-a putut crea automat Clientul din cauza următoarelor câmpuri obligatorii lipsă:,
Please create Customer from Lead {0}.,Vă rugăm să creați Client din Lead {0}.,
Mandatory Missing,Obligatoriu Lipsește,
From Date can not be greater than To Date.,From Date nu poate fi mai mare decât To Date.,
Row #{0}: Please enter the result value for {1},Rândul # {0}: introduceți valoarea rezultatului pentru {1},
Mandatory Results,Rezultate obligatorii,
Sales Invoice or Patient Encounter is required to create Lab Tests,Factura de vânzare sau întâlnirea pacientului sunt necesare pentru a crea teste de laborator,
Insufficient Data,Date insuficiente,
Lab Test(s) {0} created successfully,Testele de laborator {0} au fost create cu succes,
Test :,Test :,
Sample Collection {0} has been created,A fost creată colecția de probe {0},
Normal Range: ,Gama normală:,
Row #{0}: Check Out datetime cannot be less than Check In datetime,Rândul # {0}: data de check out nu poate fi mai mică decât data de check in,
"Missing required details, did not create Inpatient Record","Lipsesc detaliile solicitate, nu s-a creat înregistrarea internată",
Unbilled Invoices,Facturi nefacturate,
Standard Selling Rate should be greater than zero.,Rata de vânzare standard ar trebui să fie mai mare decât zero.,
Conversion Factor is mandatory,Factorul de conversie este obligatoriu,
Row #{0}: Conversion Factor is mandatory,Rândul # {0}: factorul de conversie este obligatoriu,
Sample Quantity cannot be negative or 0,Cantitatea eșantionului nu poate fi negativă sau 0,
Invalid Quantity,Cantitate nevalidă,
"Please set defaults for Customer Group, Territory and Selling Price List in Selling Settings","Vă rugăm să setați valorile implicite pentru grupul de clienți, teritoriu și lista de prețuri de vânzare din setările de vânzare",
{0} on {1},{0} pe {1},
{0} with {1},{0} cu {1},
Appointment Confirmation Message Not Sent,Mesajul de confirmare a programării nu a fost trimis,
"SMS not sent, please check SMS Settings","SMS-ul nu a fost trimis, verificați Setările SMS",
Healthcare Service Unit Type cannot have both {0} and {1},"Tipul unității de servicii medicale nu poate avea atât {0}, cât și {1}",
Healthcare Service Unit Type must allow atleast one among {0} and {1},Tipul unității de servicii medicale trebuie să permită cel puțin unul dintre {0} și {1},
Set Response Time and Resolution Time for Priority {0} in row {1}.,Setați timpul de răspuns și timpul de rezoluție pentru prioritatea {0} în rândul {1}.,
Response Time for {0} priority in row {1} can't be greater than Resolution Time.,Timpul de răspuns pentru {0} prioritatea în rândul {1} nu poate fi mai mare decât timpul de rezoluție.,
{0} is not enabled in {1},{0} nu este activat în {1},
Group by Material Request,Grupați după cerere de material,
Email Sent to Supplier {0},E-mail trimis către furnizor {0},
"The Access to Request for Quotation From Portal is Disabled. To Allow Access, Enable it in Portal Settings.","Accesul la cererea de ofertă de la portal este dezactivat. Pentru a permite accesul, activați-l în Setări portal.",
Supplier Quotation {0} Created,Ofertă furnizor {0} creată,
Valid till Date cannot be before Transaction Date,Valabil până la data nu poate fi înainte de data tranzacției,
Unlink Advance Payment on Cancellation of Order,Deconectați plata în avans la anularea comenzii,
"Simple Python Expression, Example: territory != 'All Territories'","Expresie simplă Python, Exemplu: teritoriu! = „Toate teritoriile”",
Sales Contributions and Incentives,Contribuții la vânzări și stimulente,
Sourced by Supplier,Aprovizionat de furnizor,
Total weightage assigned should be 100%.<br>It is {0},Ponderea totală alocată ar trebui să fie de 100%.<br> Este {0},
Account {0} exists in parent company {1}.,Contul {0} există în compania mamă {1}.,
"To overrule this, enable '{0}' in company {1}","Pentru a ignora acest lucru, activați „{0}” în companie {1}",
Invalid condition expression,Expresie de condiție nevalidă,
Please Select a Company First,Vă rugăm să selectați mai întâi o companie,
Please Select Both Company and Party Type First,"Vă rugăm să selectați mai întâi atât compania, cât și tipul de petrecere",
Provide the invoice portion in percent,Furnizați partea de facturare în procente,
Give number of days according to prior selection,Dați numărul de zile în funcție de selecția anterioară,
Email Details,Detalii e-mail,
"Select a greeting for the receiver. E.g. Mr., Ms., etc.","Selectați o felicitare pentru receptor. De exemplu, domnul, doamna etc.",
Preview Email,Previzualizați e-mailul,
Please select a Supplier,Vă rugăm să selectați un furnizor,
Supplier Lead Time (days),Timp de livrare a furnizorului (zile),
"Home, Work, etc.","Acasă, serviciu etc.",
Exit Interview Held On,Ieșiți din interviu,
Sets 'Target Warehouse' in each row of the Items table.,Setează „Depozit țintă” în fiecare rând al tabelului Elemente.,
Sets 'Source Warehouse' in each row of the Items table.,Setează „Depozit sursă” în fiecare rând al tabelului Elemente.,
POS Register,Registrul POS,
"Can not filter based on POS Profile, if grouped by POS Profile","Nu se poate filtra pe baza profilului POS, dacă este grupat după profilul POS",
"Can not filter based on Customer, if grouped by Customer","Nu se poate filtra pe baza clientului, dacă este grupat după client",
"Can not filter based on Cashier, if grouped by Cashier","Nu se poate filtra în funcție de Casier, dacă este grupat după Casier",
Payment Method,Modalitate de plată,
"Can not filter based on Payment Method, if grouped by Payment Method","Nu se poate filtra pe baza metodei de plată, dacă este grupată după metoda de plată",
Supplier Quotation Comparison,Compararea ofertelor de ofertă,
Price per Unit (Stock UOM),Preț per unitate (stoc UOM),
Group by Supplier,Grup pe furnizor,
Group by Item,Grupați după articol,
Remember to set {field_label}. It is required by {regulation}.,Nu uitați să setați {field_label}. Este cerut de {regulament}.,
Enrollment Date cannot be before the Start Date of the Academic Year {0},Data înscrierii nu poate fi înainte de data de începere a anului academic {0},
Enrollment Date cannot be after the End Date of the Academic Term {0},Data înscrierii nu poate fi ulterioară datei de încheiere a termenului academic {0},
Enrollment Date cannot be before the Start Date of the Academic Term {0},Data înscrierii nu poate fi anterioară datei de începere a termenului academic {0},
Future Posting Not Allowed,Postarea viitoare nu este permisă,
"To enable Capital Work in Progress Accounting, ","Pentru a permite contabilitatea activității de capital în curs,",
you must select Capital Work in Progress Account in accounts table,trebuie să selectați Contul de capital în curs în tabelul de conturi,
You can also set default CWIP account in Company {},"De asemenea, puteți seta contul CWIP implicit în Companie {}",
The Request for Quotation can be accessed by clicking on the following button,Cererea de ofertă poate fi accesată făcând clic pe butonul următor,
Regards,Salutari,
Please click on the following button to set your new password,Vă rugăm să faceți clic pe următorul buton pentru a seta noua parolă,
Update Password,Actualizați parola,
Row #{}: Selling rate for item {} is lower than its {}. Selling {} should be atleast {},Rândul # {}: rata de vânzare a articolului {} este mai mică decât {}. Vânzarea {} ar trebui să fie cel puțin {},
You can alternatively disable selling price validation in {} to bypass this validation.,Puteți dezactiva alternativ validarea prețului de vânzare în {} pentru a ocoli această validare.,
Invalid Selling Price,Preț de vânzare nevalid,
Address needs to be linked to a Company. Please add a row for Company in the Links table.,Adresa trebuie să fie legată de o companie. Vă rugăm să adăugați un rând pentru Companie în tabelul Legături.,
Company Not Linked,Compania nu este legată,
Import Chart of Accounts from CSV / Excel files,Importați planul de conturi din fișiere CSV / Excel,
Completed Qty cannot be greater than 'Qty to Manufacture',Cantitatea completată nu poate fi mai mare decât „Cantitatea pentru fabricare”,
"Row {0}: For Supplier {1}, Email Address is Required to send an email","Rândul {0}: pentru furnizor {1}, este necesară adresa de e-mail pentru a trimite un e-mail",
"If enabled, the system will post accounting entries for inventory automatically","Dacă este activat, sistemul va înregistra automat înregistrări contabile pentru inventar",
Accounts Frozen Till Date,Conturi congelate până la data,
Accounting entries are frozen up to this date. Nobody can create or modify entries except users with the role specified below,"Înregistrările contabile sunt înghețate până la această dată. Nimeni nu poate crea sau modifica intrări, cu excepția utilizatorilor cu rolul specificat mai jos",
Role Allowed to Set Frozen Accounts and Edit Frozen Entries,Rolul permis pentru setarea conturilor înghețate și editarea intrărilor înghețate,
Address used to determine Tax Category in transactions,Adresa utilizată pentru determinarea categoriei fiscale în tranzacții,
"The percentage you are allowed to bill more against the amount ordered. For example, if the order value is $100 for an item and tolerance is set as 10%, then you are allowed to bill up to $110 ","Procentul pe care vi se permite să îl facturați mai mult pentru suma comandată. De exemplu, dacă valoarea comenzii este de 100 USD pentru un articol și toleranța este setată la 10%, atunci aveți permisiunea de a factura până la 110 USD",
This role is allowed to submit transactions that exceed credit limits,Acest rol este permis să trimită tranzacții care depășesc limitele de credit,
"If ""Months"" is selected, a fixed amount will be booked as deferred revenue or expense for each month irrespective of the number of days in a month. It will be prorated if deferred revenue or expense is not booked for an entire month","Dacă este selectată „Luni”, o sumă fixă va fi înregistrată ca venit sau cheltuială amânată pentru fiecare lună, indiferent de numărul de zile dintr-o lună. Acesta va fi proporțional dacă veniturile sau cheltuielile amânate nu sunt înregistrate pentru o lună întreagă",
"If this is unchecked, direct GL entries will be created to book deferred revenue or expense","Dacă acest lucru nu este bifat, vor fi create intrări GL directe pentru a înregistra venituri sau cheltuieli amânate",
Show Inclusive Tax in Print,Afișați impozitul inclus în tipar,
Only select this if you have set up the Cash Flow Mapper documents,Selectați acest lucru numai dacă ați configurat documentele Cartografierii fluxurilor de numerar,
Payment Channel,Canal de plată,
Is Purchase Order Required for Purchase Invoice & Receipt Creation?,Este necesară comanda de cumpărare pentru crearea facturii de achiziție și a chitanței?,
Is Purchase Receipt Required for Purchase Invoice Creation?,Este necesară chitanța de cumpărare pentru crearea facturii de cumpărare?,
Maintain Same Rate Throughout the Purchase Cycle,Mențineți aceeași rată pe tot parcursul ciclului de cumpărare,
Allow Item To Be Added Multiple Times in a Transaction,Permiteți adăugarea articolului de mai multe ori într-o tranzacție,
Suppliers,Furnizori,
Send Emails to Suppliers,Trimiteți e-mailuri furnizorilor,
Select a Supplier,Selectați un furnizor,
Cannot mark attendance for future dates.,Nu se poate marca prezența pentru date viitoare.,
Do you want to update attendance? <br> Present: {0} <br> Absent: {1},Doriți să actualizați prezența?<br> Prezent: {0}<br> Absent: {1},
Mpesa Settings,Setări Mpesa,
Initiator Name,Numele inițiatorului,
Till Number,Până la numărul,
Sandbox,Sandbox,
 Online PassKey,Online PassKey,
Security Credential,Acreditare de securitate,
Get Account Balance,Obțineți soldul contului,
Please set the initiator name and the security credential,Vă rugăm să setați numele inițiatorului și acreditările de securitate,
Inpatient Medication Entry,Intrarea în medicamente pentru pacienții internați,
HLC-IME-.YYYY.-,HLC-IME-.YYYY.-,
Item Code (Drug),Cod articol (medicament),
Medication Orders,Comenzi de medicamente,
Get Pending Medication Orders,Obțineți comenzi de medicamente în așteptare,
Inpatient Medication Orders,Comenzi pentru medicamente internate,
Medication Warehouse,Depozit de medicamente,
Warehouse from where medication stock should be consumed,Depozit de unde ar trebui consumat stocul de medicamente,
Fetching Pending Medication Orders,Preluarea comenzilor de medicamente în așteptare,
Inpatient Medication Entry Detail,Detalii privind intrarea medicamentelor pentru pacienții internați,
Medication Details,Detalii despre medicamente,
Drug Code,Codul drogurilor,
Drug Name,Numele medicamentului,
Against Inpatient Medication Order,Împotriva ordinului privind medicamentul internat,
Against Inpatient Medication Order Entry,Împotriva introducerii comenzii pentru medicamente internate,
Inpatient Medication Order,Ordinul privind medicamentul internat,
HLC-IMO-.YYYY.-,HLC-IMO-.YYYY.-,
Total Orders,Total comenzi,
Completed Orders,Comenzi finalizate,
Add Medication Orders,Adăugați comenzi de medicamente,
Adding Order Entries,Adăugarea intrărilor de comandă,
{0} medication orders completed,{0} comenzi de medicamente finalizate,
{0} medication order completed,{0} comandă de medicamente finalizată,
Inpatient Medication Order Entry,Intrarea comenzii pentru medicamente internate,
Is Order Completed,Comanda este finalizată,
Employee Records to Be Created By,Înregistrările angajaților care trebuie create de,
Employee records are created using the selected field,Înregistrările angajaților sunt create folosind câmpul selectat,
Don't send employee birthday reminders,Nu trimiteți memento-uri de ziua angajaților,
Restrict Backdated Leave Applications,Restricționează aplicațiile de concediu actualizate,
Sequence ID,ID secvență,
Sequence Id,Secvența Id,
Allow multiple material consumptions against a Work Order,Permiteți mai multe consumuri de materiale împotriva unei comenzi de lucru,
Plan time logs outside Workstation working hours,Planificați jurnalele de timp în afara programului de lucru al stației de lucru,
Plan operations X days in advance,Planificați operațiunile cu X zile înainte,
Time Between Operations (Mins),Timpul dintre operații (min.),
Default: 10 mins,Implicit: 10 minute,
Overproduction for Sales and Work Order,Supraproducție pentru vânzări și comandă de lucru,
"Update BOM cost automatically via scheduler, based on the latest Valuation Rate/Price List Rate/Last Purchase Rate of raw materials","Actualizați automat costul BOM prin programator, pe baza celei mai recente rate de evaluare / tarif de listă de prețuri / ultimul procent de cumpărare a materiilor prime",
Purchase Order already created for all Sales Order items,Comanda de cumpărare deja creată pentru toate articolele comenzii de vânzare,
Select Items,Selectați elemente,
Against Default Supplier,Împotriva furnizorului implicit,
Auto close Opportunity after the no. of days mentioned above,Închidere automată Oportunitate după nr. de zile menționate mai sus,
Is Sales Order Required for Sales Invoice & Delivery Note Creation?,Este necesară comanda de vânzare pentru crearea facturilor de vânzare și a notelor de livrare?,
Is Delivery Note Required for Sales Invoice Creation?,Este necesară nota de livrare pentru crearea facturii de vânzare?,
How often should Project and Company be updated based on Sales Transactions?,Cât de des ar trebui actualizate proiectul și compania pe baza tranzacțiilor de vânzare?,
Allow User to Edit Price List Rate in Transactions,Permiteți utilizatorului să editeze rata listei de prețuri în tranzacții,
Allow Item to Be Added Multiple Times in a Transaction,Permiteți adăugarea articolului de mai multe ori într-o tranzacție,
Allow Multiple Sales Orders Against a Customer's Purchase Order,Permiteți mai multe comenzi de vânzare împotriva comenzii de cumpărare a unui client,
Validate Selling Price for Item Against Purchase Rate or Valuation Rate,Validați prețul de vânzare al articolului împotriva ratei de achiziție sau a ratei de evaluare,
Hide Customer's Tax ID from Sales Transactions,Ascundeți codul fiscal al clientului din tranzacțiile de vânzare,
"The 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.","Procentul pe care vi se permite să îl primiți sau să livrați mai mult în raport cu cantitatea comandată. De exemplu, dacă ați comandat 100 de unități, iar alocația dvs. este de 10%, atunci aveți permisiunea de a primi 110 unități.",
Action If Quality Inspection Is Not Submitted,Acțiune dacă inspecția de calitate nu este trimisă,
Auto Insert Price List Rate If Missing,Introduceți automat prețul listei de prețuri dacă lipsește,
Automatically Set Serial Nos Based on FIFO,Setați automat numărul de serie pe baza FIFO,
Set Qty in Transactions Based on Serial No Input,Setați cantitatea în tranzacțiile bazate pe intrare de serie,
Raise Material Request When Stock Reaches Re-order Level,Creșteți cererea de material atunci când stocul atinge nivelul de re-comandă,
Notify by Email on Creation of Automatic Material Request,Notificați prin e-mail la crearea cererii automate de materiale,
Allow Material Transfer from Delivery Note to Sales Invoice,Permiteți transferul de materiale din nota de livrare către factura de vânzare,
Allow Material Transfer from Purchase Receipt to Purchase Invoice,Permiteți transferul de materiale de la chitanța de cumpărare la factura de cumpărare,
Freeze Stocks Older Than (Days),Înghețați stocurile mai vechi de (zile),
Role Allowed to Edit Frozen Stock,Rolul permis pentru editarea stocului înghețat,
The unallocated amount of Payment Entry {0} is greater than the Bank Transaction's unallocated amount,Valoarea nealocată a intrării de plată {0} este mai mare decât suma nealocată a tranzacției bancare,
Payment Received,Plata primita,
Attendance cannot be marked outside of Academic Year {0},Prezența nu poate fi marcată în afara anului academic {0},
Student is already enrolled via Course Enrollment {0},Studentul este deja înscris prin Înscrierea la curs {0},
Attendance cannot be marked for future dates.,Prezența nu poate fi marcată pentru datele viitoare.,
Please add programs to enable admission application.,Vă rugăm să adăugați programe pentru a activa cererea de admitere.,
The following employees are currently still reporting to {0}:,"În prezent, următorii angajați raportează încă la {0}:",
Please make sure the employees above report to another Active employee.,Vă rugăm să vă asigurați că angajații de mai sus raportează unui alt angajat activ.,
Cannot Relieve Employee,Nu poate scuti angajatul,
Please enter {0},Vă rugăm să introduceți {0},
Please select another payment method. Mpesa does not support transactions in currency '{0}',Vă rugăm să selectați o altă metodă de plată. Mpesa nu acceptă tranzacții în moneda „{0}”,
Transaction Error,Eroare de tranzacție,
Mpesa Express Transaction Error,Eroare tranzacție Mpesa Express,
"Issue detected with Mpesa configuration, check the error logs for more details","Problemă detectată la configurația Mpesa, verificați jurnalele de erori pentru mai multe detalii",
Mpesa Express Error,Eroare Mpesa Express,
Account Balance Processing Error,Eroare procesare sold sold,
Please check your configuration and try again,Vă rugăm să verificați configurația și să încercați din nou,
Mpesa Account Balance Processing Error,Eroare de procesare a soldului contului Mpesa,
Balance Details,Detalii sold,
Current Balance,Sold curent,
Available Balance,Sold disponibil,
Reserved Balance,Sold rezervat,
Uncleared Balance,Sold neclar,
Payment related to {0} is not completed,Plata aferentă {0} nu este finalizată,
Row #{}: Item Code: {} is not available under warehouse {}.,Rândul # {}: Codul articolului: {} nu este disponibil în depozit {}.,
Row #{}: Stock quantity not enough for Item Code: {} under warehouse {}. Available quantity {}.,Rândul # {}: cantitatea de stoc nu este suficientă pentru codul articolului: {} în depozit {}. Cantitate Disponibilă {}.,
Row #{}: Please select a serial no and batch against item: {} or remove it to complete transaction.,Rândul # {}: selectați un număr de serie și împărțiți-l cu elementul: {} sau eliminați-l pentru a finaliza tranzacția.,
Row #{}: No serial number selected against item: {}. Please select one or remove it to complete transaction.,Rândul # {}: nu a fost selectat niciun număr de serie pentru elementul: {}. Vă rugăm să selectați una sau să o eliminați pentru a finaliza tranzacția.,
Row #{}: No batch selected against item: {}. Please select a batch or remove it to complete transaction.,Rândul # {}: nu a fost selectat niciun lot pentru elementul: {}. Vă rugăm să selectați un lot sau să îl eliminați pentru a finaliza tranzacția.,
Payment amount cannot be less than or equal to 0,Suma plății nu poate fi mai mică sau egală cu 0,
Please enter the phone number first,Vă rugăm să introduceți mai întâi numărul de telefon,
Row #{}: {} {} does not exist.,Rândul # {}: {} {} nu există.,
Row #{0}: {1} is required to create the Opening {2} Invoices,Rândul # {0}: {1} este necesar pentru a crea facturile de deschidere {2},
You had {} errors while creating opening invoices. Check {} for more details,Ați avut {} erori la crearea facturilor de deschidere. Verificați {} pentru mai multe detalii,
Error Occured,A aparut o eroare,
Opening Invoice Creation In Progress,Se deschide crearea facturii în curs,
Creating {} out of {} {},Se creează {} din {} {},
(Serial No: {0}) cannot be consumed as it's reserverd to fullfill Sales Order {1}.,(Nr. De serie: {0}) nu poate fi consumat deoarece este rezervat pentru a îndeplini comanda de vânzare {1}.,
Item {0} {1},Element {0} {1},
Last Stock Transaction for item {0} under warehouse {1} was on {2}.,Ultima tranzacție de stoc pentru articolul {0} aflat în depozit {1} a fost pe {2}.,
Stock Transactions for Item {0} under warehouse {1} cannot be posted before this time.,Tranzacțiile de stoc pentru articolul {0} aflat în depozit {1} nu pot fi înregistrate înainte de această dată.,
Posting future stock transactions are not allowed due to Immutable Ledger,Înregistrarea tranzacțiilor viitoare cu acțiuni nu este permisă din cauza contabilității imuabile,
A BOM with name {0} already exists for item {1}.,O listă cu numele {0} există deja pentru articolul {1}.,
{0}{1} Did you rename the item? Please contact Administrator / Tech support,{0} {1} Ați redenumit articolul? Vă rugăm să contactați administratorul / asistența tehnică,
At row #{0}: the sequence id {1} cannot be less than previous row sequence id {2},La rândul # {0}: ID-ul secvenței {1} nu poate fi mai mic decât ID-ul anterior al secvenței de rând {2},
The {0} ({1}) must be equal to {2} ({3}),{0} ({1}) trebuie să fie egal cu {2} ({3}),
"{0}, complete the operation {1} before the operation {2}.","{0}, finalizați operația {1} înainte de operație {2}.",
Cannot ensure delivery by Serial No as Item {0} is added with and without Ensure Delivery by Serial No.,Nu se poate asigura livrarea prin numărul de serie deoarece articolul {0} este adăugat cu și fără Asigurați livrarea prin numărul de serie,
Item {0} has no Serial No. Only serilialized items can have delivery based on Serial No,Articolul {0} nu are nr. De serie. Numai articolele serializate pot fi livrate pe baza numărului de serie,
No active BOM found for item {0}. Delivery by Serial No cannot be ensured,Nu s-a găsit niciun material activ pentru articolul {0}. Livrarea prin nr. De serie nu poate fi asigurată,
No pending medication orders found for selected criteria,Nu s-au găsit comenzi de medicamente în așteptare pentru criteriile selectate,
From Date cannot be after the current date.,From Date nu poate fi după data curentă.,
To Date cannot be after the current date.,To Date nu poate fi după data curentă.,
From Time cannot be after the current time.,From Time nu poate fi după ora curentă.,
To Time cannot be after the current time.,To Time nu poate fi după ora curentă.,
Stock Entry {0} created and ,Înregistrare stoc {0} creată și,
Inpatient Medication Orders updated successfully,Comenzile pentru medicamente internate au fost actualizate cu succes,
Row {0}: Cannot create Inpatient Medication Entry against cancelled Inpatient Medication Order {1},Rândul {0}: Nu se poate crea o intrare pentru medicamentul internat împotriva comenzii anulate pentru medicamentul internat {1},
Row {0}: This Medication Order is already marked as completed,Rândul {0}: această comandă de medicamente este deja marcată ca finalizată,
Quantity not available for {0} in warehouse {1},Cantitatea nu este disponibilă pentru {0} în depozit {1},
Please enable Allow Negative Stock in Stock Settings or create Stock Entry to proceed.,Vă rugăm să activați Permiteți stocul negativ în setările stocului sau creați intrarea stocului pentru a continua.,
No Inpatient Record found against patient {0},Nu s-a găsit nicio înregistrare a pacientului internat împotriva pacientului {0},
An Inpatient Medication Order {0} against Patient Encounter {1} already exists.,Există deja un ordin de medicare internă {0} împotriva întâlnirii pacientului {1}.,
Allow In Returns,Permiteți returnări,
Hide Unavailable Items,Ascundeți articolele indisponibile,
Apply Discount on Discounted Rate,Aplicați reducere la tariful redus,
Therapy Plan Template,Șablon de plan de terapie,
Fetching Template Details,Preluarea detaliilor șablonului,
Linked Item Details,Detalii legate de articol,
Therapy Types,Tipuri de terapie,
Therapy Plan Template Detail,Detaliu șablon plan de terapie,
Non Conformance,Non conformist,
Process Owner,Deținătorul procesului,
Corrective Action,Acțiune corectivă,
Preventive Action,Actiune preventiva,
Problem,Problemă,
Responsible,Responsabil,
Completion By,Finalizare de,
Process Owner Full Name,Numele complet al proprietarului procesului,
Right Index,Index corect,
Left Index,Index stânga,
Sub Procedure,Sub procedură,
Passed,A trecut,
Print Receipt,Tipărire chitanță,
Edit Receipt,Editați chitanța,
Focus on search input,Concentrați-vă pe introducerea căutării,
Focus on Item Group filter,Concentrați-vă pe filtrul Grup de articole,
Checkout Order / Submit Order / New Order,Comanda de comandă / Trimiteți comanda / Comanda nouă,
Add Order Discount,Adăugați reducere la comandă,
Item Code: {0} is not available under warehouse {1}.,Cod articol: {0} nu este disponibil în depozit {1}.,
Serial numbers unavailable for Item {0} under warehouse {1}. Please try changing warehouse.,Numerele de serie nu sunt disponibile pentru articolul {0} aflat în depozit {1}. Vă rugăm să încercați să schimbați depozitul.,
Fetched only {0} available serial numbers.,S-au preluat numai {0} numere de serie disponibile.,
Switch Between Payment Modes,Comutați între modurile de plată,
Enter {0} amount.,Introduceți suma {0}.,
You don't have enough points to redeem.,Nu aveți suficiente puncte de valorificat.,
You can redeem upto {0}.,Puteți valorifica până la {0}.,
Enter amount to be redeemed.,Introduceți suma de răscumpărat.,
You cannot redeem more than {0}.,Nu puteți valorifica mai mult de {0}.,
Open Form View,Deschideți vizualizarea formularului,
POS invoice {0} created succesfully,Factura POS {0} a fost creată cu succes,
Stock quantity not enough for Item Code: {0} under warehouse {1}. Available quantity {2}.,Cantitatea de stoc nu este suficientă pentru Codul articolului: {0} în depozit {1}. Cantitatea disponibilă {2}.,
Serial No: {0} has already been transacted into another POS Invoice.,Nr. De serie: {0} a fost deja tranzacționat într-o altă factură POS.,
Balance Serial No,Nr,
Warehouse: {0} does not belong to {1},Depozit: {0} nu aparține {1},
Please select batches for batched item {0},Vă rugăm să selectați loturile pentru elementul lot {0},
Please select quantity on row {0},Vă rugăm să selectați cantitatea de pe rândul {0},
Please enter serial numbers for serialized item {0},Introduceți numerele de serie pentru articolul serializat {0},
Batch {0} already selected.,Lotul {0} deja selectat.,
Please select a warehouse to get available quantities,Vă rugăm să selectați un depozit pentru a obține cantitățile disponibile,
"For transfer from source, selected quantity cannot be greater than available quantity","Pentru transfer din sursă, cantitatea selectată nu poate fi mai mare decât cantitatea disponibilă",
Cannot find Item with this Barcode,Nu se poate găsi un articol cu acest cod de bare,
{0} is mandatory. Maybe Currency Exchange record is not created for {1} to {2},{0} este obligatoriu. Poate că înregistrarea schimbului valutar nu este creată pentru {1} până la {2},
{} has submitted assets linked to it. You need to cancel the assets to create purchase return.,{} a trimis materiale legate de acesta. Trebuie să anulați activele pentru a crea returnarea achiziției.,
Cannot cancel this document as it is linked with submitted asset {0}. Please cancel it to continue.,Nu se poate anula acest document deoarece este asociat cu materialul trimis {0}. Anulați-l pentru a continua.,
Row #{}: Serial No. {} has already been transacted into another POS Invoice. Please select valid serial no.,Rândul # {}: numărul de serie {} a fost deja tranzacționat într-o altă factură POS. Vă rugăm să selectați numărul de serie valid.,
Row #{}: Serial Nos. {} has already been transacted into another POS Invoice. Please select valid serial no.,Rândul # {}: Nr. De serie {} a fost deja tranzacționat într-o altă factură POS. Vă rugăm să selectați numărul de serie valid.,
Item Unavailable,Elementul nu este disponibil,
Row #{}: Serial No {} cannot be returned since it was not transacted in original invoice {},Rândul # {}: seria nr. {} Nu poate fi returnată deoarece nu a fost tranzacționată în factura originală {},
Please set default Cash or Bank account in Mode of Payment {},Vă rugăm să setați implicit numerar sau cont bancar în modul de plată {},
Please set default Cash or Bank account in Mode of Payments {},Vă rugăm să setați implicit numerar sau cont bancar în modul de plăți {},
Please ensure {} account is a Balance Sheet account. You can change the parent account to a Balance Sheet account or select a different account.,Vă rugăm să vă asigurați că {} contul este un cont de bilanț. Puteți schimba contul părinte într-un cont de bilanț sau puteți selecta un alt cont.,
Please ensure {} account is a Payable account. Change the account type to Payable or select a different account.,Vă rugăm să vă asigurați că {} contul este un cont de plătit. Schimbați tipul de cont la Plătibil sau selectați un alt cont.,
Row {}: Expense Head changed to {} ,Rând {}: capul cheltuielilor a fost schimbat în {},
because account {} is not linked to warehouse {} ,deoarece contul {} nu este conectat la depozit {},
or it is not the default inventory account,sau nu este contul de inventar implicit,
Expense Head Changed,Capul cheltuielilor s-a schimbat,
because expense is booked against this account in Purchase Receipt {},deoarece cheltuielile sunt rezervate pentru acest cont în chitanța de cumpărare {},
as no Purchase Receipt is created against Item {}. ,deoarece nu se creează chitanță de cumpărare împotriva articolului {}.,
This is done to handle accounting for cases when Purchase Receipt is created after Purchase Invoice,Acest lucru se face pentru a gestiona contabilitatea cazurilor în care Bonul de cumpărare este creat după factura de achiziție,
Purchase Order Required for item {},Comandă de achiziție necesară pentru articolul {},
To submit the invoice without purchase order please set {} ,"Pentru a trimite factura fără comandă de cumpărare, setați {}",
as {} in {},ca în {},
Mandatory Purchase Order,Comandă de cumpărare obligatorie,
Purchase Receipt Required for item {},Chitanță de cumpărare necesară pentru articolul {},
To submit the invoice without purchase receipt please set {} ,"Pentru a trimite factura fără chitanță de cumpărare, setați {}",
Mandatory Purchase Receipt,Chitanță de cumpărare obligatorie,
POS Profile {} does not belongs to company {},Profilul POS {} nu aparține companiei {},
User {} is disabled. Please select valid user/cashier,Utilizatorul {} este dezactivat. Vă rugăm să selectați un utilizator / casier valid,
Row #{}: Original Invoice {} of return invoice {} is {}. ,Rândul # {}: factura originală {} a facturii de returnare {} este {}.,
Original invoice should be consolidated before or along with the return invoice.,Factura originală ar trebui consolidată înainte sau împreună cu factura de returnare.,
You can add original invoice {} manually to proceed.,Puteți adăuga factura originală {} manual pentru a continua.,
Please ensure {} account is a Balance Sheet account. ,Vă rugăm să vă asigurați că {} contul este un cont de bilanț.,
You can change the parent account to a Balance Sheet account or select a different account.,Puteți schimba contul părinte într-un cont de bilanț sau puteți selecta un alt cont.,
Please ensure {} account is a Receivable account. ,Vă rugăm să vă asigurați că {} contul este un cont de încasat.,
Change the account type to Receivable or select a different account.,Schimbați tipul de cont pentru de primit sau selectați un alt cont.,
{} can't be cancelled since the Loyalty Points earned has been redeemed. First cancel the {} No {},"{} nu poate fi anulat, deoarece punctele de loialitate câștigate au fost valorificate. Anulați mai întâi {} Nu {}",
already exists,deja exista,
POS Closing Entry {} against {} between selected period,Închidere POS {} contra {} între perioada selectată,
POS Invoice is {},Factura POS este {},
POS Profile doesn't matches {},Profilul POS nu se potrivește cu {},
POS Invoice is not {},Factura POS nu este {},
POS Invoice isn't created by user {},Factura POS nu este creată de utilizator {},
Row #{}: {},Rând #{}: {},
Invalid POS Invoices,Facturi POS nevalide,
Please add the account to root level Company - {},Vă rugăm să adăugați contul la compania la nivel de rădăcină - {},
"While creating account for Child Company {0}, parent account {1} not found. Please create the parent account in corresponding COA","În timp ce creați un cont pentru Compania copil {0}, contul părinte {1} nu a fost găsit. Vă rugăm să creați contul părinte în COA corespunzător",
Account Not Found,Contul nu a fost găsit,
"While creating account for Child Company {0}, parent account {1} found as a ledger account.","În timp ce creați un cont pentru Compania pentru copii {0}, contul părinte {1} a fost găsit ca un cont mare.",
Please convert the parent account in corresponding child company to a group account.,Vă rugăm să convertiți contul părinte al companiei copil corespunzătoare într-un cont de grup.,
Invalid Parent Account,Cont părinte nevalid,
"Renaming it is only allowed via parent company {0}, to avoid mismatch.","Redenumirea acestuia este permisă numai prin intermediul companiei-mamă {0}, pentru a evita nepotrivirea.",
"If you {0} {1} quantities of the item {2}, the scheme {3} will be applied on the item.","Dacă {0} {1} cantitățile articolului {2}, schema {3} va fi aplicată articolului.",
"If you {0} {1} worth item {2}, the scheme {3} will be applied on the item.","Dacă {0} {1} valorează articolul {2}, schema {3} va fi aplicată articolului.",
"As the field {0} is enabled, the field {1} is mandatory.","Deoarece câmpul {0} este activat, câmpul {1} este obligatoriu.",
"As the field {0} is enabled, the value of the field {1} should be more than 1.","Deoarece câmpul {0} este activat, valoarea câmpului {1} trebuie să fie mai mare de 1.",
Cannot deliver Serial No {0} of item {1} as it is reserved to fullfill Sales Order {2},Nu se poate livra numărul de serie {0} al articolului {1} deoarece este rezervat pentru a îndeplini comanda de vânzare {2},
"Sales Order {0} has reservation for the item {1}, you can only deliver reserved {1} against {0}.","Comanda de vânzări {0} are rezervare pentru articolul {1}, puteți livra rezervat {1} numai cu {0}.",
{0} Serial No {1} cannot be delivered,{0} Numărul de serie {1} nu poate fi livrat,
Row {0}: Subcontracted Item is mandatory for the raw material {1},Rândul {0}: articolul subcontractat este obligatoriu pentru materia primă {1},
"As there are sufficient raw materials, Material Request is not required for Warehouse {0}.","Deoarece există suficiente materii prime, cererea de material nu este necesară pentru depozit {0}.",
" If you still want to proceed, please enable {0}.","Dacă totuși doriți să continuați, activați {0}.",
The item referenced by {0} - {1} is already invoiced,Elementul la care face referire {0} - {1} este deja facturat,
Therapy Session overlaps with {0},Sesiunea de terapie se suprapune cu {0},
Therapy Sessions Overlapping,Sesiunile de terapie se suprapun,
Therapy Plans,Planuri de terapie,
"Item Code, warehouse, quantity are required on row {0}","Codul articolului, depozitul, cantitatea sunt necesare pe rândul {0}",
Get Items from Material Requests against this Supplier,Obțineți articole din solicitările materiale împotriva acestui furnizor,
Enable European Access,Activați accesul european,
Creating Purchase Order ...,Se creează comanda de cumpărare ...,
"Select a Supplier from the Default Suppliers of the items below. On selection, a Purchase Order will be made against items belonging to the selected Supplier only.","Selectați un furnizor din furnizorii prestabiliți ai articolelor de mai jos. La selectare, o comandă de achiziție va fi făcută numai pentru articolele aparținând furnizorului selectat.",
Row #{}: You must select {} serial numbers for item {}.,Rândul # {}: trebuie să selectați {} numere de serie pentru articol {}.,
Add Comment,Adăugă Comentariu,
More...,Mai Mult...,
Notes,Observații,
Payment Gateway,Gateway de plată,
Payment Gateway Name,Numele gateway-ului de plată,
Payments,Plăți,
Plan Name,Numele planului,
Portal,Portal,
Scan Barcode,Scanează codul de bare,
Some information is missing,Lipsesc unele informații,
Successful,De succes,
Tools,Instrumente,
Use Sandbox,utilizare Sandbox,
Busy,Ocupat,
Completed By,Completat De,
Payment Failed,Plata esuata,
Column {0},Coloana {0},
Field Mapping,Mapare câmp,
Not Specified,Nespecificat,
Update Type,Tip de actualizare,
Dr,Dr,
End Time,End Time,
Fetching...,... Fetching,
"It seems that there is an issue with the server's stripe configuration. In case of failure, the amount will get refunded to your account.","Se pare că există o problemă cu configurația benzii serverului. În caz de eșec, suma va fi rambursată în cont.",
Looks like someone sent you to an incomplete URL. Please ask them to look into it.,Se pare că cineva te-a trimis la o adresă URL incompletă. Vă rugăm să cereți-le să se uite în ea.,
Master,Master,
Pay,Plăti,
You can also copy-paste this link in your browser,"De asemenea, puteți să copiați-paste această legătură în browser-ul dvs.",
Verified By,Verificate de,
Invalid naming series (. missing) for {0},Serii de denumiri nevalide (. Lipsesc) pentru {0},
Phone Number,Numar de telefon,
Account SID,Cont SID,
Global Defaults,Valori Implicite Globale,
Is Mandatory,Este obligatoriu,
WhatsApp,WhatsApp,
Make a call,Efectua un apel,
Approve,Aproba,
Reject,Respinge,
